@appshell/react-shell 1.0.0-alpha.14 → 1.0.0-alpha.15

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.
@@ -1,46 +1,5 @@
1
1
  "use strict";
2
- (globalThis["webpackChunkappshell_react_shell"] = globalThis["webpackChunkappshell_react_shell"] || []).push([["src_bootstrap_tsx-webpack_sharing_consume_default_react-dom_react-dom"],{
3
-
4
- /***/ "../core/src/appshell.env.ts"
5
- /*!***********************************!*\
6
- !*** ../core/src/appshell.env.ts ***!
7
- \***********************************/
8
- (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
9
-
10
- __webpack_require__.r(__webpack_exports__);
11
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
12
- /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
13
- /* harmony export */ });
14
- /* eslint-disable no-underscore-dangle */
15
-
16
- // Absent when the registry served the page — it inlines the composition instead.
17
- const env = window.__appshell_env__ ?? {};
18
- const APPSHELL_PUBLIC_URL = env.APPSHELL_PUBLIC_URL || '';
19
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({
20
- APPSHELL_PUBLIC_URL,
21
- APPSHELL_ROOT: env.APPSHELL_ROOT,
22
- APPSHELL_ROOT_PROPS: env.APPSHELL_ROOT_PROPS || '{}',
23
- APPSHELL_CONFIG_URL: `${APPSHELL_PUBLIC_URL}/appshell.config.json`,
24
- APPSHELL_PRIMARY_COLOR: env.APPSHELL_PRIMARY_COLOR || '#8ed6fb',
25
- APPSHELL_THEME_COLOR: env.APPSHELL_THEME_COLOR || '#282c34'
26
- });
27
-
28
- /***/ },
29
-
30
- /***/ "../core/src/index.ts"
31
- /*!****************************!*\
32
- !*** ../core/src/index.ts ***!
33
- \****************************/
34
- (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
35
-
36
- __webpack_require__.r(__webpack_exports__);
37
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
38
- /* harmony export */ APPSHELL_ENV: () => (/* reexport safe */ _appshell_env__WEBPACK_IMPORTED_MODULE_0__["default"])
39
- /* harmony export */ });
40
- /* harmony import */ var _appshell_env__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./appshell.env */ "../core/src/appshell.env.ts");
41
-
42
-
43
- /***/ },
2
+ (globalThis["webpackChunkappshell_react_shell"] = globalThis["webpackChunkappshell_react_shell"] || []).push([["src_bootstrap_tsx"],{
44
3
 
45
4
  /***/ "../loader/src/index.ts"
46
5
  /*!******************************!*\
@@ -53,7 +12,6 @@ __webpack_require__.r(__webpack_exports__);
53
12
  /* harmony export */ chainResolvers: () => (/* reexport safe */ _resolvers__WEBPACK_IMPORTED_MODULE_1__.chainResolvers),
54
13
  /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__),
55
14
  /* harmony export */ inlineResolver: () => (/* reexport safe */ _resolvers__WEBPACK_IMPORTED_MODULE_1__.inlineResolver),
56
- /* harmony export */ legacyManifestResolver: () => (/* reexport safe */ _resolvers__WEBPACK_IMPORTED_MODULE_1__.legacyManifestResolver),
57
15
  /* harmony export */ registryResolver: () => (/* reexport safe */ _resolvers__WEBPACK_IMPORTED_MODULE_1__.registryResolver)
58
16
  /* harmony export */ });
59
17
  /* harmony import */ var _remoteLoader__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./remoteLoader */ "../loader/src/remoteLoader.ts");
@@ -142,15 +100,17 @@ __webpack_require__.r(__webpack_exports__);
142
100
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
143
101
  /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
144
102
  /* harmony export */ });
145
- /* harmony import */ var _loadAppshellComponent__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./loadAppshellComponent */ "../loader/src/loadAppshellComponent.ts");
146
- /* harmony import */ var _resolvers__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./resolvers */ "../loader/src/resolvers.ts");
103
+ /* harmony import */ var _appshell_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @appshell/runtime */ "webpack/sharing/consume/default/@appshell/runtime/@appshell/runtime");
104
+ /* harmony import */ var _loadAppshellComponent__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./loadAppshellComponent */ "../loader/src/loadAppshellComponent.ts");
105
+ /* harmony import */ var _resolvers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./resolvers */ "../loader/src/resolvers.ts");
147
106
  /* eslint-disable no-underscore-dangle */
148
107
 
149
108
 
150
109
 
151
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((config, options = {}) => {
110
+
111
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((options = {}) => {
152
112
  const composition = options.composition ?? (typeof window === 'undefined' ? undefined : window.__appshell_config__);
153
- const resolve = options.resolver ?? (0,_resolvers__WEBPACK_IMPORTED_MODULE_1__.chainResolvers)((0,_resolvers__WEBPACK_IMPORTED_MODULE_1__.inlineResolver)(composition), (0,_resolvers__WEBPACK_IMPORTED_MODULE_1__.registryResolver)(composition), (0,_resolvers__WEBPACK_IMPORTED_MODULE_1__.legacyManifestResolver)(config));
113
+ const resolve = options.resolver ?? (0,_resolvers__WEBPACK_IMPORTED_MODULE_2__.chainResolvers)((0,_resolvers__WEBPACK_IMPORTED_MODULE_2__.inlineResolver)(composition), (0,_resolvers__WEBPACK_IMPORTED_MODULE_2__.registryResolver)(composition));
154
114
  return async key => {
155
115
  const failed = err => new Error(`Failed to load component '${key}'. ${err?.toString()}`);
156
116
  let resolution;
@@ -164,13 +124,15 @@ __webpack_require__.r(__webpack_exports__);
164
124
  }
165
125
  const {
166
126
  remote,
167
- environment,
168
- manifest
127
+ vars
169
128
  } = resolution;
170
129
  try {
171
- window[`__appshell_env__${remote.scope}`] = environment;
172
- const Component = await (0,_loadAppshellComponent__WEBPACK_IMPORTED_MODULE_0__["default"])(remote.scope, remote.module, remote.remoteEntryUrl, remote.shareScope);
173
- return [Component, manifest];
130
+ // Before the remote loads, so a package that validates its vars while its modules
131
+ // evaluate still finds them. `@appshell/runtime` is a shared singleton, so this is
132
+ // the same store the package reads through `getVars()`.
133
+ (0,_appshell_runtime__WEBPACK_IMPORTED_MODULE_0__.setVars)(remote.scope, vars);
134
+ const Component = await (0,_loadAppshellComponent__WEBPACK_IMPORTED_MODULE_1__["default"])(remote.scope, remote.module, remote.remoteEntryUrl, remote.shareScope);
135
+ return [Component, remote];
174
136
  } catch (err) {
175
137
  throw failed(err);
176
138
  }
@@ -190,30 +152,22 @@ __webpack_require__.r(__webpack_exports__);
190
152
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
191
153
  /* harmony export */ chainResolvers: () => (/* binding */ chainResolvers),
192
154
  /* harmony export */ inlineResolver: () => (/* binding */ inlineResolver),
193
- /* harmony export */ legacyManifestResolver: () => (/* binding */ legacyManifestResolver),
194
155
  /* harmony export */ registryResolver: () => (/* binding */ registryResolver)
195
156
  /* harmony export */ });
196
- const manifestOf = (composition, remotes) => ({
197
- remotes,
198
- environment: composition.environment,
199
- modules: {}
200
- });
201
-
202
157
  /** The registry inlined the composition into the page, so no network call is needed. */
203
158
  const inlineResolver = composition => async key => {
204
159
  const remote = composition?.remotes[key];
205
160
  if (!composition || !remote) return undefined;
206
161
  return {
207
162
  remote,
208
- environment: composition.environment[remote.scope] ?? {},
209
- manifest: manifestOf(composition, composition.remotes)
163
+ vars: composition.vars[remote.scope] ?? {}
210
164
  };
211
165
  };
212
166
 
213
- /** Fetch-on-miss: covers an app activated after this page was served. */
167
+ /** Fetch-on-miss: covers a package activated after this page was served. */
214
168
  const registryResolver = (composition, origin = '') => async key => {
215
169
  if (!composition) return undefined;
216
- const url = `${origin}/v1/environments/${composition.environmentId}/remotes/${key}`;
170
+ const url = `${origin}/v1/applications/${composition.applicationId}/remotes/${key}`;
217
171
  const response = await fetch(url, {
218
172
  credentials: 'include'
219
173
  });
@@ -221,47 +175,7 @@ const registryResolver = (composition, origin = '') => async key => {
221
175
  const remote = await response.json();
222
176
  return {
223
177
  remote,
224
- environment: composition.environment[remote.scope] ?? {},
225
- manifest: manifestOf(composition, {
226
- [key]: remote
227
- })
228
- };
229
- };
230
-
231
- /**
232
- * Pre-registry hosts: follow `index[key]` to the app's own manifest. The override
233
- * merge stays here because in this mode no server has done it.
234
- */
235
- const legacyManifestResolver = config => {
236
- const cache = new Map();
237
- const fetchManifest = url => {
238
- const cached = cache.get(url);
239
- if (cached) return cached;
240
- const pending = fetch(url, {
241
- credentials: 'include'
242
- }).then(async response => {
243
- if (!response.ok) {
244
- throw new Error(`Failed to get manifest from ${url}. ${await response.text()}`);
245
- }
246
- return response.json();
247
- });
248
- cache.set(url, pending);
249
- return pending;
250
- };
251
- return async key => {
252
- const manifestUrl = config.index?.[key];
253
- if (!manifestUrl) return undefined;
254
- const manifest = await fetchManifest(manifestUrl);
255
- const remote = manifest?.remotes[key];
256
- if (!remote) return undefined;
257
- return {
258
- remote,
259
- environment: {
260
- ...(manifest.environment[remote.scope] ?? {}),
261
- ...(config.overrides?.environment?.[remote.scope] ?? {})
262
- },
263
- manifest
264
- };
178
+ vars: composition.vars[remote.scope] ?? {}
265
179
  };
266
180
  };
267
181
  const chainResolvers = (...resolvers) => async key => {
@@ -287,33 +201,56 @@ __webpack_require__.r(__webpack_exports__);
287
201
 
288
202
  /***/ },
289
203
 
290
- /***/ "../react/src/components/AppshellComponent.tsx"
291
- /*!*****************************************************!*\
292
- !*** ../react/src/components/AppshellComponent.tsx ***!
293
- \*****************************************************/
204
+ /***/ "../react/src/components/LoadingError.tsx"
205
+ /*!************************************************!*\
206
+ !*** ../react/src/components/LoadingError.tsx ***!
207
+ \************************************************/
208
+ (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
209
+
210
+ __webpack_require__.r(__webpack_exports__);
211
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
212
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
213
+ /* harmony export */ });
214
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "webpack/sharing/consume/default/react/react");
215
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
216
+
217
+ const LoadingError = ({
218
+ remote,
219
+ reason
220
+ }) => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
221
+ style: {
222
+ border: '3px solid red'
223
+ }
224
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h5", null, `Error loading Appshell component '${remote}.'`), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
225
+ style: {
226
+ fontSize: '1rem'
227
+ }
228
+ }, reason));
229
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (LoadingError);
230
+
231
+ /***/ },
232
+
233
+ /***/ "../react/src/components/RemoteSlot.tsx"
234
+ /*!**********************************************!*\
235
+ !*** ../react/src/components/RemoteSlot.tsx ***!
236
+ \**********************************************/
294
237
  (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
295
238
 
296
239
  __webpack_require__.r(__webpack_exports__);
297
240
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
298
- /* harmony export */ FederatedComponent: () => (/* binding */ FederatedComponent),
299
241
  /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
300
242
  /* harmony export */ });
