@myop/sdk 0.3.34 → 0.3.38
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundled-declarations.d.ts +25 -1
- package/dist/cjs/{_IframeSDK.c7926c56.js → _IframeSDK.bc681e76.js} +31 -15
- package/dist/cjs/_IframeSDK.bc681e76.js.map +7 -0
- package/dist/cjs/_IframeSDK.d2fe8db7.min.js +1 -0
- package/dist/cjs/{_MyopHelpers.08d1cf5d.js → _MyopHelpers.cc216538.js} +17 -1
- package/dist/cjs/_MyopHelpers.cc216538.js.map +7 -0
- package/dist/cjs/_MyopHelpers.eff18534.min.js +1 -0
- package/dist/cjs/{_WebComponentSDK.501a71f9.js → _WebComponentSDK.c8669c12.js} +31 -15
- package/dist/cjs/_WebComponentSDK.c8669c12.js.map +7 -0
- package/dist/cjs/_WebComponentSDK.f906fc17.min.js +1 -0
- package/dist/cjs/_hostSDK.a3a77bfb.min.js +1 -0
- package/dist/cjs/{_hostSDK.cdbc1f60.js → _hostSDK.d29e6783.js} +31 -15
- package/dist/cjs/_hostSDK.d29e6783.js.map +7 -0
- package/dist/cjs/myop_sdk.js +14 -14
- package/dist/cjs/myop_sdk.js.map +1 -1
- package/dist/cjs/myop_sdk.min.js +1 -1
- package/dist/cjs-bundled/myop_sdk.bundled.js +38 -17
- package/dist/cjs-bundled/myop_sdk.bundled.js.map +3 -3
- package/dist/cjs-bundled/myop_sdk.bundled.min.js +1 -1
- package/dist/module/Iframe/index.js +32 -16
- package/dist/module/Iframe/index.js.map +2 -2
- package/dist/module/SDK.js +38 -17
- package/dist/module/SDK.js.map +3 -3
- package/dist/module/common/index.d.ts +5 -0
- package/dist/module/common/index.js +1 -1
- package/dist/module/common/index.js.map +2 -2
- package/dist/module/embeddedSDK.js +1 -1
- package/dist/module/helpers/CloudRepository.d.ts +5 -0
- package/dist/module/helpers/cloudRepositoryHelpers.d.ts +10 -0
- package/dist/module/helpers/index.js +17 -2
- package/dist/module/helpers/index.js.map +2 -2
- package/dist/module/host/components/IMyopComponent.d.ts +3 -0
- package/dist/module/host/embeddedSDK.js +1 -1
- package/dist/module/host/index.js +32 -16
- package/dist/module/host/index.js.map +2 -2
- package/dist/module/host/loaders/HTMLComponentLoader.d.ts +2 -1
- package/dist/module/webcomponent/index.js +32 -16
- package/dist/module/webcomponent/index.js.map +2 -2
- package/package.json +1 -1
- package/dist/cjs/_IframeSDK.c2225e19.min.js +0 -1
- package/dist/cjs/_IframeSDK.c7926c56.js.map +0 -7
- package/dist/cjs/_MyopHelpers.08d1cf5d.js.map +0 -7
- package/dist/cjs/_MyopHelpers.59521d8f.min.js +0 -1
- package/dist/cjs/_WebComponentSDK.0caec562.min.js +0 -1
- package/dist/cjs/_WebComponentSDK.501a71f9.js.map +0 -7
- package/dist/cjs/_hostSDK.02edf3e2.min.js +0 -1
- package/dist/cjs/_hostSDK.cdbc1f60.js.map +0 -7
|
@@ -370,6 +370,11 @@ declare module "@myop/sdk/common" {
|
|
|
370
370
|
id: string;
|
|
371
371
|
name: string;
|
|
372
372
|
description: string;
|
|
373
|
+
/**
|
|
374
|
+
* The component's runtime tags: only tags named `ui:...` (e.g. `ui:beta`), as set in the
|
|
375
|
+
* dashboard. Every other tag stays private on the server. Empty when there are none.
|
|
376
|
+
*/
|
|
377
|
+
uiTags?: string[];
|
|
373
378
|
props: IPropConfig[];
|
|
374
379
|
refs: IRefConfig[];
|
|
375
380
|
skins: ISkinConfig[];
|
|
@@ -1196,6 +1201,8 @@ declare module "@myop/sdk/host/components/IMyopComponent" {
|
|
|
1196
1201
|
markedForDisposed: boolean;
|
|
1197
1202
|
setInitiated: () => void;
|
|
1198
1203
|
componentDefinition: IComponentDefinitionConfig;
|
|
1204
|
+
/** Runtime tags: only tags named `ui:...` (e.g. `ui:beta`). `[]` when there are none. */
|
|
1205
|
+
readonly uiTags: string[];
|
|
1199
1206
|
container: HTMLElement;
|
|
1200
1207
|
element?: HTMLElement;
|
|
1201
1208
|
send: (msg: BaseMyopMessage) => CleanupHandler;
|
|
@@ -1239,6 +1246,7 @@ declare module "@myop/sdk/host/components/IMyopComponent" {
|
|
|
1239
1246
|
messageHandlers: Record<string, messageHandler<any>[]>;
|
|
1240
1247
|
element?: HTMLElement;
|
|
1241
1248
|
protected constructor(componentDefinition: IComponentDefinitionConfig, container: HTMLElement, options?: loaderOptions);
|
|
1249
|
+
get uiTags(): string[];
|
|
1242
1250
|
_markedForDisposed: boolean;
|
|
1243
1251
|
get markedForDisposed(): boolean;
|
|
1244
1252
|
set markedForDisposed(value: boolean);
|
|
@@ -1710,7 +1718,8 @@ declare module "@myop/sdk/host/loaders/HTMLComponentLoader" {
|
|
|
1710
1718
|
*/
|
|
1711
1719
|
private extractWebComponentScript;
|
|
1712
1720
|
/**
|
|
1713
|
-
* Execute the web component script on the host document
|
|
1721
|
+
* Execute the web component script on the host document.
|
|
1722
|
+
* Returns the custom element tag name this script registered.
|
|
1714
1723
|
*/
|
|
1715
1724
|
private executeWebComponentScript;
|
|
1716
1725
|
/**
|
|
@@ -1859,6 +1868,11 @@ declare module "@myop/sdk/helpers/CloudRepository" {
|
|
|
1859
1868
|
* skipping the WEBVIEW_READY → fetch → inject round trip entirely.
|
|
1860
1869
|
*/
|
|
1861
1870
|
getResolvedConfig(componentId: string, env?: string, preview?: boolean): IComponentConfig | null;
|
|
1871
|
+
/**
|
|
1872
|
+
* The `ui:` tags of an already-resolved component (`[]` if it has none or is not
|
|
1873
|
+
* resolved yet). Synchronous, no request: tags arrive with the component itself.
|
|
1874
|
+
*/
|
|
1875
|
+
getComponentTags(componentId: string, env?: string, preview?: boolean): string[];
|
|
1862
1876
|
/**
|
|
1863
1877
|
* Resolve which (env, preview) pair — and therefore which cache key — a call
|
|
1864
1878
|
* for `componentId` refers to.
|
|
@@ -1923,6 +1937,16 @@ declare module "@myop/sdk/helpers/cloudRepositoryHelpers" {
|
|
|
1923
1937
|
export const setCloudRepository: (repository: CloudRepository) => void;
|
|
1924
1938
|
export const setEnvironment: (env: string) => void;
|
|
1925
1939
|
export const getResolvedConfig: (componentId: string, env?: string, preview?: boolean) => IComponentConfig;
|
|
1940
|
+
/**
|
|
1941
|
+
* The runtime tags of a loaded/preloaded component: only tags named `ui:...` (e.g.
|
|
1942
|
+
* `ui:beta`). Returns `[]` when it has none or has not been fetched yet.
|
|
1943
|
+
*
|
|
1944
|
+
* ```ts
|
|
1945
|
+
* await preloadComponents([id]);
|
|
1946
|
+
* getComponentTags(id); // ['ui:beta']
|
|
1947
|
+
* ```
|
|
1948
|
+
*/
|
|
1949
|
+
export const getComponentTags: (componentId: string, env?: string, preview?: boolean) => string[];
|
|
1926
1950
|
export const preloadComponents: (ids: string[], env?: string, preview?: boolean) => Promise<PromiseSettledResult<IComponentConfig>[]>;
|
|
1927
1951
|
/**
|
|
1928
1952
|
* Seed already-resolved component configs into the SDK cache, with no network
|
|
@@ -1016,6 +1016,10 @@ var BaseMyopComponent = class {
|
|
|
1016
1016
|
}
|
|
1017
1017
|
});
|
|
1018
1018
|
}
|
|
1019
|
+
get uiTags() {
|
|
1020
|
+
var _a;
|
|
1021
|
+
return ((_a = this.componentDefinition) == null ? void 0 : _a.uiTags) || [];
|
|
1022
|
+
}
|
|
1019
1023
|
get markedForDisposed() {
|
|
1020
1024
|
return this._markedForDisposed;
|
|
1021
1025
|
}
|
|
@@ -2142,7 +2146,7 @@ var WebcomponentLoader = class extends BaseMyopLoader {
|
|
|
2142
2146
|
};
|
|
2143
2147
|
|
|
2144
2148
|
// version:myop-sdk-version
|
|
2145
|
-
var myop_sdk_version_default = "0.3.
|
|
2149
|
+
var myop_sdk_version_default = "0.3.38";
|
|
2146
2150
|
|
|
2147
2151
|
// src/webcomponent/messageHandlers/BaseWebComponentMessageHandler.ts
|
|
2148
2152
|
var BaseWebComponentMessageHandler = class extends BaseContextMessageHandler {
|
|
@@ -2474,7 +2478,7 @@ var HAS_EMBEDDED_SDK = false;
|
|
|
2474
2478
|
// src/host/loaders/HTMLComponentLoader.ts
|
|
2475
2479
|
var MYOP_WEB_COMPONENT_MARKER = "<!-- myop-web-component -->";
|
|
2476
2480
|
var MYOP_WEB_COMPONENT_SCRIPT_ID = "myop-web-component";
|
|
2477
|
-
var extractedWebComponentScripts = /* @__PURE__ */ new
|
|
2481
|
+
var extractedWebComponentScripts = /* @__PURE__ */ new Map();
|
|
2478
2482
|
var seen2 = [];
|
|
2479
2483
|
var sdk;
|
|
2480
2484
|
var getInitiatedSdk = async () => {
|
|
@@ -2715,19 +2719,25 @@ var HTMLComponentLoader = class extends BaseMyopLoader {
|
|
|
2715
2719
|
return (script == null ? void 0 : script.textContent) || null;
|
|
2716
2720
|
}
|
|
2717
2721
|
/**
|
|
2718
|
-
* Execute the web component script on the host document
|
|
2722
|
+
* Execute the web component script on the host document.
|
|
2723
|
+
* Returns the custom element tag name this script registered.
|
|
2719
2724
|
*/
|
|
2720
2725
|
executeWebComponentScript(scriptContent, scriptId) {
|
|
2721
|
-
|
|
2722
|
-
|
|
2723
|
-
|
|
2726
|
+
const cachedTagName = extractedWebComponentScripts.get(scriptId);
|
|
2727
|
+
if (cachedTagName) {
|
|
2728
|
+
console.log("[MyopWebComponent] Script already executed for ".concat(scriptId, ", reusing <").concat(cachedTagName, ">"));
|
|
2729
|
+
return cachedTagName;
|
|
2724
2730
|
}
|
|
2725
2731
|
const script = document.createElement("script");
|
|
2726
2732
|
script.textContent = scriptContent;
|
|
2727
2733
|
script.id = "myop-extracted-".concat(scriptId);
|
|
2728
2734
|
document.head.appendChild(script);
|
|
2729
|
-
|
|
2730
|
-
|
|
2735
|
+
const tagName = window.__MYOP_TAG_NAME__;
|
|
2736
|
+
if (tagName) {
|
|
2737
|
+
extractedWebComponentScripts.set(scriptId, tagName);
|
|
2738
|
+
}
|
|
2739
|
+
console.log("[MyopWebComponent] Executed web component script: ".concat(scriptId, " -> <").concat(tagName, ">"));
|
|
2740
|
+
return tagName;
|
|
2731
2741
|
}
|
|
2732
2742
|
/**
|
|
2733
2743
|
* Load a Myop Web Component (extracted and run on host document)
|
|
@@ -2738,15 +2748,10 @@ var HTMLComponentLoader = class extends BaseMyopLoader {
|
|
|
2738
2748
|
throw new Error('[MyopWebComponent] No <script id="myop-web-component"> found in HTML');
|
|
2739
2749
|
}
|
|
2740
2750
|
const scriptId = "".concat(componentDefinition.id, "-").concat(skin.id);
|
|
2741
|
-
const
|
|
2742
|
-
this.executeWebComponentScript(scriptContent, scriptId);
|
|
2743
|
-
const tagName = window.__MYOP_TAG_NAME__;
|
|
2751
|
+
const tagName = this.executeWebComponentScript(scriptContent, scriptId);
|
|
2744
2752
|
if (!tagName) {
|
|
2745
2753
|
throw new Error("[MyopWebComponent] Script did not set window.__MYOP_TAG_NAME__");
|
|
2746
2754
|
}
|
|
2747
|
-
if (previousTagName && previousTagName !== tagName) {
|
|
2748
|
-
console.warn("[MyopWebComponent] __MYOP_TAG_NAME__ changed from ".concat(previousTagName, " to ").concat(tagName));
|
|
2749
|
-
}
|
|
2750
2755
|
const domId = "myop-comp-".concat(uuidv4());
|
|
2751
2756
|
const element = document.createElement(tagName);
|
|
2752
2757
|
element.id = domId;
|
|
@@ -2825,7 +2830,10 @@ var convertV2VariantToComponentConfig = (config) => {
|
|
|
2825
2830
|
loader: config.consume_variant[0].loader
|
|
2826
2831
|
}
|
|
2827
2832
|
],
|
|
2828
|
-
defaultSkin: 0
|
|
2833
|
+
defaultSkin: 0,
|
|
2834
|
+
// Only `ui:` tags ever reach the client; the server filters, absent = none.
|
|
2835
|
+
// @ts-ignore
|
|
2836
|
+
uiTags: Array.isArray(config.uiTags) ? config.uiTags : []
|
|
2829
2837
|
},
|
|
2830
2838
|
name: config.name
|
|
2831
2839
|
};
|
|
@@ -3020,6 +3028,14 @@ var _CloudRepository = class _CloudRepository {
|
|
|
3020
3028
|
const { cacheKey } = this.resolveParams(componentId, env, preview);
|
|
3021
3029
|
return ((_a = this.variants[cacheKey]) == null ? void 0 : _a.resolved) || null;
|
|
3022
3030
|
}
|
|
3031
|
+
/**
|
|
3032
|
+
* The `ui:` tags of an already-resolved component (`[]` if it has none or is not
|
|
3033
|
+
* resolved yet). Synchronous, no request: tags arrive with the component itself.
|
|
3034
|
+
*/
|
|
3035
|
+
getComponentTags(componentId, env, preview) {
|
|
3036
|
+
var _a, _b;
|
|
3037
|
+
return ((_b = (_a = this.getResolvedConfig(componentId, env, preview)) == null ? void 0 : _a.type) == null ? void 0 : _b.uiTags) || [];
|
|
3038
|
+
}
|
|
3023
3039
|
/**
|
|
3024
3040
|
* Resolve which (env, preview) pair — and therefore which cache key — a call
|
|
3025
3041
|
* for `componentId` refers to.
|