init_sdk

Function init_sdk 

Source
pub fn init_sdk() -> Result<(), JsValue>
Expand description

Initializes Telegram WebApp SDK by extracting and validating context.

  • Parses initData (urlencoded) with embedded JSON.
  • Parses themeParams (object).
  • Initializes global context.

§Errors

Returns Err(JsValue) in the following cases:

  • WindowUnavailable: No browser window object found
  • TelegramUnavailable: window.Telegram is undefined
  • WebAppUnavailable: Telegram.WebApp is undefined
  • InitDataParseFailed: Failed to parse WebApp.initData
  • ThemeParamsParseFailed: Failed to parse theme parameters
  • ContextInitFailed: Failed to initialize global context

§Examples

use telegram_webapp_sdk::core::init::init_sdk;

match init_sdk() {
    Ok(_) => println!("SDK initialized successfully"),
    Err(e) => eprintln!("Initialization failed: {:?}", e)
}

For better error handling, consider using try_init_sdk which returns typed InitError.