301
243
  /* harmony import */ var _appshell_loader__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @appshell/loader */ "../loader/src/index.ts");
302
244
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "webpack/sharing/consume/default/react/react");
303
245
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
304
- /* harmony import */ var _contexts_ManifestContext__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../contexts/ManifestContext */ "../react/src/contexts/ManifestContext.tsx");
305
- /* harmony import */ var _contexts_RemoteContext__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../contexts/RemoteContext */ "../react/src/contexts/RemoteContext.tsx");
306
- /* harmony import */ var _hooks_useGlobalConfig__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../hooks/useGlobalConfig */ "../react/src/hooks/useGlobalConfig.ts");
307
- /* harmony import */ var _LoadingError__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./LoadingError */ "../react/src/components/LoadingError.tsx");
246
+ /* harmony import */ var _contexts_RemoteContext__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../contexts/RemoteContext */ "../react/src/contexts/RemoteContext.tsx");
247
+ /* harmony import */ var _LoadingError__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./LoadingError */ "../react/src/components/LoadingError.tsx");
308
248
  /* eslint-disable react/jsx-props-no-spreading */
309
249
 
310
250
 
311
251
 
312
252
 
313
253
 
314
-
315
-
316
-
317
254
  // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-constraint
318
255
 
319
256
  /**
@@ -331,30 +268,27 @@ __webpack_require__.r(__webpack_exports__);
331
268
  * client still falls back to a full reload — which is the right place for that decision,
332
269
  * because it is the only side that knows whether the update applied.
333
270
  */
