@equinor/fusion-framework-module-app 8.0.2 → 8.0.4

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.
Files changed (109) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/esm/AppClient.js +75 -8
  3. package/dist/esm/AppClient.js.map +1 -1
  4. package/dist/esm/AppConfig.js +9 -1
  5. package/dist/esm/AppConfig.js.map +1 -1
  6. package/dist/esm/{AppClient.Selectors.js → AppConfigSelector.js} +1 -1
  7. package/dist/esm/AppConfigSelector.js.map +1 -0
  8. package/dist/esm/AppConfigurator.js +29 -2
  9. package/dist/esm/AppConfigurator.js.map +1 -1
  10. package/dist/esm/AppModuleProvider.js +16 -0
  11. package/dist/esm/AppModuleProvider.js.map +1 -1
  12. package/dist/esm/app/App.js +83 -24
  13. package/dist/esm/app/App.js.map +1 -1
  14. package/dist/esm/app/actions.js +2 -2
  15. package/dist/esm/app/actions.js.map +1 -1
  16. package/dist/esm/app/create-reducer.js +2 -1
  17. package/dist/esm/app/create-reducer.js.map +1 -1
  18. package/dist/esm/app/filter-empty.js +11 -0
  19. package/dist/esm/app/filter-empty.js.map +1 -0
  20. package/dist/esm/app/flows/handle-fetch-config.js +30 -0
  21. package/dist/esm/app/flows/handle-fetch-config.js.map +1 -0
  22. package/dist/esm/app/flows/handle-fetch-manifest.js +30 -0
  23. package/dist/esm/app/flows/handle-fetch-manifest.js.map +1 -0
  24. package/dist/esm/app/flows/handle-fetch-settings.js +30 -0
  25. package/dist/esm/app/flows/handle-fetch-settings.js.map +1 -0
  26. package/dist/esm/app/flows/handle-import-application.js +23 -0
  27. package/dist/esm/app/flows/handle-import-application.js.map +1 -0
  28. package/dist/esm/app/flows/handle-update-settings.js +22 -0
  29. package/dist/esm/app/flows/handle-update-settings.js.map +1 -0
  30. package/dist/esm/app/flows/index.js +6 -0
  31. package/dist/esm/app/flows/index.js.map +1 -0
  32. package/dist/esm/enable-app-module.js +2 -1
  33. package/dist/esm/enable-app-module.js.map +1 -1
  34. package/dist/esm/errors/AppBuildError.js +35 -0
  35. package/dist/esm/errors/AppBuildError.js.map +1 -0
  36. package/dist/esm/errors/AppConfigError.js +35 -0
  37. package/dist/esm/errors/AppConfigError.js.map +1 -0
  38. package/dist/esm/errors/AppManifestError.js +35 -0
  39. package/dist/esm/errors/AppManifestError.js.map +1 -0
  40. package/dist/esm/errors/AppScriptModuleError.js +17 -0
  41. package/dist/esm/errors/AppScriptModuleError.js.map +1 -0
  42. package/dist/esm/errors/AppSettingsError.js +35 -0
  43. package/dist/esm/errors/AppSettingsError.js.map +1 -0
  44. package/dist/esm/errors/app-error-type.js +2 -0
  45. package/dist/esm/errors/app-error-type.js.map +1 -0
  46. package/dist/esm/errors.js +5 -148
  47. package/dist/esm/errors.js.map +1 -1
  48. package/dist/esm/module.js +2 -0
  49. package/dist/esm/module.js.map +1 -1
  50. package/dist/esm/schemas.js +4 -0
  51. package/dist/esm/schemas.js.map +1 -1
  52. package/dist/esm/version.js +1 -1
  53. package/dist/tsconfig.tsbuildinfo +1 -1
  54. package/dist/types/AppClient.d.ts +42 -0
  55. package/dist/types/AppConfig.d.ts +7 -1
  56. package/dist/types/AppConfigurator.d.ts +26 -0
  57. package/dist/types/AppModuleProvider.d.ts +10 -0
  58. package/dist/types/app/App.d.ts +50 -8
  59. package/dist/types/app/create-reducer.d.ts +55 -55
  60. package/dist/types/app/filter-empty.d.ts +8 -0
  61. package/dist/types/app/flows/handle-fetch-config.d.ts +12 -0
  62. package/dist/types/app/flows/handle-fetch-manifest.d.ts +12 -0
  63. package/dist/types/app/flows/handle-fetch-settings.d.ts +12 -0
  64. package/dist/types/app/flows/handle-import-application.d.ts +10 -0
  65. package/dist/types/app/flows/handle-update-settings.d.ts +12 -0
  66. package/dist/types/app/flows/index.d.ts +5 -0
  67. package/dist/types/errors/AppBuildError.d.ts +21 -0
  68. package/dist/types/errors/AppConfigError.d.ts +21 -0
  69. package/dist/types/errors/AppManifestError.d.ts +21 -0
  70. package/dist/types/errors/AppScriptModuleError.d.ts +14 -0
  71. package/dist/types/errors/AppSettingsError.d.ts +21 -0
  72. package/dist/types/errors/app-error-type.d.ts +9 -0
  73. package/dist/types/errors.d.ts +6 -103
  74. package/dist/types/version.d.ts +1 -1
  75. package/package.json +9 -9
  76. package/src/AppClient.ts +65 -4
  77. package/src/AppConfig.ts +9 -1
  78. package/src/AppConfigurator.ts +29 -4
  79. package/src/AppModuleProvider.ts +16 -0
  80. package/src/app/App.ts +89 -31
  81. package/src/app/actions.ts +2 -2
  82. package/src/app/create-reducer.ts +2 -1
  83. package/src/app/filter-empty.ts +11 -0
  84. package/src/app/flows/handle-fetch-config.ts +48 -0
  85. package/src/app/flows/handle-fetch-manifest.ts +53 -0
  86. package/src/app/flows/handle-fetch-settings.ts +50 -0
  87. package/src/app/flows/handle-import-application.ts +37 -0
  88. package/src/app/flows/handle-update-settings.ts +39 -0
  89. package/src/app/flows/index.ts +5 -0
  90. package/src/app/types.ts +2 -2
  91. package/src/enable-app-module.ts +2 -1
  92. package/src/errors/AppBuildError.ts +47 -0
  93. package/src/errors/AppConfigError.ts +47 -0
  94. package/src/errors/AppManifestError.ts +47 -0
  95. package/src/errors/AppScriptModuleError.ts +20 -0
  96. package/src/errors/AppSettingsError.ts +47 -0
  97. package/src/errors/app-error-type.ts +9 -0
  98. package/src/errors.ts +6 -208
  99. package/src/module.ts +2 -0
  100. package/src/schemas.ts +4 -0
  101. package/src/types.ts +1 -1
  102. package/src/version.ts +1 -1
  103. package/dist/esm/AppClient.Selectors.js.map +0 -1
  104. package/dist/esm/app/flows.js +0 -120
  105. package/dist/esm/app/flows.js.map +0 -1
  106. package/dist/types/app/flows.d.ts +0 -41
  107. package/src/app/flows.ts +0 -189
  108. /package/dist/types/{AppClient.Selectors.d.ts → AppConfigSelector.d.ts} +0 -0
  109. /package/src/{AppClient.Selectors.ts → AppConfigSelector.ts} +0 -0
