@servicetitan/web-components 23.0.0 → 23.1.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/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.map +1 -1
- package/dist/register.js +1 -0
- package/dist/register.js.map +1 -1
- 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 +16 -17
- package/src/__tests__/event-bus.test.ts +3 -2
- package/src/__tests__/loader.test.tsx +17 -11
- 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 +1 -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
|
@@ -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.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../src/register.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAM,aAAa,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../src/register.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAM,aAAa,EAAE,MAAM,OAAO,CAAC;AAqC1C,wBAAgB,QAAQ,CAAC,SAAS,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,QAoMhE"}
|
package/dist/register.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
// eslint-disable-next-line react/no-deprecated
|
|
2
3
|
import { render, unmountComponentAtNode } from 'react-dom';
|
|
3
4
|
import { Log } from '@servicetitan/log-service';
|
|
4
5
|
import { DefaultPortalContext, TablePopupPropsContext } from '@servicetitan/design-system';
|
package/dist/register.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register.js","sourceRoot":"","sources":["../src/register.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"register.js","sourceRoot":"","sources":["../src/register.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { ExposedDependencies, GetJsonError } from '../common';
|
|
2
|
+
import { EntryPoints } from './get-entry-points';
|
|
3
|
+
export interface Metadata {
|
|
4
|
+
name: string;
|
|
5
|
+
bundledWith?: Record<string, string | undefined>;
|
|
6
|
+
sharedDependencies: Record<string, string>;
|
|
7
|
+
dependencies?: Record<string, string>;
|
|
8
|
+
entrypoints?: Record<string, {
|
|
9
|
+
css: string[];
|
|
10
|
+
js: string[];
|
|
11
|
+
}>;
|
|
12
|
+
}
|
|
13
|
+
export declare type BundleInfo = Awaited<ReturnType<typeof getBundleInfo>>;
|
|
14
|
+
export declare function getBundleInfo(mainPackageUrl: string, fallbackPackageUrl: string | undefined, exposedDependencies?: ExposedDependencies, signal?: AbortSignal, retries?: number, onRequestError?: (error: GetJsonError) => void): Promise<{
|
|
15
|
+
disposer: () => void;
|
|
16
|
+
mfeSupportsRerendering: boolean;
|
|
17
|
+
mismatch: Record<string, {
|
|
18
|
+
host: string;
|
|
19
|
+
package: string;
|
|
20
|
+
}> | undefined;
|
|
21
|
+
urls: EntryPoints;
|
|
22
|
+
WebComponent: any;
|
|
23
|
+
}>;
|
|
24
|
+
//# sourceMappingURL=get-bundle-info.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-bundle-info.d.ts","sourceRoot":"","sources":["../../src/utils/get-bundle-info.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAW,YAAY,EAAE,MAAM,WAAW,CAAC;AACvE,OAAO,EAAE,WAAW,EAAkB,MAAM,oBAAoB,CAAC;AAKjE,MAAM,WAAW,QAAQ;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACjD,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,GAAG,EAAE,MAAM,EAAE,CAAC;QAAC,EAAE,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;CACjE;AAED,oBAAY,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC,CAAC;AAEnE,wBAAsB,aAAa,CAC/B,cAAc,EAAE,MAAM,EACtB,kBAAkB,EAAE,MAAM,GAAG,SAAS,EACtC,mBAAmB,GAAE,mBAAwB,EAC7C,MAAM,CAAC,EAAE,WAAW,EACpB,OAAO,CAAC,EAAE,MAAM,EAChB,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI;;;;;;;;;GA+DjD"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import semver from 'semver';
|
|
11
|
+
import get from 'lodash.get';
|
|
12
|
+
import { getJson } from '../common';
|
|
13
|
+
import { getEntrypoints } from './get-entry-points';
|
|
14
|
+
import { getMFESupportsRerendering } from './get-mfe-supports-rerendering';
|
|
15
|
+
import { getVersionMismatches } from './get-version-mismatches';
|
|
16
|
+
import { isVersionedUrl } from './is-versioned-url';
|
|
17
|
+
export function getBundleInfo(mainPackageUrl, fallbackPackageUrl, exposedDependencies = {}, signal, retries, onRequestError) {
|
|
18
|
+
var _a;
|
|
19
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
20
|
+
const { data: metadata, url: packageUrl } = yield getMetadata({
|
|
21
|
+
fallbackPackageUrl,
|
|
22
|
+
mainPackageUrl,
|
|
23
|
+
onRequestError,
|
|
24
|
+
retries,
|
|
25
|
+
signal,
|
|
26
|
+
});
|
|
27
|
+
const { bundledWith, name, sharedDependencies } = metadata;
|
|
28
|
+
const exactPackageUrl = packageUrl.replace('/dist/metadata.json', '');
|
|
29
|
+
const cache = getCacheSetting(exactPackageUrl);
|
|
30
|
+
let dependencies;
|
|
31
|
+
if (metadata.dependencies) {
|
|
32
|
+
dependencies = metadata.dependencies;
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
const { data: packageJson } = yield getJson(`${exactPackageUrl}/package.json`, {
|
|
36
|
+
cache,
|
|
37
|
+
retries,
|
|
38
|
+
signal,
|
|
39
|
+
});
|
|
40
|
+
dependencies = packageJson.dependencies;
|
|
41
|
+
}
|
|
42
|
+
const mismatch = getVersionMismatches(exposedDependencies, dependencies, sharedDependencies);
|
|
43
|
+
const hasMismatch = !!Object.keys(mismatch).length;
|
|
44
|
+
const startupVersion = bundledWith === null || bundledWith === void 0 ? void 0 : bundledWith['@servicetitan/startup'];
|
|
45
|
+
const supportLightBundles = startupVersion && semver.gte(startupVersion, '17.0.0');
|
|
46
|
+
const embed = !hasMismatch && supportLightBundles;
|
|
47
|
+
const bundleType = embed ? 'light' : 'full';
|
|
48
|
+
const withBaseUrl = (path) => `${exactPackageUrl}/dist/bundle/${bundleType}/${path}`;
|
|
49
|
+
let entrypoints;
|
|
50
|
+
if ((_a = metadata.entrypoints) === null || _a === void 0 ? void 0 : _a[bundleType]) {
|
|
51
|
+
entrypoints = metadata.entrypoints[bundleType];
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
entrypoints = yield getEntrypoints(withBaseUrl('entrypoints.json'), cache);
|
|
55
|
+
}
|
|
56
|
+
const disposer = () => {
|
|
57
|
+
if (embed) {
|
|
58
|
+
const path = Object.values(sharedDependencies).shift();
|
|
59
|
+
if (path) {
|
|
60
|
+
get(window, path).getStorage().clear(name);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
const urls = Object.entries(entrypoints).reduce((result, [key, value]) => (Object.assign(Object.assign({}, result), { [key]: value.map(withBaseUrl) })), {});
|
|
65
|
+
return {
|
|
66
|
+
disposer,
|
|
67
|
+
mfeSupportsRerendering: getMFESupportsRerendering(bundledWith, dependencies),
|
|
68
|
+
mismatch: hasMismatch ? mismatch : undefined,
|
|
69
|
+
urls,
|
|
70
|
+
WebComponent: name,
|
|
71
|
+
};
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
function getMetadata(props) {
|
|
75
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
76
|
+
const { fallbackPackageUrl, mainPackageUrl, onRequestError, retries, signal } = props;
|
|
77
|
+
return getJson(`${mainPackageUrl}/dist/metadata.json`, {
|
|
78
|
+
cache: getCacheSetting(mainPackageUrl),
|
|
79
|
+
retries: fallbackPackageUrl ? 0 : retries,
|
|
80
|
+
onRequestError,
|
|
81
|
+
signal,
|
|
82
|
+
}).catch(e => {
|
|
83
|
+
if (!fallbackPackageUrl) {
|
|
84
|
+
throw e;
|
|
85
|
+
}
|
|
86
|
+
return getJson(`${fallbackPackageUrl}/dist/metadata.json`, {
|
|
87
|
+
retries,
|
|
88
|
+
onRequestError,
|
|
89
|
+
cache: getCacheSetting(fallbackPackageUrl),
|
|
90
|
+
signal,
|
|
91
|
+
});
|
|
92
|
+
});
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
function getCacheSetting(url) {
|
|
96
|
+
return isVersionedUrl(url) ? undefined : 'no-store';
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=get-bundle-info.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-bundle-info.js","sourceRoot":"","sources":["../../src/utils/get-bundle-info.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-entry-points.d.ts","sourceRoot":"","sources":["../../src/utils/get-entry-points.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,WAAW;IACxB,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,EAAE,EAAE,MAAM,EAAE,CAAC;CAChB;AAED,wBAAsB,cAAc,CAChC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,UAAU,GAAG,SAAS,EAC7B,MAAM,CAAC,EAAE,WAAW,GACrB,OAAO,CAAC,WAAW,CAAC,CAWtB"}
|