334
- const AppshellComponent = ({
271
+ const RemoteSlot = ({
335
272
  remote,
336
273
  fallback,
337
274
  ...rest
338
275
  }) => {
339
- const config = (0,_hooks_useGlobalConfig__WEBPACK_IMPORTED_MODULE_4__["default"])();
340
276
  const [element, setElement] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)();
341
277
  (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(() => {
342
278
  let disposed = false;
343
- const loadComponent = (0,_appshell_loader__WEBPACK_IMPORTED_MODULE_0__["default"])(config);
279
+ const loadComponent = (0,_appshell_loader__WEBPACK_IMPORTED_MODULE_0__["default"])();
344
280
  async function load() {
345
281
  try {
346
- const [Component, manifest] = await loadComponent(remote);
282
+ const [Component, resolved] = await loadComponent(remote);
347
283
  if (disposed || !Component) {
348
284
  return;
349
285
  }
350
- setElement(/*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement(_contexts_ManifestContext__WEBPACK_IMPORTED_MODULE_2__.ManifestProvider, {
351
- manifest: manifest
352
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement(_contexts_RemoteContext__WEBPACK_IMPORTED_MODULE_3__.RemoteProvider, {
353
- remote: manifest.remotes[remote]
354
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement(Component, rest))));
286
+ setElement(/*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement(_contexts_RemoteContext__WEBPACK_IMPORTED_MODULE_2__.RemoteProvider, {
287
+ remote: resolved
288
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement(Component, rest)));
355
289
  } catch (err) {
356
290
  if (!disposed) {
357
- setElement(/*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement(_LoadingError__WEBPACK_IMPORTED_MODULE_5__["default"], {
291
+ setElement(/*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement(_LoadingError__WEBPACK_IMPORTED_MODULE_3__["default"], {
358
292
  remote: remote,
359
293
  reason: `${err}`
360
294
  }));
@@ -367,228 +301,17 @@ const AppshellComponent = ({
367
301
  disposed = true;
368
302
  };
369
303
  // eslint-disable-next-line react-hooks/exhaustive-deps
370
- }, [remote, config, ...Object.values(rest)]);
304
+ }, [remote, ...Object.values(rest)]);
371
305
 
372
306
  // eslint-disable-next-line no-console
373
- console.debug(`rendering AppshellComponent[${remote}], loading=${!element}`);
307
+ console.debug(`rendering RemoteSlot[${remote}], loading=${!element}`);
374
308
  // eslint-disable-next-line react/jsx-no-useless-fragment
375
309
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement((react__WEBPACK_IMPORTED_MODULE_1___default().Fragment), null, element || fallback);
376
310
  };
377
- AppshellComponent.defaultProps = {
378
- fallback: undefined
379
- };
380
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (AppshellComponent);
381
-
382
- /**
383
- * @deprecated This component is deprecated and will be removed in future versions.
384
- * Please use AppshellComponent instead.
385
- */
386
- const FederatedComponent = AppshellComponent;
387
-
388
- /***/ },
389
-
390
- /***/ "../react/src/components/LoadingError.tsx"
391
- /*!************************************************!*\
392
- !*** ../react/src/components/LoadingError.tsx ***!
393
- \************************************************/
394
- (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
395
-
396
- __webpack_require__.r(__webpack_exports__);
397
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
398
- /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
399
- /* harmony export */ });
400
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "webpack/sharing/consume/default/react/react");
401
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
402
-
403
- const LoadingError = ({
404
- remote,
405
- reason
406
- }) => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
407
- style: {
408
- border: '3px solid red'
409
- }
410
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h5", null, `Error loading Appshell component '${remote}.'`), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
411
- style: {
412
- fontSize: '1rem'
413
- }
414
- }, reason));
415
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (LoadingError);
416
-
417
- /***/ },
418
-
419
- /***/ "../react/src/components/ReactHost.tsx"
420
- /*!*********************************************!*\
421
- !*** ../react/src/components/ReactHost.tsx ***!
422
- \*********************************************/
423
- (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
424
-
425
- __webpack_require__.r(__webpack_exports__);
426
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
427
- /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
428
- /* harmony export */ });
429
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "webpack/sharing/consume/default/react/react");
430
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
431
- /* harmony import */ var _contexts_GlobalConfigContext__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../contexts/GlobalConfigContext */ "../react/src/contexts/GlobalConfigContext.tsx");
432
- /* harmony import */ var _AppshellComponent__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./AppshellComponent */ "../react/src/components/AppshellComponent.tsx");
433
- function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
434
- /* eslint-disable react/jsx-props-no-spreading */
435
-
436
-
437
-
438
-
439
-
440
- /** The registry inlines the composition, so a shell it served needs no config fetch. */
441
- const inlinedConfig = () => {
442
- const composition = typeof window === 'undefined' ? undefined : window.__appshell_config__;
443
- return composition && {
444
- index: composition.index
445
- };
446
- };
447
- const ReactHost = ({
448
- configUrl,
449
- remote,
450
- fallback,
451
- ...rest
452
- }) => {
453
- const [config, setGlobalConfig] = react__WEBPACK_IMPORTED_MODULE_0___default().useState(inlinedConfig);
454
- (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
455
- if (config) {
456
- return;
457
- }
458
- if (!configUrl) {
459
- setGlobalConfig({
460
- index: {}
461
- });
462
- return;
463
- }
464
- const fetchGlobalConfig = async () => {
465
- const res = await fetch(configUrl);
466
- setGlobalConfig(res.ok ? await res.json() : {
467
- index: {}
468
- });
469
- };
470
- fetchGlobalConfig();
471
- }, [config, configUrl]);
472
- if (!config) {
473
- return null;
474
- }
475
- return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_contexts_GlobalConfigContext__WEBPACK_IMPORTED_MODULE_1__.GlobalConfigProvider, {
476
- config: config
477
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_AppshellComponent__WEBPACK_IMPORTED_MODULE_2__["default"], _extends({
478
- remote: remote,
479
- fallback: fallback
480
- }, rest)));
481
- };
482
- ReactHost.defaultProps = {
483
- configUrl: undefined,
311
+ RemoteSlot.defaultProps = {
484
312
  fallback: undefined
485
313
  };
486
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ReactHost);
487
-
488
- /***/ },
489
-
490
- /***/ "../react/src/contexts/GlobalConfigContext.tsx"
491
- /*!*****************************************************!*\
492
- !*** ../react/src/contexts/GlobalConfigContext.tsx ***!
493
- \*****************************************************/
494
- (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
495
-
496
- __webpack_require__.r(__webpack_exports__);
497
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
498
- /* harmony export */ GlobalConfigConsumer: () => (/* binding */ GlobalConfigConsumer),
499
- /* harmony export */ GlobalConfigContext: () => (/* binding */ GlobalConfigContext),
500
- /* harmony export */ GlobalConfigProvider: () => (/* binding */ GlobalConfigProvider),
501
- /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
502
- /* harmony export */ });
503
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "webpack/sharing/consume/default/react/react");
504
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
505
-
506
- const GlobalConfigContext = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)({
507
- index: {}
508
- });
509
- const GlobalConfigProvider = ({
510
- config,
511
- children
512
- }) => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(GlobalConfigContext.Provider, {
513
- value: config
514
- }, children);
515
- const GlobalConfigConsumer = GlobalConfigContext.Consumer;
516
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (GlobalConfigContext);
517
-
518
- /***/ },
519
-
520
- /***/ "../react/src/contexts/ManifestContext.tsx"
521
- /*!*************************************************!*\
522
- !*** ../react/src/contexts/ManifestContext.tsx ***!
523
- \*************************************************/
524
- (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
525
-
526
- __webpack_require__.r(__webpack_exports__);
527
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
528
- /* harmony export */ ManifestConsumer: () => (/* binding */ ManifestConsumer),
529
- /* harmony export */ ManifestContext: () => (/* binding */ ManifestContext),
530
- /* harmony export */ ManifestProvider: () => (/* binding */ ManifestProvider),
531
- /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
532
- /* harmony export */ });
533
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "webpack/sharing/consume/default/react/react");
534
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
535
-
536
- const ManifestContext = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)({
537
- remotes: {},
538
- modules: {},
539
- environment: {}
540
- });
541
-
542
- // `modules` is build-time webpack config that the browser has no use for, and it is
543
- // the bulkiest field to inline. Warn for one release to find any consumer still on it.
544
- const deprecateModules = manifest => new Proxy(manifest, {
545
- get(target, property, receiver) {
546
- if (property === 'modules') {
547
- // eslint-disable-next-line no-console
548
- console.warn('useManifest().modules is deprecated and will be removed. It is build-time webpack config; use useRemote() for what the browser needs. Please open an issue at github.com/appshell-org/appshell if you rely on it.');
549
- }
550
- return Reflect.get(target, property, receiver);
551
- }
552
- });
553
- const ManifestProvider = ({
554
- manifest,
555
- children
556
- }) => {
557
- const value = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => deprecateModules(manifest), [manifest]);
558
- return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(ManifestContext.Provider, {
559
- value: value
560
- }, children);
561
- };
562
- const ManifestConsumer = ManifestContext.Consumer;
563
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ManifestContext);
564
-
565
- /***/ },
566
-
567
- /***/ "../react/src/contexts/MetadataContext.tsx"
568
- /*!*************************************************!*\
569
- !*** ../react/src/contexts/MetadataContext.tsx ***!
570
- \*************************************************/
571
- (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
572
-
573
- __webpack_require__.r(__webpack_exports__);
574
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
575
- /* harmony export */ MetadataConsumer: () => (/* binding */ MetadataConsumer),
576
- /* harmony export */ MetadataContext: () => (/* binding */ MetadataContext),
577
- /* harmony export */ MetadataProvider: () => (/* binding */ MetadataProvider),
578
- /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
579
- /* harmony export */ });
580
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "webpack/sharing/consume/default/react/react");
581
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
582
-
583
- const MetadataContext = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)({});
584
- const MetadataProvider = ({
585
- metata,
586
- children
587
- }) => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(MetadataContext.Provider, {
588
- value: metata
589
- }, children);
590
- const MetadataConsumer = MetadataContext.Consumer;
591
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (MetadataContext);
314
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (RemoteSlot);
592
315
 
593
316
  /***/ },
594
317
 
@@ -623,70 +346,6 @@ const RemoteConsumer = RemoteContext.Consumer;
623
346
 
624
347
  /***/ },
625
348
 