@@ -1,21 +1,15 @@
1
1
  import { Observable } from '@equinor/fusion-observable';
2
- import { combineLatest, of, Subscription, firstValueFrom, lastValueFrom, } from 'rxjs';
3
- import { defaultIfEmpty, filter, last, map, switchMap } from 'rxjs/operators';
2
+ import { combineLatest, of, Subscription, firstValueFrom, lastValueFrom } from 'rxjs';
3
+ import { defaultIfEmpty, last, map, switchMap } from 'rxjs/operators';
4
4
  import { createState } from './create-state';
5
5
  import { actions } from './actions';
6
6
  import isEqual from 'fast-deep-equal';
7
+ import { filterEmpty } from './filter-empty';
7
8
  import './events';
8
- /**
9
- * RxJS operator that filters out `null` and `undefined` emissions.
10
- *
11
- * @template T - The non-nullable value type.
12
- * @returns An operator that only passes through non-nullable values.
13
- */
14
- export function filterEmpty() {
15
- return filter((value) => value !== undefined && value !== null);
16
- }
9
+ export { filterEmpty } from './filter-empty';
17
10
  /** Default empty settings object used when no settings have been fetched. */
18
11
  const fallbackSettings = {};
12
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
19
13
  /**
20
14
  * Concrete implementation of {@link IApp}.
21
15
  *
@@ -23,68 +17,98 @@ const fallbackSettings = {};
23
17
  * manifest fetching, config loading, settings management, and script import. Dispatches
24
18
  * lifecycle events through the {@link EventModule} when available.
25
19
  *
20
+ * TODO(#5130): streams should be made distinct until changed from state.
21
+ *
26
22
  * @template TEnv - Shape of the environment configuration record.
27
23
  * @template TModules - Additional framework modules the app depends on.
28
24
  */
