@servicetitan/web-components 23.0.0 → 23.2.0
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/__mocks__/index.d.ts +3 -0
- package/dist/__mocks__/index.d.ts.map +1 -0
- package/dist/__mocks__/index.js +3 -0
- package/dist/__mocks__/index.js.map +1 -0
- package/dist/__mocks__/register-component.d.ts +4 -0
- package/dist/__mocks__/register-component.d.ts.map +1 -0
- package/dist/__mocks__/register-component.js +14 -0
- package/dist/__mocks__/register-component.js.map +1 -0
- package/dist/__mocks__/test-component.d.ts +3 -0
- package/dist/__mocks__/test-component.d.ts.map +1 -0
- package/dist/__mocks__/test-component.js +14 -0
- package/dist/__mocks__/test-component.js.map +1 -0
- package/dist/contexts/tests/mfe-data-context.test.js +1 -1
- package/dist/contexts/tests/mfe-data-context.test.js.map +1 -1
- package/dist/contexts/tests/mfe-metadata-context.test.js +1 -1
- package/dist/contexts/tests/mfe-metadata-context.test.js.map +1 -1
- package/dist/loader.d.ts +7 -17
- package/dist/loader.d.ts.map +1 -1
- package/dist/loader.js +74 -224
- package/dist/loader.js.map +1 -1
- package/dist/register.d.ts +4 -1
- package/dist/register.d.ts.map +1 -1
- package/dist/register.js +26 -13
- package/dist/register.js.map +1 -1
- package/dist/render.d.ts +11 -0
- package/dist/render.d.ts.map +1 -0
- package/dist/render.js +39 -0
- package/dist/render.js.map +1 -0
- package/dist/utils/get-bundle-info.d.ts +24 -0
- package/dist/utils/get-bundle-info.d.ts.map +1 -0
- package/dist/utils/get-bundle-info.js +98 -0
- package/dist/utils/get-bundle-info.js.map +1 -0
- package/dist/utils/get-entry-points.d.ts +6 -0
- package/dist/utils/get-entry-points.d.ts.map +1 -0
- package/dist/utils/get-entry-points.js +24 -0
- package/dist/utils/get-entry-points.js.map +1 -0
- package/dist/{get-mfe-supports-rerendering.d.ts → utils/get-mfe-supports-rerendering.d.ts} +1 -1
- package/dist/utils/get-mfe-supports-rerendering.d.ts.map +1 -0
- package/dist/utils/get-mfe-supports-rerendering.js.map +1 -0
- package/dist/{utils.d.ts → utils/get-version-mismatches.d.ts} +2 -3
- package/dist/utils/get-version-mismatches.d.ts.map +1 -0
- package/dist/{utils.js → utils/get-version-mismatches.js} +2 -10
- package/dist/utils/get-version-mismatches.js.map +1 -0
- package/dist/utils/index.d.ts +9 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +9 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/is-versioned-url.d.ts +2 -0
- package/dist/utils/is-versioned-url.d.ts.map +1 -0
- package/dist/utils/is-versioned-url.js +9 -0
- package/dist/utils/is-versioned-url.js.map +1 -0
- package/dist/utils/load-scripts.d.ts +3 -0
- package/dist/utils/load-scripts.d.ts.map +1 -0
- package/dist/utils/load-scripts.js +31 -0
- package/dist/utils/load-scripts.js.map +1 -0
- package/dist/utils/validate-bundle-info.d.ts +7 -0
- package/dist/utils/validate-bundle-info.d.ts.map +1 -0
- package/dist/utils/validate-bundle-info.js +10 -0
- package/dist/utils/validate-bundle-info.js.map +1 -0
- package/dist/utils/web-component.d.ts +17 -0
- package/dist/utils/web-component.d.ts.map +1 -0
- package/dist/utils/web-component.js +54 -0
- package/dist/utils/web-component.js.map +1 -0
- package/package.json +17 -18
- package/src/__mocks__/index.ts +2 -0
- package/src/__mocks__/register-component.tsx +20 -0
- package/src/__mocks__/test-component.tsx +30 -0
- package/src/__tests__/event-bus.test.ts +3 -2
- package/src/__tests__/loader.test.tsx +17 -11
- package/src/__tests__/register-legacy-root.test.tsx +36 -0
- package/src/__tests__/register.test.tsx +16 -81
- package/src/contexts/tests/mfe-data-context.test.tsx +4 -4
- package/src/contexts/tests/mfe-metadata-context.test.tsx +4 -4
- package/src/loader.tsx +129 -374
- package/src/register.tsx +25 -14
- package/src/render.ts +62 -0
- package/src/{__tests__ → utils/__tests__}/get-mfe-supports-rerendering.test.ts +1 -1
- package/src/utils/__tests__/get-version-mismatches.test.ts +76 -0
- package/src/utils/__tests__/is-versioned-url.test.ts +18 -0
- package/src/utils/get-bundle-info.ts +121 -0
- package/src/utils/get-entry-points.ts +23 -0
- package/src/{get-mfe-supports-rerendering.ts → utils/get-mfe-supports-rerendering.ts} +1 -1
- package/src/{utils.ts → utils/get-version-mismatches.ts} +1 -12
- package/src/utils/index.ts +8 -0
- package/src/utils/is-versioned-url.ts +11 -0
- package/src/utils/load-scripts.ts +38 -0
- package/src/utils/validate-bundle-info.ts +15 -0
- package/src/utils/web-component.tsx +96 -0
- package/dist/get-mfe-supports-rerendering.d.ts.map +0 -1
- package/dist/get-mfe-supports-rerendering.js.map +0 -1
- package/dist/utils.d.ts.map +0 -1
- package/dist/utils.js.map +0 -1
- package/src/__tests__/utils.test.ts +0 -95
- /package/dist/{get-mfe-supports-rerendering.js → utils/get-mfe-supports-rerendering.js} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/__mocks__/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/__mocks__/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { FunctionComponent } from 'react';
|
|
2
|
+
import { RegisterOptions } from '../register';
|
|
3
|
+
export declare function registerComponent(TestComponent: FunctionComponent, componentName: string | undefined, options?: RegisterOptions): void;
|
|
4
|
+
//# sourceMappingURL=register-component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"register-component.d.ts","sourceRoot":"","sources":["../../src/__mocks__/register-component.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,wBAAgB,iBAAiB,CAC7B,aAAa,EAAE,iBAAiB,EAChC,aAAa,EAAE,MAAM,GAAG,SAAS,EACjC,OAAO,CAAC,EAAE,eAAe,QAa5B"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export function registerComponent(TestComponent, componentName, options) {
|
|
2
|
+
/*
|
|
3
|
+
* This register can only happen once, unfortunately. So the TestComponent needs to
|
|
4
|
+
* work for all tests. If ran more than once, window.customElements.define will throw
|
|
5
|
+
* the error: "NotSupportedError: This name has already been registered in the registry."
|
|
6
|
+
*
|
|
7
|
+
* Also note that there is not way to "unregister" a web component, so an afterAll
|
|
8
|
+
* cannot be used.
|
|
9
|
+
*/
|
|
10
|
+
global.WEB_COMPONENT_NAME = componentName;
|
|
11
|
+
const { register } = require('../register');
|
|
12
|
+
register(TestComponent, true, options);
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=register-component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"register-component.js","sourceRoot":"","sources":["../../src/__mocks__/register-component.tsx"],"names":[],"mappings":"AAGA,MAAM,UAAU,iBAAiB,CAC7B,aAAgC,EAChC,aAAiC,EACjC,OAAyB;IAEzB;;;;;;;OAOG;IACF,MAAc,CAAC,kBAAkB,GAAG,aAAa,CAAC;IACnD,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAC5C,QAAQ,CAAC,aAAa,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AAC3C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-component.d.ts","sourceRoot":"","sources":["../../src/__mocks__/test-component.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAc,MAAM,OAAO,CAAC;AAIvC,eAAO,MAAM,aAAa,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAmBjD,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useContext } from 'react';
|
|
3
|
+
import { TablePopupPropsContext } from '@servicetitan/design-system';
|
|
4
|
+
import { useMFEDataContext, useMFEMetadataContext } from '../contexts';
|
|
5
|
+
export const MockComponent = props => {
|
|
6
|
+
const data = useMFEDataContext();
|
|
7
|
+
const metadata = useMFEMetadataContext();
|
|
8
|
+
const popupProps = useContext(TablePopupPropsContext);
|
|
9
|
+
return (_jsxs("div", { children: [Object.entries(props).map(([name, value]) => (_jsx("span", { children: `Prop: ${name}, Value: ${stringifyValue(value)}` }, name))), Object.entries(data).map(([name, value]) => (_jsx("span", { children: `Data: ${name}, Value: ${stringifyValue(value)}` }, name))), Object.entries(metadata).map(([name, value]) => (_jsx("span", { children: `Metadata: ${name}, Value: ${stringifyValue(value)}` }, name))), _jsxs("span", { children: ["TablePopupPropsContext appendTo: ", String(popupProps({}).appendTo)] })] }));
|
|
10
|
+
};
|
|
11
|
+
function stringifyValue(value) {
|
|
12
|
+
return JSON.stringify(value, (_key, value) => value instanceof ShadowRoot ? 'ShadowRoot' : value);
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=test-component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-component.js","sourceRoot":"","sources":["../../src/__mocks__/test-component.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAM,UAAU,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEvE,MAAM,CAAC,MAAM,aAAa,GAA4B,KAAK,CAAC,EAAE;IAC1D,MAAM,IAAI,GAAG,iBAAiB,EAAE,CAAC;IACjC,MAAM,QAAQ,GAAG,qBAAqB,EAAE,CAAC;IACzC,MAAM,UAAU,GAAG,UAAU,CAAC,sBAAsB,CAAC,CAAC;IAEtD,OAAO,CACH,0BACK,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAC1C,yBAAkB,SAAS,IAAI,YAAY,cAAc,CAAC,KAAK,CAAC,EAAE,IAAvD,IAAI,CAA2D,CAC7E,CAAC,EACD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CACzC,yBAAkB,SAAS,IAAI,YAAY,cAAc,CAAC,KAAK,CAAC,EAAE,IAAvD,IAAI,CAA2D,CAC7E,CAAC,EACD,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAC7C,yBAAkB,aAAa,IAAI,YAAY,cAAc,CAAC,KAAK,CAAC,EAAE,IAA3D,IAAI,CAA+D,CACjF,CAAC,EACF,gEAAwC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAQ,IAC7E,CACT,CAAC;AACN,CAAC,CAAC;AAEF,SAAS,cAAc,CAAC,KAAU;IAC9B,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CACzC,KAAK,YAAY,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CACrD,CAAC;AACN,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { renderHook } from '@testing-library/react
|
|
2
|
+
import { renderHook } from '@testing-library/react';
|
|
3
3
|
import { MFEDataContext, useMFEDataContext } from '../mfe-data-context';
|
|
4
4
|
describe(`[web-components] ${useMFEDataContext.name}`, () => {
|
|
5
5
|
const subject = (wrapper) => renderHook(() => useMFEDataContext(), { wrapper });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mfe-data-context.test.js","sourceRoot":"","sources":["../../../src/contexts/tests/mfe-data-context.test.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"mfe-data-context.test.js","sourceRoot":"","sources":["../../../src/contexts/tests/mfe-data-context.test.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExE,QAAQ,CAAC,oBAAoB,iBAAiB,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE;IACxD,MAAM,OAAO,GAAG,CAAC,OAAY,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,iBAAiB,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IAErF,QAAQ,CAAC,iDAAiD,EAAE,GAAG,EAAE;QAC7D,MAAM,IAAI,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;QAC5B,MAAM,OAAO,GAA8B,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;YACxD,OAAO,KAAC,cAAc,CAAC,QAAQ,kBAAC,KAAK,EAAE,IAAI,gBAAG,QAAQ,IAA2B,CAAC;QACtF,CAAC,CAAC;QAEF,IAAI,CAAC,qBAAqB,EAAE,GAAG,EAAE;YAC7B,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC1D,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,qDAAqD,EAAE,GAAG,EAAE;QACjE,MAAM,OAAO,GAA8B,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;YACxD,OAAO,wBAAM,QAAQ,GAAO,CAAC;QACjC,CAAC,CAAC;QAEF,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE;YACjC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { renderHook } from '@testing-library/react
|
|
2
|
+
import { renderHook } from '@testing-library/react';
|
|
3
3
|
import { MFEMetadataContext, useMFEMetadataContext } from '../mfe-metadata-context';
|
|
4
4
|
describe(`[web-components] ${useMFEMetadataContext.name}`, () => {
|
|
5
5
|
const subject = (wrapper) => renderHook(() => useMFEMetadataContext(), { wrapper });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mfe-metadata-context.test.js","sourceRoot":"","sources":["../../../src/contexts/tests/mfe-metadata-context.test.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"mfe-metadata-context.test.js","sourceRoot":"","sources":["../../../src/contexts/tests/mfe-metadata-context.test.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEpF,QAAQ,CAAC,oBAAoB,qBAAqB,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE;IAC5D,MAAM,OAAO,GAAG,CAAC,OAAY,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,qBAAqB,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IAEzF,QAAQ,CAAC,qDAAqD,EAAE,GAAG,EAAE;QACjE,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QAChF,MAAM,gBAAgB,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QACvF,MAAM,QAAQ,GAAG,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC;QAClD,MAAM,OAAO,GAA8B,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;YACxD,OAAO,CACH,KAAC,kBAAkB,CAAC,QAAQ,kBAAC,KAAK,EAAE,QAAQ,gBACvC,QAAQ,IACiB,CACjC,CAAC;QACN,CAAC,CAAC;QAEF,IAAI,CAAC,qBAAqB,EAAE,GAAG,EAAE;YAC7B,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC9D,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,yDAAyD,EAAE,GAAG,EAAE;QACrE,MAAM,OAAO,GAA8B,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;YACxD,OAAO,wBAAM,QAAQ,GAAO,CAAC;QACjC,CAAC,CAAC;QAEF,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE;YACjC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
package/dist/loader.d.ts
CHANGED
|
@@ -1,31 +1,21 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
2
|
import { GetJsonError } from './common';
|
|
3
|
-
import { EventBus } from './event-bus';
|
|
4
3
|
import { MFEContextData } from './contexts/mfe-data-context';
|
|
5
|
-
|
|
6
|
-
name: string;
|
|
7
|
-
bundledWith?: Record<string, string | undefined>;
|
|
8
|
-
sharedDependencies: Record<string, string>;
|
|
9
|
-
dependencies?: Record<string, string>;
|
|
10
|
-
entrypoints?: Record<string, {
|
|
11
|
-
css: string[];
|
|
12
|
-
js: string[];
|
|
13
|
-
}>;
|
|
14
|
-
}
|
|
4
|
+
import { EventBus } from './event-bus';
|
|
15
5
|
export declare type LoaderRef = EventBus;
|
|
6
|
+
export declare type FallbackNode = NonNullable<ReactNode> | null;
|
|
16
7
|
export interface LoaderProps<T> {
|
|
17
8
|
src: string;
|
|
18
9
|
fallbackSrc?: string;
|
|
19
10
|
/** Values in the object will be stringified and then parsed before being delivered to the MFE via props or context. */
|
|
20
11
|
data?: MFEContextData<T>;
|
|
21
12
|
basename?: string;
|
|
22
|
-
loadingFallback?:
|
|
23
|
-
errorFallback?:
|
|
13
|
+
loadingFallback?: FallbackNode;
|
|
14
|
+
errorFallback?: FallbackNode;
|
|
24
15
|
className?: string;
|
|
25
16
|
retries?: number;
|
|
26
17
|
onRequestError?(error: GetJsonError): boolean;
|
|
27
18
|
}
|
|
28
|
-
export declare
|
|
29
|
-
|
|
30
|
-
}) => ReactElement | null;
|
|
19
|
+
export declare type LoaderDataProps = Pick<LoaderProps<{}>, 'data' | 'className'>;
|
|
20
|
+
export declare const Loader: import("react").ForwardRefExoticComponent<LoaderProps<{}> & import("react").RefAttributes<EventBus>>;
|
|
31
21
|
//# sourceMappingURL=loader.d.ts.map
|
package/dist/loader.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../src/loader.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../src/loader.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEH,SAAS,EAOZ,MAAM,OAAO,CAAC;AAKf,OAAO,EAGH,YAAY,EAEf,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAgC,MAAM,aAAa,CAAC;AAIrE,oBAAY,SAAS,GAAG,QAAQ,CAAC;AAEjC,oBAAY,YAAY,GAAG,WAAW,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;AAEzD,MAAM,WAAW,WAAW,CAAC,CAAC;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uHAAuH;IACvH,IAAI,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,YAAY,CAAC;IAC/B,aAAa,CAAC,EAAE,YAAY,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC;CACjD;AAED,oBAAY,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC,CAAC;AAE1E,eAAO,MAAM,MAAM,sGAqDjB,CAAC"}
|
package/dist/loader.js
CHANGED
|
@@ -7,241 +7,91 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
7
7
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
8
|
});
|
|
9
9
|
};
|
|
10
|
-
import { jsx as _jsx
|
|
11
|
-
import {
|
|
12
|
-
import semver from 'semver';
|
|
13
|
-
import get from 'lodash.get';
|
|
10
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
11
|
+
import { Suspense, forwardRef, lazy, useEffect, useImperativeHandle, useMemo, } from 'react';
|
|
14
12
|
import { ErrorBoundary } from '@servicetitan/error-boundary';
|
|
15
13
|
import { Log } from '@servicetitan/log-service';
|
|
16
14
|
import { useOptionalDependencies } from '@servicetitan/react-ioc';
|
|
17
|
-
import { EXPOSED_DEPENDENCIES_TOKEN, useCancelation,
|
|
15
|
+
import { EXPOSED_DEPENDENCIES_TOKEN, useCancelation, } from './common';
|
|
18
16
|
import { EVENT_BUS_TOKEN, useEventBus } from './event-bus';
|
|
19
|
-
import { HistoryManager } from './history-manager';
|
|
20
17
|
import { EXPOSED_DEPENDENCIES } from './globals';
|
|
21
|
-
import {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
try {
|
|
26
|
-
return (yield getJson(url, {
|
|
27
|
-
cache,
|
|
28
|
-
signal,
|
|
29
|
-
})).data;
|
|
30
|
-
}
|
|
31
|
-
catch (_a) {
|
|
32
|
-
return { css: ['index.css'], js: ['index.js'] };
|
|
33
|
-
}
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
function getBundleInfo(mainPackageUrl, fallbackPackageUrl, exposedDependencies = {}, signal, retries, onRequestError) {
|
|
37
|
-
var _a, _b;
|
|
38
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
39
|
-
const { data: metadata, url: packageUrl } = yield getJson(`${mainPackageUrl}/dist/metadata.json`, {
|
|
40
|
-
cache: isVersionedUrl(mainPackageUrl) ? undefined : 'no-store',
|
|
41
|
-
retries: fallbackPackageUrl ? 0 : retries,
|
|
42
|
-
onRequestError,
|
|
43
|
-
signal,
|
|
44
|
-
}).catch(e => {
|
|
45
|
-
if (!fallbackPackageUrl) {
|
|
46
|
-
throw e;
|
|
47
|
-
}
|
|
48
|
-
return getJson(`${fallbackPackageUrl}/dist/metadata.json`, {
|
|
49
|
-
retries,
|
|
50
|
-
onRequestError,
|
|
51
|
-
cache: isVersionedUrl(fallbackPackageUrl) ? undefined : 'no-store',
|
|
52
|
-
signal,
|
|
53
|
-
});
|
|
54
|
-
});
|
|
55
|
-
const exactPackageUrl = packageUrl.replace('/dist/metadata.json', '');
|
|
56
|
-
const cache = isVersionedUrl(exactPackageUrl) ? undefined : 'no-store';
|
|
57
|
-
let dependencies;
|
|
58
|
-
if (metadata.dependencies) {
|
|
59
|
-
dependencies = metadata.dependencies;
|
|
60
|
-
}
|
|
61
|
-
else {
|
|
62
|
-
const { data: packageJson } = yield getJson(`${exactPackageUrl}/package.json`, {
|
|
63
|
-
retries,
|
|
64
|
-
cache,
|
|
65
|
-
signal,
|
|
66
|
-
});
|
|
67
|
-
dependencies = packageJson.dependencies;
|
|
68
|
-
}
|
|
69
|
-
const mismatch = getVersionMismatches(exposedDependencies, dependencies, metadata.sharedDependencies);
|
|
70
|
-
const hasMismatch = !!Object.keys(mismatch).length;
|
|
71
|
-
const startupVersion = (_a = metadata.bundledWith) === null || _a === void 0 ? void 0 : _a['@servicetitan/startup'];
|
|
72
|
-
const supportLightBundles = startupVersion && semver.gte(startupVersion, '17.0.0');
|
|
73
|
-
const embed = !hasMismatch && supportLightBundles;
|
|
74
|
-
const bundleType = embed ? 'light' : 'full';
|
|
75
|
-
const withBaseUrl = (path) => {
|
|
76
|
-
return `${exactPackageUrl}/dist/bundle/${bundleType}/${path}`;
|
|
77
|
-
};
|
|
78
|
-
let entrypoints;
|
|
79
|
-
if ((_b = metadata.entrypoints) === null || _b === void 0 ? void 0 : _b[bundleType]) {
|
|
80
|
-
entrypoints = metadata.entrypoints[bundleType];
|
|
81
|
-
}
|
|
82
|
-
else {
|
|
83
|
-
entrypoints = yield getEntrypoints(withBaseUrl('entrypoints.json'), cache);
|
|
84
|
-
}
|
|
85
|
-
return {
|
|
86
|
-
urls: {
|
|
87
|
-
css: entrypoints.css.map(withBaseUrl),
|
|
88
|
-
js: entrypoints.js.map(withBaseUrl),
|
|
89
|
-
},
|
|
90
|
-
WebComponent: metadata.name,
|
|
91
|
-
disposer: () => {
|
|
92
|
-
if (embed) {
|
|
93
|
-
const path = Object.values(metadata.sharedDependencies).shift();
|
|
94
|
-
if (path) {
|
|
95
|
-
get(window, path).getStorage().clear(metadata.name);
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
},
|
|
99
|
-
mismatch: hasMismatch ? mismatch : undefined,
|
|
100
|
-
mfeSupportsRerendering: getMFESupportsRerendering(metadata.bundledWith, dependencies),
|
|
101
|
-
};
|
|
102
|
-
});
|
|
103
|
-
}
|
|
104
|
-
// Type complexity below is required to pass a generic type through forwardRef
|
|
105
|
-
export const Loader = forwardRef(({ src, fallbackSrc, data = {}, basename, loadingFallback, errorFallback, className, retries, onRequestError, }, ref) => {
|
|
106
|
-
const [isLoading, setIsLoading] = useState(true);
|
|
18
|
+
import { getBundleInfo, validateBundleInfo, loadScripts, webComponent } from './utils';
|
|
19
|
+
export const Loader = forwardRef((props, ref) => {
|
|
20
|
+
var _a;
|
|
21
|
+
const { basename, fallbackSrc, onRequestError, retries, src } = props;
|
|
107
22
|
const bus = useEventBus();
|
|
108
|
-
const [logService,
|
|
109
|
-
const
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
return () => {
|
|
116
|
-
cancelation.abort();
|
|
117
|
-
};
|
|
118
|
-
}, []); // eslint-disable-line react-hooks/exhaustive-deps
|
|
119
|
-
const Lazy = useMemo(() => lazy(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
120
|
-
let bundleInfo;
|
|
121
|
-
try {
|
|
122
|
-
bundleInfo = yield getBundleInfo(src, fallbackSrc, exposedDependencies, cancelation.signal, retries, onRequestError);
|
|
123
|
-
}
|
|
124
|
-
catch (e) {
|
|
125
|
-
if (cancelation.signal.aborted) {
|
|
126
|
-
return {
|
|
127
|
-
default: () => null,
|
|
128
|
-
};
|
|
129
|
-
}
|
|
130
|
-
throw e;
|
|
131
|
-
}
|
|
132
|
-
const { urls, WebComponent, disposer, mismatch, mfeSupportsRerendering, } = bundleInfo;
|
|
133
|
-
if (mismatch) {
|
|
134
|
-
logService === null || logService === void 0 ? void 0 : logService.warning({
|
|
135
|
-
category: 'MicroFrontends.DependenciesMismatch',
|
|
136
|
-
message: 'Some of the package dependencies have incompatible versions.',
|
|
137
|
-
data: {
|
|
138
|
-
package: src,
|
|
139
|
-
dependencies: JSON.stringify(mismatch),
|
|
140
|
-
},
|
|
141
|
-
});
|
|
142
|
-
}
|
|
143
|
-
yield Promise.all(urls.js.map(url => {
|
|
144
|
-
const script = Array.from(document.scripts).find(({ src }) => src === url);
|
|
145
|
-
if (!script) {
|
|
146
|
-
return new Promise(resolve => {
|
|
147
|
-
const script = document.createElement('script');
|
|
148
|
-
script.crossOrigin = 'anonymous';
|
|
149
|
-
script.onload = () => {
|
|
150
|
-
script.dataset.webComponent = WebComponent;
|
|
151
|
-
script.onload = null;
|
|
152
|
-
resolve();
|
|
153
|
-
};
|
|
154
|
-
script.async = true;
|
|
155
|
-
script.src = url;
|
|
156
|
-
document.body.append(script);
|
|
157
|
-
});
|
|
158
|
-
}
|
|
159
|
-
else if (!script.dataset.webComponent) {
|
|
160
|
-
return new Promise(resolve => {
|
|
161
|
-
const originalOnload = script.onload;
|
|
162
|
-
script.onload = (...args) => {
|
|
163
|
-
originalOnload === null || originalOnload === void 0 ? void 0 : originalOnload.call(script, ...args);
|
|
164
|
-
script.onload = null;
|
|
165
|
-
resolve();
|
|
166
|
-
};
|
|
167
|
-
});
|
|
168
|
-
}
|
|
169
|
-
return Promise.resolve();
|
|
170
|
-
}));
|
|
171
|
-
const handleRef = (webComponent) => {
|
|
172
|
-
webComponent === null || webComponent === void 0 ? void 0 : webComponent.provide({
|
|
173
|
-
logService,
|
|
174
|
-
historyManager,
|
|
175
|
-
exposedDependencies,
|
|
176
|
-
eventBus,
|
|
177
|
-
basename,
|
|
178
|
-
onReady: () => {
|
|
179
|
-
setIsLoading(false);
|
|
180
|
-
},
|
|
181
|
-
onDispose: () => {
|
|
182
|
-
disposer();
|
|
183
|
-
},
|
|
184
|
-
});
|
|
185
|
-
};
|
|
186
|
-
return {
|
|
187
|
-
default: function LazyComponent(props) {
|
|
188
|
-
const stringifiedData = useMemo(() => JSON.stringify(props.data), [props.data]);
|
|
189
|
-
/*
|
|
190
|
-
* Set key for rendering the web component so that if the data from the Host change,
|
|
191
|
-
* and the MFE's version of startup doesn't support watching for data changes, then
|
|
192
|
-
* the web component will be re-mounted whenever the data changes.
|
|
193
|
-
* This is only used as a fallback when the MFE's version is older.
|
|
194
|
-
*/
|
|
195
|
-
const key = mfeSupportsRerendering
|
|
196
|
-
? undefined
|
|
197
|
-
: stringifiedData;
|
|
198
|
-
/*
|
|
199
|
-
* Convert camelCase data props to kebab-case data attributes, prepended with data-
|
|
200
|
-
* Ex: fooBar -> data-foo-bar
|
|
201
|
-
*/
|
|
202
|
-
const dataAttrs = useMemo(() => {
|
|
203
|
-
var _a;
|
|
204
|
-
return Object.fromEntries(Object.entries((_a = props.data) !== null && _a !== void 0 ? _a : {}).map(([key, value]) => [
|
|
205
|
-
'data-' +
|
|
206
|
-
key.replace(/[A-Z]/g, letter => '-' + letter.toLowerCase()),
|
|
207
|
-
value,
|
|
208
|
-
]));
|
|
209
|
-
}, [props.data]);
|
|
210
|
-
return (_jsx(WebComponent, Object.assign({ ref: handleRef, class: props.className }, (urls.css.length
|
|
211
|
-
? {
|
|
212
|
-
'style-urls': encodeURIComponent(JSON.stringify(urls.css)),
|
|
213
|
-
}
|
|
214
|
-
: {}), dataAttrs, { "data-mfe-data": stringifiedData }), key));
|
|
215
|
-
},
|
|
216
|
-
};
|
|
217
|
-
})), [] // eslint-disable-line react-hooks/exhaustive-deps
|
|
218
|
-
);
|
|
219
|
-
return _jsx(Lazy, { data: props.data, className: props.className });
|
|
220
|
-
});
|
|
221
|
-
return Component;
|
|
222
|
-
}, [
|
|
223
|
-
src,
|
|
224
|
-
fallbackSrc,
|
|
23
|
+
const [logService, exposedDependencies = EXPOSED_DEPENDENCIES, eventBus = bus] = useOptionalDependencies(Log, EXPOSED_DEPENDENCIES_TOKEN, EVENT_BUS_TOKEN);
|
|
24
|
+
const cancelation = useCancelation();
|
|
25
|
+
const LoadingFallback = useMemo(() => getFallback(props.loadingFallback, 'Loading...'), [props.loadingFallback]);
|
|
26
|
+
const ErrorFallback = useMemo(() => getFallback(props.errorFallback, 'Something went wrong'), [props.errorFallback]);
|
|
27
|
+
const Loader = useMemo(() => lazyLoader({
|
|
28
|
+
basename,
|
|
29
|
+
cancelation,
|
|
225
30
|
exposedDependencies,
|
|
226
|
-
|
|
227
|
-
|
|
31
|
+
eventBus,
|
|
32
|
+
fallbackSrc,
|
|
228
33
|
logService,
|
|
229
|
-
|
|
34
|
+
onRequestError,
|
|
35
|
+
retries,
|
|
36
|
+
src,
|
|
37
|
+
LoadingFallback,
|
|
38
|
+
}), [
|
|
230
39
|
basename,
|
|
40
|
+
cancelation,
|
|
41
|
+
exposedDependencies,
|
|
231
42
|
eventBus,
|
|
43
|
+
logService,
|
|
44
|
+
onRequestError,
|
|
45
|
+
fallbackSrc,
|
|
46
|
+
retries,
|
|
47
|
+
src,
|
|
48
|
+
LoadingFallback,
|
|
232
49
|
]);
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
50
|
+
return (_jsx(ErrorBoundary, Object.assign({ moduleName: src, fallback: ErrorFallback }, { children: _jsx(Suspense, Object.assign({ fallback: _jsx(LoadingFallback, {}) }, { children: _jsx(Loader, { ref: ref, data: (_a = props.data) !== null && _a !== void 0 ? _a : {}, className: props.className }) })) })));
|
|
51
|
+
});
|
|
52
|
+
function lazyLoader(props) {
|
|
53
|
+
const { cancelation, eventBus } = props;
|
|
54
|
+
const LazyWebComponent = lazyWebComponent(props);
|
|
55
|
+
return forwardRef((props, ref) => {
|
|
56
|
+
useImperativeHandle(ref, () => eventBus, []);
|
|
57
|
+
useEffect(() => {
|
|
58
|
+
return () => {
|
|
59
|
+
cancelation.abort();
|
|
60
|
+
};
|
|
61
|
+
}, []);
|
|
62
|
+
return _jsx(LazyWebComponent, { data: props.data, className: props.className });
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
function lazyWebComponent(props) {
|
|
66
|
+
const { basename, cancelation, exposedDependencies, eventBus, fallbackSrc, logService, onRequestError, retries, src, LoadingFallback, } = props;
|
|
67
|
+
return lazy(() => __awaiter(this, void 0, void 0, function* () {
|
|
68
|
+
let bundleInfo;
|
|
69
|
+
try {
|
|
70
|
+
bundleInfo = yield getBundleInfo(src, fallbackSrc, exposedDependencies, cancelation.signal, retries, onRequestError);
|
|
236
71
|
}
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
72
|
+
catch (e) {
|
|
73
|
+
if (cancelation.signal.aborted) {
|
|
74
|
+
return {
|
|
75
|
+
default: () => null,
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
throw e;
|
|
242
79
|
}
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
80
|
+
validateBundleInfo(bundleInfo, { logService, packageName: src });
|
|
81
|
+
yield loadScripts(bundleInfo);
|
|
82
|
+
return {
|
|
83
|
+
default: webComponent({
|
|
84
|
+
basename,
|
|
85
|
+
bundleInfo,
|
|
86
|
+
eventBus,
|
|
87
|
+
exposedDependencies,
|
|
88
|
+
logService,
|
|
89
|
+
LoadingFallback,
|
|
90
|
+
}),
|
|
91
|
+
};
|
|
92
|
+
}));
|
|
93
|
+
}
|
|
94
|
+
function getFallback(node, message) {
|
|
95
|
+
return () => (node !== undefined ? node : _jsx("h2", { children: message }));
|
|
96
|
+
}
|
|
247
97
|
//# sourceMappingURL=loader.js.map
|
package/dist/loader.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../src/loader.tsx"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../src/loader.tsx"],"names":[],"mappings":"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"}
|
package/dist/register.d.ts
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
1
|
import { ComponentType } from 'react';
|
|
2
|
-
export
|
|
2
|
+
export interface RegisterOptions {
|
|
3
|
+
legacyRoot?: boolean;
|
|
4
|
+
}
|
|
5
|
+
export declare function register(Component: ComponentType, light: boolean, options?: RegisterOptions): void;
|
|
3
6
|
//# sourceMappingURL=register.d.ts.map
|
package/dist/register.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../src/register.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAM,aAAa,
|
|
1
|
+
{"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../src/register.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAM,aAAa,EAAa,MAAM,OAAO,CAAC;AAmCrD,MAAM,WAAW,eAAe;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,wBAAgB,QAAQ,CAAC,SAAS,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,eAAe,QAsM3F"}
|