626
- /***/ "../react/src/hooks/useGlobalConfig.ts"
627
- /*!*********************************************!*\
628
- !*** ../react/src/hooks/useGlobalConfig.ts ***!
629
- \*********************************************/
630
- (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
631
-
632
- __webpack_require__.r(__webpack_exports__);
633
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
634
- /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
635
- /* harmony export */ });
636
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "webpack/sharing/consume/default/react/react");
637
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
638
- /* harmony import */ var _contexts_GlobalConfigContext__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../contexts/GlobalConfigContext */ "../react/src/contexts/GlobalConfigContext.tsx");
639
-
640
- // eslint-disable-next-line import/no-named-as-default
641
-
642
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (() => react__WEBPACK_IMPORTED_MODULE_0___default().useContext(_contexts_GlobalConfigContext__WEBPACK_IMPORTED_MODULE_1__["default"]));
643
- (Object.getOwnPropertyDescriptor(__WEBPACK_DEFAULT_EXPORT__, "name") || {}).writable || Object.defineProperty(__WEBPACK_DEFAULT_EXPORT__, "name", { value: "default", configurable: true });
644
-
645
- /***/ },
646
-
647
- /***/ "../react/src/hooks/useManifest.ts"
648
- /*!*****************************************!*\
649
- !*** ../react/src/hooks/useManifest.ts ***!
650
- \*****************************************/
651
- (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
652
-
653
- __webpack_require__.r(__webpack_exports__);
654
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
655
- /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
656
- /* harmony export */ });
657
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "webpack/sharing/consume/default/react/react");
658
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
659
- /* harmony import */ var _contexts_ManifestContext__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../contexts/ManifestContext */ "../react/src/contexts/ManifestContext.tsx");
660
-
661
-
662
- // eslint-disable-next-line import/no-named-as-default
663
-
664
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (() => react__WEBPACK_IMPORTED_MODULE_0___default().useContext(_contexts_ManifestContext__WEBPACK_IMPORTED_MODULE_1__["default"]));
665
- (Object.getOwnPropertyDescriptor(__WEBPACK_DEFAULT_EXPORT__, "name") || {}).writable || Object.defineProperty(__WEBPACK_DEFAULT_EXPORT__, "name", { value: "default", configurable: true });
666
-
667
- /***/ },
668
-
669
- /***/ "../react/src/hooks/useMetadata.ts"
670
- /*!*****************************************!*\
671
- !*** ../react/src/hooks/useMetadata.ts ***!
672
- \*****************************************/
673
- (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
674
-
675
- __webpack_require__.r(__webpack_exports__);
676
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
677
- /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
678
- /* harmony export */ });
679
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "webpack/sharing/consume/default/react/react");
680
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
681
- /* harmony import */ var _contexts_MetadataContext__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../contexts/MetadataContext */ "../react/src/contexts/MetadataContext.tsx");
682
-
683
- // eslint-disable-next-line import/no-named-as-default
684
-
685
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (() => react__WEBPACK_IMPORTED_MODULE_0___default().useContext(_contexts_MetadataContext__WEBPACK_IMPORTED_MODULE_1__["default"]));
686
- (Object.getOwnPropertyDescriptor(__WEBPACK_DEFAULT_EXPORT__, "name") || {}).writable || Object.defineProperty(__WEBPACK_DEFAULT_EXPORT__, "name", { value: "default", configurable: true });
687
-
688
- /***/ },
689
-
690
349
  /***/ "../react/src/hooks/useRemote.ts"
691
350
  /*!***************************************!*\
692
351
  !*** ../react/src/hooks/useRemote.ts ***!
@@ -704,7 +363,7 @@ __webpack_require__.r(__webpack_exports__);
704
363
  // eslint-disable-next-line import/no-named-as-default
705
364
 
706
365
 
707
- /** The remote backing the nearest `AppshellComponent` — it already knows its own key. */
366
+ /** The remote backing the nearest `RemoteSlot` — it already knows its own key. */
708
367
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (() => react__WEBPACK_IMPORTED_MODULE_0___default().useContext(_contexts_RemoteContext__WEBPACK_IMPORTED_MODULE_1__["default"]));
709
368
  (Object.getOwnPropertyDescriptor(__WEBPACK_DEFAULT_EXPORT__, "name") || {}).writable || Object.defineProperty(__WEBPACK_DEFAULT_EXPORT__, "name", { value: "default", configurable: true });
710
369
 
@@ -718,37 +377,15 @@ __webpack_require__.r(__webpack_exports__);
718
377
 
719
378
  __webpack_require__.r(__webpack_exports__);
720
379
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
721
- /* harmony export */ AppshellComponent: () => (/* reexport safe */ _components_AppshellComponent__WEBPACK_IMPORTED_MODULE_0__["default"]),
722
- /* harmony export */ FederatedComponent: () => (/* reexport safe */ _components_AppshellComponent__WEBPACK_IMPORTED_MODULE_0__.FederatedComponent),
723
- /* harmony export */ GlobalConfigProvider: () => (/* reexport safe */ _contexts_GlobalConfigContext__WEBPACK_IMPORTED_MODULE_2__.GlobalConfigProvider),
724
- /* harmony export */ ManifestProvider: () => (/* reexport safe */ _contexts_ManifestContext__WEBPACK_IMPORTED_MODULE_3__.ManifestProvider),
725
- /* harmony export */ MetadataProvider: () => (/* reexport safe */ _contexts_MetadataContext__WEBPACK_IMPORTED_MODULE_4__.MetadataProvider),
726
- /* harmony export */ ReactHost: () => (/* reexport safe */ _components_ReactHost__WEBPACK_IMPORTED_MODULE_1__["default"]),
727
- /* harmony export */ RemoteProvider: () => (/* reexport safe */ _contexts_RemoteContext__WEBPACK_IMPORTED_MODULE_5__.RemoteProvider),
728
- /* harmony export */ jsonResource: () => (/* reexport safe */ _resources_jsonResource__WEBPACK_IMPORTED_MODULE_10__["default"]),
729
- /* harmony export */ useGlobalConfig: () => (/* reexport safe */ _hooks_useGlobalConfig__WEBPACK_IMPORTED_MODULE_6__["default"]),
730
- /* harmony export */ useManifest: () => (/* reexport safe */ _hooks_useManifest__WEBPACK_IMPORTED_MODULE_7__["default"]),
731
- /* harmony export */ useMetadata: () => (/* reexport safe */ _hooks_useMetadata__WEBPACK_IMPORTED_MODULE_8__["default"]),
732
- /* harmony export */ useRemote: () => (/* reexport safe */ _hooks_useRemote__WEBPACK_IMPORTED_MODULE_9__["default"])
380
+ /* harmony export */ RemoteProvider: () => (/* reexport safe */ _contexts_RemoteContext__WEBPACK_IMPORTED_MODULE_1__.RemoteProvider),
381
+ /* harmony export */ RemoteSlot: () => (/* reexport safe */ _components_RemoteSlot__WEBPACK_IMPORTED_MODULE_0__["default"]),
382
+ /* harmony export */ jsonResource: () => (/* reexport safe */ _resources_jsonResource__WEBPACK_IMPORTED_MODULE_3__["default"]),
383
+ /* harmony export */ useRemote: () => (/* reexport safe */ _hooks_useRemote__WEBPACK_IMPORTED_MODULE_2__["default"])
733
384
  /* harmony export */ });
734
- /* harmony import */ var _components_AppshellComponent__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./components/AppshellComponent */ "../react/src/components/AppshellComponent.tsx");
735
- /* harmony import */ var _components_ReactHost__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./components/ReactHost */ "../react/src/components/ReactHost.tsx");
736
- /* harmony import */ var _contexts_GlobalConfigContext__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./contexts/GlobalConfigContext */ "../react/src/contexts/GlobalConfigContext.tsx");
737
- /* harmony import */ var _contexts_ManifestContext__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./contexts/ManifestContext */ "../react/src/contexts/ManifestContext.tsx");
738
- /* harmony import */ var _contexts_MetadataContext__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./contexts/MetadataContext */ "../react/src/contexts/MetadataContext.tsx");
739
- /* harmony import */ var _contexts_RemoteContext__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./contexts/RemoteContext */ "../react/src/contexts/RemoteContext.tsx");
740
- /* harmony import */ var _hooks_useGlobalConfig__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./hooks/useGlobalConfig */ "../react/src/hooks/useGlobalConfig.ts");
741
- /* harmony import */ var _hooks_useManifest__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./hooks/useManifest */ "../react/src/hooks/useManifest.ts");
742
- /* harmony import */ var _hooks_useMetadata__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./hooks/useMetadata */ "../react/src/hooks/useMetadata.ts");
743
- /* harmony import */ var _hooks_useRemote__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./hooks/useRemote */ "../react/src/hooks/useRemote.ts");
744
- /* harmony import */ var _resources_jsonResource__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./resources/jsonResource */ "../react/src/resources/jsonResource.ts");
745
-
746
-
747
-
748
-
749
-
750
-
751
-
385
+ /* harmony import */ var _components_RemoteSlot__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./components/RemoteSlot */ "../react/src/components/RemoteSlot.tsx");
386
+ /* harmony import */ var _contexts_RemoteContext__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./contexts/RemoteContext */ "../react/src/contexts/RemoteContext.tsx");
387
+ /* harmony import */ var _hooks_useRemote__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./hooks/useRemote */ "../react/src/hooks/useRemote.ts");
388
+ /* harmony import */ var _resources_jsonResource__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./resources/jsonResource */ "../react/src/resources/jsonResource.ts");
752
389
 