29
- // TODO make streams distinct until changed from state
30
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
31
25
  export class App {
32
26
  #state;
33
27
  //#region === streams ===
28
+ /** @inheritdoc */
34
29
  get manifest$() {
30
+ // filter out null/undefined manifest states
35
31
  return this.#state.select((state) => state.manifest).pipe(filterEmpty());
36
32
  }
33
+ /** @inheritdoc */
37
34
  get config$() {
38
- return this.#state
35
+ return (this.#state
39
36
  .select((state) => state.config, isEqual)
40
- .pipe(filterEmpty());
37
+ // filter out null/undefined config states
38
+ .pipe(filterEmpty()));
41
39
  }
40
+ /** @inheritdoc */
42
41
  get modules$() {
42
+ // filter out null/undefined module states
43
43
  return this.#state.select((state) => state.modules).pipe(filterEmpty());
44
44
  }
45
+ /** @inheritdoc */
45
46
  get instance$() {
46
- return this.#state
47
+ return (this.#state
47
48
  .select((state) => state.instance)
48
- .pipe(filterEmpty());
49
+ // filter out null/undefined instance states
50
+ .pipe(filterEmpty()));
49
51
  }
52
+ /** @inheritdoc */
50
53
  get settings$() {
51
54
  return new Observable((subscriber) => {
52
55
  this.#state.next(actions.fetchSettings(this.appKey));
53
56
  subscriber.add(this.#state
54
57
  .select((state) => state.settings, isEqual)
58
+ // filter out null/undefined settings and fall back to the default empty settings
55
59
  .pipe(filterEmpty(), defaultIfEmpty(fallbackSettings))
56
60
  .subscribe(subscriber));
57
61
  });
58
62
  }
63
+ /** @inheritdoc */
59
64
  get status$() {
60
65
  return this.#state.select((state) => state.status);
61
66
  }
62
67
  //#endregion
68
+ /** @inheritdoc */
63
69
  get state() {
64
- // todo deep-freeze
70
+ // TODO(#5133) deep-freeze
65
71
  return Object.freeze(this.#state.value);
66
72
  }
73
+ /** @inheritdoc */
67
74
  get appKey() {
68
75
  return this.#state.value.appKey;
69
76
  }
77
+ /**
78
+ * The tag (version) this app instance was loaded with, if any.
79
+ * @returns The tag string, or `undefined` if none was specified.
80
+ */
70
81
  get tag() {
71
82
  return this.#state.value.tag;
72
83
  }
84
+ /** @inheritdoc */
73
85
  get manifest() {
74
86
  return this.state.manifest;
75
87
  }
88
+ /** @inheritdoc */
76
89
  get manifestAsync() {
77
90
  return firstValueFrom(this.manifest$);
78
91
  }
92
+ /** @inheritdoc */
79
93
  get config() {
80
94
  return this.state.config;
81
95
  }
96
+ /**
97
+ * Retrieves the configuration asynchronously.
98
+ * @returns A promise that resolves to the {@link AppConfig}.
99
+ */
82
100
  get configAsync() {
83
101
  return firstValueFrom(this.config$);
84
102
  }
103
+ /** @inheritdoc */
85
104
  get instance() {
86
105
  return this.#state.value.instance;
87
106
  }
107
+ /**
108
+ * Creates a new {@link App} instance and starts its internal state machine.
109
+ * @param value - Initial app bundle state (appKey, tag, and any pre-loaded data).
110
+ * @param args - The owning {@link AppModuleProvider} and an optional event module for lifecycle events.
111
+ */
88
112
  constructor(value, args) {
89
113
  this.#state = createState(value, args.provider);
90
114
  const { appKey } = value;
@@ -93,6 +117,7 @@ export class App {
93
117
  event && this.#registerEvents(event);
94
118
  // create a tear down handler for the application
95
119
  const subscriptions = new Subscription();
120
+ // only wire up event listeners when an event module is provided
96
121
  if (event) {
97
122
  // when app is disposed, dispatch event to notify listeners
98
123
  subscriptions.add(() => {
@@ -109,6 +134,7 @@ export class App {
109
134
  }
110
135
  this.dispose = () => {
111
136
  subscriptions?.unsubscribe();
137
+ // tear down modules of application, if an instance was loaded
112
138
  if (this.#state.value.instance) {
113
139
  // tear down modules of application
114
140
  this.#state.value.instance.dispose();
@@ -267,6 +293,7 @@ export class App {
267
293
  });
268
294
  });
269
295
  }
296
+ /** @inheritdoc */
270
297
  initialize() {
271
298
  return new Observable((subscriber) => {
272
299
  // dispatch initialize action to indicate that the application is initializing
@@ -294,22 +321,31 @@ export class App {
294
321
  }));
295
322
  });
296
323
  }
324
+ /** @inheritdoc */
297
325
  loadConfig() {
298
- // TODO - shit fix
326
+ // TODO(#5126) - shit fix
299
327
  (this.manifest ? of(this.manifest) : this.getManifest()).subscribe({
300
328
  next: (manifest) => {
301
329
  this.#state.next(actions.fetchConfig(manifest));
302
330
  },
303
331
  });
304
332
  }
333
+ /** @inheritdoc */
305
334
  loadManifest(update) {
306
335
  this.#state.next(actions.fetchManifest(this.appKey, this.tag, update));
307
336
  }
337
+ /**
338
+ * Replaces or merges the current manifest with a new one.
339
+ * @param manifest - The manifest to apply.
340
+ * @param replace - When `false` (default), merges into the existing manifest; when omitted, behaves the same.
341
+ */
308
342
  updateManifest(manifest, replace) {
309
343
  this.#state.next(actions.setManifest(manifest, !replace));
310
344
  }
345
+ /** @inheritdoc */
311
346
  async loadAppModule(allow_cache = true) {
312
347
  const manifest = await this.getManifestAsync(allow_cache);
348
+ // only import the app module if the manifest declares an entry point
313
349
  if (manifest.build?.entryPoint) {
314
350
  this.#state.next(actions.importApp(manifest.build.entryPoint));
315
351
  }
@@ -317,11 +353,14 @@ export class App {
317
353
  console.warn(`The ${manifest.appKey} is missing entryPoint, please upload a build for the app before continuing`);
318
354
  }
319
355
  }
356
+ /** @inheritdoc */
320
357
  getConfig(force_refresh = false) {
321
358
  return new Observable((subscriber) => {
359
+ // emit the cached config immediately, if one is already loaded
322
360
  if (this.#state.value.config) {
323
361
  // emit current config to the subscriber
324
362
  subscriber.next(this.#state.value.config);
363
+ // complete the stream unless a forced refresh was requested
325
364
  if (!force_refresh) {
326
365
  // since we have the config and no force refresh, complete the stream
327
366
  return subscriber.complete();
@@ -353,16 +392,20 @@ export class App {
353
392
  this.loadConfig();
354
393
  });
355
394
  }
395
+ /** @inheritdoc */
356
396
  getConfigAsync(allow_cache = true) {
357
397
  // when allow_cache is true, use first emitted value, otherwise use last emitted value
358
398
  const operator = allow_cache ? firstValueFrom : lastValueFrom;
359
399
  return operator(this.getConfig(!allow_cache));
360
400
  }
401
+ /** @inheritdoc */
361
402
  getSettings(force_refresh = false) {
362
403
  return new Observable((subscriber) => {
404
+ // emit the cached settings immediately, if already loaded
363
405
  if (this.#state.value.settings) {
364
406
  // emit current settings to the subscriber
365
407
  subscriber.next(this.#state.value.settings);
408
+ // complete the stream unless a forced refresh was requested
366
409
  if (!force_refresh) {
367
410
  // since we have the settings and no force refresh, complete the stream
368
411
  return subscriber.complete();
@@ -394,11 +437,13 @@ export class App {
394
437
  this.#state.next(actions.fetchSettings(this.appKey));
395
438
  });
396
439
  }
440
+ /** @inheritdoc */
397
441
  getSettingsAsync(allow_cache = true) {
398
442
  // when allow_cache is true, use first emitted value, otherwise use last emitted value
399
443
  const operator = allow_cache ? firstValueFrom : lastValueFrom;
400
444
  return operator(this.getSettings(!allow_cache));
401
445
  }
446
+ /** @inheritdoc */
402
447
  updateSettings(settings) {
403
448
  return new Observable((subscriber) => {
404
449
  subscriber.add(
@@ -423,31 +468,38 @@ export class App {
423
468
  this.#state.next(actions.updateSettings(this.appKey, settings));
424
469
  });
425
470
  }
471
+ /** @inheritdoc */
426
472
  updateSettingsAsync(settings) {
427
473
  return lastValueFrom(this.updateSettings(settings));
428
474
  }
475
+ /** @inheritdoc */
429
476
  updateSetting(property, value) {
430
477
  const currentSettings$ = this.#state.value.settings === undefined
431
478
  ? // if settings are not loaded, fetch settings
432
- this.getSettings().pipe(last())
479
+ this.getSettings()
480
+ // take the last emitted value
481
+ .pipe(last())
433
482
  : // if settings are loaded, use current settings
434
483
  of(this.#state.value.settings);
435
- return currentSettings$.pipe(
436
- // merge current settings with new value
437
- map((settings) => ({ ...settings, [property]: value })),
484
+ // merge the current settings with the new value, then persist and return the updated property
485
+ return currentSettings$.pipe(map((settings) => ({ ...settings, [property]: value })),
438
486
  // update settings
439
487
  switchMap((settings) => this.updateSettings(settings)),
440
488
  // return the updated property
441
489
  map((settings) => settings[property]));
442
490
  }
491
+ /** @inheritdoc */
443
492
  updateSettingAsync(property, value) {
444
493
  return lastValueFrom(this.updateSetting(property, value));
445
494
  }
495
+ /** @inheritdoc */
446
496
  getManifest(force_refresh = false) {
447
497
  return new Observable((subscriber) => {
498
+ // emit the cached manifest immediately, if already loaded
448
499
  if (this.#state.value.manifest) {
449
500
  // emit current manifest to the subscriber
450
501
  subscriber.next(this.#state.value.manifest);
502
+ // complete the stream unless a forced refresh was requested
451
503
  if (!force_refresh) {
452
504
  // since we have the manifest and no force refresh, complete the stream
453
505
  return subscriber.complete();
@@ -479,16 +531,20 @@ export class App {
479
531
  this.loadManifest();
480
532
  });
481
533
  }
534
+ /** @inheritdoc */
482
535
  getManifestAsync(allow_cache = true) {
483
536
  // when allow_cache is true, use first emitted value, otherwise use last emitted value
484
537
  const operator = allow_cache ? firstValueFrom : lastValueFrom;
485
538
  return operator(this.getManifest(!allow_cache));
486
539
  }
540
+ /** @inheritdoc */
487
541
  getAppModule(force_refresh = false) {
488
542
  return new Observable((subscriber) => {
543
+ // emit the cached module immediately, if already loaded
489
544
  if (this.#state.value.modules) {
490
545
  // emit current value to the subscriber
491
546
  subscriber.next(this.#state.value.modules);
547
+ // complete the stream unless a forced refresh was requested
492
548
  if (!force_refresh) {
493
549
  // complete if no force refresh
494
550
  return subscriber.complete();
@@ -521,8 +577,9 @@ export class App {
521
577
  subscriber.add(
522
578
  // fetch application latest manifest and request loading of the application script
523
579
  this.getManifest().subscribe((manifest) => {
580
+ // only import the app module if the manifest declares an entry point
524
581
  if (manifest.build?.entryPoint) {
525
- // TODO - this should come from backend
582
+ // TODO(#5128) - this should come from backend
526
583
  const assetPath = manifest.build.assetPath ?? [manifest.appKey, manifest.build.version].join('@');
527
584
  // dispatch import_app action to load the application script
528
585
  this.#state.next(actions.importApp([assetPath, manifest.build.entryPoint].join('/')));
@@ -533,11 +590,13 @@ export class App {
533
590
  }));
534
591
  });
535
592
  }
593
+ /** @inheritdoc */
536
594
  getAppModuleAsync(allow_cache = true) {
537
595
  // when allow_cache is true, use first emitted value, otherwise use last emitted value
538
596
  const operator = allow_cache ? firstValueFrom : lastValueFrom;
539
597
  return operator(this.getAppModule(!allow_cache));
540
598
  }
599
+ /** Releases resources held by this app instance. */
541
600
  dispose;
542
601
  }
543
602
  export default App;
@@ -1 +1 @@
1
- {"version":3,"file":"App.js","sourceRoot":"","sources":["../../../src/app/App.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"App.js","sourceRoot":"","sources":["../../../src/app/App.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,7 @@ const createActions = () => ({
16
16
  setManifest: createAction('set_manifest', (manifest, update) => ({
17
17
  payload: manifest,
18
18
  meta: {
19
- // TODO when updating
19
+ // TODO(#5129) when updating
20
20
  created: Date.now(),
21
21
  update,
22
22
  },
@@ -43,7 +43,7 @@ const createActions = () => ({
43
43
  payload: id,
44
44
  })),
45
45
  /** App loading */
46
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
46
+ // biome-ignore lint/suspicious/noExplicitAny: module payload widens to accept any script module shape when set
47
47
  setModule: createAction('set_module', (module) => ({ payload: module })),
48
48
  importApp: createAsyncAction('import_app', (entrypoint) => ({ payload: entrypoint }), (module) => ({ payload: module }), (error) => ({ payload: error })),
49
49
  // App Instance
@@ -1 +1 @@
1
- {"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../src/app/actions.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,YAAY,EACZ,iBAAiB,GAClB,MAAM,4BAA4B,CAAC;AASpC;;;;;;;;;;;GAWG;AACH,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,CAAC;IAC3B,uBAAuB;IACvB,WAAW,EAAE,YAAY,CAAC,cAAc,EAAE,CAAC,QAAqB,EAAE,MAAgB,EAAE,EAAE,CAAC,CAAC;QACtF,OAAO,EAAE,QAAQ;QACjB,IAAI,EAAE;YACJ,qBAAqB;YACrB,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE;YACnB,MAAM;SACP;KACF,CAAC,CAAC;IAEH,aAAa,EAAE,iBAAiB,CAC9B,gBAAgB,EAChB,CAAC,GAAW,EAAE,GAAY,EAAE,MAAgB,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAC9F,CAAC,QAAqB,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAClD,CAAC,KAAc,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CACzC;IACD,qBAAqB;IACrB,SAAS,EAAE,YAAY,CAAC,YAAY,EAAE,CAAC,MAAiB,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IACnF,WAAW,EAAE,iBAAiB,CAC5B,cAAc,EACd,CAAC,QAAqB,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAClD,CAAC,MAAiB,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,EAC5C,CAAC,KAAc,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CACzC;IACD,uBAAuB;IACvB,WAAW,EAAE,YAAY,CAAC,cAAc,EAAE,CAAC,QAAsB,EAAE,EAAE,CAAC,CAAC;QACrE,OAAO,EAAE,QAAQ;KAClB,CAAC,CAAC;IACH,wBAAwB;IACxB,aAAa,EAAE,iBAAiB,CAC9B,gBAAgB,EAChB,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAC7C,CAAC,QAAqB,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAClD,CAAC,KAAc,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CACzC;IACD,wBAAwB;IACxB,cAAc,EAAE,iBAAiB,CAC/B,iBAAiB,EACjB,CAAC,MAAc,EAAE,QAAqB,EAAE,EAAE,CAAC,CAAC;QAC1C,OAAO,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE;KAC9B,CAAC,EACF,CAAC,QAAqB,EAAE,EAAE,CAAC,CAAC;QAC1B,OAAO,EAAE,QAAQ;KAClB,CAAC,EACF,CAAC,KAAc,EAAE,EAAE,CAAC,CAAC;QACnB,OAAO,EAAE,KAAK;KACf,CAAC,CACH;IACD,mBAAmB,EAAE,YAAY,CAAC,wBAAwB,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,CAAC;QAC3E,OAAO,EAAE,EAAE;KACZ,CAAC,CAAC;IACH,kBAAkB;IAClB,8DAA8D;IAC9D,SAAS,EAAE,YAAY,CAAC,YAAY,EAAE,CAAC,MAAW,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IAC7E,SAAS,EAAE,iBAAiB,CAC1B,YAAY,EACZ,CAAC,UAAkB,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,EACjD,CAAC,MAAuB,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,EAClD,CAAC,KAAc,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CACzC;IAED,eAAe;IACf,WAAW,EAAE,YAAY,CAAC,cAAc,EAAE,CAAC,QAA4B,EAAE,EAAE,CAAC,CAAC;QAC3E,OAAO,EAAE,QAAQ;KAClB,CAAC,CAAC;IAEH,UAAU,EAAE,iBAAiB,CAC3B,gBAAgB,EAChB,GAAG,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EACzB,GAAG,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EACzB,CAAC,KAAc,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CACzC;CACF,CAAC,CAAC;AAEH,kEAAkE;AAClE,MAAM,CAAC,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC"}
1
+ {"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../src/app/actions.ts"],"names":[],"mappings":"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"}
@@ -14,8 +14,9 @@ import { actions } from './actions';
14
14
  export const createReducer = (value) => makeReducer({ ...value, status: new Set() }, (builder) => builder
15
15
  // update or set manifest
16
16
  .addCase(actions.setManifest, (state, action) => {
17
- // TODO: after legacy is removed, remove the update flag
17
+ // TODO(#5131): after legacy is removed, remove the update flag
18
18
  if (action.meta.update) {
19
+ // Merge onto the existing manifest so partial updates don't clobber other fields.
19
20
  state.manifest = Object.assign(state.manifest ?? {}, action.payload);
20
21
  }
21
22
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"create-reducer.js","sourceRoot":"","sources":["../../../src/app/create-reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,aAAa,IAAI,WAAW,EAC5B,gBAAgB,EAChB,eAAe,GAChB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAErC,YAAY,EAAE,CAAC;AAEf,OAAO,EAAgB,OAAO,EAAE,MAAM,WAAW,CAAC;AAIlD;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAA4B,EAAE,EAAE,CAC5D,WAAW,CACT,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,IAAI,GAAG,EAAE,EAAoB,EACjD,CAAC,OAAO,EAAE,EAAE,CACV,OAAO;IACL,yBAAyB;KACxB,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;IAC9C,wDAAwD;IACxD,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACvB,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IACvE,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;IAClC,CAAC;AACH,CAAC,CAAC;KACD,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;IAC5C,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC;AAChC,CAAC,CAAC;KACD,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;IAC9C,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;AAClC,CAAC,CAAC;KACD,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;IAC5C,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;AACjC,CAAC,CAAC;KACD,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;IAC9C,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;AAClC,CAAC,CAAC;IACF,2DAA2D;KAC1D,UAAU,CAAC,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;IAC7C,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7C,CAAC,CAAC;IACF,2CAA2C;KAC1C,UAAU,CAAC,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;IAC9C,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;AAChD,CAAC,CAAC,CACP,CAAC;AAEJ,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"create-reducer.js","sourceRoot":"","sources":["../../../src/app/create-reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,aAAa,IAAI,WAAW,EAC5B,gBAAgB,EAChB,eAAe,GAChB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAErC,YAAY,EAAE,CAAC;AAEf,OAAO,EAAgB,OAAO,EAAE,MAAM,WAAW,CAAC;AAIlD;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAA4B,EAAE,EAAE,CAC5D,WAAW,CACT,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,IAAI,GAAG,EAAE,EAAoB,EACjD,CAAC,OAAO,EAAE,EAAE,CACV,OAAO;IACL,yBAAyB;KACxB,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;IAC9C,+DAA+D;IAC/D,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACvB,kFAAkF;QAClF,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IACvE,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;IAClC,CAAC;AACH,CAAC,CAAC;KACD,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;IAC5C,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC;AAChC,CAAC,CAAC;KACD,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;IAC9C,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;AAClC,CAAC,CAAC;KACD,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;IAC5C,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;AACjC,CAAC,CAAC;KACD,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;IAC9C,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;AAClC,CAAC,CAAC;IACF,2DAA2D;KAC1D,UAAU,CAAC,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;IAC7C,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7C,CAAC,CAAC;IACF,2CAA2C;KAC1C,UAAU,CAAC,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;IAC9C,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;AAChD,CAAC,CAAC,CACP,CAAC;AAEJ,eAAe,aAAa,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { filter } from 'rxjs';
2
+ /**
3
+ * RxJS operator that filters out `null` and `undefined` emissions.
4
+ *
5
+ * @template T - The non-nullable value type.
6
+ * @returns An operator that only passes through non-nullable values.
7
+ */
8
+ export function filterEmpty() {
9
+ return filter((value) => value !== undefined && value !== null);
10
+ }
11
+ //# sourceMappingURL=filter-empty.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter-empty.js","sourceRoot":"","sources":["../../../src/app/filter-empty.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAyB,MAAM,MAAM,CAAC;AAErD;;;;;GAKG;AACH,MAAM,UAAU,WAAW;IACzB,OAAO,MAAM,CAAC,CAAC,KAAK,EAAc,EAAE,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC;AAC9E,CAAC"}
@@ -0,0 +1,30 @@
1
+ import { from, of, concat } from 'rxjs';
2
+ import { catchError, filter, last, map, share, switchMap } from 'rxjs/operators';
3
+ import { actions } from '../actions';
4
+ /**
5
+ * Handles the fetch config action by fetching the app configuration from the provider,
6
+ * filtering out null values, and dispatching success or failure actions accordingly.
7
+ *
8
+ * @param provider The AppModuleProvider used to fetch the app configuration.
9
+ * @returns A Flow function that takes an Observable of actions and returns an Observable of actions.
10
+ */
11
+ export const handleFetchConfig = (provider) => (action$) =>
12
+ // only handle fetch config request actions
13
+ action$.pipe(filter(actions.fetchConfig.match),
14
+ // when request is received, abort any ongoing request and start new
15
+ switchMap(({ payload }) => {
16
+ // TODO(#5127) - use the configUrl directly from the manifest
17
+ // fetch config from provider
18
+ const subject = from(provider.getAppConfig(payload.appKey, payload.build?.version)).pipe(
19
+ // filter out null values
20
+ filter((x) => !!x),
21
+ // allow multiple subscriptions
22
+ share());
23
+ // first load config and then dispatch success action
24
+ return concat(subject.pipe(map((config) => actions.setConfig(config))), subject.pipe(last(), map((config) => actions.fetchConfig.success(config)))).pipe(
25
+ // catch any error and dispatch failure action
26
+ catchError((err) => {
27
+ return of(actions.fetchConfig.failure(err));
28
+ }));
29
+ }));
30
+ //# sourceMappingURL=handle-fetch-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handle-fetch-config.js","sourceRoot":"","sources":["../../../../src/app/flows/handle-fetch-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEjF,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAOrC;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAC5B,CAAC,QAA2B,EAAiC,EAAE,CAC/D,CAAC,OAAO,EAAE,EAAE;AACV,2CAA2C;AAC3C,OAAO,CAAC,IAAI,CACV,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC;AACjC,oEAAoE;AACpE,SAAS,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IACxB,6DAA6D;IAC7D,6BAA6B;IAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI;IACtF,yBAAyB;IACzB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAClB,+BAA+B;IAC/B,KAAK,EAAE,CACR,CAAC;IACF,qDAAqD;IACrD,OAAO,MAAM,CACX,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EACxD,OAAO,CAAC,IAAI,CACV,IAAI,EAAE,EACN,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CACrD,CACF,CAAC,IAAI;IACJ,8CAA8C;IAC9C,UAAU,CAAC,CAAC,GAAG,EAAE,EAAE;QACjB,OAAO,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9C,CAAC,CAAC,CACH,CAAC;AACJ,CAAC,CAAC,CACH,CAAC"}
@@ -0,0 +1,30 @@
1
+ import { from, of, concat } from 'rxjs';
2
+ import { catchError, filter, last, map, share, switchMap } from 'rxjs/operators';
3
+ import { actions } from '../actions';
4
+ /**
5
+ * Handles the fetch manifest action by fetching the app manifest from the provider,
6
+ * dispatching success or failure actions based on the result.
7
+ *
8
+ * @param provider The AppModuleProvider used to fetch the app manifest.
9
+ * @returns A Flow function that takes an Observable of actions and returns an Observable of actions.
10
+ */
11
+ export const handleFetchManifest = (provider) => (action$) =>
12
+ // only handle fetch manifest request actions
13
+ action$.pipe(filter(actions.fetchManifest.match),
14
+ // when request is received, abort any ongoing request and start new
15
+ switchMap((action) => {
16
+ const { payload: { key, tag }, meta: { update }, } = action;
17
+ // fetch manifest from provider
18
+ const subject = from(provider.getAppManifest(key, tag)).pipe(
19
+ // filter out null values
20
+ filter((x) => !!x),
21
+ // allow multiple subscriptions
22
+ share());
23
+ // first load manifest and then dispatch success action
24
+ return concat(subject.pipe(map((manifest) => actions.setManifest(manifest, update))), subject.pipe(last(), map((manifest) => actions.fetchManifest.success(manifest)))).pipe(
25
+ // catch any error and dispatch failure action
26
+ catchError((err) => {
27
+ return of(actions.fetchManifest.failure(err));
28
+ }));
29
+ }));
30
+ //# sourceMappingURL=handle-fetch-manifest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handle-fetch-manifest.js","sourceRoot":"","sources":["../../../../src/app/flows/handle-fetch-manifest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEjF,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAOrC;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAC9B,CAAC,QAA2B,EAAiC,EAAE,CAC/D,CAAC,OAAO,EAAE,EAAE;AACV,6CAA6C;AAC7C,OAAO,CAAC,IAAI,CACV,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC;AACnC,oEAAoE;AACpE,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;IACnB,MAAM,EACJ,OAAO,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EACrB,IAAI,EAAE,EAAE,MAAM,EAAE,GACjB,GAAG,MAAM,CAAC;IAEX,+BAA+B;IAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI;IAC1D,yBAAyB;IACzB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAClB,+BAA+B;IAC/B,KAAK,EAAE,CACR,CAAC;IAEF,uDAAuD;IACvD,OAAO,MAAM,CACX,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,EACtE,OAAO,CAAC,IAAI,CACV,IAAI,EAAE,EACN,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAC3D,CACF,CAAC,IAAI;IACJ,8CAA8C;IAC9C,UAAU,CAAC,CAAC,GAAG,EAAE,EAAE;QACjB,OAAO,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IAChD,CAAC,CAAC,CACH,CAAC;AACJ,CAAC,CAAC,CACH,CAAC"}
@@ -0,0 +1,30 @@
1
+ import { from, of, concat } from 'rxjs';
2
+ import { catchError, filter, last, map, share, switchMap } from 'rxjs/operators';
3
+ import { actions } from '../actions';
4
+ /**
5
+ * Handles the fetch settings action by fetching the app settings from the provider,
6
+ * filtering out null values, and dispatching success or failure actions accordingly.
7
+ *
8
+ * @param provider The AppModuleProvider used to fetch the app settings.
9
+ * @returns A Flow function that takes an Observable of actions and returns an Observable of actions.
10
+ */
11
+ export const handleFetchSettings = (provider) => (action$) =>
12
+ // only handle fetch settings request actions
13
+ action$.pipe(filter(actions.fetchSettings.match),
14
+ // when request is received, abort any ongoing request and start new
15
+ switchMap(({ payload }) => {
16
+ const { appKey } = payload;
17
+ // fetch settings from provider
18
+ const subject = from(provider.getAppSettings(appKey)).pipe(
19
+ // filter out null values
20
+ filter((x) => !!x),
21
+ // allow multiple subscriptions
22
+ share());
23
+ // first load settings and then dispatch success action
24
+ return concat(subject.pipe(map((settings) => actions.setSettings(settings))), subject.pipe(last(), map((settings) => actions.fetchSettings.success(settings)))).pipe(
25
+ // catch any error and dispatch failure action
26
+ catchError((err) => {
27
+ return of(actions.fetchSettings.failure(err));
28
+ }));
29
+ }));
30
+ //# sourceMappingURL=handle-fetch-settings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handle-fetch-settings.js","sourceRoot":"","sources":["../../../../src/app/flows/handle-fetch-settings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEjF,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAOrC;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAC9B,CAAC,QAA2B,EAAiC,EAAE,CAC/D,CAAC,OAAO,EAAE,EAAE;AACV,6CAA6C;AAC7C,OAAO,CAAC,IAAI,CACV,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC;AACnC,oEAAoE;AACpE,SAAS,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IACxB,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAE3B,+BAA+B;IAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI;IACxD,yBAAyB;IACzB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAClB,+BAA+B;IAC/B,KAAK,EAAE,CACR,CAAC;IAEF,uDAAuD;IACvD,OAAO,MAAM,CACX,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,EAC9D,OAAO,CAAC,IAAI,CACV,IAAI,EAAE,EACN,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAC3D,CACF,CAAC,IAAI;IACJ,8CAA8C;IAC9C,UAAU,CAAC,CAAC,GAAG,EAAE,EAAE;QACjB,OAAO,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IAChD,CAAC,CAAC,CACH,CAAC;AACJ,CAAC,CAAC,CACH,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { from, of } from 'rxjs';
2
+ import { catchError, filter, map, switchMap } from 'rxjs/operators';
3
+ import { actions } from '../actions';
4
+ /**
5
+ * Handles the import application flow.
6
+ * @param provider The AppModuleProvider used to resolve the application asset URI.
7
+ * @returns A flow that takes in actions and returns an observable of AppBundleState.
8
+ */
9
+ export const handleImportApplication = (provider) => (action$) =>
10
+ // only handle import script request actions
11
+ action$.pipe(filter(actions.importApp.match),
12
+ // when request is received, abort any ongoing request and start new
13
+ switchMap(({ payload }) => {
14
+ // dynamically import the application script
15
+ return from(import(
16
+ /* @vite-ignore */ /* webpackIgnore: true */
17
+ [provider.assetUri, payload].join('/').replace(/\/{2,}/g, '/'))).pipe(
18
+ // dispatch success action
19
+ map(actions.importApp.success),
20
+ // catch any error and dispatch failure action
21
+ catchError((err) => of(actions.importApp.failure(err))));
22
+ }));
23
+ //# sourceMappingURL=handle-import-application.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handle-import-application.js","sourceRoot":"","sources":["../../../../src/app/flows/handle-import-application.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEpE,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAOrC;;;;GAIG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAClC,CAAC,QAA2B,EAAiC,EAAE,CAC/D,CAAC,OAAO,EAAE,EAAE;AACV,4CAA4C;AAC5C,OAAO,CAAC,IAAI,CACV,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC;AAC/B,oEAAoE;AACpE,SAAS,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IACxB,4CAA4C;IAC5C,OAAO,IAAI,CACT,MAAM;IACJ,kBAAkB,CAAC,yBAAyB;IAC5C,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAC/D,CACF,CAAC,IAAI;IACJ,0BAA0B;IAC1B,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC;IAC9B,8CAA8C;IAC9C,UAAU,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CACxD,CAAC;AACJ,CAAC,CAAC,CACH,CAAC"}