in src/SDK.ts [200:228]
export function init(options?: IExtensionInitOptions): Promise<void> {
return new Promise((resolve) => {
const initOptions = { ...options, sdkVersion };
parentChannel.invokeRemoteMethod<IExtensionHandshakeResult>("initialHandshake", hostControlId, [initOptions]).then((handshakeData) => {
initialConfiguration = handshakeData.initialConfig || {};
initialContributionId = handshakeData.contributionId;
const context = handshakeData.context;
extensionContext = context.extension;
userContext = context.user;
hostContext = context.host;
if (handshakeData.themeData) {
applyTheme(handshakeData.themeData);
window.addEventListener("themeChanged", (ev: any) => {
applyTheme(ev.detail.data);
});
}
resolveReady();
resolve();
});
});
}