753
390
 
754
391
 
@@ -810,15 +447,12 @@ __webpack_require__.r(__webpack_exports__);
810
447
  (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
811
448
 
812
449
  __webpack_require__.r(__webpack_exports__);
813
- /* harmony import */ var _appshell_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @appshell/core */ "../core/src/index.ts");
814
- /* harmony import */ var _appshell_react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @appshell/react */ "../react/src/index.ts");
815
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ "webpack/sharing/consume/default/react/react");
816
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
817
- /* harmony import */ var react_dom_client__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react-dom/client */ "../../node_modules/react-dom/client.js");
818
- /* harmony import */ var _components_Splash__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./components/Splash */ "./src/components/Splash.tsx");
819
- /* harmony import */ var _overlayBadge__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./overlayBadge */ "./src/overlayBadge.ts");
820
- /* harmony import */ var _reportWebVitals__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./reportWebVitals */ "./src/reportWebVitals.ts");
821
- /* harmony import */ var _reset_css__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./reset.css */ "./src/reset.css");
450
+ /* harmony import */ var _appshell_react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @appshell/react */ "../react/src/index.ts");
451
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "webpack/sharing/consume/default/react/react");
452
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
453
+ /* harmony import */ var react_dom_client__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react-dom/client */ "../../node_modules/react-dom/client.js");
454
+ /* harmony import */ var _overlayBadge__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./overlayBadge */ "./src/overlayBadge.ts");
455
+ /* harmony import */ var _reset_css__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./reset.css */ "./src/reset.css");
822
456
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
823
457
  /* eslint-disable react/jsx-props-no-spreading */
824
458
 
@@ -826,63 +460,26 @@ function _extends() { return _extends = Object.assign ? Object.assign.bind() : f
826
460
 
827
461
 
828
462
 
463
+ const root = (0,react_dom_client__WEBPACK_IMPORTED_MODULE_2__.createRoot)(document.getElementById('root'));
829
464
 
830
-
831
-
832
- const root = (0,react_dom_client__WEBPACK_IMPORTED_MODULE_3__.createRoot)(document.getElementById('root'));
833
-
834
- // A registry-served shell inlines these; the build-time env is the standalone fallback.
465
+ // The registry inlines the composition into the document it serves.
835
466
  const composition = window.__appshell_config__;
836
467
 
837
468
  // Outside the React root on purpose, so it outlives a crash in the composed app.
838
- (0,_overlayBadge__WEBPACK_IMPORTED_MODULE_5__["default"])(composition);
839
- const remote = composition?.root || _appshell_core__WEBPACK_IMPORTED_MODULE_0__.APPSHELL_ENV.APPSHELL_ROOT;
840
- const props = composition?.rootProps ?? JSON.parse(_appshell_core__WEBPACK_IMPORTED_MODULE_0__.APPSHELL_ENV.APPSHELL_ROOT_PROPS);
841
- if (!remote) {
842
- throw new Error(`No root remote to mount. The registry supplies one; a standalone build needs APPSHELL_ROOT.`);
469
+ (0,_overlayBadge__WEBPACK_IMPORTED_MODULE_3__["default"])(composition);
470
+ if (!composition?.root) {
471
+ throw new Error('No root remote to mount. The registry supplies one in the composition.');
843
472
  }
844
- root.render(/*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement((react__WEBPACK_IMPORTED_MODULE_2___default().StrictMode), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_appshell_react__WEBPACK_IMPORTED_MODULE_1__.ReactHost, _extends({
845
- configUrl: composition ? undefined : _appshell_core__WEBPACK_IMPORTED_MODULE_0__.APPSHELL_ENV.APPSHELL_CONFIG_URL,
846
- remote: remote,
847
- fallback: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_components_Splash__WEBPACK_IMPORTED_MODULE_4__["default"], null)
473
+ const remote = composition.root;
474
+ const props = composition.rootProps;
475
+
476
+ // No fallback. What fills the gap before the root remote mounts is the application's
477
+ // business, not the shell's — and it has to come from the document, since the thing
478
+ // being waited for is the consumer's own code. Until that lands the gap renders as
479
+ // whatever the page background is.
480
+ root.render(/*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement((react__WEBPACK_IMPORTED_MODULE_1___default().StrictMode), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement(_appshell_react__WEBPACK_IMPORTED_MODULE_0__.RemoteSlot, _extends({
481
+ remote: remote
848
482
  }, props))));
849
- (0,_reportWebVitals__WEBPACK_IMPORTED_MODULE_6__["default"])();
850
-
851
- /***/ },
852
-
853
- /***/ "./src/components/Splash.tsx"
854
- /*!***********************************!*\
855
- !*** ./src/components/Splash.tsx ***!
856
- \***********************************/
857
- (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
858
-
859
- __webpack_require__.r(__webpack_exports__);
860
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
861
- /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
862
- /* harmony export */ });
863
- /* harmony import */ var _appshell_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @appshell/core */ "../core/src/index.ts");
864
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "webpack/sharing/consume/default/react/react");
865
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
866
- /* harmony import */ var react_spinners_PropagateLoader__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react-spinners/PropagateLoader */ "../../node_modules/react-spinners/PropagateLoader.js");
867
- /* harmony import */ var react_spinners_PropagateLoader__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_spinners_PropagateLoader__WEBPACK_IMPORTED_MODULE_2__);
868
-
869
-
870
-
871
- const Splash = () => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("div", {
872
- style: {
873
- display: 'flex',
874
- alignItems: 'center',
875
- justifyContent: 'center',
876
- flexGrow: 1,
877
- height: '100vh',
878
- backgroundColor: _appshell_core__WEBPACK_IMPORTED_MODULE_0__.APPSHELL_ENV.APPSHELL_THEME_COLOR
879
- }
880
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement((react_spinners_PropagateLoader__WEBPACK_IMPORTED_MODULE_2___default()), {
881
- color: _appshell_core__WEBPACK_IMPORTED_MODULE_0__.APPSHELL_ENV.APPSHELL_PRIMARY_COLOR,
882
- speedMultiplier: 1.5,
883
- size: 24
884
- }));
885
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Splash);
886
483
 
887
484
  /***/ },
888
485
 
@@ -940,39 +537,6 @@ const overlayBadgeMarkup = (remotes, shellFlavor = 'prod') => {
940
537
 
941
538
  /***/ },
942
539
 
943
- /***/ "./src/reportWebVitals.ts"
944
- /*!********************************!*\
945
- !*** ./src/reportWebVitals.ts ***!
946
- \********************************/
947
- (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
948
-
949
- __webpack_require__.r(__webpack_exports__);
950
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
951
- /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
952
- /* harmony export */ });
953
- // eslint-disable-next-line import/named
954
-
955
- const reportWebVitals = onPerfEntry => {
956
- if (onPerfEntry && onPerfEntry instanceof Function) {
957
- __webpack_require__.e(/*! import() */ "node_modules_web-vitals_dist_web-vitals_js").then(__webpack_require__.bind(__webpack_require__, /*! web-vitals */ "../../node_modules/web-vitals/dist/web-vitals.js")).then(({
958
- getCLS,
959
- getFID,
960
- getFCP,
961
- getLCP,
962
- getTTFB
963
- }) => {
964
- getCLS(onPerfEntry);
965
- getFID(onPerfEntry);
966
- getFCP(onPerfEntry);
967
- getLCP(onPerfEntry);
968
- getTTFB(onPerfEntry);
969
- });
970
- }
971
- };
972
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (reportWebVitals);
973
-
974
- /***/ },
975
-
976
540
  /***/ "../../node_modules/css-loader/dist/cjs.js!../../node_modules/postcss-loader/dist/cjs.js!./src/reset.css"
