@lwrjs/everywhere 0.9.0-alpha.2 → 0.9.0-alpha.21
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/README.md +2 -7
- package/build/__generated_site_amd_modules__/1/application/amd/l/en-US/ai/amd-bootstrap/configuration/ci/-/-/s/1b0754f98a1d222fca718deb5838c625/config.js +10 -0
- package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/@lwrjs/app-service/amd-bootstrap/module/amd/v/0_9_0-alpha_21/s/c40e6caf07454ce13961de8ca76ab7f0/@lwrjs_app-service_amd-bootstrap_module_amd.js +18 -0
- package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwc/v/2_33_0/s/90a5f16131da45cef1653112862ca9dc/lwc.js +8969 -0
- package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/everywhereAmd/v/0_9_0-alpha_21/s/c538071acf5bde58e816967a14c465c3/lwr_everywhereAmd.js +66 -0
- package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/init/v/0_9_0-alpha_21/s/206e6e0af6f019fdfd86d87d56331bc2/lwr_init.js +97 -0
- package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/loader/v/{0_9_0-alpha_2/s/a7fb654bda624ba7d02dcd76e8d1217c → 0_9_0-alpha_21/s/64c5a2bb3dcf1759c879fc87bf2fdaf6}/lwr_loader.js +360 -131
- package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/metrics/v/0_9_0-alpha_21/s/3426e42c3e22ce07ab2adc62c4c523a0/lwr_metrics.js +66 -0
- package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/profiler/v/0_9_0-alpha_21/s/e25f3b0b8b5c096acebf847d0a83ea62/lwr_profiler.js +68 -0
- package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/vault/v/0_9_0-alpha_21/s/c92abd8c1fec2d7eff62e4b097abbe14/lwr_vault.js +21 -0
- package/build/__generated_site_amd_modules__/1/resource/amd/lwr-error-shim.js/v/{0_9_0-alpha_2 → 0_9_0-alpha_21/lwr-error-shim.js} +1 -1
- package/build/__generated_site_amd_modules__/1/resource/amd/lwr-loader-shim.js/v/{0_9_0-alpha_2 → 0_9_0-alpha_21/lwr-loader-shim.js} +18 -17
- package/build/amd-client.js +1 -2
- package/build/assets/amd/lwr-everywhere-debug.js +36 -23
- package/build/assets/amd/lwr-everywhere-min.js +1 -1
- package/build/assets/amd/lwr-everywhere.js +36 -23
- package/build/assets/core/lwr-everywhere-debug.js +33 -20
- package/build/assets/core/lwr-everywhere-min.js +1 -1
- package/build/assets/core/lwr-everywhere.js +33 -20
- package/build/assets/esm/lwr-everywhere-debug.js +4 -7
- package/build/assets/esm/lwr-everywhere-min.js +1 -1
- package/build/assets/esm/lwr-everywhere.js +4 -7
- package/build/esm-client.js +1 -2
- package/build/generate.js +4 -3
- package/build/index.js +2 -2
- package/build/modules/@salesforce/lds-default-luvio/lds-default-luvio.d.ts +24 -0
- package/build/modules/@salesforce/lds-default-luvio/lds-default-luvio.js +60 -0
- package/build/modules/lwr/everywhere/everywhere.d.ts +1 -1
- package/build/modules/lwr/everywhere/everywhere.js +8 -6
- package/build/modules/lwr/everywhereAmd/everywhereAmd.d.ts +1 -1
- package/build/modules/lwr/everywhereAmd/everywhereAmd.js +9 -11
- package/build/modules/lwr/everywhereEsm/everywhereEsm.js +1 -2
- package/build/modules/lwr/host/host.js +23 -27
- package/build/modules/lwr/setupLDS/network.d.ts +3 -0
- package/build/modules/lwr/setupLDS/network.js +88 -0
- package/build/modules/lwr/setupLDS/setupLDS.d.ts +2 -0
- package/build/modules/lwr/setupLDS/setupLDS.js +12 -0
- package/build/modules/lwr/setupNodeLDS/network.d.ts +3 -0
- package/build/modules/lwr/setupNodeLDS/network.js +88 -0
- package/build/modules/lwr/setupNodeLDS/setupNodeLDS.d.ts +2 -0
- package/build/modules/lwr/setupNodeLDS/setupNodeLDS.js +14 -0
- package/build/modules/lwr/vault/vault.d.ts +1 -1
- package/build/modules/lwr/vault/vault.js +3 -1
- package/build/utils.d.ts +1 -8
- package/build/utils.js +1 -4
- package/package.json +15 -8
- package/src/amd-client.ts +1 -2
- package/src/esm-client.ts +2 -3
- package/src/generate.ts +4 -3
- package/src/index.ts +2 -2
- package/src/utils.ts +2 -13
- package/build/__generated_site_amd_modules__/1/application/amd/l/en-US/ai/amd-bootstrap/configuration/ci/-/-/s/68e51659d71a9691c09702509beecf4f/config.js +0 -10
- package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/@lwrjs/app-service/amd-bootstrap/module/amd/v/0_9_0-alpha_2/s/c40e6caf07454ce13961de8ca76ab7f0/@lwrjs_app-service_amd-bootstrap_module_amd.js +0 -14
- package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwc/v/2_17_0/s/60dae7a83431c35c02c87ca8aaaa6044/lwc.js +0 -6244
- package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/everywhereAmd/v/0_9_0-alpha_2/s/e66806169480601930ec9cfca972815e/lwr_everywhereAmd.js +0 -48
- package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/init/v/0_9_0-alpha_2/s/6258bcb20cc2d5d6a9f3c5a6f9d0acaf/lwr_init.js +0 -58
- package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/metrics/v/0_9_0-alpha_2/s/dfbc827104d50ff7d16b59c9d0e06aca/lwr_metrics.js +0 -56
- package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/profiler/v/0_9_0-alpha_2/s/5a10236d8c52bc9f6dee22875cd7016d/lwr_profiler.js +0 -51
- package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/vault/v/0_9_0-alpha_2/s/6cbce1f9b7e815ee862b26f37ff4c76e/lwr_vault.js +0 -13
- package/build/__generated_site_amd_modules__/en-US/index.html +0 -26
- package/build/__generated_site_amd_modules__/index.html +0 -26
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
LWR.define('lwr/metrics/v/0_9_0-alpha_21', ['exports'], function (exports) { 'use strict';
|
|
2
|
+
|
|
3
|
+
// Bootstrap / shim
|
|
4
|
+
const BOOTSTRAP_PREFIX = 'lwr.bootstrap.';
|
|
5
|
+
const BOOTSTRAP_END = `${BOOTSTRAP_PREFIX}end`;
|
|
6
|
+
const BOOTSTRAP_ERROR = `${BOOTSTRAP_PREFIX}error`;
|
|
7
|
+
const BOOTSTRAP_ERROR_COUNT = `${BOOTSTRAP_ERROR}.count`;
|
|
8
|
+
const BOOTSTRAP_DURATION = `${BOOTSTRAP_PREFIX}duration`;
|
|
9
|
+
|
|
10
|
+
// Loader: modules
|
|
11
|
+
const LOADER_PREFIX = 'lwr.loader.';
|
|
12
|
+
const MODULE_DEFINE = `${LOADER_PREFIX}module.define`;
|
|
13
|
+
const MODULE_DEFINE_COUNT = `${MODULE_DEFINE}.count`;
|
|
14
|
+
const MODULE_FETCH = `${LOADER_PREFIX}module.fetch`;
|
|
15
|
+
const MODULE_FETCH_COUNT = `${MODULE_FETCH}.count`;
|
|
16
|
+
const MODULE_FETCH_DURATION = `${MODULE_FETCH}.duration`;
|
|
17
|
+
const MODULE_ERROR = `${LOADER_PREFIX}module.error`;
|
|
18
|
+
const MODULE_ERROR_COUNT = `${MODULE_ERROR}.count`;
|
|
19
|
+
|
|
20
|
+
// Loader: mappings
|
|
21
|
+
const MAPPINGS_FETCH = `${LOADER_PREFIX}mappings.fetch`;
|
|
22
|
+
const MAPPINGS_FETCH_COUNT = `${MAPPINGS_FETCH}.count`;
|
|
23
|
+
const MAPPINGS_FETCH_DURATION = `${MAPPINGS_FETCH}.duration`;
|
|
24
|
+
const MAPPINGS_ERROR = `${LOADER_PREFIX}mappings.error`;
|
|
25
|
+
const MAPPINGS_ERROR_COUNT = `${MAPPINGS_ERROR}.count`;
|
|
26
|
+
|
|
27
|
+
// Router
|
|
28
|
+
const ROUTER_PREFIX = 'lwr.router.';
|
|
29
|
+
const ROUTER_NAV = `${ROUTER_PREFIX}navigate`;
|
|
30
|
+
const ROUTER_NAV_COUNT = `${ROUTER_NAV}.count`;
|
|
31
|
+
const ROUTER_NAV_DURATION = `${ROUTER_NAV}.duration`;
|
|
32
|
+
const ROUTER_VIEW = `${ROUTER_PREFIX}view`;
|
|
33
|
+
const ROUTER_VIEW_DURATION = `${ROUTER_VIEW}.duration`;
|
|
34
|
+
const ROUTER_ERROR = `${ROUTER_PREFIX}error`;
|
|
35
|
+
const ROUTER_ERROR_COUNT = `${ROUTER_ERROR}.count`;
|
|
36
|
+
|
|
37
|
+
exports.BOOTSTRAP_DURATION = BOOTSTRAP_DURATION;
|
|
38
|
+
exports.BOOTSTRAP_END = BOOTSTRAP_END;
|
|
39
|
+
exports.BOOTSTRAP_ERROR = BOOTSTRAP_ERROR;
|
|
40
|
+
exports.BOOTSTRAP_ERROR_COUNT = BOOTSTRAP_ERROR_COUNT;
|
|
41
|
+
exports.BOOTSTRAP_PREFIX = BOOTSTRAP_PREFIX;
|
|
42
|
+
exports.LOADER_PREFIX = LOADER_PREFIX;
|
|
43
|
+
exports.MAPPINGS_ERROR = MAPPINGS_ERROR;
|
|
44
|
+
exports.MAPPINGS_ERROR_COUNT = MAPPINGS_ERROR_COUNT;
|
|
45
|
+
exports.MAPPINGS_FETCH = MAPPINGS_FETCH;
|
|
46
|
+
exports.MAPPINGS_FETCH_COUNT = MAPPINGS_FETCH_COUNT;
|
|
47
|
+
exports.MAPPINGS_FETCH_DURATION = MAPPINGS_FETCH_DURATION;
|
|
48
|
+
exports.MODULE_DEFINE = MODULE_DEFINE;
|
|
49
|
+
exports.MODULE_DEFINE_COUNT = MODULE_DEFINE_COUNT;
|
|
50
|
+
exports.MODULE_ERROR = MODULE_ERROR;
|
|
51
|
+
exports.MODULE_ERROR_COUNT = MODULE_ERROR_COUNT;
|
|
52
|
+
exports.MODULE_FETCH = MODULE_FETCH;
|
|
53
|
+
exports.MODULE_FETCH_COUNT = MODULE_FETCH_COUNT;
|
|
54
|
+
exports.MODULE_FETCH_DURATION = MODULE_FETCH_DURATION;
|
|
55
|
+
exports.ROUTER_ERROR = ROUTER_ERROR;
|
|
56
|
+
exports.ROUTER_ERROR_COUNT = ROUTER_ERROR_COUNT;
|
|
57
|
+
exports.ROUTER_NAV = ROUTER_NAV;
|
|
58
|
+
exports.ROUTER_NAV_COUNT = ROUTER_NAV_COUNT;
|
|
59
|
+
exports.ROUTER_NAV_DURATION = ROUTER_NAV_DURATION;
|
|
60
|
+
exports.ROUTER_PREFIX = ROUTER_PREFIX;
|
|
61
|
+
exports.ROUTER_VIEW = ROUTER_VIEW;
|
|
62
|
+
exports.ROUTER_VIEW_DURATION = ROUTER_VIEW_DURATION;
|
|
63
|
+
|
|
64
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
65
|
+
|
|
66
|
+
});
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
LWR.define('lwr/profiler/v/0_9_0-alpha_21', ['exports'], function (exports) { 'use strict';
|
|
2
|
+
|
|
3
|
+
var Phase;
|
|
4
|
+
(function (Phase) {
|
|
5
|
+
Phase[Phase["Start"] = 0] = "Start";
|
|
6
|
+
Phase[Phase["End"] = 1] = "End";
|
|
7
|
+
})(Phase || (Phase = {}));
|
|
8
|
+
// Attach a custom dispatcher
|
|
9
|
+
let customDispatcher;
|
|
10
|
+
function attachDispatcher(dispatcher) {
|
|
11
|
+
customDispatcher = dispatcher;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
// Check if the Performance API is available
|
|
15
|
+
// e.g. JSDom (used in Jest) doesn't implement these
|
|
16
|
+
const perf = globalThis.performance;
|
|
17
|
+
const isPerfSupported = typeof perf !== 'undefined' && typeof perf.mark === 'function' && typeof perf.clearMarks === 'function' && typeof perf.measure === 'function' && typeof perf.clearMeasures === 'function';
|
|
18
|
+
|
|
19
|
+
// For marking request metrics
|
|
20
|
+
// Fallback to the Performance API if there is no custom dispatcher
|
|
21
|
+
function logOperationStart({
|
|
22
|
+
id,
|
|
23
|
+
specifier
|
|
24
|
+
}) {
|
|
25
|
+
if (customDispatcher) {
|
|
26
|
+
customDispatcher({
|
|
27
|
+
id,
|
|
28
|
+
phase: Phase.Start,
|
|
29
|
+
specifier
|
|
30
|
+
});
|
|
31
|
+
} else if (isPerfSupported) {
|
|
32
|
+
perf.mark(id + (specifier ? `.${specifier}` : ''));
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
// For measuring duration metrics
|
|
37
|
+
// Fallback to the Performance API if there is no custom dispatcher
|
|
38
|
+
/* istanbul ignore next */
|
|
39
|
+
function logOperationEnd({
|
|
40
|
+
id,
|
|
41
|
+
specifier
|
|
42
|
+
}) {
|
|
43
|
+
if (customDispatcher) {
|
|
44
|
+
customDispatcher({
|
|
45
|
+
id,
|
|
46
|
+
phase: Phase.End,
|
|
47
|
+
specifier
|
|
48
|
+
});
|
|
49
|
+
} else if (isPerfSupported) {
|
|
50
|
+
const suffix = specifier ? `.${specifier}` : '';
|
|
51
|
+
const markName = id + suffix;
|
|
52
|
+
const measureName = `${id}.duration${suffix}`;
|
|
53
|
+
perf.measure(measureName, markName);
|
|
54
|
+
|
|
55
|
+
// Clear the created mark and measure to avoid filling the performance entry buffer
|
|
56
|
+
// Even if they get deleted, existing PerformanceObservers preserve copies of the entries
|
|
57
|
+
perf.clearMarks(markName);
|
|
58
|
+
perf.clearMeasures(measureName);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
exports.attachDispatcher = attachDispatcher;
|
|
63
|
+
exports.logOperationEnd = logOperationEnd;
|
|
64
|
+
exports.logOperationStart = logOperationStart;
|
|
65
|
+
|
|
66
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
67
|
+
|
|
68
|
+
});
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
LWR.define('lwr/vault/v/0_9_0-alpha_21', ['exports'], function (exports) { 'use strict';
|
|
2
|
+
|
|
3
|
+
// Credential vault for storing setters and subscribers for OAuth info
|
|
4
|
+
// This module is a SINGLETON and must be excluded from ESM bundling
|
|
5
|
+
|
|
6
|
+
let authInfo;
|
|
7
|
+
|
|
8
|
+
// Get and set the OAuth info
|
|
9
|
+
function getAuthInfo() {
|
|
10
|
+
return authInfo;
|
|
11
|
+
}
|
|
12
|
+
function setAuthInfo(ai) {
|
|
13
|
+
authInfo = ai;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
exports.getAuthInfo = getAuthInfo;
|
|
17
|
+
exports.setAuthInfo = setAuthInfo;
|
|
18
|
+
|
|
19
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
20
|
+
|
|
21
|
+
});
|
|
@@ -4,5 +4,5 @@
|
|
|
4
4
|
* SPDX-License-Identifier: MIT
|
|
5
5
|
* For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
|
|
6
6
|
*/
|
|
7
|
-
/* LWR Error Shim v0.9.0-alpha.
|
|
7
|
+
/* LWR Error Shim v0.9.0-alpha.21 */
|
|
8
8
|
!function(){"use strict";if(!(globalThis.LWR&&globalThis.LWR.define)){const o=new Error("The LWR application failed to bootstrap");if(!globalThis.LWR||!globalThis.LWR.onError)throw o;globalThis.LWR.onError(o)}}();
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* SPDX-License-Identifier: MIT
|
|
5
5
|
* For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
|
|
6
6
|
*/
|
|
7
|
-
/* LWR Module Loader Shim v0.9.0-alpha.
|
|
7
|
+
/* LWR Module Loader Shim v0.9.0-alpha.21 */
|
|
8
8
|
(function () {
|
|
9
9
|
'use strict';
|
|
10
10
|
|
|
@@ -13,23 +13,23 @@
|
|
|
13
13
|
const BOOTSTRAP_ERROR = `${BOOTSTRAP_PREFIX}error`;
|
|
14
14
|
|
|
15
15
|
var Phase;
|
|
16
|
-
|
|
17
16
|
(function (Phase) {
|
|
18
17
|
Phase[Phase["Start"] = 0] = "Start";
|
|
19
18
|
Phase[Phase["End"] = 1] = "End";
|
|
20
19
|
})(Phase || (Phase = {}));
|
|
21
|
-
|
|
22
20
|
// Attach a custom dispatcher
|
|
23
21
|
let customDispatcher;
|
|
24
22
|
function attachDispatcher(dispatcher) {
|
|
25
23
|
customDispatcher = dispatcher;
|
|
26
|
-
}
|
|
27
|
-
// e.g. JSDom (used in Jest) doesn't implement these
|
|
24
|
+
}
|
|
28
25
|
|
|
26
|
+
// Check if the Performance API is available
|
|
27
|
+
// e.g. JSDom (used in Jest) doesn't implement these
|
|
29
28
|
const perf = globalThis.performance;
|
|
30
|
-
const isPerfSupported = typeof perf !== 'undefined' && typeof perf.mark === 'function' && typeof perf.clearMarks === 'function' && typeof perf.measure === 'function' && typeof perf.clearMeasures === 'function';
|
|
31
|
-
// Fallback to the Performance API if there is no custom dispatcher
|
|
29
|
+
const isPerfSupported = typeof perf !== 'undefined' && typeof perf.mark === 'function' && typeof perf.clearMarks === 'function' && typeof perf.measure === 'function' && typeof perf.clearMeasures === 'function';
|
|
32
30
|
|
|
31
|
+
// For marking request metrics
|
|
32
|
+
// Fallback to the Performance API if there is no custom dispatcher
|
|
33
33
|
function logOperationStart({
|
|
34
34
|
id,
|
|
35
35
|
specifier
|
|
@@ -43,11 +43,11 @@
|
|
|
43
43
|
} else if (isPerfSupported) {
|
|
44
44
|
perf.mark(id + (specifier ? `.${specifier}` : ''));
|
|
45
45
|
}
|
|
46
|
-
}
|
|
47
|
-
// Fallback to the Performance API if there is no custom dispatcher
|
|
46
|
+
}
|
|
48
47
|
|
|
48
|
+
// For measuring duration metrics
|
|
49
|
+
// Fallback to the Performance API if there is no custom dispatcher
|
|
49
50
|
/* istanbul ignore next */
|
|
50
|
-
|
|
51
51
|
function logOperationEnd({
|
|
52
52
|
id,
|
|
53
53
|
specifier
|
|
@@ -62,9 +62,10 @@
|
|
|
62
62
|
const suffix = specifier ? `.${specifier}` : '';
|
|
63
63
|
const markName = id + suffix;
|
|
64
64
|
const measureName = `${id}.duration${suffix}`;
|
|
65
|
-
perf.measure(measureName, markName);
|
|
66
|
-
// Even if they get deleted, existing PerformanceObservers preserve copies of the entries
|
|
65
|
+
perf.measure(measureName, markName);
|
|
67
66
|
|
|
67
|
+
// Clear the created mark and measure to avoid filling the performance entry buffer
|
|
68
|
+
// Even if they get deleted, existing PerformanceObservers preserve copies of the entries
|
|
68
69
|
perf.clearMarks(markName);
|
|
69
70
|
perf.clearMeasures(measureName);
|
|
70
71
|
}
|
|
@@ -140,7 +141,7 @@
|
|
|
140
141
|
// Parse configuration
|
|
141
142
|
this.global = global;
|
|
142
143
|
this.config = global.LWR;
|
|
143
|
-
this.loaderSpecifier = 'lwr/loader/v/0_9_0-
|
|
144
|
+
this.loaderSpecifier = 'lwr/loader/v/0_9_0-alpha_21';
|
|
144
145
|
// Set up error handler
|
|
145
146
|
this.errorHandler = this.config.onError;
|
|
146
147
|
// Set up the temporary LWR.define function and customInit hook
|
|
@@ -203,7 +204,7 @@
|
|
|
203
204
|
endpoints: this.config.endpoints,
|
|
204
205
|
baseUrl: this.config.baseUrl,
|
|
205
206
|
profiler: { logOperationStart, logOperationEnd },
|
|
206
|
-
// TODO: can be removed following https://github.com/salesforce/lwr/issues/1087
|
|
207
|
+
// TODO: can be removed following https://github.com/salesforce-experience-platform-emu/lwr/issues/1087
|
|
207
208
|
appMetadata: {
|
|
208
209
|
appId: this.config.appId,
|
|
209
210
|
bootstrapModule: this.config.bootstrapModule,
|
|
@@ -242,7 +243,7 @@
|
|
|
242
243
|
const exporter = (exports) => {
|
|
243
244
|
Object.assign(exports, { logOperationStart, logOperationEnd });
|
|
244
245
|
};
|
|
245
|
-
loader.define('lwr/profiler/v/0_9_0-
|
|
246
|
+
loader.define('lwr/profiler/v/0_9_0-alpha_21', ['exports'], exporter);
|
|
246
247
|
}
|
|
247
248
|
// Set up the application globals, import map, root custom element...
|
|
248
249
|
mountApp(loader) {
|
|
@@ -303,8 +304,8 @@
|
|
|
303
304
|
// The loader module is ALWAYS required
|
|
304
305
|
const GLOBAL = globalThis;
|
|
305
306
|
GLOBAL.LWR.requiredModules = GLOBAL.LWR.requiredModules || [];
|
|
306
|
-
if (GLOBAL.LWR.requiredModules.indexOf('lwr/loader/v/0_9_0-
|
|
307
|
-
GLOBAL.LWR.requiredModules.push('lwr/loader/v/0_9_0-
|
|
307
|
+
if (GLOBAL.LWR.requiredModules.indexOf('lwr/loader/v/0_9_0-alpha_21') < 0) {
|
|
308
|
+
GLOBAL.LWR.requiredModules.push('lwr/loader/v/0_9_0-alpha_21');
|
|
308
309
|
}
|
|
309
310
|
new LoaderShim(GLOBAL);
|
|
310
311
|
|
package/build/amd-client.js
CHANGED
|
@@ -6,8 +6,7 @@ import { Loader } from 'lwr/loader';
|
|
|
6
6
|
// Process the LWR Client Bootstrap Config
|
|
7
7
|
const configOptions = '$REPLACE_CLIENT_BOOTSTRAP_OPTIONS$';
|
|
8
8
|
const configuration = getConfiguration(configOptions);
|
|
9
|
-
const { bootstrapModule, endpoints, baseUrl, imports, index } = configuration
|
|
10
|
-
globalThis.process = { env: { NODE_ENV: configuration.options.NODE_ENV } }; // Required by LWC
|
|
9
|
+
const { bootstrapModule, endpoints, baseUrl, imports, index } = configuration;
|
|
11
10
|
// Initialize the AMD loader (its code is bundled into the LWR Everywhere module)
|
|
12
11
|
const loader = new Loader({ endpoints, baseUrl });
|
|
13
12
|
loader.define('lwr/loader/v/$REPLACE_MODULE_VERSION$', ['exports'], (exports) => {
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* SPDX-License-Identifier: MIT
|
|
5
5
|
* For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
|
|
6
6
|
*/
|
|
7
|
+
globalThis.process = { env: { NODE_ENV: 'development' } };
|
|
7
8
|
// Construct the Client Bootstrap Config object
|
|
8
9
|
function getConfiguration(options) {
|
|
9
10
|
const { format, server, apiVersion, apiPrefix, locale, bundle, debug } = options;
|
|
@@ -17,7 +18,7 @@ function getConfiguration(options) {
|
|
|
17
18
|
? `${ORIGIN}${PREFIX}/bundle/${format}/${POSTFIX}${BUNDLE_ID}-0/module/mi/`
|
|
18
19
|
: `${ORIGIN}${PREFIX}/module/${format}/${POSTFIX}/mi/`;
|
|
19
20
|
// Component specifiers and URIs
|
|
20
|
-
const BOOT_MODULE = `lwr/everywhere${format === 'esm' ? 'Esm' : 'Amd'}/v/0_9_0-
|
|
21
|
+
const BOOT_MODULE = `lwr/everywhere${format === 'esm' ? 'Esm' : 'Amd'}/v/0_9_0-alpha_21`;
|
|
21
22
|
const BOOT_URI = `${ENDPOINT}${encodeURIComponent(BOOT_MODULE)}/latest${debug ? '?debug' : ''}`;
|
|
22
23
|
// Client Bootstrap Config
|
|
23
24
|
const config = {
|
|
@@ -38,10 +39,7 @@ function getConfiguration(options) {
|
|
|
38
39
|
if (debug && config.endpoints) {
|
|
39
40
|
config.endpoints.modifiers = { debug: 'true' };
|
|
40
41
|
}
|
|
41
|
-
return
|
|
42
|
-
options: { NODE_ENV: debug ? 'development' : 'production' },
|
|
43
|
-
config, // globalThis.LWR
|
|
44
|
-
};
|
|
42
|
+
return config;
|
|
45
43
|
}
|
|
46
44
|
|
|
47
45
|
/**
|
|
@@ -50,7 +48,7 @@ function getConfiguration(options) {
|
|
|
50
48
|
* SPDX-License-Identifier: MIT
|
|
51
49
|
* For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
|
|
52
50
|
*/
|
|
53
|
-
/* LWR Module Loader v0.9.0-alpha.
|
|
51
|
+
/* LWR Module Loader v0.9.0-alpha.21 */
|
|
54
52
|
const templateRegex = /\{([0-9]+)\}/g;
|
|
55
53
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
56
54
|
function templateString(template, args) {
|
|
@@ -347,11 +345,13 @@ if (hasDocument) {
|
|
|
347
345
|
|
|
348
346
|
// Bootstrap / shim
|
|
349
347
|
|
|
348
|
+
// Loader: modules
|
|
350
349
|
const LOADER_PREFIX = 'lwr.loader.';
|
|
351
350
|
const MODULE_DEFINE = `${LOADER_PREFIX}module.define`;
|
|
352
351
|
const MODULE_FETCH = `${LOADER_PREFIX}module.fetch`;
|
|
353
352
|
const MODULE_ERROR = `${LOADER_PREFIX}module.error`;
|
|
354
353
|
|
|
354
|
+
// Loader: mappings
|
|
355
355
|
const MAPPINGS_FETCH = `${LOADER_PREFIX}mappings.fetch`;
|
|
356
356
|
const MAPPINGS_ERROR = `${LOADER_PREFIX}mappings.error`;
|
|
357
357
|
|
|
@@ -987,7 +987,7 @@ class ModuleRegistry {
|
|
|
987
987
|
moduleDefault = { default: moduleDefault };
|
|
988
988
|
// __defaultInterop is ONLY used to support backwards compatibility
|
|
989
989
|
// of importing default exports the "wrong" way (when not using named exports).
|
|
990
|
-
// See https://github.com/salesforce/lwr/pull/816
|
|
990
|
+
// See https://github.com/salesforce-experience-platform-emu/lwr/pull/816
|
|
991
991
|
Object.defineProperty(moduleDefault, '__defaultInterop', { value: true });
|
|
992
992
|
}
|
|
993
993
|
// if no return value, then we are using the exports object
|
|
@@ -1209,7 +1209,7 @@ class Loader {
|
|
|
1209
1209
|
const appId = match && match[1];
|
|
1210
1210
|
config.appMetadata.appId = appId;
|
|
1211
1211
|
}
|
|
1212
|
-
// TODO: https://github.com/salesforce/lwr/issues/1087
|
|
1212
|
+
// TODO: https://github.com/salesforce-experience-platform-emu/lwr/issues/1087
|
|
1213
1213
|
this.services = Object.freeze({
|
|
1214
1214
|
addLoaderPlugin: this.registry.addLoaderPlugin.bind(this.registry),
|
|
1215
1215
|
handleStaleModule: this.registry.registerHandleStaleModuleHook.bind(this.registry),
|
|
@@ -1284,11 +1284,10 @@ class Loader {
|
|
|
1284
1284
|
// Process the LWR Client Bootstrap Config
|
|
1285
1285
|
const configOptions = { "format": "amd", "apiVersion": "1", "apiPrefix": "", "bundle": false, "debug": true };
|
|
1286
1286
|
const configuration = getConfiguration(configOptions);
|
|
1287
|
-
const { bootstrapModule, endpoints, baseUrl, imports, index } = configuration
|
|
1288
|
-
globalThis.process = { env: { NODE_ENV: configuration.options.NODE_ENV } }; // Required by LWC
|
|
1287
|
+
const { bootstrapModule, endpoints, baseUrl, imports, index } = configuration;
|
|
1289
1288
|
// Initialize the AMD loader (its code is bundled into the LWR Everywhere module)
|
|
1290
1289
|
const loader = new Loader({ endpoints, baseUrl });
|
|
1291
|
-
loader.define('lwr/loader/v/0_9_0-
|
|
1290
|
+
loader.define('lwr/loader/v/0_9_0-alpha_21', ['exports'], (exports) => {
|
|
1292
1291
|
Object.assign(exports, {
|
|
1293
1292
|
define: loader.define.bind(loader),
|
|
1294
1293
|
load: loader.load.bind(loader),
|
|
@@ -1297,9 +1296,11 @@ loader.define('lwr/loader/v/0_9_0-alpha_2', ['exports'], (exports) => {
|
|
|
1297
1296
|
await loader.registerImportMappings({ imports, index }, [bootstrapModule]);
|
|
1298
1297
|
globalThis.LWR = Object.freeze({ define: loader.define.bind(loader) });
|
|
1299
1298
|
// Define preload modules (ie: ABS, vault, etc) BEFORE loading them
|
|
1300
|
-
LWR.define(
|
|
1301
|
-
|
|
1302
|
-
|
|
1299
|
+
LWR.define('lwr/everywhereAmd/v/0_9_0-alpha_21', ['exports', 'lwr/vault/v/0_9_0-alpha_21'], function (exports, _0_9_0Alpha_21) {
|
|
1300
|
+
// IMPORTANT: Do not add any static imports to this file that are not bundled with the amd-client
|
|
1301
|
+
// Do an OAuthed fetch
|
|
1302
|
+
async function authFetch(url, accept = 'javascript') {
|
|
1303
|
+
const authInfo = _0_9_0Alpha_21.getAuthInfo();
|
|
1303
1304
|
if (authInfo) {
|
|
1304
1305
|
return fetch(url, {
|
|
1305
1306
|
headers: {
|
|
@@ -1308,44 +1309,56 @@ LWR.define("lwr/everywhereAmd/v/0_9_0-alpha_2", ["exports", "lwr/vault/v/0_9_0-a
|
|
|
1308
1309
|
}
|
|
1309
1310
|
});
|
|
1310
1311
|
}
|
|
1311
|
-
return null;
|
|
1312
|
+
return null; // defer to loader
|
|
1312
1313
|
}
|
|
1314
|
+
// Add a hook for adding OAuth headers to module and mapping requests
|
|
1315
|
+
// Workaround: core does not have proper versioning; replace all versions with 0_0_1
|
|
1313
1316
|
function everywhereHooks(serviceAPI, mappingEndpoint, coreVersion) {
|
|
1314
1317
|
serviceAPI.addLoaderPlugin({
|
|
1315
1318
|
loadModule: async (url) => {
|
|
1316
1319
|
return authFetch(url);
|
|
1317
1320
|
},
|
|
1318
1321
|
loadMapping: async (specifier) => {
|
|
1319
|
-
const res = await authFetch(`${mappingEndpoint}${encodeURIComponent(specifier)}`,
|
|
1322
|
+
const res = await authFetch(`${mappingEndpoint}${encodeURIComponent(specifier)}`, 'json');
|
|
1320
1323
|
if (res && res.ok) {
|
|
1321
1324
|
return res.json();
|
|
1322
1325
|
}
|
|
1323
1326
|
return null;
|
|
1324
1327
|
},
|
|
1325
|
-
resolveModule:
|
|
1328
|
+
resolveModule: specifier => {
|
|
1329
|
+
// Workaround W-8010259 (dynamic imports without versions)
|
|
1330
|
+
// by adding a default version to version-less specifiers
|
|
1326
1331
|
if (specifier && !/\/v\/[^/]+?$/.test(specifier)) {
|
|
1327
1332
|
return `${specifier}/v/${coreVersion}`;
|
|
1328
1333
|
}
|
|
1329
|
-
return null;
|
|
1334
|
+
return null; // defer to loader
|
|
1330
1335
|
}
|
|
1331
1336
|
});
|
|
1332
1337
|
}
|
|
1333
1338
|
function initAmd(services, mappingEndpoint, coreVersion) {
|
|
1339
|
+
// Initialize the loader hooks for LWR-S endpoints
|
|
1334
1340
|
if (mappingEndpoint.match(/\/v5\d\.0\//)) {
|
|
1335
1341
|
everywhereHooks(services, mappingEndpoint, coreVersion);
|
|
1336
1342
|
}
|
|
1337
1343
|
}
|
|
1344
|
+
// Export the LWRE authenticate() API
|
|
1345
|
+
// This is a duplicate of the function exported from "lwr/everywhere"
|
|
1346
|
+
// because it MUST be bundled into the LWRE module via "lwr/everywhereAmd"
|
|
1338
1347
|
function authenticate(authInfo) {
|
|
1348
|
+
// Put OAuth info into the vault
|
|
1339
1349
|
if (authInfo) {
|
|
1340
|
-
|
|
1350
|
+
_0_9_0Alpha_21.setAuthInfo(authInfo);
|
|
1341
1351
|
}
|
|
1342
1352
|
}
|
|
1343
1353
|
exports.authenticate = authenticate;
|
|
1344
1354
|
exports.initAmd = initAmd;
|
|
1345
|
-
Object.defineProperty(exports,
|
|
1355
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
1346
1356
|
});
|
|
1347
|
-
LWR.define(
|
|
1357
|
+
LWR.define('lwr/vault/v/0_9_0-alpha_21', ['exports'], function (exports) {
|
|
1358
|
+
// Credential vault for storing setters and subscribers for OAuth info
|
|
1359
|
+
// This module is a SINGLETON and must be excluded from ESM bundling
|
|
1348
1360
|
let authInfo;
|
|
1361
|
+
// Get and set the OAuth info
|
|
1349
1362
|
function getAuthInfo() {
|
|
1350
1363
|
return authInfo;
|
|
1351
1364
|
}
|
|
@@ -1354,11 +1367,11 @@ LWR.define("lwr/vault/v/0_9_0-alpha_2", ["exports"], function (exports) {
|
|
|
1354
1367
|
}
|
|
1355
1368
|
exports.getAuthInfo = getAuthInfo;
|
|
1356
1369
|
exports.setAuthInfo = setAuthInfo;
|
|
1357
|
-
Object.defineProperty(exports,
|
|
1370
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
1358
1371
|
});
|
|
1359
1372
|
// Set up the AMD loader hooks for OAuth
|
|
1360
1373
|
const { initAmd, authenticate } = await loader.load(bootstrapModule);
|
|
1361
|
-
initAmd(loader.services, endpoints?.uris.mapping, '0_9_0-
|
|
1374
|
+
initAmd(loader.services, endpoints?.uris.mapping, '0_9_0-alpha_21');
|
|
1362
1375
|
// Wrap the createComponent API to allow proper ordering of module definitions:
|
|
1363
1376
|
// 1. LWRE module bundle (this): lwr/loader, lwr/everywhereAmd, lwr/vault
|
|
1364
1377
|
// 2. lwr/everywhere (deps: lwc, synthetic shadow, lwr/host, etc)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function getConfiguration(e){const{format:t,server:r,apiVersion:o,apiPrefix:n,locale:i,bundle:s,debug:a}=e,l=new URL(import.meta.url),d=r||l.origin||"",c=`${n}/${o}`,u="0"+(i?`/l/${i}`:""),p="/bi/3_A,B,O,S,EG,JLMT,C,D,F,H,I,K,N,P,Q,R",h=s?`${d}${c}/bundle/${t}/${u}${p}-0/module/mi/`:`${d}${c}/module/${t}/${u}/mi/`,f=`lwr/everywhere${"esm"===t?"Esm":"Amd"}/v/0_9_0-alpha_2`,g=`${h}${encodeURIComponent(f)}/latest${a?"?debug":""}`,m={appId:"lwre",autoBoot:!0,bootstrapModule:f,baseUrl:d,imports:{[g]:[f]},index:{[f]:g},endpoints:{uris:{module:h,mapping:`${d}${c}/mapping/${t}/${u}${s?p:""}/mp/`}}};return a&&m.endpoints&&(m.endpoints.modifiers={debug:"true"}),{options:{NODE_ENV:a?"development":"production"},config:m}}const templateRegex=/\{([0-9]+)\}/g;function templateString(e,t){return e.replace(templateRegex,((e,r)=>t[r]))}function generateErrorMessage(e,t){const r=Array.isArray(t)?templateString(e.message,t):e.message;return`LWR${e.code}: ${r}`}class LoaderError extends Error{constructor(e,t){super(),this.message=generateErrorMessage(e,t)}}function invariant(e,t){if(!e)throw new LoaderError(t)}const MISSING_NAME=Object.freeze({code:3e3,message:"A module name is required.",level:0}),FAIL_INSTANTIATE=Object.freeze({code:3004,message:"Failed to instantiate module: {0}",level:0}),NO_AMD_REQUIRE=Object.freeze({code:3005,message:"AMD require not supported.",level:0}),FAILED_DEP=Object.freeze({code:3006,level:0,message:"Failed to load dependency: {0}"}),INVALID_DEPS=Object.freeze({code:3007,message:"Unexpected value received for dependencies argument; expected an array.",level:0}),FAIL_LOAD=Object.freeze({code:3008,level:0,message:"Error loading {0}"}),UNRESOLVED=Object.freeze({code:3009,level:0,message:"Unable to resolve bare specifier: {0}"}),NO_BASE_URL=Object.freeze({code:3010,level:0,message:"baseUrl not set"});Object.freeze({code:3011,level:0,message:"Cannot set a loader service multiple times"});const INVALID_HOOK=Object.freeze({code:3012,level:0,message:"Invalid hook received"}),INVALID_LOADER_SERVICE_RESPONSE=Object.freeze({code:3013,level:0,message:"Invalid response received from hook"}),MODULE_LOAD_TIMEOUT=Object.freeze({code:3014,level:0,message:"Error loading {0} - timed out"}),HTTP_FAIL_LOAD=Object.freeze({code:3015,level:0,message:"Error loading {0}, status code {1}"}),STALE_HOOK_ERROR=Object.freeze({code:3016,level:0,message:"An error occurred handling module conflict"}),MODULE_ALREADY_LOADED=Object.freeze({code:3017,level:0,message:"Marking module(s) as externally loaded, but they are already loaded: {0}"}),FAIL_HOOK_LOAD=Object.freeze({code:3018,level:0,message:'Error loading "{0}" from hook'}),NO_MAPPING_URL=Object.freeze({code:3019,level:0,message:"Mapping endpoint not set"}),BAD_IMPORT_METADATA=Object.freeze({code:3020,level:0,message:"Invalid import metadata: {0} {1}"});Object.freeze({code:3011,level:0,message:"import map is not valid"});const hasDocument="undefined"!=typeof document,hasSetTimeout="function"==typeof setTimeout,hasConsole="undefined"!=typeof console;function getBaseUrl(){let e;if(hasDocument){const t=document.querySelector("base[href]");e=t&&t.href}if(!e&&"undefined"!=typeof location){e=location.href.split("#")[0].split("?")[0];const t=e.lastIndexOf("/");-1!==t&&(e=e.slice(0,t+1))}return e}function isUrl(e){return-1!==e.indexOf("://")}function resolveIfNotPlainOrUrl(e,t){if(-1!==e.indexOf("\\")&&(e=e.replace(/\\/g,"/")),"/"===e[0]&&"/"===e[1])return t.slice(0,t.indexOf(":")+1)+e;if("."===e[0]&&("/"===e[1]||"."===e[1]&&("/"===e[2]||2===e.length&&(e+="/"))||1===e.length&&(e+="/"))||"/"===e[0]){const r=t.slice(0,t.indexOf(":")+1);let o;if("/"===t[r.length+1]?"file:"!==r?(o=t.slice(r.length+2),o=o.slice(o.indexOf("/")+1)):o=t.slice(8):o=t.slice(r.length+("/"===t[r.length]?1:0)),"/"===e[0])return t.slice(0,t.length-o.length-1)+e;const n=o.slice(0,o.lastIndexOf("/")+1)+e,i=[];let s=-1;for(let e=0;e<n.length;e++)-1!==s?"/"===n[e]&&(i.push(n.slice(s,e+1)),s=-1):"."===n[e]?"."!==n[e+1]||"/"!==n[e+2]&&e+2!==n.length?"/"===n[e+1]||e+1===n.length?e+=1:s=e:(i.pop(),e+=2):s=e;return-1!==s&&i.push(n.slice(s)),t.slice(0,t.length-o.length)+i.join("")}}function resolveUrl(e,t){return resolveIfNotPlainOrUrl(e,t)||(isUrl(e)?e:resolveIfNotPlainOrUrl("./"+e,t))}function createScript(e){const t=document.createElement("script");return t.async=!0,t.crossOrigin="anonymous",t.src=e,t}let lastWindowError$1,lastWindowErrorUrl;function loadModuleDef(e){return new Promise((function(t,r){if(hasDocument){const o=createScript(e);o.addEventListener("error",(()=>{r(new LoaderError(FAIL_LOAD,[e]))})),o.addEventListener("load",(()=>{document.head.removeChild(o),lastWindowErrorUrl===e?r(lastWindowError$1):t()})),document.head.appendChild(o)}}))}hasDocument&&window.addEventListener("error",(e=>{lastWindowErrorUrl=e.filename,lastWindowError$1=e.error}));const LOADER_PREFIX="lwr.loader.",MODULE_DEFINE=`${LOADER_PREFIX}module.define`,MODULE_FETCH=`${LOADER_PREFIX}module.fetch`,MODULE_ERROR=`${LOADER_PREFIX}module.error`,MAPPINGS_FETCH=`${LOADER_PREFIX}mappings.fetch`,MAPPINGS_ERROR=`${LOADER_PREFIX}mappings.error`;class ImportMetadataResolver{constructor(e,t){this.importURICache=new Map,this.pendingURICache=new Map,this.loadMappingHooks=[],this.config=e,this.invalidationCallback=t}addLoadMappingHook(e){this.loadMappingHooks.push(e)}getMappingEndpoint(){return this.config.endpoints&&this.config.endpoints.uris?this.config.endpoints.uris.mapping:void 0}getModifiersAsUrlParams(){const e=this.config.endpoints?this.config.endpoints.modifiers:void 0;if(e){return`?${Object.keys(e).map((t=>`${encodeURIComponent(t)}=${encodeURIComponent(e[t])}`)).join("&")}`}return""}buildMappingUrl(e){return`${this.getMappingEndpoint()}${encodeURIComponent(e)}${this.getModifiersAsUrlParams()}`}getBaseUrl(){return this.config.baseUrl}registerImportMappings(e,t){if(!t||0===t.length){const r=e?JSON.stringify(e):"undefined";throw new LoaderError(BAD_IMPORT_METADATA,[r,t?"[]":"undefined"])}if(!e)throw new LoaderError(BAD_IMPORT_METADATA,["undefined",JSON.stringify(t)]);if(!e.imports||0===Object.keys(e.imports).length)throw new LoaderError(BAD_IMPORT_METADATA,[JSON.stringify(e),JSON.stringify(t)]);const r=e.index||{};for(const[o,n]of Object.entries(e.imports))n.forEach((e=>{const n=r[e],i=this.importURICache.get(e);if(i){const t=n||o,r=i.identity||i.uri;r!==t&&this.invalidationCallback({name:e,oldUrl:r,newUrl:t})}else this.saveImportURIRecord(e,o,n,t.includes(e))}))}getURI(e){return this.importURICache.has(e)?resolveUrl(this.importURICache.get(e).uri,this.getBaseUrl()):void 0}resolveLocal(e){const t=this.getURI(e);return t||(isUrl(e)||e.startsWith("/")?e:void 0)}async resolve(e){let t=this.getURI(e);if(t)return t;if(isUrl(e)||e.startsWith("/"))return e;{const r=this.pendingURICache.get(e);if(r)return r;this.config.profiler.logOperationStart({id:MAPPINGS_FETCH,specifier:e});const o=(this.hasMappingHooks()?this.evaluateMappingHooks:this.fetchNewMappings).bind(this)(e).then((r=>{if(!r||!r.imports)throw new LoaderError(UNRESOLVED,[e]);if(this.registerImportMappings(r,[e]),t=this.getURI(e),!t)throw new LoaderError(UNRESOLVED,[e]);return this.config.profiler.logOperationEnd({id:MAPPINGS_FETCH,specifier:e}),t})).finally((()=>{this.pendingURICache.delete(e)}));return this.pendingURICache.set(e,o),o}}hasMappingHooks(){return this.loadMappingHooks.length>0}async evaluateMappingHooks(e){const t=this.loadMappingHooks;if(t.length){const r=Array.from(this.importURICache.keys());for(let o=0;o<t.length;o++){const n=t[o],i=await n(e,{knownModules:r});if(i||void 0===i)return i}}return this.fetchNewMappings(e)}async fetchNewMappings(e){if("function"!=typeof globalThis.fetch)throw new LoaderError(UNRESOLVED,[e]);const t=resolveUrl(this.buildMappingUrl(e),this.getBaseUrl());return globalThis.fetch(t).then((t=>{if(!t.ok)throw this.config.profiler.logOperationStart({id:MAPPINGS_ERROR,specifier:e}),new LoaderError(UNRESOLVED,[e]);return t.json().then((e=>e)).catch((t=>{throw new LoaderError(UNRESOLVED,[e])}))}))}saveImportURIRecord(e,t,r,o){r&&t!==r?this.importURICache.set(e,{uri:t,identity:r,isRoot:o}):this.importURICache.set(e,{uri:t,isRoot:o})}}function reportError(e){hasConsole&&console.error(e)}function evaluateHandleStaleModuleHooks(e,t){const{name:r,oldUrl:o,newUrl:n}=t;for(let t=0;t<e.length;t++){const i=e[t];try{if(null!==i({name:r,oldUrl:o,newUrl:n}))break}catch(e){reportError(new LoaderError(STALE_HOOK_ERROR))}}}const MODULE_LOAD_TIMEOUT_TIMER=3e5;let lastWindowError;function isCustomResponse(e){return Object.prototype.hasOwnProperty.call(e,"data")&&!Object.prototype.hasOwnProperty.call(e,"blob")}function isFetchResponse(e){return"function"==typeof e.blob}function isResponseAPromise(e){return!(!e||!e.then)}async function evaluateLoadHookResponse(response,id){return Promise.resolve().then((async()=>{if(!response.status)throw new LoaderError(INVALID_LOADER_SERVICE_RESPONSE);if(200!==response.status)throw new LoaderError(HTTP_FAIL_LOAD,[id,`${response.status}`]);const isResponse=isFetchResponse(response);let code;if(isCustomResponse(response))code=response.data;else{if(!isResponse)throw new LoaderError(INVALID_LOADER_SERVICE_RESPONSE);code=await response.text()}if(!code)throw new LoaderError(FAIL_LOAD,[id]);code=`${code}\n//# sourceURL=${id}`;try{eval(code)}catch(e){throw new LoaderError(FAIL_LOAD,[id])}if(lastWindowError)throw new LoaderError(FAIL_LOAD,[id]);return!0}))}async function evaluateLoadHook(e,t){return hasSetTimeout?new Promise(((r,o)=>{const n=setTimeout((()=>{o(new LoaderError(MODULE_LOAD_TIMEOUT,[e]))}),MODULE_LOAD_TIMEOUT_TIMER);t.then((e=>{r(e)})).catch((()=>{o(new LoaderError(FAIL_HOOK_LOAD,[e]))})).finally((()=>{clearTimeout(n)}))})):t}hasDocument&&globalThis.addEventListener("error",(e=>{lastWindowError=e.error})),"production"!==process.env.NODE_ENV&&!hasSetTimeout&&hasConsole&&console.warn("setTimeout API is not available, watchdog timer on load hook will not be set");class ModuleRegistry{constructor(e){this.namedDefineRegistry=new Map,this.moduleRegistry=new Map,this.aliases=new Map,this.profiler=e.profiler,this.resolver=new ImportMetadataResolver(e,this.importMetadataInvalidationCallback.bind(this))}async load(e,t){const r=await this.resolve(e,t),o=this.getModuleRecord(r,e);return o.evaluated?o.module:(o.evaluationPromise||(o.evaluationPromise=this.topLevelEvaluation(o)),o.evaluationPromise)}async resolve(e,t){const r=this.resolver.getBaseUrl();let o,n=e;const i=this.resolveHook;if(i){for(let e=0;e<i.length;e++){const t=(0,i[e])(n,{parentUrl:r});let s;if((t||null===t)&&(s=isResponseAPromise(t)?await t:t),null!==s){if("string"==typeof s){if(resolveIfNotPlainOrUrl(s,r))throw new LoaderError(INVALID_LOADER_SERVICE_RESPONSE);n=s;continue}if(o=s&&s.url&&(resolveIfNotPlainOrUrl(s.url,r)||s.url),!o)throw new LoaderError(INVALID_LOADER_SERVICE_RESPONSE);break}}if(n!==e){if(!o&&this.namedDefineRegistry.has(n))return n;e=n}}if(!o){const t=resolveIfNotPlainOrUrl(e,r)||e;if(this.moduleRegistry.has(t))return t;const n=this.resolver.resolveLocal(t);if(n){if(this.namedDefineRegistry.has(t)&&this.namedDefineRegistry.get(t).defined){if(!this.moduleRegistry.get(n)||!this.aliases.has(t))return t}return n}if(this.namedDefineRegistry.has(t))return t;try{o=await this.resolver.resolve(t)}catch(e){}}if(!o||!isUrl(o)){if(this.namedDefineRegistry.has(e))return e;throw new LoaderError(UNRESOLVED,[e])}return t&&isUrl(o)&&(o+=`?importer=${encodeURIComponent(t)}`),o}has(e){return this.moduleRegistry.has(e)}define(e,t,r){const o=this.namedDefineRegistry.get(e);if(o&&o.defined)return"production"!==process.env.NODE_ENV&&hasConsole&&console.warn(`Module redefine attempted: ${e}`),void(this.lastDefine=o);const n={name:e,dependencies:t,exporter:r,defined:!0};o&&o.external&&o.external.resolveExternal(n),this.profiler.logOperationStart({id:MODULE_DEFINE,specifier:e}),this.namedDefineRegistry.set(e,n),this.lastDefine=n}registerExternalModules(e){const t=[];if(e.map((e=>{if(this.namedDefineRegistry.has(e))t.push(e);else{let t,r;const o=new Promise(((o,n)=>{t=o,r=setTimeout((()=>{n(new LoaderError(MODULE_LOAD_TIMEOUT,[e]))}),MODULE_LOAD_TIMEOUT_TIMER)})).finally((()=>{clearTimeout(r)})),n={name:e,defined:!1,external:{resolveExternal:t,moduleDefPromise:o}};this.namedDefineRegistry.set(e,n)}})),t.length)throw new LoaderError(MODULE_ALREADY_LOADED,[t.join(", ")])}getImportMetadataResolver(){return this.resolver}getExistingModuleRecord(e,t){const r=this.moduleRegistry.get(e);if(r)return this.storeModuleAlias(t,e),r;if(e!==t){const e=this.aliases.get(t);if(e){const t=this.moduleRegistry.get(e);if(t)return t}}return r}getModuleRecord(e,t){const r=this.getExistingModuleRecord(e,t);if(r)return r;const o=this.getModuleDef(e,t),n=o.then((e=>{const t=e.dependencies.map((e=>{if("exports"!==e)return invariant("require"!==e,NO_AMD_REQUIRE),this.getModuleDependencyRecord.call(this,e)})).filter((e=>void 0!==e));return Promise.all(t)})),i={id:e,module:Object.create(null),dependencyRecords:n,instantiation:o,evaluated:!1,evaluationPromise:null};return this.moduleRegistry.set(e,i),this.storeModuleAlias(t,e),i}storeModuleAlias(e,t){if(e!==t)if(this.aliases.has(e)){if("production"!==process.env.NODE_ENV&&hasConsole){const r=this.aliases.get(e);r!==t&&console.warn(`Alias update attempt: ${e}=>${r}, ${t}`)}}else this.aliases.set(e,t)}async getModuleDependencyRecord(e){const t=await this.resolve(e);return this.getModuleRecord(t,e)}async topLevelEvaluation(e){return await this.instantiateAll(e,{}),this.evaluateModule(e,{})}async instantiateAll(e,t){if(!t[e.id]){t[e.id]=!0;const r=await e.dependencyRecords;if(r)for(let e=0;e<r.length;e++){const o=r[e];await this.instantiateAll(o,t)}}}async evaluateModule(e,t){const r=await e.dependencyRecords;r.length>0&&(t[e.id]=!0,await this.evaluateModuleDependencies(r,t));const{exporter:o,dependencies:n}=await e.instantiation,i={},s=await Promise.all(n.map((async e=>{if("exports"===e)return i;const t=await this.resolve(e),r=this.moduleRegistry.get(t);if(!r)throw new LoaderError(FAILED_DEP,[t]);const o=r.module;if(!r.evaluated)return this.getCircularDependencyWrapper(o);if(o)return o.__defaultInterop?o.default:o;throw new LoaderError(FAILED_DEP,[t])})));if(e.evaluated)return e.module;let a=o(...s);void 0!==a?(a={default:a},Object.defineProperty(a,"__defaultInterop",{value:!0})):this.isNamedExportDefaultOnly(i)&&Object.defineProperty(i,"__useDefault",{value:!0});const l=a||i;for(const t in l)Object.defineProperty(e.module,t,{enumerable:!0,set(e){l[t]=e},get:()=>l[t]});return l.__useDefault&&Object.defineProperty(e.module,"__useDefault",{value:!0}),l.__defaultInterop&&Object.defineProperty(e.module,"__defaultInterop",{value:!0}),l.__esModule&&Object.defineProperty(e.module,"__esModule",{value:!0}),e.evaluated=!0,Object.freeze(e.module),e.module}isNamedExportDefaultOnly(e){return void 0!==e&&2===Object.getOwnPropertyNames(e).length&&Object.prototype.hasOwnProperty.call(e,"default")&&Object.prototype.hasOwnProperty.call(e,"__esModule")}getCircularDependencyWrapper(e){const t=()=>e.__useDefault||e.__defaultInterop?e.default:e;return t.__circular__=!0,t}async evaluateModuleDependencies(e,t){for(let r=0;r<e.length;r++){const o=e[r];o.evaluated||t[o.id]||(t[o.id]=!0,await this.evaluateModule(o,t))}}async getModuleDef(e,t){this.lastDefine=void 0;const r=isUrl(e)?t!==e?t:void 0:e;let o=r&&this.namedDefineRegistry.get(r);if(o&&o.external)return o.external.moduleDefPromise;if(o&&o.defined)return o;const n=this.resolver.getBaseUrl(),i=r||t;return this.profiler.logOperationStart({id:MODULE_FETCH,specifier:i}),Promise.resolve().then((async()=>{const t=this.loadHook;if(t)for(let r=0;r<t.length;r++){const o=(0,t[r])(e,n),i=isResponseAPromise(o)?await evaluateLoadHook(e,o):o;if(void 0===i)throw new LoaderError(INVALID_LOADER_SERVICE_RESPONSE);if(i&&null!==i)return evaluateLoadHookResponse(i,e)}return!1})).then((t=>{if(!0!==t&&hasDocument)return loadModuleDef(e)})).then((()=>{if(o=r&&this.namedDefineRegistry.get(r),o||(o=this.lastDefine),!o)throw new LoaderError(FAIL_INSTANTIATE,[e]);return this.profiler.logOperationEnd({id:MODULE_FETCH,specifier:i}),o})).catch((e=>{throw this.profiler.logOperationStart({id:MODULE_ERROR,specifier:i}),e}))}addLoaderPlugin(e){if("object"!=typeof e)throw new LoaderError(INVALID_HOOK);const{loadModule:t,resolveModule:r,loadMapping:o}=e;r&&(this.resolveHook?this.resolveHook.push(r):this.resolveHook=[r]),t&&(this.loadHook?this.loadHook.push(t):this.loadHook=[t]),o&&this.resolver.addLoadMappingHook(o)}importMetadataInvalidationCallback({name:e,oldUrl:t,newUrl:r}){const o=this.handleStaleModuleHook;o?evaluateHandleStaleModuleHooks(o,{name:e,oldUrl:t,newUrl:r}):"production"!==process.env.NODE_ENV&&hasConsole&&console.warn(`stale module detected ${e}, current URL:${t}, new URL:${r}`)}registerHandleStaleModuleHook(e){this.handleStaleModuleHook?this.handleStaleModuleHook.push(e):this.handleStaleModuleHook=[e]}}class Loader{constructor(e){let t=e.baseUrl;const r=e.endpoints?e.endpoints.uris.mapping:void 0;let o=e.profiler;if(!r)throw new LoaderError(NO_MAPPING_URL);if(e.endpoints.uris.mapping=r.replace(/\/?$/,"/"),t&&(t=t.replace(/\/?$/,"/")),t||(t=getBaseUrl()),!t)throw new LoaderError(NO_BASE_URL);if(o||(o={logOperationStart:()=>{},logOperationEnd:()=>{}}),this.registry=new ModuleRegistry(Object.freeze({endpoints:e.endpoints,baseUrl:t,profiler:o})),e.appMetadata&&!e.appMetadata.appId){const t=e.appMetadata.bootstrapModule.match(/@lwr-bootstrap\/(.+)\/v\/.+/),r=t&&t[1];e.appMetadata.appId=r}this.services=Object.freeze({addLoaderPlugin:this.registry.addLoaderPlugin.bind(this.registry),handleStaleModule:this.registry.registerHandleStaleModuleHook.bind(this.registry),appMetadata:e.appMetadata})}define(e,t,r){invariant("string"==typeof e,MISSING_NAME);let o=r,n=t;"function"==typeof n&&(o=t,n=[]),invariant(Array.isArray(n),INVALID_DEPS),this.registry.define(e,n,o)}async load(e,t){return this.registry.load(e,t)}has(e){return this.registry.has(e)}async resolve(e,t){return this.registry.resolve(e,t)}async registerImportMappings(e,t){this.registry.getImportMetadataResolver().registerImportMappings(e,t)}registerExternalModules(e){this.registry.registerExternalModules(e)}}const configOptions={format:"amd",apiVersion:"1",apiPrefix:"",bundle:!0,debug:!1},configuration=getConfiguration(configOptions),{bootstrapModule:bootstrapModule,endpoints:endpoints,baseUrl:baseUrl,imports:imports,index:index}=configuration.config;globalThis.process={env:{NODE_ENV:configuration.options.NODE_ENV}};const loader=new Loader({endpoints:endpoints,baseUrl:baseUrl});loader.define("lwr/loader/v/0_9_0-alpha_2",["exports"],(e=>{Object.assign(e,{define:loader.define.bind(loader),load:loader.load.bind(loader)})})),await loader.registerImportMappings({imports:imports,index:index},[bootstrapModule]),globalThis.LWR=Object.freeze({define:loader.define.bind(loader)}),LWR.define("lwr/everywhereAmd/v/0_9_0-alpha_2",["exports","lwr/vault/v/0_9_0-alpha_2"],(function(e,t){async function r(e,r="javascript"){const o=t.getAuthInfo();return o?fetch(e,{headers:{Accept:`application/${r}`,Authorization:`Bearer ${o.access_token}`}}):null}e.authenticate=function(e){e&&t.setAuthInfo(e)},e.initAmd=function(e,t,o){t.match(/\/v5\d\.0\//)&&function(e,t,o){e.addLoaderPlugin({loadModule:async e=>r(e),loadMapping:async e=>{const o=await r(`${t}${encodeURIComponent(e)}`,"json");return o&&o.ok?o.json():null},resolveModule:e=>e&&!/\/v\/[^/]+?$/.test(e)?`${e}/v/${o}`:null})}(e,t,o)},Object.defineProperty(e,"__esModule",{value:!0})})),LWR.define("lwr/vault/v/0_9_0-alpha_2",["exports"],(function(e){let t;e.getAuthInfo=function(){return t},e.setAuthInfo=function(e){t=e},Object.defineProperty(e,"__esModule",{value:!0})}));const{initAmd:initAmd,authenticate:authenticate}=await loader.load(bootstrapModule);async function createComponent(e,t,r={},o){const{createComponent:n}=await loader.load(bootstrapModule.replace("Amd",""));return n(e,t,r,o)}initAmd(loader.services,endpoints?.uris.mapping,"0_9_0-alpha_2");export{authenticate,createComponent};
|
|
1
|
+
function getConfiguration(e){const{format:t,server:r,apiVersion:o,apiPrefix:n,locale:i,bundle:s,debug:a}=e,l=new URL(import.meta.url),d=r||l.origin||"",c=`${n}/${o}`,u="0"+(i?`/l/${i}`:""),p="/bi/3_A,B,O,S,EG,JLMT,C,D,F,H,I,K,N,P,Q,R",h=s?`${d}${c}/bundle/${t}/${u}${p}-0/module/mi/`:`${d}${c}/module/${t}/${u}/mi/`,f=`lwr/everywhere${"esm"===t?"Esm":"Amd"}/v/0_9_0-alpha_21`,g=`${h}${encodeURIComponent(f)}/latest${a?"?debug":""}`,m={appId:"lwre",autoBoot:!0,bootstrapModule:f,baseUrl:d,imports:{[g]:[f]},index:{[f]:g},endpoints:{uris:{module:h,mapping:`${d}${c}/mapping/${t}/${u}${s?p:""}/mp/`}}};return a&&m.endpoints&&(m.endpoints.modifiers={debug:"true"}),m}globalThis.process={env:{NODE_ENV:"production"}};const templateRegex=/\{([0-9]+)\}/g;function templateString(e,t){return e.replace(templateRegex,((e,r)=>t[r]))}function generateErrorMessage(e,t){const r=Array.isArray(t)?templateString(e.message,t):e.message;return`LWR${e.code}: ${r}`}class LoaderError extends Error{constructor(e,t){super(),this.message=generateErrorMessage(e,t)}}function invariant(e,t){if(!e)throw new LoaderError(t)}const MISSING_NAME=Object.freeze({code:3e3,message:"A module name is required.",level:0}),FAIL_INSTANTIATE=Object.freeze({code:3004,message:"Failed to instantiate module: {0}",level:0}),NO_AMD_REQUIRE=Object.freeze({code:3005,message:"AMD require not supported.",level:0}),FAILED_DEP=Object.freeze({code:3006,level:0,message:"Failed to load dependency: {0}"}),INVALID_DEPS=Object.freeze({code:3007,message:"Unexpected value received for dependencies argument; expected an array.",level:0}),FAIL_LOAD=Object.freeze({code:3008,level:0,message:"Error loading {0}"}),UNRESOLVED=Object.freeze({code:3009,level:0,message:"Unable to resolve bare specifier: {0}"}),NO_BASE_URL=Object.freeze({code:3010,level:0,message:"baseUrl not set"});Object.freeze({code:3011,level:0,message:"Cannot set a loader service multiple times"});const INVALID_HOOK=Object.freeze({code:3012,level:0,message:"Invalid hook received"}),INVALID_LOADER_SERVICE_RESPONSE=Object.freeze({code:3013,level:0,message:"Invalid response received from hook"}),MODULE_LOAD_TIMEOUT=Object.freeze({code:3014,level:0,message:"Error loading {0} - timed out"}),HTTP_FAIL_LOAD=Object.freeze({code:3015,level:0,message:"Error loading {0}, status code {1}"}),STALE_HOOK_ERROR=Object.freeze({code:3016,level:0,message:"An error occurred handling module conflict"}),MODULE_ALREADY_LOADED=Object.freeze({code:3017,level:0,message:"Marking module(s) as externally loaded, but they are already loaded: {0}"}),FAIL_HOOK_LOAD=Object.freeze({code:3018,level:0,message:'Error loading "{0}" from hook'}),NO_MAPPING_URL=Object.freeze({code:3019,level:0,message:"Mapping endpoint not set"}),BAD_IMPORT_METADATA=Object.freeze({code:3020,level:0,message:"Invalid import metadata: {0} {1}"});Object.freeze({code:3011,level:0,message:"import map is not valid"});const hasDocument="undefined"!=typeof document,hasSetTimeout="function"==typeof setTimeout,hasConsole="undefined"!=typeof console;function getBaseUrl(){let e;if(hasDocument){const t=document.querySelector("base[href]");e=t&&t.href}if(!e&&"undefined"!=typeof location){e=location.href.split("#")[0].split("?")[0];const t=e.lastIndexOf("/");-1!==t&&(e=e.slice(0,t+1))}return e}function isUrl(e){return-1!==e.indexOf("://")}function resolveIfNotPlainOrUrl(e,t){if(-1!==e.indexOf("\\")&&(e=e.replace(/\\/g,"/")),"/"===e[0]&&"/"===e[1])return t.slice(0,t.indexOf(":")+1)+e;if("."===e[0]&&("/"===e[1]||"."===e[1]&&("/"===e[2]||2===e.length&&(e+="/"))||1===e.length&&(e+="/"))||"/"===e[0]){const r=t.slice(0,t.indexOf(":")+1);let o;if("/"===t[r.length+1]?"file:"!==r?(o=t.slice(r.length+2),o=o.slice(o.indexOf("/")+1)):o=t.slice(8):o=t.slice(r.length+("/"===t[r.length]?1:0)),"/"===e[0])return t.slice(0,t.length-o.length-1)+e;const n=o.slice(0,o.lastIndexOf("/")+1)+e,i=[];let s=-1;for(let e=0;e<n.length;e++)-1!==s?"/"===n[e]&&(i.push(n.slice(s,e+1)),s=-1):"."===n[e]?"."!==n[e+1]||"/"!==n[e+2]&&e+2!==n.length?"/"===n[e+1]||e+1===n.length?e+=1:s=e:(i.pop(),e+=2):s=e;return-1!==s&&i.push(n.slice(s)),t.slice(0,t.length-o.length)+i.join("")}}function resolveUrl(e,t){return resolveIfNotPlainOrUrl(e,t)||(isUrl(e)?e:resolveIfNotPlainOrUrl("./"+e,t))}function createScript(e){const t=document.createElement("script");return t.async=!0,t.crossOrigin="anonymous",t.src=e,t}let lastWindowError$1,lastWindowErrorUrl;function loadModuleDef(e){return new Promise((function(t,r){if(hasDocument){const o=createScript(e);o.addEventListener("error",(()=>{r(new LoaderError(FAIL_LOAD,[e]))})),o.addEventListener("load",(()=>{document.head.removeChild(o),lastWindowErrorUrl===e?r(lastWindowError$1):t()})),document.head.appendChild(o)}}))}hasDocument&&window.addEventListener("error",(e=>{lastWindowErrorUrl=e.filename,lastWindowError$1=e.error}));const LOADER_PREFIX="lwr.loader.",MODULE_DEFINE=`${LOADER_PREFIX}module.define`,MODULE_FETCH=`${LOADER_PREFIX}module.fetch`,MODULE_ERROR=`${LOADER_PREFIX}module.error`,MAPPINGS_FETCH=`${LOADER_PREFIX}mappings.fetch`,MAPPINGS_ERROR=`${LOADER_PREFIX}mappings.error`;class ImportMetadataResolver{constructor(e,t){this.importURICache=new Map,this.pendingURICache=new Map,this.loadMappingHooks=[],this.config=e,this.invalidationCallback=t}addLoadMappingHook(e){this.loadMappingHooks.push(e)}getMappingEndpoint(){return this.config.endpoints&&this.config.endpoints.uris?this.config.endpoints.uris.mapping:void 0}getModifiersAsUrlParams(){const e=this.config.endpoints?this.config.endpoints.modifiers:void 0;if(e){return`?${Object.keys(e).map((t=>`${encodeURIComponent(t)}=${encodeURIComponent(e[t])}`)).join("&")}`}return""}buildMappingUrl(e){return`${this.getMappingEndpoint()}${encodeURIComponent(e)}${this.getModifiersAsUrlParams()}`}getBaseUrl(){return this.config.baseUrl}registerImportMappings(e,t){if(!t||0===t.length){const r=e?JSON.stringify(e):"undefined";throw new LoaderError(BAD_IMPORT_METADATA,[r,t?"[]":"undefined"])}if(!e)throw new LoaderError(BAD_IMPORT_METADATA,["undefined",JSON.stringify(t)]);if(!e.imports||0===Object.keys(e.imports).length)throw new LoaderError(BAD_IMPORT_METADATA,[JSON.stringify(e),JSON.stringify(t)]);const r=e.index||{};for(const[o,n]of Object.entries(e.imports))n.forEach((e=>{const n=r[e],i=this.importURICache.get(e);if(i){const t=n||o,r=i.identity||i.uri;r!==t&&this.invalidationCallback({name:e,oldUrl:r,newUrl:t})}else this.saveImportURIRecord(e,o,n,t.includes(e))}))}getURI(e){return this.importURICache.has(e)?resolveUrl(this.importURICache.get(e).uri,this.getBaseUrl()):void 0}resolveLocal(e){const t=this.getURI(e);return t||(isUrl(e)||e.startsWith("/")?e:void 0)}async resolve(e){let t=this.getURI(e);if(t)return t;if(isUrl(e)||e.startsWith("/"))return e;{const r=this.pendingURICache.get(e);if(r)return r;this.config.profiler.logOperationStart({id:MAPPINGS_FETCH,specifier:e});const o=(this.hasMappingHooks()?this.evaluateMappingHooks:this.fetchNewMappings).bind(this)(e).then((r=>{if(!r||!r.imports)throw new LoaderError(UNRESOLVED,[e]);if(this.registerImportMappings(r,[e]),t=this.getURI(e),!t)throw new LoaderError(UNRESOLVED,[e]);return this.config.profiler.logOperationEnd({id:MAPPINGS_FETCH,specifier:e}),t})).finally((()=>{this.pendingURICache.delete(e)}));return this.pendingURICache.set(e,o),o}}hasMappingHooks(){return this.loadMappingHooks.length>0}async evaluateMappingHooks(e){const t=this.loadMappingHooks;if(t.length){const r=Array.from(this.importURICache.keys());for(let o=0;o<t.length;o++){const n=t[o],i=await n(e,{knownModules:r});if(i||void 0===i)return i}}return this.fetchNewMappings(e)}async fetchNewMappings(e){if("function"!=typeof globalThis.fetch)throw new LoaderError(UNRESOLVED,[e]);const t=resolveUrl(this.buildMappingUrl(e),this.getBaseUrl());return globalThis.fetch(t).then((t=>{if(!t.ok)throw this.config.profiler.logOperationStart({id:MAPPINGS_ERROR,specifier:e}),new LoaderError(UNRESOLVED,[e]);return t.json().then((e=>e)).catch((t=>{throw new LoaderError(UNRESOLVED,[e])}))}))}saveImportURIRecord(e,t,r,o){r&&t!==r?this.importURICache.set(e,{uri:t,identity:r,isRoot:o}):this.importURICache.set(e,{uri:t,isRoot:o})}}function reportError(e){hasConsole&&console.error(e)}function evaluateHandleStaleModuleHooks(e,t){const{name:r,oldUrl:o,newUrl:n}=t;for(let t=0;t<e.length;t++){const i=e[t];try{if(null!==i({name:r,oldUrl:o,newUrl:n}))break}catch(e){reportError(new LoaderError(STALE_HOOK_ERROR))}}}const MODULE_LOAD_TIMEOUT_TIMER=3e5;let lastWindowError;function isCustomResponse(e){return Object.prototype.hasOwnProperty.call(e,"data")&&!Object.prototype.hasOwnProperty.call(e,"blob")}function isFetchResponse(e){return"function"==typeof e.blob}function isResponseAPromise(e){return!(!e||!e.then)}async function evaluateLoadHookResponse(response,id){return Promise.resolve().then((async()=>{if(!response.status)throw new LoaderError(INVALID_LOADER_SERVICE_RESPONSE);if(200!==response.status)throw new LoaderError(HTTP_FAIL_LOAD,[id,`${response.status}`]);const isResponse=isFetchResponse(response);let code;if(isCustomResponse(response))code=response.data;else{if(!isResponse)throw new LoaderError(INVALID_LOADER_SERVICE_RESPONSE);code=await response.text()}if(!code)throw new LoaderError(FAIL_LOAD,[id]);code=`${code}\n//# sourceURL=${id}`;try{eval(code)}catch(e){throw new LoaderError(FAIL_LOAD,[id])}if(lastWindowError)throw new LoaderError(FAIL_LOAD,[id]);return!0}))}async function evaluateLoadHook(e,t){return hasSetTimeout?new Promise(((r,o)=>{const n=setTimeout((()=>{o(new LoaderError(MODULE_LOAD_TIMEOUT,[e]))}),MODULE_LOAD_TIMEOUT_TIMER);t.then((e=>{r(e)})).catch((()=>{o(new LoaderError(FAIL_HOOK_LOAD,[e]))})).finally((()=>{clearTimeout(n)}))})):t}hasDocument&&globalThis.addEventListener("error",(e=>{lastWindowError=e.error})),"production"!==process.env.NODE_ENV&&!hasSetTimeout&&hasConsole&&console.warn("setTimeout API is not available, watchdog timer on load hook will not be set");class ModuleRegistry{constructor(e){this.namedDefineRegistry=new Map,this.moduleRegistry=new Map,this.aliases=new Map,this.profiler=e.profiler,this.resolver=new ImportMetadataResolver(e,this.importMetadataInvalidationCallback.bind(this))}async load(e,t){const r=await this.resolve(e,t),o=this.getModuleRecord(r,e);return o.evaluated?o.module:(o.evaluationPromise||(o.evaluationPromise=this.topLevelEvaluation(o)),o.evaluationPromise)}async resolve(e,t){const r=this.resolver.getBaseUrl();let o,n=e;const i=this.resolveHook;if(i){for(let e=0;e<i.length;e++){const t=(0,i[e])(n,{parentUrl:r});let s;if((t||null===t)&&(s=isResponseAPromise(t)?await t:t),null!==s){if("string"==typeof s){if(resolveIfNotPlainOrUrl(s,r))throw new LoaderError(INVALID_LOADER_SERVICE_RESPONSE);n=s;continue}if(o=s&&s.url&&(resolveIfNotPlainOrUrl(s.url,r)||s.url),!o)throw new LoaderError(INVALID_LOADER_SERVICE_RESPONSE);break}}if(n!==e){if(!o&&this.namedDefineRegistry.has(n))return n;e=n}}if(!o){const t=resolveIfNotPlainOrUrl(e,r)||e;if(this.moduleRegistry.has(t))return t;const n=this.resolver.resolveLocal(t);if(n){if(this.namedDefineRegistry.has(t)&&this.namedDefineRegistry.get(t).defined){if(!this.moduleRegistry.get(n)||!this.aliases.has(t))return t}return n}if(this.namedDefineRegistry.has(t))return t;try{o=await this.resolver.resolve(t)}catch(e){}}if(!o||!isUrl(o)){if(this.namedDefineRegistry.has(e))return e;throw new LoaderError(UNRESOLVED,[e])}return t&&isUrl(o)&&(o+=`?importer=${encodeURIComponent(t)}`),o}has(e){return this.moduleRegistry.has(e)}define(e,t,r){const o=this.namedDefineRegistry.get(e);if(o&&o.defined)return"production"!==process.env.NODE_ENV&&hasConsole&&console.warn(`Module redefine attempted: ${e}`),void(this.lastDefine=o);const n={name:e,dependencies:t,exporter:r,defined:!0};o&&o.external&&o.external.resolveExternal(n),this.profiler.logOperationStart({id:MODULE_DEFINE,specifier:e}),this.namedDefineRegistry.set(e,n),this.lastDefine=n}registerExternalModules(e){const t=[];if(e.map((e=>{if(this.namedDefineRegistry.has(e))t.push(e);else{let t,r;const o=new Promise(((o,n)=>{t=o,r=setTimeout((()=>{n(new LoaderError(MODULE_LOAD_TIMEOUT,[e]))}),MODULE_LOAD_TIMEOUT_TIMER)})).finally((()=>{clearTimeout(r)})),n={name:e,defined:!1,external:{resolveExternal:t,moduleDefPromise:o}};this.namedDefineRegistry.set(e,n)}})),t.length)throw new LoaderError(MODULE_ALREADY_LOADED,[t.join(", ")])}getImportMetadataResolver(){return this.resolver}getExistingModuleRecord(e,t){const r=this.moduleRegistry.get(e);if(r)return this.storeModuleAlias(t,e),r;if(e!==t){const e=this.aliases.get(t);if(e){const t=this.moduleRegistry.get(e);if(t)return t}}return r}getModuleRecord(e,t){const r=this.getExistingModuleRecord(e,t);if(r)return r;const o=this.getModuleDef(e,t),n=o.then((e=>{const t=e.dependencies.map((e=>{if("exports"!==e)return invariant("require"!==e,NO_AMD_REQUIRE),this.getModuleDependencyRecord.call(this,e)})).filter((e=>void 0!==e));return Promise.all(t)})),i={id:e,module:Object.create(null),dependencyRecords:n,instantiation:o,evaluated:!1,evaluationPromise:null};return this.moduleRegistry.set(e,i),this.storeModuleAlias(t,e),i}storeModuleAlias(e,t){if(e!==t)if(this.aliases.has(e)){if("production"!==process.env.NODE_ENV&&hasConsole){const r=this.aliases.get(e);r!==t&&console.warn(`Alias update attempt: ${e}=>${r}, ${t}`)}}else this.aliases.set(e,t)}async getModuleDependencyRecord(e){const t=await this.resolve(e);return this.getModuleRecord(t,e)}async topLevelEvaluation(e){return await this.instantiateAll(e,{}),this.evaluateModule(e,{})}async instantiateAll(e,t){if(!t[e.id]){t[e.id]=!0;const r=await e.dependencyRecords;if(r)for(let e=0;e<r.length;e++){const o=r[e];await this.instantiateAll(o,t)}}}async evaluateModule(e,t){const r=await e.dependencyRecords;r.length>0&&(t[e.id]=!0,await this.evaluateModuleDependencies(r,t));const{exporter:o,dependencies:n}=await e.instantiation,i={},s=await Promise.all(n.map((async e=>{if("exports"===e)return i;const t=await this.resolve(e),r=this.moduleRegistry.get(t);if(!r)throw new LoaderError(FAILED_DEP,[t]);const o=r.module;if(!r.evaluated)return this.getCircularDependencyWrapper(o);if(o)return o.__defaultInterop?o.default:o;throw new LoaderError(FAILED_DEP,[t])})));if(e.evaluated)return e.module;let a=o(...s);void 0!==a?(a={default:a},Object.defineProperty(a,"__defaultInterop",{value:!0})):this.isNamedExportDefaultOnly(i)&&Object.defineProperty(i,"__useDefault",{value:!0});const l=a||i;for(const t in l)Object.defineProperty(e.module,t,{enumerable:!0,set(e){l[t]=e},get:()=>l[t]});return l.__useDefault&&Object.defineProperty(e.module,"__useDefault",{value:!0}),l.__defaultInterop&&Object.defineProperty(e.module,"__defaultInterop",{value:!0}),l.__esModule&&Object.defineProperty(e.module,"__esModule",{value:!0}),e.evaluated=!0,Object.freeze(e.module),e.module}isNamedExportDefaultOnly(e){return void 0!==e&&2===Object.getOwnPropertyNames(e).length&&Object.prototype.hasOwnProperty.call(e,"default")&&Object.prototype.hasOwnProperty.call(e,"__esModule")}getCircularDependencyWrapper(e){const t=()=>e.__useDefault||e.__defaultInterop?e.default:e;return t.__circular__=!0,t}async evaluateModuleDependencies(e,t){for(let r=0;r<e.length;r++){const o=e[r];o.evaluated||t[o.id]||(t[o.id]=!0,await this.evaluateModule(o,t))}}async getModuleDef(e,t){this.lastDefine=void 0;const r=isUrl(e)?t!==e?t:void 0:e;let o=r&&this.namedDefineRegistry.get(r);if(o&&o.external)return o.external.moduleDefPromise;if(o&&o.defined)return o;const n=this.resolver.getBaseUrl(),i=r||t;return this.profiler.logOperationStart({id:MODULE_FETCH,specifier:i}),Promise.resolve().then((async()=>{const t=this.loadHook;if(t)for(let r=0;r<t.length;r++){const o=(0,t[r])(e,n),i=isResponseAPromise(o)?await evaluateLoadHook(e,o):o;if(void 0===i)throw new LoaderError(INVALID_LOADER_SERVICE_RESPONSE);if(i&&null!==i)return evaluateLoadHookResponse(i,e)}return!1})).then((t=>{if(!0!==t&&hasDocument)return loadModuleDef(e)})).then((()=>{if(o=r&&this.namedDefineRegistry.get(r),o||(o=this.lastDefine),!o)throw new LoaderError(FAIL_INSTANTIATE,[e]);return this.profiler.logOperationEnd({id:MODULE_FETCH,specifier:i}),o})).catch((e=>{throw this.profiler.logOperationStart({id:MODULE_ERROR,specifier:i}),e}))}addLoaderPlugin(e){if("object"!=typeof e)throw new LoaderError(INVALID_HOOK);const{loadModule:t,resolveModule:r,loadMapping:o}=e;r&&(this.resolveHook?this.resolveHook.push(r):this.resolveHook=[r]),t&&(this.loadHook?this.loadHook.push(t):this.loadHook=[t]),o&&this.resolver.addLoadMappingHook(o)}importMetadataInvalidationCallback({name:e,oldUrl:t,newUrl:r}){const o=this.handleStaleModuleHook;o?evaluateHandleStaleModuleHooks(o,{name:e,oldUrl:t,newUrl:r}):"production"!==process.env.NODE_ENV&&hasConsole&&console.warn(`stale module detected ${e}, current URL:${t}, new URL:${r}`)}registerHandleStaleModuleHook(e){this.handleStaleModuleHook?this.handleStaleModuleHook.push(e):this.handleStaleModuleHook=[e]}}class Loader{constructor(e){let t=e.baseUrl;const r=e.endpoints?e.endpoints.uris.mapping:void 0;let o=e.profiler;if(!r)throw new LoaderError(NO_MAPPING_URL);if(e.endpoints.uris.mapping=r.replace(/\/?$/,"/"),t&&(t=t.replace(/\/?$/,"/")),t||(t=getBaseUrl()),!t)throw new LoaderError(NO_BASE_URL);if(o||(o={logOperationStart:()=>{},logOperationEnd:()=>{}}),this.registry=new ModuleRegistry(Object.freeze({endpoints:e.endpoints,baseUrl:t,profiler:o})),e.appMetadata&&!e.appMetadata.appId){const t=e.appMetadata.bootstrapModule.match(/@lwr-bootstrap\/(.+)\/v\/.+/),r=t&&t[1];e.appMetadata.appId=r}this.services=Object.freeze({addLoaderPlugin:this.registry.addLoaderPlugin.bind(this.registry),handleStaleModule:this.registry.registerHandleStaleModuleHook.bind(this.registry),appMetadata:e.appMetadata})}define(e,t,r){invariant("string"==typeof e,MISSING_NAME);let o=r,n=t;"function"==typeof n&&(o=t,n=[]),invariant(Array.isArray(n),INVALID_DEPS),this.registry.define(e,n,o)}async load(e,t){return this.registry.load(e,t)}has(e){return this.registry.has(e)}async resolve(e,t){return this.registry.resolve(e,t)}async registerImportMappings(e,t){this.registry.getImportMetadataResolver().registerImportMappings(e,t)}registerExternalModules(e){this.registry.registerExternalModules(e)}}const configOptions={format:"amd",apiVersion:"1",apiPrefix:"",bundle:!0,debug:!1},configuration=getConfiguration(configOptions),{bootstrapModule:bootstrapModule,endpoints:endpoints,baseUrl:baseUrl,imports:imports,index:index}=configuration,loader=new Loader({endpoints:endpoints,baseUrl:baseUrl});loader.define("lwr/loader/v/0_9_0-alpha_21",["exports"],(e=>{Object.assign(e,{define:loader.define.bind(loader),load:loader.load.bind(loader)})})),await loader.registerImportMappings({imports:imports,index:index},[bootstrapModule]),globalThis.LWR=Object.freeze({define:loader.define.bind(loader)}),LWR.define("lwr/everywhereAmd/v/0_9_0-alpha_21",["exports","lwr/vault/v/0_9_0-alpha_21"],(function(e,t){async function r(e,r="javascript"){const o=t.getAuthInfo();return o?fetch(e,{headers:{Accept:`application/${r}`,Authorization:`Bearer ${o.access_token}`}}):null}e.authenticate=function(e){e&&t.setAuthInfo(e)},e.initAmd=function(e,t,o){t.match(/\/v5\d\.0\//)&&function(e,t,o){e.addLoaderPlugin({loadModule:async e=>r(e),loadMapping:async e=>{const o=await r(`${t}${encodeURIComponent(e)}`,"json");return o&&o.ok?o.json():null},resolveModule:e=>e&&!/\/v\/[^/]+?$/.test(e)?`${e}/v/${o}`:null})}(e,t,o)},Object.defineProperty(e,"__esModule",{value:!0})})),LWR.define("lwr/vault/v/0_9_0-alpha_21",["exports"],(function(e){let t;e.getAuthInfo=function(){return t},e.setAuthInfo=function(e){t=e},Object.defineProperty(e,"__esModule",{value:!0})}));const{initAmd:initAmd,authenticate:authenticate}=await loader.load(bootstrapModule);async function createComponent(e,t,r={},o){const{createComponent:n}=await loader.load(bootstrapModule.replace("Amd",""));return n(e,t,r,o)}initAmd(loader.services,endpoints?.uris.mapping,"0_9_0-alpha_21");export{authenticate,createComponent};
|