977
541
  /*!***************************************************************************************************************!*\
978
542
  !*** ../../node_modules/css-loader/dist/cjs.js!../../node_modules/postcss-loader/dist/cjs.js!./src/reset.css ***!
@@ -992,11 +556,163 @@ __webpack_require__.r(__webpack_exports__);
992
556
 
993
557
  var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
994
558
  // Module
995
- ___CSS_LOADER_EXPORT___.push([module.id, "body {\n margin: 0;\n font-family: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Oxygen',\n 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',\n sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n", "",{"version":3,"sources":["webpack://./src/reset.css"],"names":[],"mappings":"AAAA;EACE,SAAS;EACT;;cAEY;EACZ,mCAAmC;EACnC,kCAAkC;AACpC","sourcesContent":["body {\n margin: 0;\n font-family: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Oxygen',\n 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',\n sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n"],"sourceRoot":""}]);
559
+ ___CSS_LOADER_EXPORT___.push([module.id, "/*\n * The one reset on the page.\n *\n * Packages must not ship their own — several global resets (Tailwind's Preflight, for\n * one) fight each other and the shell. This is structural only: it holds no view on how\n * an application looks, which is the packages' and the theme's business, but it does own\n * the handful of browser defaults that must be settled exactly once.\n */\nhtml,\nbody {\n margin: 0;\n padding: 0;\n}\n\nbody {\n min-height: 100vh;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\n#root {\n min-height: 100vh;\n}\n", "",{"version":3,"sources":["webpack://./src/reset.css"],"names":[],"mappings":"AAAA;;;;;;;EAOE;AACF;;EAEE,SAAS;EACT,UAAU;AACZ;;AAEA;EACE,iBAAiB;EACjB,mCAAmC;EACnC,kCAAkC;AACpC;;AAEA;;;EAGE,sBAAsB;AACxB;;AAEA;EACE,iBAAiB;AACnB","sourcesContent":["/*\n * The one reset on the page.\n *\n * Packages must not ship their own — several global resets (Tailwind's Preflight, for\n * one) fight each other and the shell. This is structural only: it holds no view on how\n * an application looks, which is the packages' and the theme's business, but it does own\n * the handful of browser defaults that must be settled exactly once.\n */\nhtml,\nbody {\n margin: 0;\n padding: 0;\n}\n\nbody {\n min-height: 100vh;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\n#root {\n min-height: 100vh;\n}\n"],"sourceRoot":""}]);
996
560
  // Exports
997
561
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);
998
562
 
999
563
 
564
+ /***/ },
565
+
566
+ /***/ "../../node_modules/css-loader/dist/runtime/api.js"
567
+ /*!*********************************************************!*\
568
+ !*** ../../node_modules/css-loader/dist/runtime/api.js ***!
569
+ \*********************************************************/
570
+ (module) {
571
+
572
+
573
+
574
+ /*
575
+ MIT License http://www.opensource.org/licenses/mit-license.php
576
+ Author Tobias Koppers @sokra
577
+ */
578
+ module.exports = function (cssWithMappingToString) {
579
+ var list = [];
580
+
581
+ // return the list of modules as css string
582
+ list.toString = function toString() {
583
+ return this.map(function (item) {
584
+ var content = "";
585
+ var needLayer = typeof item[5] !== "undefined";
586
+ if (item[4]) {
587
+ content += "@supports (".concat(item[4], ") {");
588
+ }
589
+ if (item[2]) {
590
+ content += "@media ".concat(item[2], " {");
591
+ }
592
+ if (needLayer) {
593
+ content += "@layer".concat(item[5].length > 0 ? " ".concat(item[5]) : "", " {");
594
+ }
595
+ content += cssWithMappingToString(item);
596
+ if (needLayer) {
597
+ content += "}";
598
+ }
599
+ if (item[2]) {
600
+ content += "}";
601
+ }
602
+ if (item[4]) {
603
+ content += "}";
604
+ }
605
+ return content;
606
+ }).join("");
607
+ };
608
+
609
+ // import a list of modules into the list
610
+ list.i = function i(modules, media, dedupe, supports, layer) {
611
+ if (typeof modules === "string") {
612
+ modules = [[null, modules, undefined]];
613
+ }
614
+ var alreadyImportedModules = {};
615
+ if (dedupe) {
616
+ for (var k = 0; k < this.length; k++) {
617
+ var id = this[k][0];
618
+ if (id != null) {
619
+ alreadyImportedModules[id] = true;
620
+ }
621
+ }
622
+ }
623
+ for (var _k = 0; _k < modules.length; _k++) {
624
+ var item = [].concat(modules[_k]);
625
+ if (dedupe && alreadyImportedModules[item[0]]) {
626
+ continue;
627
+ }
628
+ if (typeof layer !== "undefined") {
629
+ if (typeof item[5] === "undefined") {
630
+ item[5] = layer;
631
+ } else {
632
+ item[1] = "@layer".concat(item[5].length > 0 ? " ".concat(item[5]) : "", " {").concat(item[1], "}");
633
+ item[5] = layer;
634
+ }
635
+ }
636
+ if (media) {
637
+ if (!item[2]) {
638
+ item[2] = media;
639
+ } else {
640
+ item[1] = "@media ".concat(item[2], " {").concat(item[1], "}");
641
+ item[2] = media;
642
+ }
643
+ }
644
+ if (supports) {
645
+ if (!item[4]) {
646
+ item[4] = "".concat(supports);
647
+ } else {
648
+ item[1] = "@supports (".concat(item[4], ") {").concat(item[1], "}");
649
+ item[4] = supports;
650
+ }
651
+ }
652
+ list.push(item);
653
+ }
654
+ };
655
+ return list;
656
+ };
657
+
658
+ /***/ },
659
+
660
+ /***/ "../../node_modules/css-loader/dist/runtime/sourceMaps.js"
661
+ /*!****************************************************************!*\
662
+ !*** ../../node_modules/css-loader/dist/runtime/sourceMaps.js ***!
663
+ \****************************************************************/
664
+ (module) {
665
+
666
+
667
+
668
+ module.exports = function (item) {
669
+ var content = item[1];
670
+ var cssMapping = item[3];
671
+ if (!cssMapping) {
672
+ return content;
673
+ }
674
+ if (typeof btoa === "function") {
675
+ var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(cssMapping))));
676
+ var data = "sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(base64);
677
+ var sourceMapping = "/*# ".concat(data, " */");
678
+ return [content].concat([sourceMapping]).join("\n");
679
+ }
680
+ return [content].join("\n");
681
+ };
682
+
683
+ /***/ },
684
+
685
+ /***/ "../../node_modules/react-dom/client.js"
686
+ /*!**********************************************!*\
687
+ !*** ../../node_modules/react-dom/client.js ***!
688
+ \**********************************************/
689
+ (__unused_webpack_module, exports, __webpack_require__) {
690
+
691
+
692
+
693
+ var m = __webpack_require__(/*! react-dom */ "webpack/sharing/consume/default/react-dom/react-dom");
694
+ if (false) // removed by dead control flow
695
+ {} else {
696
+ var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
697
+ exports.createRoot = function(c, o) {
698
+ i.usingClientEntryPoint = true;
699
+ try {
700
+ return m.createRoot(c, o);
701
+ } finally {
702
+ i.usingClientEntryPoint = false;
703
+ }
704
+ };
705
+ exports.hydrateRoot = function(c, h, o) {
706
+ i.usingClientEntryPoint = true;
707
+ try {
708
+ return m.hydrateRoot(c, h, o);
709
+ } finally {
710
+ i.usingClientEntryPoint = false;
711
+ }
712
+ };
713
+ }
714
+
715
+
1000
716
  /***/ },
1001
717
 
1002
718
  /***/ "./src/reset.css"
@@ -1051,7 +767,379 @@ var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js
1051
767
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_node_modules_postcss_loader_dist_cjs_js_reset_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_node_modules_postcss_loader_dist_cjs_js_reset_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_node_modules_postcss_loader_dist_cjs_js_reset_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);
1052
768
 
1053
769
 
770
+ /***/ },
771
+
772
+ /***/ "../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"
773
+ /*!********************************************************************************!*\
774
+ !*** ../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js ***!
775
+ \********************************************************************************/
776
+ (module) {
777
+
778
+
779
+
780
+ var stylesInDOM = [];
781
+
782
+ function getIndexByIdentifier(identifier) {
783
+ var result = -1;
784
+
785
+ for (var i = 0; i < stylesInDOM.length; i++) {
786
+ if (stylesInDOM[i].identifier === identifier) {
787
+ result = i;
788
+ break;
789
+ }
790
+ }
791
+
792
+ return result;
793
+ }
794
+
795
+ function modulesToDom(list, options) {
796
+ var idCountMap = {};
797
+ var identifiers = [];
798
+
799
+ for (var i = 0; i < list.length; i++) {
800
+ var item = list[i];
801
+ var id = options.base ? item[0] + options.base : item[0];
802
+ var count = idCountMap[id] || 0;
803
+ var identifier = "".concat(id, " ").concat(count);
804
+ idCountMap[id] = count + 1;
805
+ var indexByIdentifier = getIndexByIdentifier(identifier);
806
+ var obj = {
807
+ css: item[1],
808
+ media: item[2],
809
+ sourceMap: item[3],
810
+ supports: item[4],
811
+ layer: item[5]
812
+ };
813
+
814
+ if (indexByIdentifier !== -1) {
815
+ stylesInDOM[indexByIdentifier].references++;
816
+ stylesInDOM[indexByIdentifier].updater(obj);
817
+ } else {
818
+ var updater = addElementStyle(obj, options);
819
+ options.byIndex = i;
820
+ stylesInDOM.splice(i, 0, {
821
+ identifier: identifier,
822
+ updater: updater,
823
+ references: 1
824
+ });
825
+ }
826
+
827
+ identifiers.push(identifier);
828
+ }
829
+
830
+ return identifiers;
831
+ }
832
+
833
+ function addElementStyle(obj, options) {
834
+ var api = options.domAPI(options);
835
+ api.update(obj);
836
+
837
+ var updater = function updater(newObj) {
838
+ if (newObj) {
839
+ if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {
840
+ return;
841
+ }
842
+
843
+ api.update(obj = newObj);
844
+ } else {
845
+ api.remove();
846
+ }
847
+ };
848
+
849
+ return updater;
850
+ }
851
+
852
+ module.exports = function (list, options) {
853
+ options = options || {};
854
+ list = list || [];
855
+ var lastIdentifiers = modulesToDom(list, options);
856
+ return function update(newList) {
857
+ newList = newList || [];
858
+
859
+ for (var i = 0; i < lastIdentifiers.length; i++) {
860
+ var identifier = lastIdentifiers[i];
861
+ var index = getIndexByIdentifier(identifier);
862
+ stylesInDOM[index].references--;
863
+ }
864
+
865
+ var newLastIdentifiers = modulesToDom(newList, options);
866
+
867
+ for (var _i = 0; _i < lastIdentifiers.length; _i++) {
868
+ var _identifier = lastIdentifiers[_i];
869
+
870
+ var _index = getIndexByIdentifier(_identifier);
871
+
872
+ if (stylesInDOM[_index].references === 0) {
873
+ stylesInDOM[_index].updater();
874
+
875
+ stylesInDOM.splice(_index, 1);
876
+ }
877
+ }
878
+
879
+ lastIdentifiers = newLastIdentifiers;
880
+ };
881
+ };
882
+
883
+ /***/ },
884
+
885
+ /***/ "../../node_modules/style-loader/dist/runtime/insertBySelector.js"
886
+ /*!************************************************************************!*\
887
+ !*** ../../node_modules/style-loader/dist/runtime/insertBySelector.js ***!
888
+ \************************************************************************/
889
+ (module) {
890
+
891
+
892
+
893
+ var memo = {};
894
+ /* istanbul ignore next */
895
+
896
+ function getTarget(target) {
897
+ if (typeof memo[target] === "undefined") {
898
+ var styleTarget = document.querySelector(target); // Special case to return head of iframe instead of iframe itself
899
+
900
+ if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {
901
+ try {
902
+ // This will throw an exception if access to iframe is blocked
903
+ // due to cross-origin restrictions
904
+ styleTarget = styleTarget.contentDocument.head;
905
+ } catch (e) {
906
+ // istanbul ignore next
907
+ styleTarget = null;
908
+ }
909
+ }
910
+
911
+ memo[target] = styleTarget;
912
+ }
913
+
914
+ return memo[target];
915
+ }
916
+ /* istanbul ignore next */
917
+
918
+
919
+ function insertBySelector(insert, style) {
920
+ var target = getTarget(insert);
921
+
922
+ if (!target) {
923
+ throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");
924
+ }
925
+
926
+ target.appendChild(style);
927
+ }
928
+
929
+ module.exports = insertBySelector;
930
+
931
+ /***/ },
932
+
933
+ /***/ "../../node_modules/style-loader/dist/runtime/insertStyleElement.js"
934
+ /*!**************************************************************************!*\
935
+ !*** ../../node_modules/style-loader/dist/runtime/insertStyleElement.js ***!
936
+ \**************************************************************************/
937
+ (module) {
938
+
939
+
940
+
941
+ /* istanbul ignore next */
942
+ function insertStyleElement(options) {
943
+ var element = document.createElement("style");
944
+ options.setAttributes(element, options.attributes);
945
+ options.insert(element, options.options);
946
+ return element;
947
+ }
948
+
949
+ module.exports = insertStyleElement;
950
+
951
+ /***/ },
952
+
953
+ /***/ "../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"
954
+ /*!**************************************************************************************!*\
955
+ !*** ../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js ***!
956
+ \**************************************************************************************/
957
+ (module, __unused_webpack_exports, __webpack_require__) {
958
+
959
+
960
+
961
+ /* istanbul ignore next */
962
+ function setAttributesWithoutAttributes(styleElement) {
963
+ var nonce = true ? __webpack_require__.nc : 0;
964
+
965
+ if (nonce) {
966
+ styleElement.setAttribute("nonce", nonce);
967
+ }
968
+ }
969
+
970
+ module.exports = setAttributesWithoutAttributes;
971
+
972
+ /***/ },
973
+
974
+ /***/ "../../node_modules/style-loader/dist/runtime/styleDomAPI.js"
975
+ /*!*******************************************************************!*\
976
+ !*** ../../node_modules/style-loader/dist/runtime/styleDomAPI.js ***!
977
+ \*******************************************************************/
978
+ (module) {
979
+
980
+
981
+
982
+ /* istanbul ignore next */
983
+ function apply(styleElement, options, obj) {
984
+ var css = "";
985
+
986
+ if (obj.supports) {
987
+ css += "@supports (".concat(obj.supports, ") {");
988
+ }
989
+
990
+ if (obj.media) {
991
+ css += "@media ".concat(obj.media, " {");
992
+ }
993
+
994
+ var needLayer = typeof obj.layer !== "undefined";
995
+
996
+ if (needLayer) {
997
+ css += "@layer".concat(obj.layer.length > 0 ? " ".concat(obj.layer) : "", " {");
998
+ }
999
+
1000
+ css += obj.css;
1001
+
1002
+ if (needLayer) {
1003
+ css += "}";
1004
+ }
1005
+
1006
+ if (obj.media) {
1007
+ css += "}";
1008
+ }
1009
+
1010
+ if (obj.supports) {
1011
+ css += "}";
1012
+ }
1013
+
1014
+ var sourceMap = obj.sourceMap;
1015
+
1016
+ if (sourceMap && typeof btoa !== "undefined") {
1017
+ css += "\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), " */");
1018
+ } // For old IE
1019
+
1020
+ /* istanbul ignore if */
1021
+
1022
+
1023
+ options.styleTagTransform(css, styleElement, options.options);
1024
+ }
1025
+
1026
+ function removeStyleElement(styleElement) {
1027
+ // istanbul ignore if
1028
+ if (styleElement.parentNode === null) {
1029
+ return false;
1030
+ }
1031
+
1032
+ styleElement.parentNode.removeChild(styleElement);
1033
+ }
1034
+ /* istanbul ignore next */
1035
+
1036
+
1037
+ function domAPI(options) {
1038
+ var styleElement = options.insertStyleElement(options);
1039
+ return {
1040
+ update: function update(obj) {
1041
+ apply(styleElement, options, obj);
1042
+ },
1043
+ remove: function remove() {
1044
+ removeStyleElement(styleElement);
1045
+ }
1046
+ };
1047
+ }
1048
+
1049
+ module.exports = domAPI;
1050
+
1051
+ /***/ },
1052
+
1053
+ /***/ "../../node_modules/style-loader/dist/runtime/styleTagTransform.js"
1054
+ /*!*************************************************************************!*\
1055
+ !*** ../../node_modules/style-loader/dist/runtime/styleTagTransform.js ***!
1056
+ \*************************************************************************/
1057
+ (module) {
1058
+
1059
+
1060
+
1061
+ /* istanbul ignore next */
1062
+ function styleTagTransform(css, styleElement) {
1063
+ if (styleElement.styleSheet) {
1064
+ styleElement.styleSheet.cssText = css;
1065
+ } else {
1066
+ while (styleElement.firstChild) {
1067
+ styleElement.removeChild(styleElement.firstChild);
1068
+ }
1069
+
1070
+ styleElement.appendChild(document.createTextNode(css));
1071
+ }
1072
+ }
1073
+
1074
+ module.exports = styleTagTransform;
1075
+
1076
+ /***/ },
1077
+
1078
+ /***/ "../../node_modules/@module-federation/enhanced/dist/src/runtime.mjs"
1079
+ /*!***************************************************************************!*\
1080
+ !*** ../../node_modules/@module-federation/enhanced/dist/src/runtime.mjs ***!
1081
+ \***************************************************************************/
1082
+ (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
1083
+
1084
+ __webpack_require__.r(__webpack_exports__);
1085
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1086
+ /* harmony export */ Module: () => (/* reexport safe */ _module_federation_runtime_tools_runtime__WEBPACK_IMPORTED_MODULE_0__.Module),
1087
+ /* harmony export */ ModuleFederation: () => (/* reexport safe */ _module_federation_runtime_tools_runtime__WEBPACK_IMPORTED_MODULE_0__.ModuleFederation),
1088
+ /* harmony export */ createInstance: () => (/* reexport safe */ _module_federation_runtime_tools_runtime__WEBPACK_IMPORTED_MODULE_0__.createInstance),
1089
+ /* harmony export */ getInstance: () => (/* reexport safe */ _module_federation_runtime_tools_runtime__WEBPACK_IMPORTED_MODULE_0__.getInstance),
1090
+ /* harmony export */ getRemoteEntry: () => (/* reexport safe */ _module_federation_runtime_tools_runtime__WEBPACK_IMPORTED_MODULE_0__.getRemoteEntry),
1091
+ /* harmony export */ getRemoteInfo: () => (/* reexport safe */ _module_federation_runtime_tools_runtime__WEBPACK_IMPORTED_MODULE_0__.getRemoteInfo),
1092
+ /* harmony export */ init: () => (/* reexport safe */ _module_federation_runtime_tools_runtime__WEBPACK_IMPORTED_MODULE_0__.init),
1093
+ /* harmony export */ loadRemote: () => (/* reexport safe */ _module_federation_runtime_tools_runtime__WEBPACK_IMPORTED_MODULE_0__.loadRemote),
1094
+ /* harmony export */ loadScript: () => (/* reexport safe */ _module_federation_runtime_tools_runtime__WEBPACK_IMPORTED_MODULE_0__.loadScript),
1095
+ /* harmony export */ loadScriptNode: () => (/* reexport safe */ _module_federation_runtime_tools_runtime__WEBPACK_IMPORTED_MODULE_0__.loadScriptNode),
1096
+ /* harmony export */ loadShare: () => (/* reexport safe */ _module_federation_runtime_tools_runtime__WEBPACK_IMPORTED_MODULE_0__.loadShare),
1097
+ /* harmony export */ loadShareSync: () => (/* reexport safe */ _module_federation_runtime_tools_runtime__WEBPACK_IMPORTED_MODULE_0__.loadShareSync),
1098
+ /* harmony export */ preloadRemote: () => (/* reexport safe */ _module_federation_runtime_tools_runtime__WEBPACK_IMPORTED_MODULE_0__.preloadRemote),
1099
+ /* harmony export */ registerGlobalPlugins: () => (/* reexport safe */ _module_federation_runtime_tools_runtime__WEBPACK_IMPORTED_MODULE_0__.registerGlobalPlugins),
1100
+ /* harmony export */ registerPlugins: () => (/* reexport safe */ _module_federation_runtime_tools_runtime__WEBPACK_IMPORTED_MODULE_0__.registerPlugins),
1101
+ /* harmony export */ registerRemotes: () => (/* reexport safe */ _module_federation_runtime_tools_runtime__WEBPACK_IMPORTED_MODULE_0__.registerRemotes),
1102
+ /* harmony export */ registerShared: () => (/* reexport safe */ _module_federation_runtime_tools_runtime__WEBPACK_IMPORTED_MODULE_0__.registerShared)
1103
+ /* harmony export */ });
1104
+ /* harmony import */ var _module_federation_runtime_tools_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @module-federation/runtime-tools/runtime */ "../../node_modules/@module-federation/runtime-tools/dist/runtime.js");
1105
+
1106
+
1107
+
1108
+
1109
+ /***/ },
1110
+
1111
+ /***/ "../../node_modules/@module-federation/runtime-tools/dist/runtime.js"
1112
+ /*!***************************************************************************!*\
1113
+ !*** ../../node_modules/@module-federation/runtime-tools/dist/runtime.js ***!
1114
+ \***************************************************************************/
1115
+ (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
1116
+
1117
+ __webpack_require__.r(__webpack_exports__);
1118
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1119
+ /* harmony export */ Module: () => (/* reexport safe */ _module_federation_runtime__WEBPACK_IMPORTED_MODULE_0__.Module),
1120
+ /* harmony export */ ModuleFederation: () => (/* reexport safe */ _module_federation_runtime__WEBPACK_IMPORTED_MODULE_0__.ModuleFederation),
1121
+ /* harmony export */ createInstance: () => (/* reexport safe */ _module_federation_runtime__WEBPACK_IMPORTED_MODULE_0__.createInstance),
1122
+ /* harmony export */ getInstance: () => (/* reexport safe */ _module_federation_runtime__WEBPACK_IMPORTED_MODULE_0__.getInstance),
1123
+ /* harmony export */ getRemoteEntry: () => (/* reexport safe */ _module_federation_runtime__WEBPACK_IMPORTED_MODULE_0__.getRemoteEntry),
1124
+ /* harmony export */ getRemoteInfo: () => (/* reexport safe */ _module_federation_runtime__WEBPACK_IMPORTED_MODULE_0__.getRemoteInfo),
1125
+ /* harmony export */ init: () => (/* reexport safe */ _module_federation_runtime__WEBPACK_IMPORTED_MODULE_0__.init),
1126
+ /* harmony export */ loadRemote: () => (/* reexport safe */ _module_federation_runtime__WEBPACK_IMPORTED_MODULE_0__.loadRemote),
1127
+ /* harmony export */ loadScript: () => (/* reexport safe */ _module_federation_runtime__WEBPACK_IMPORTED_MODULE_0__.loadScript),
1128
+ /* harmony export */ loadScriptNode: () => (/* reexport safe */ _module_federation_runtime__WEBPACK_IMPORTED_MODULE_0__.loadScriptNode),
1129
+ /* harmony export */ loadShare: () => (/* reexport safe */ _module_federation_runtime__WEBPACK_IMPORTED_MODULE_0__.loadShare),
1130
+ /* harmony export */ loadShareSync: () => (/* reexport safe */ _module_federation_runtime__WEBPACK_IMPORTED_MODULE_0__.loadShareSync),
1131
+ /* harmony export */ preloadRemote: () => (/* reexport safe */ _module_federation_runtime__WEBPACK_IMPORTED_MODULE_0__.preloadRemote),
1132
+ /* harmony export */ registerGlobalPlugins: () => (/* reexport safe */ _module_federation_runtime__WEBPACK_IMPORTED_MODULE_0__.registerGlobalPlugins),
1133
+ /* harmony export */ registerPlugins: () => (/* reexport safe */ _module_federation_runtime__WEBPACK_IMPORTED_MODULE_0__.registerPlugins),
1134
+ /* harmony export */ registerRemotes: () => (/* reexport safe */ _module_federation_runtime__WEBPACK_IMPORTED_MODULE_0__.registerRemotes),
1135
+ /* harmony export */ registerShared: () => (/* reexport safe */ _module_federation_runtime__WEBPACK_IMPORTED_MODULE_0__.registerShared)
1136
+ /* harmony export */ });
1137
+ /* harmony import */ var _module_federation_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @module-federation/runtime */ "../../node_modules/@module-federation/runtime/dist/bundler.js");
1138
+
1139
+
1140
+
1141
+
1054
1142
  /***/ }
1055
1143
 
1056
1144
  }]);
1057
- //# sourceMappingURL=src_bootstrap_tsx-webpack_sharing_consume_default_react-dom_react-dom.js.map
1145
+ //# sourceMappingURL=src_bootstrap_tsx.js.map