@equinor/fusion-framework-react-app 12.0.1 → 12.0.3

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 (66) hide show
  1. package/CHANGELOG.md +52 -0
  2. package/dist/esm/ag-grid/useTheme.js +1 -0
  3. package/dist/esm/ag-grid/useTheme.js.map +1 -1
  4. package/dist/esm/analytics/useTrackFeature.js +1 -0
  5. package/dist/esm/analytics/useTrackFeature.js.map +1 -1
  6. package/dist/esm/apploader/Apploader.js +4 -1
  7. package/dist/esm/apploader/Apploader.js.map +1 -1
  8. package/dist/esm/apploader/useApploader.js +1 -0
  9. package/dist/esm/apploader/useApploader.js.map +1 -1
  10. package/dist/esm/bookmark/useBookmark.js +0 -1
  11. package/dist/esm/bookmark/useBookmark.js.map +1 -1
  12. package/dist/esm/bookmark/useCurrentBookmark.js +1 -0
  13. package/dist/esm/bookmark/useCurrentBookmark.js.map +1 -1
  14. package/dist/esm/create-component.js +2 -0
  15. package/dist/esm/create-component.js.map +1 -1
  16. package/dist/esm/create-legacy-app.js +4 -2
  17. package/dist/esm/create-legacy-app.js.map +1 -1
  18. package/dist/esm/feature-flag/enable-feature-flag.js +4 -1
  19. package/dist/esm/feature-flag/enable-feature-flag.js.map +1 -1
  20. package/dist/esm/feature-flag/useFeature.js +6 -2
  21. package/dist/esm/feature-flag/useFeature.js.map +1 -1
  22. package/dist/esm/help-center/event-name.js +2 -0
  23. package/dist/esm/help-center/event-name.js.map +1 -0
  24. package/dist/esm/help-center/useHelpCenter.js +1 -1
  25. package/dist/esm/help-center/useHelpCenter.js.map +1 -1
  26. package/dist/esm/msal/useToken.js +1 -0
  27. package/dist/esm/msal/useToken.js.map +1 -1
  28. package/dist/esm/settings/useAppSetting.js +2 -0
  29. package/dist/esm/settings/useAppSetting.js.map +1 -1
  30. package/dist/esm/settings/useAppSettings.js +7 -2
  31. package/dist/esm/settings/useAppSettings.js.map +1 -1
  32. package/dist/esm/settings/useAppSettingsStatus.js +4 -0
  33. package/dist/esm/settings/useAppSettingsStatus.js.map +1 -1
  34. package/dist/esm/useAppEnvironmentVariables.js +1 -0
  35. package/dist/esm/useAppEnvironmentVariables.js.map +1 -1
  36. package/dist/esm/useAppModule.js +1 -0
  37. package/dist/esm/useAppModule.js.map +1 -1
  38. package/dist/esm/version.js +1 -1
  39. package/dist/tsconfig.tsbuildinfo +1 -1
  40. package/dist/types/bookmark/useBookmark.d.ts +1 -1
  41. package/dist/types/help-center/event-name.d.ts +1 -0
  42. package/dist/types/help-center/index.d.ts +1 -1
  43. package/dist/types/help-center/useHelpCenter.d.ts +0 -1
  44. package/dist/types/navigation/useRouter.d.ts +1 -1
  45. package/dist/types/version.d.ts +1 -1
  46. package/package.json +21 -21
  47. package/src/ag-grid/useTheme.ts +1 -0
  48. package/src/analytics/useTrackFeature.ts +1 -0
  49. package/src/apploader/Apploader.tsx +3 -0
  50. package/src/apploader/useApploader.ts +1 -0
  51. package/src/bookmark/useBookmark.ts +1 -2
  52. package/src/bookmark/useCurrentBookmark.ts +1 -0
  53. package/src/create-component.tsx +3 -1
  54. package/src/create-legacy-app.tsx +4 -2
  55. package/src/feature-flag/enable-feature-flag.ts +4 -1
  56. package/src/feature-flag/useFeature.ts +10 -2
  57. package/src/help-center/event-name.ts +1 -0
  58. package/src/help-center/index.ts +1 -1
  59. package/src/help-center/useHelpCenter.ts +2 -2
  60. package/src/msal/useToken.ts +1 -0
  61. package/src/settings/useAppSetting.ts +2 -0
  62. package/src/settings/useAppSettings.ts +7 -2
  63. package/src/settings/useAppSettingsStatus.ts +4 -0
  64. package/src/useAppEnvironmentVariables.ts +1 -0
  65. package/src/useAppModule.ts +1 -0
  66. package/src/version.ts +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,57 @@
1
1
  # Change Log
2
2
 
3
+ ## 12.0.3
4
+
5
+ ### Patch Changes
6
+
7
+ - 80c3e4a: Internal: Reference tracking issues #5083, #5084, and #5086 in TODO comments, resolving `fusion-lint` `no-todo-without-issue` warnings.
8
+ - 80c3e4a: Internal: add intent comments to control-flow statements (`if`/`switch`/`.map()`) across several files to satisfy the `require-intent-comment/flow` and `require-intent-comment/iterators` lint rules. No functional change.
9
+ - 80c3e4a: Internal: add missing intent comments for `useFeature`'s object-merge and rxjs pipe operations.
10
+ - 80c3e4a: Internal: add intent comments to `.pipe()` operator chains in `useAppEnvironmentVariables.ts`, `useAppSetting.ts`, and `useAppSettingsStatus.ts` to satisfy the `require-intent-comment/rxjs` lint rule. No functional change.
11
+ - 80c3e4a: Internal: remove a stray `eslint-disable-next-line` comment (repo uses Biome, not ESLint) that was breaking TSDoc adjacency for `useBookmark`, replacing the unused generic with Biome's `_`-prefix convention, to satisfy the `require-hook-tsdoc` lint rule. No functional change.
12
+ - 80c3e4a: Internal: add missing intent comments for `as`/`as unknown as` type assertions and inline separate re-exports at their definition site, per `fusion-lint`'s `require-intent-comment/type-assertion` and `no-separate-export` rules. No behavior changes.
13
+ - 80c3e4a: Internal: split multi-export files into one export per file and convert pure interop re-exports to `export { X } from 'y'` syntax, per `fusion-lint`'s `single-export-per-file` rule. Also removed `modules/event/src/EventProvider.tsx`, a fully dead duplicate of `eventContext.ts`/`useEventProvider.ts`/`useModulesEventProvider.ts` with no remaining consumers. No behavior changes.
14
+ - Updated dependencies [80c3e4a]
15
+ - Updated dependencies [80c3e4a]
16
+ - Updated dependencies [80c3e4a]
17
+ - Updated dependencies [80c3e4a]
18
+ - Updated dependencies [80c3e4a]
19
+ - Updated dependencies [80c3e4a]
20
+ - Updated dependencies [80c3e4a]
21
+ - Updated dependencies [80c3e4a]
22
+ - Updated dependencies [80c3e4a]
23
+ - Updated dependencies [80c3e4a]
24
+ - Updated dependencies [80c3e4a]
25
+ - Updated dependencies [80c3e4a]
26
+ - Updated dependencies [80c3e4a]
27
+ - Updated dependencies [80c3e4a]
28
+ - Updated dependencies [80c3e4a]
29
+ - Updated dependencies [80c3e4a]
30
+ - Updated dependencies [80c3e4a]
31
+ - Updated dependencies [80c3e4a]
32
+ - Updated dependencies [80c3e4a]
33
+ - Updated dependencies [80c3e4a]
34
+ - Updated dependencies [80c3e4a]
35
+ - Updated dependencies [80c3e4a]
36
+ - Updated dependencies [80c3e4a]
37
+ - Updated dependencies [80c3e4a]
38
+ - Updated dependencies [80c3e4a]
39
+ - Updated dependencies [80c3e4a]
40
+ - @equinor/fusion-framework-app@11.0.11
41
+ - @equinor/fusion-framework-module-app@8.0.3
42
+ - @equinor/fusion-framework-module-http@8.0.4
43
+ - @equinor/fusion-framework-module@6.1.1
44
+ - @equinor/fusion-framework-react-module-http@11.0.1
45
+ - @equinor/fusion-framework-react@8.0.1
46
+ - @equinor/fusion-framework-module-navigation@7.0.5
47
+ - @equinor/fusion-framework-react-module@4.0.2
48
+
49
+ ## 12.0.2
50
+
51
+ ### Patch Changes
52
+
53
+ - @equinor/fusion-framework-app@11.0.10
54
+
3
55
  ## 12.0.1
4
56
 
5
57
  ### Patch Changes
@@ -8,6 +8,7 @@ import { useAppModule } from '../useAppModule';
8
8
  */
9
9
  export const useTheme = () => {
10
10
  const agGrid = useAppModule('agGrid');
11
+ // Fail fast when the AG Grid module has not been registered on the app
11
12
  if (!agGrid) {
12
13
  throw new Error('agGrid module is not available');
13
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useTheme.js","sourceRoot":"","sources":["../../../src/ag-grid/useTheme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAI/C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAU,EAAE;IAClC,MAAM,MAAM,GAAG,YAAY,CAAe,QAAQ,CAAC,CAAC;IAEpD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IAED,OAAO,MAAM,CAAC,KAAc,CAAC;AAC/B,CAAC,CAAC"}
1
+ {"version":3,"file":"useTheme.js","sourceRoot":"","sources":["../../../src/ag-grid/useTheme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAI/C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAU,EAAE;IAClC,MAAM,MAAM,GAAG,YAAY,CAAe,QAAQ,CAAC,CAAC;IAEpD,uEAAuE;IACvE,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IAED,OAAO,MAAM,CAAC,KAAc,CAAC;AAC/B,CAAC,CAAC"}
@@ -33,6 +33,7 @@ export const useTrackFeature = () => {
33
33
  * @param data - Optional map of additional key-value pairs to include with the analytics event
34
34
  */
35
35
  const trackFeature = useCallback((name, data) => {
36
+ // Report to telemetry when analytics tracking is not available so the gap is visible
36
37
  if (!analyticsProvider) {
37
38
  telemetryProvider?.trackException({
38
39
  name: 'AnalyticsProviderNotFound',
@@ -1 +1 @@
1
- {"version":3,"file":"useTrackFeature.js","sourceRoot":"","sources":["../../../src/analytics/useTrackFeature.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAGrE,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAEpC;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE;IAClC,MAAM,iBAAiB,GAAG,kBAAkB,CAAkB,WAAW,CAAC,CAAC;IAC3E,MAAM,WAAW,GAAG,kBAAkB,CAAY,KAAK,CAAC,CAAC;IACzD,MAAM,eAAe,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IACtD,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAE1D;;;;;;;OAOG;IACH,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,IAAY,EAAE,IAAkB,EAAE,EAAE;QACnC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,iBAAiB,EAAE,cAAc,CAAC;gBAChC,IAAI,EAAE,2BAA2B;gBACjC,SAAS,EAAE,IAAI,KAAK,CAAC,8BAA8B,CAAC;aACrD,CAAC,CAAC;QACL,CAAC;QAED,iBAAiB,EAAE,aAAa,CAAC;YAC/B,IAAI,EAAE,aAAa;YACnB,KAAK,EAAE;gBACL,OAAO,EAAE,IAAI;gBACb,IAAI;aACL;YACD,UAAU,EAAE;gBACV,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM;gBACpC,OAAO,EAAE,eAAe,EAAE,cAAc;oBACtC,CAAC,CAAC;wBACE,EAAE,EAAE,eAAe,CAAC,cAAc,CAAC,EAAE;wBACrC,UAAU,EAAE,eAAe,CAAC,cAAc,CAAC,UAAU;wBACrD,KAAK,EAAE,eAAe,CAAC,cAAc,CAAC,KAAK;wBAC3C,IAAI,EAAE,eAAe,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE;wBAC5C,MAAM,EAAE,eAAe,CAAC,cAAc,CAAC,MAAM;qBAC9C;oBACH,CAAC,CAAC,SAAS;aACd;SACF,CAAC,CAAC;IACL,CAAC,EACD,CAAC,iBAAiB,EAAE,WAAW,EAAE,eAAe,EAAE,iBAAiB,CAAC,CACrE,CAAC;IAEF,OAAO,YAAY,CAAC;AACtB,CAAC,CAAC"}
1
+ {"version":3,"file":"useTrackFeature.js","sourceRoot":"","sources":["../../../src/analytics/useTrackFeature.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAGrE,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAEpC;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE;IAClC,MAAM,iBAAiB,GAAG,kBAAkB,CAAkB,WAAW,CAAC,CAAC;IAC3E,MAAM,WAAW,GAAG,kBAAkB,CAAY,KAAK,CAAC,CAAC;IACzD,MAAM,eAAe,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IACtD,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAE1D;;;;;;;OAOG;IACH,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,IAAY,EAAE,IAAkB,EAAE,EAAE;QACnC,qFAAqF;QACrF,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,iBAAiB,EAAE,cAAc,CAAC;gBAChC,IAAI,EAAE,2BAA2B;gBACjC,SAAS,EAAE,IAAI,KAAK,CAAC,8BAA8B,CAAC;aACrD,CAAC,CAAC;QACL,CAAC;QAED,iBAAiB,EAAE,aAAa,CAAC;YAC/B,IAAI,EAAE,aAAa;YACnB,KAAK,EAAE;gBACL,OAAO,EAAE,IAAI;gBACb,IAAI;aACL;YACD,UAAU,EAAE;gBACV,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM;gBACpC,OAAO,EAAE,eAAe,EAAE,cAAc;oBACtC,CAAC,CAAC;wBACE,EAAE,EAAE,eAAe,CAAC,cAAc,CAAC,EAAE;wBACrC,UAAU,EAAE,eAAe,CAAC,cAAc,CAAC,UAAU;wBACrD,KAAK,EAAE,eAAe,CAAC,cAAc,CAAC,KAAK;wBAC3C,IAAI,EAAE,eAAe,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE;wBAC5C,MAAM,EAAE,eAAe,CAAC,cAAc,CAAC,MAAM;qBAC9C;oBACH,CAAC,CAAC,SAAS;aACd;SACF,CAAC,CAAC;IACL,CAAC,EACD,CAAC,iBAAiB,EAAE,WAAW,EAAE,eAAe,EAAE,iBAAiB,CAAC,CACrE,CAAC;IAEF,OAAO,YAAY,CAAC;AACtB,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
- import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useEffect, useRef } from 'react';
3
3
  import { useApploader } from './useApploader';
4
4
  /**
@@ -18,14 +18,17 @@ export const Apploader = ({ appKey }) => {
18
18
  const refWrapp = useRef(null);
19
19
  const { loading, error, appRef } = useApploader({ appKey });
20
20
  useEffect(() => {
21
+ // Wait until both the wrapper element and the loaded app element are available
21
22
  if (!refWrapp.current || !appRef.current) {
22
23
  return;
23
24
  }
24
25
  refWrapp.current.appendChild(appRef.current);
25
26
  }, [appRef.current]);
27
+ // Show a loading placeholder while the app is being fetched and initialized
26
28
  if (loading) {
27
29
  return _jsxs("div", { children: ["Loading ", appKey] });
28
30
  }
31
+ // Surface the load error instead of rendering the app
29
32
  if (error) {
30
33
  return (_jsxs("div", { children: ["Error loading ", appKey, ". Error: ", error.message] }));
31
34
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Apploader.js","sourceRoot":"","sources":["../../../src/apploader/Apploader.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAqB,MAAM,OAAO,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAM9C;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,EAAE,MAAM,EAAkB,EAAgB,EAAE;IACpE,MAAM,QAAQ,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IACrD,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IAE5D,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACzC,OAAO;QACT,CAAC;QAED,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAErB,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,sCAAc,MAAM,IAAO,CAAC;IACrC,CAAC;IACD,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CACL,4CACiB,MAAM,eAAW,KAAK,CAAC,OAAO,IACzC,CACP,CAAC;IACJ,CAAC;IAED,OAAO,cAAK,GAAG,EAAE,QAAQ,GAAI,CAAC;AAChC,CAAC,CAAC;AAEF,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"Apploader.js","sourceRoot":"","sources":["../../../src/apploader/Apploader.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAqB,MAAM,OAAO,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAM9C;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,EAAE,MAAM,EAAkB,EAAgB,EAAE;IACpE,MAAM,QAAQ,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IACrD,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IAE5D,SAAS,CAAC,GAAG,EAAE;QACb,+EAA+E;QAC/E,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACzC,OAAO;QACT,CAAC;QAED,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAErB,4EAA4E;IAC5E,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,sCAAc,MAAM,IAAO,CAAC;IACrC,CAAC;IACD,sDAAsD;IACtD,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CACL,4CACiB,MAAM,eAAW,KAAK,CAAC,OAAO,IACzC,CACP,CAAC;IACJ,CAAC;IAED,OAAO,cAAK,GAAG,EAAE,QAAQ,GAAI,CAAC;AAChC,CAAC,CAAC;AAEF,eAAe,SAAS,CAAC"}
@@ -56,6 +56,7 @@ export const useApploader = ({ appKey, }) => {
56
56
  const basename = `/apps/${fusionApp?.appKey}`;
57
57
  try {
58
58
  const render = script.renderApp ?? script.default;
59
+ // Prefer the modern renderApp export, falling back to the default export
59
60
  if (render) {
60
61
  return render(appRef.current, {
61
62
  fusion,
@@ -1 +1 @@
1
- {"version":3,"file":"useApploader.js","sourceRoot":"","sources":["../../../src/apploader/useApploader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useApploader.js","sourceRoot":"","sources":["../../../src/apploader/useApploader.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,6 @@ import { useBookmark as _useBookmark, } from '@equinor/fusion-framework-react-mo
16
16
  * @template TData - Current applications bookmark type
17
17
  * @return {*} {Bookmarks<TData>} the full api fro handling bookmarks
18
18
  */
19
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
20
19
  export const useBookmark = () => _useBookmark();
21
20
  export default useBookmark;
22
21
  //# sourceMappingURL=useBookmark.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useBookmark.js","sourceRoot":"","sources":["../../../src/bookmark/useBookmark.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,IAAI,YAAY,GAE5B,MAAM,iDAAiD,CAAC;AAEzD;;;;;;;;;;;;;;;;GAgBG;AACH,6DAA6D;AAC7D,MAAM,CAAC,MAAM,WAAW,GAAG,GAA6B,EAAE,CAAC,YAAY,EAAE,CAAC;AAE1E,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"useBookmark.js","sourceRoot":"","sources":["../../../src/bookmark/useBookmark.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,IAAI,YAAY,GAE5B,MAAM,iDAAiD,CAAC;AAEzD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,GAA8B,EAAE,CAAC,YAAY,EAAE,CAAC;AAE3E,eAAe,WAAW,CAAC"}
@@ -18,6 +18,7 @@ export const useCurrentBookmark = (payloadGenerator) => {
18
18
  const { currentApp } = useCurrentApp();
19
19
  const appBookmarkProvider = useAppModules().bookmark;
20
20
  const frameworkBookmarkProvider = useFrameworkModule('bookmark');
21
+ // Warn about the deprecated fallback to the framework-scoped bookmark provider
21
22
  if (!appBookmarkProvider) {
22
23
  console.warn('@deprecation', 'application has not enabled bookmarks, this will not work in the future');
23
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useCurrentBookmark.js","sourceRoot":"","sources":["../../../src/bookmark/useCurrentBookmark.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,kBAAkB,IAAI,mBAAmB,EAEzC,sBAAsB,GACvB,MAAM,iDAAiD,CAAC;AAEzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAEpE;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,gBAAkD,EACjB,EAAE;IACnC,MAAM,EAAE,UAAU,EAAE,GAAG,aAAa,EAAE,CAAC;IACvC,MAAM,mBAAmB,GAAG,aAAa,EAAoB,CAAC,QAAQ,CAAC;IACvE,MAAM,yBAAyB,GAAG,kBAAkB,CAAiB,UAAU,CAAC,CAAC;IACjF,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACzB,OAAO,CAAC,IAAI,CACV,cAAc,EACd,yEAAyE,CAC1E,CAAC;IACJ,CAAC;IACD,MAAM,EAAE,eAAe,EAAE,kBAAkB,EAAE,GAAG,mBAAmB,CAAQ;QACzE,QAAQ,EAAE,mBAAmB,IAAI,yBAAyB;QAC1D,gBAAgB;KACjB,CAAC,CAAC;IAEH,MAAM,qBAAqB,GAAG,sBAAsB,EAAE,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,OAAO;QACvF,CAAC,CAAC,sBAAsB,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,MAAM;QACxD,CAAC,CAAC,IAAI,CAAC;IAET,OAAO;QACL,eAAe,EAAE,qBAAqB,KAAK,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI;QACtF,kBAAkB;KACnB,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"useCurrentBookmark.js","sourceRoot":"","sources":["../../../src/bookmark/useCurrentBookmark.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,kBAAkB,IAAI,mBAAmB,EAEzC,sBAAsB,GACvB,MAAM,iDAAiD,CAAC;AAEzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAEpE;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,gBAAkD,EACjB,EAAE;IACnC,MAAM,EAAE,UAAU,EAAE,GAAG,aAAa,EAAE,CAAC;IACvC,MAAM,mBAAmB,GAAG,aAAa,EAAoB,CAAC,QAAQ,CAAC;IACvE,MAAM,yBAAyB,GAAG,kBAAkB,CAAiB,UAAU,CAAC,CAAC;IACjF,+EAA+E;IAC/E,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACzB,OAAO,CAAC,IAAI,CACV,cAAc,EACd,yEAAyE,CAC1E,CAAC;IACJ,CAAC;IACD,MAAM,EAAE,eAAe,EAAE,kBAAkB,EAAE,GAAG,mBAAmB,CAAQ;QACzE,QAAQ,EAAE,mBAAmB,IAAI,yBAAyB;QAC1D,gBAAgB;KACjB,CAAC,CAAC;IAEH,MAAM,qBAAqB,GAAG,sBAAsB,EAAE,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,OAAO;QACvF,CAAC,CAAC,sBAAsB,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,MAAM;QACxD,CAAC,CAAC,IAAI,CAAC;IAET,OAAO;QACL,eAAe,EAAE,qBAAqB,KAAK,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI;QACtF,kBAAkB;KACnB,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
@@ -55,6 +55,8 @@ import { ModuleProvider as AppModuleProvider } from '@equinor/fusion-framework-r
55
55
  */
56
56
  export const createComponent = (Component, configure) => (fusion, env) => lazy(async () => {
57
57
  const init = configureModules(configure);
58
+ // configureModules returns a generic modules instance; narrow it to the
59
+ // app-specific shape expected by consumers of this component.
58
60
  const modules = (await init({
59
61
  fusion,
60
62
  env,
@@ -1 +1 @@
1
- {"version":3,"file":"create-component.js","sourceRoot":"","sources":["../../src/create-component.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAE7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAGpE,OAAO,EAAe,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAO9E,OAAO,EAAE,cAAc,IAAI,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAY7F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,MAAM,CAAC,MAAM,eAAe,GAC1B,CACE,SAA4B,EAC5B,SAAoD,EACrB,EAAE,CACnC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CACd,IAAI,CAAC,KAAK,IAAI,EAAE;IACd,MAAM,IAAI,GAAG,gBAAgB,CAAuB,SAAS,CAAC,CAAC;IAC/D,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC;QAC1B,MAAM;QACN,GAAG;KACJ,CAAC,CAAkC,CAAC;IAErC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,kBAAkB,EAAE;QAC9C,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE;QACrC,MAAM,EAAE,SAAS;KAClB,CAAC,CAAC;IACH,OAAO;QACL,OAAO,EAAE,GAAG,EAAE,CAAC,CACb,KAAC,iBAAiB,IAAC,KAAK,EAAE,MAAM,YAC9B,KAAC,iBAAiB,IAAC,KAAK,EAAE,OAAO,YAI/B,KAAC,SAAS,KAAG,GACK,GACF,CACrB;KACF,CAAC;AACJ,CAAC,CAAC,CAAC;AAaP,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"create-component.js","sourceRoot":"","sources":["../../src/create-component.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAE7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAGpE,OAAO,EAAe,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAO9E,OAAO,EAAE,cAAc,IAAI,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAY7F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,MAAM,CAAC,MAAM,eAAe,GAC1B,CACE,SAA4B,EAC5B,SAAoD,EACrB,EAAE,CACnC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CACd,IAAI,CAAC,KAAK,IAAI,EAAE;IACd,MAAM,IAAI,GAAG,gBAAgB,CAAuB,SAAS,CAAC,CAAC;IAC/D,wEAAwE;IACxE,8DAA8D;IAC9D,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC;QAC1B,MAAM;QACN,GAAG;KACJ,CAAC,CAAkC,CAAC;IAErC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,kBAAkB,EAAE;QAC9C,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE;QACrC,MAAM,EAAE,SAAS;KAClB,CAAC,CAAC;IACH,OAAO;QACL,OAAO,EAAE,GAAG,EAAE,CAAC,CACb,KAAC,iBAAiB,IAAC,KAAK,EAAE,MAAM,YAC9B,KAAC,iBAAiB,IAAC,KAAK,EAAE,OAAO,YAI/B,KAAC,SAAS,KAAG,GACK,GACF,CACrB;KACF,CAAC;AACJ,CAAC,CAAC,CAAC;AAaP,eAAe,eAAe,CAAC"}
@@ -18,16 +18,18 @@ import { createComponent } from './create-component';
18
18
  export const createLegacyApp = (Component, configure) => {
19
19
  const LegacyComponent = () => {
20
20
  const fusion = useFramework();
21
- // biome-ignore lint/correctness/useExhaustiveDependencies: this will soon be removed
22
21
  const RenderComponent = useMemo(() => {
23
22
  const creator = createComponent(Component, configure);
24
23
  // @eikeland
25
- // TODO - recheck when legacy fusion-cli is updated!
24
+ // TODO(#5084): recheck when legacy fusion-cli is updated!
26
25
  const appProvider = fusion.modules.app;
26
+ // Use the real app config/manifest once the provider has resolved them
27
27
  if (appProvider?.current) {
28
28
  const { config, manifest } = appProvider.current;
29
+ // Legacy app provider config/manifest predate the strict AppEnv shape; cast until legacy fusion-cli is updated.
29
30
  return creator(fusion, { config, manifest });
30
31
  }
32
+ // No app provider available yet; pass an empty object cast to AppEnv as a placeholder.
31
33
  return creator(fusion, {});
32
34
  }, [fusion]);
33
35
  return (_jsx(Suspense, { fallback: _jsx("p", { children: "loading app" }), children: _jsx(RenderComponent, {}) }));
@@ -1 +1 @@
1
- {"version":3,"file":"create-legacy-app.js","sourceRoot":"","sources":["../../src/create-legacy-app.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAoB,MAAM,OAAO,CAAC;AAE5D,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAK/D,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,SAAsB,EACtB,SAAwC,EACxC,EAAE;IACF,MAAM,eAAe,GAAG,GAAG,EAAE;QAC3B,MAAM,MAAM,GAAG,YAAY,EAAe,CAAC;QAC3C,qFAAqF;QACrF,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,EAAE;YACnC,MAAM,OAAO,GAAG,eAAe,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YACtD,YAAY;YACZ,oDAAoD;YACpD,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC;YACvC,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;gBACzB,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC;gBACjD,OAAO,OAAO,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAuB,CAAC,CAAC;YACpE,CAAC;YACD,OAAO,OAAO,CAAC,MAAM,EAAE,EAAuB,CAAC,CAAC;QAClD,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;QACb,OAAO,CACL,KAAC,QAAQ,IAAC,QAAQ,EAAE,sCAAkB,YACpC,KAAC,eAAe,KAAG,GACV,CACZ,CAAC;IACJ,CAAC,CAAC;IACF,OAAO,eAAe,CAAC;AACzB,CAAC,CAAC"}
1
+ {"version":3,"file":"create-legacy-app.js","sourceRoot":"","sources":["../../src/create-legacy-app.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAoB,MAAM,OAAO,CAAC;AAE5D,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAK/D,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,SAAsB,EACtB,SAAwC,EACxC,EAAE;IACF,MAAM,eAAe,GAAG,GAAG,EAAE;QAC3B,MAAM,MAAM,GAAG,YAAY,EAAe,CAAC;QAC3C,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,EAAE;YACnC,MAAM,OAAO,GAAG,eAAe,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YACtD,YAAY;YACZ,0DAA0D;YAC1D,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC;YACvC,uEAAuE;YACvE,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;gBACzB,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC;gBACjD,gHAAgH;gBAChH,OAAO,OAAO,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAuB,CAAC,CAAC;YACpE,CAAC;YACD,uFAAuF;YACvF,OAAO,OAAO,CAAC,MAAM,EAAE,EAAuB,CAAC,CAAC;QAClD,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;QACb,OAAO,CACL,KAAC,QAAQ,IAAC,QAAQ,EAAE,sCAAkB,YACpC,KAAC,eAAe,KAAG,GACV,CACZ,CAAC;IACJ,CAAC,CAAC;IACF,OAAO,eAAe,CAAC;AACzB,CAAC,CAAC"}
@@ -6,6 +6,7 @@ import { createLocalStoragePlugin, createUrlPlugin, } from '@equinor/fusion-fram
6
6
  * @param flags_cb Optional flags callback that can be an array of feature flags or a callback function.
7
7
  */
8
8
  export function enableFeatureFlag(configurator, flags_cb) {
9
+ // Dispatch based on whether the caller passed an array of flags or a builder callback
9
10
  switch (typeof flags_cb) {
10
11
  case 'function': {
11
12
  enableFeatureFlagging(configurator, flags_cb);
@@ -13,15 +14,17 @@ export function enableFeatureFlag(configurator, flags_cb) {
13
14
  }
14
15
  case 'object': {
15
16
  const urlFlags = [];
17
+ // Split out flags marked allowUrl so they can be registered with the URL plugin
16
18
  const localFlags = (flags_cb ?? []).map((flag) => {
17
19
  const { allowUrl, ...localFlag } = flag;
20
+ // Track allowUrl flags separately; they still get registered locally too
18
21
  if (allowUrl) {
19
22
  urlFlags.push(flag);
20
23
  }
21
24
  return localFlag;
22
25
  });
23
26
  enableFeatureFlagging(configurator, async (builder) => {
24
- // TODO: should unnamed application be allowed to use feature flags?
27
+ // TODO(#5086): should unnamed application be allowed to use feature flags?
25
28
  builder.addPlugin(createLocalStoragePlugin(localFlags, {
26
29
  name: configurator.env?.manifest.appKey ?? undefined,
27
30
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"enable-feature-flag.js","sourceRoot":"","sources":["../../../src/feature-flag/enable-feature-flag.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,qBAAqB,GAGtB,MAAM,+CAA+C,CAAC;AAEvD,OAAO,EACL,wBAAwB,EACxB,eAAe,GAChB,MAAM,uDAAuD,CAAC;AA2B/D;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAC/B,YAA8B,EAC9B,QAE8B;IAE9B,QAAQ,OAAO,QAAQ,EAAE,CAAC;QACxB,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,qBAAqB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;YAC9C,MAAM;QACR,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,QAAQ,GAAmB,EAAE,CAAC;YACpC,MAAM,UAAU,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC/C,MAAM,EAAE,QAAQ,EAAE,GAAG,SAAS,EAAE,GAAG,IAAI,CAAC;gBACxC,IAAI,QAAQ,EAAE,CAAC;oBACb,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtB,CAAC;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC,CAAC,CAAC;YACH,qBAAqB,CAAC,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;gBACpD,oEAAoE;gBACpE,OAAO,CAAC,SAAS,CACf,wBAAwB,CAAC,UAAU,EAAE;oBACnC,IAAI,EAAG,YAAgC,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,IAAI,SAAS;iBAC1E,CAAC,CACH,CAAC;gBACF,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC/C,CAAC,CAAC,CAAC;YACH,MAAM;QACR,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"enable-feature-flag.js","sourceRoot":"","sources":["../../../src/feature-flag/enable-feature-flag.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,qBAAqB,GAGtB,MAAM,+CAA+C,CAAC;AAEvD,OAAO,EACL,wBAAwB,EACxB,eAAe,GAChB,MAAM,uDAAuD,CAAC;AA2B/D;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAC/B,YAA8B,EAC9B,QAE8B;IAE9B,sFAAsF;IACtF,QAAQ,OAAO,QAAQ,EAAE,CAAC;QACxB,KAAK,UAAU,EAAE,CAAC;YAChB,qBAAqB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;YAC9C,MAAM;QACR,CAAC;QACD,KAAK,QAAQ,EAAE,CAAC;YACd,MAAM,QAAQ,GAAmB,EAAE,CAAC;YACpC,gFAAgF;YAChF,MAAM,UAAU,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC/C,MAAM,EAAE,QAAQ,EAAE,GAAG,SAAS,EAAE,GAAG,IAAI,CAAC;gBACxC,yEAAyE;gBACzE,IAAI,QAAQ,EAAE,CAAC;oBACb,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtB,CAAC;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC,CAAC,CAAC;YACH,qBAAqB,CAAC,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;gBACpD,2EAA2E;gBAC3E,OAAO,CAAC,SAAS,CACf,wBAAwB,CAAC,UAAU,EAAE;oBACnC,IAAI,EAAG,YAAgC,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,IAAI,SAAS;iBAC1E,CAAC,CACH,CAAC;gBACF,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC/C,CAAC,CAAC,CAAC;YACH,MAAM;QACR,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -40,11 +40,15 @@ export const useFeature = (key) => {
40
40
  framework: frameworkProvider.features$,
41
41
  app: appProvider.features$,
42
42
  }).pipe(map(({ framework, app }) => {
43
- return { ...framework, ...app };
43
+ // Application feature flags override framework defaults with the same key.
44
+ const mergedFeatureFlags = { ...framework, ...app };
45
+ return mergedFeatureFlags;
44
46
  }));
45
47
  }, [appProvider, frameworkProvider]);
46
48
  /** find feature flag by the provided key */
47
- const feature$ = useMemo(() => features$.pipe(findFeature(key)), [features$, key]);
49
+ const feature$ = useMemo(() => features$
50
+ // Narrow the merged stream down to the requested feature key.
51
+ .pipe(findFeature(key)), [features$, key]);
48
52
  const { value: feature, error } = useObservableState(feature$ ?? EMPTY);
49
53
  const toggleFeature = useCallback((enable) => {
50
54
  /** if no value provided, invert the current value */
@@ -1 +1 @@
1
- {"version":3,"file":"useFeature.js","sourceRoot":"","sources":["../../../src/feature-flag/useFeature.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAE7C,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAEjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAKtE,OAAO,EAAE,WAAW,EAAE,MAAM,yDAAyD,CAAC;AAEtF,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,GAAW,EAKX,EAAE;IACF,MAAM,WAAW,GAAG,YAAY,CAAoB,aAAa,CAAC,CAAC;IACnE,MAAM,iBAAiB,GAAG,kBAAkB,CAAoB,aAAa,CAAC,CAAC;IAE/E,sCAAsC;IACtC,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE;QAC7B,0DAA0D;QAC1D,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,OAAO,WAAW,CAAC,SAAS,CAAC;QAC/B,CAAC;QACD,yDAAyD;QACzD,OAAO,aAAa,CAAC;YACnB,SAAS,EAAE,iBAAiB,CAAC,SAAS;YACtC,GAAG,EAAE,WAAW,CAAC,SAAS;SAC3B,CAAC,CAAC,IAAI,CACL,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,EAAE;YACzB,OAAO,EAAE,GAAG,SAAS,EAAE,GAAG,GAAG,EAAE,CAAC;QAClC,CAAC,CAAC,CACH,CAAC;IACJ,CAAC,EAAE,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAErC,4CAA4C;IAC5C,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAI,GAAG,CAAC,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;IAEtF,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,kBAAkB,CAAC,QAAQ,IAAI,KAAK,CAAC,CAAC;IAExE,MAAM,aAAa,GAAG,WAAW,CAC/B,CAAC,MAAgB,EAAE,EAAE;QACnB,qDAAqD;QACrD,MAAM,OAAO,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;QACtF,WAAW,CAAC,aAAa,CAAC;YACxB,GAAG;YACH,OAAO;SACR,CAAC,CAAC;IACL,CAAC,EACD,CAAC,WAAW,EAAE,GAAG,CAAC,CACnB,CAAC;IAEF,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;AAC3C,CAAC,CAAC"}
1
+ {"version":3,"file":"useFeature.js","sourceRoot":"","sources":["../../../src/feature-flag/useFeature.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAE7C,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAEjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAKtE,OAAO,EAAE,WAAW,EAAE,MAAM,yDAAyD,CAAC;AAEtF,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,GAAW,EAKX,EAAE;IACF,MAAM,WAAW,GAAG,YAAY,CAAoB,aAAa,CAAC,CAAC;IACnE,MAAM,iBAAiB,GAAG,kBAAkB,CAAoB,aAAa,CAAC,CAAC;IAE/E,sCAAsC;IACtC,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE;QAC7B,0DAA0D;QAC1D,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,OAAO,WAAW,CAAC,SAAS,CAAC;QAC/B,CAAC;QACD,yDAAyD;QACzD,OAAO,aAAa,CAAC;YACnB,SAAS,EAAE,iBAAiB,CAAC,SAAS;YACtC,GAAG,EAAE,WAAW,CAAC,SAAS;SAC3B,CAAC,CAAC,IAAI,CACL,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,EAAE;YACzB,2EAA2E;YAC3E,MAAM,kBAAkB,GAAG,EAAE,GAAG,SAAS,EAAE,GAAG,GAAG,EAAE,CAAC;YACpD,OAAO,kBAAkB,CAAC;QAC5B,CAAC,CAAC,CACH,CAAC;IACJ,CAAC,EAAE,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAErC,4CAA4C;IAC5C,MAAM,QAAQ,GAAG,OAAO,CACtB,GAAG,EAAE,CACH,SAAS;QACP,8DAA8D;SAC7D,IAAI,CAAC,WAAW,CAAI,GAAG,CAAC,CAAC,EAC9B,CAAC,SAAS,EAAE,GAAG,CAAC,CACjB,CAAC;IAEF,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,kBAAkB,CAAC,QAAQ,IAAI,KAAK,CAAC,CAAC;IAExE,MAAM,aAAa,GAAG,WAAW,CAC/B,CAAC,MAAgB,EAAE,EAAE;QACnB,qDAAqD;QACrD,MAAM,OAAO,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;QACtF,WAAW,CAAC,aAAa,CAAC;YACxB,GAAG;YACH,OAAO;SACR,CAAC,CAAC;IACL,CAAC,EACD,CAAC,WAAW,EAAE,GAAG,CAAC,CACnB,CAAC;IAEF,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;AAC3C,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export const EVENT_NAME = '@Portal::FusionHelp::open';
2
+ //# sourceMappingURL=event-name.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-name.js","sourceRoot":"","sources":["../../../src/help-center/event-name.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,UAAU,GAAG,2BAA2B,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { useCallback } from 'react';
2
2
  import useAppModule from '../useAppModule';
3
- export const EVENT_NAME = '@Portal::FusionHelp::open';
3
+ import { EVENT_NAME } from './event-name.js';
4
4
  /**
5
5
  * React hook that returns an API for opening the portal help-center sidesheet.
6
6
  *
@@ -1 +1 @@
1
- {"version":3,"file":"useHelpCenter.js","sourceRoot":"","sources":["../../../src/help-center/useHelpCenter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,YAAY,MAAM,iBAAiB,CAAC;AAoC3C,MAAM,CAAC,MAAM,UAAU,GAAG,2BAA2B,CAAC;AAyCtD;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,GAAe,EAAE;IAC5C,MAAM,WAAW,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAE1C,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAS,EAAE;QACtC,WAAW,CAAC,aAAa,CAAC,UAAU,EAAE;YACpC,MAAM,EAAE;gBACN,IAAI,EAAE,MAAM;aACb;SACF,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,SAAiB,EAAQ,EAAE;QAC1B,WAAW,CAAC,aAAa,CAAC,UAAU,EAAE;YACpC,MAAM,EAAE;gBACN,IAAI,EAAE,SAAS;gBACf,SAAS,EAAE,SAAS;aACrB;SACF,CAAC,CAAC;IACL,CAAC,EACD,CAAC,WAAW,CAAC,CACd,CAAC;IAEF,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAS,EAAE;QACtC,WAAW,CAAC,aAAa,CAAC,UAAU,EAAE;YACpC,MAAM,EAAE;gBACN,IAAI,EAAE,MAAM;aACb;SACF,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,MAAM,UAAU,GAAG,WAAW,CAC5B,CAAC,MAAc,EAAQ,EAAE;QACvB,WAAW,CAAC,aAAa,CAAC,UAAU,EAAE;YACpC,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,MAAM;aACf;SACF,CAAC,CAAC;IACL,CAAC,EACD,CAAC,WAAW,CAAC,CACd,CAAC;IAEF,MAAM,cAAc,GAAG,WAAW,CAAC,GAAS,EAAE;QAC5C,WAAW,CAAC,aAAa,CAAC,UAAU,EAAE;YACpC,MAAM,EAAE;gBACN,IAAI,EAAE,YAAY;aACnB;SACF,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,MAAM,gBAAgB,GAAG,WAAW,CAAC,GAAS,EAAE;QAC9C,WAAW,CAAC,aAAa,CAAC,UAAU,EAAE;YACpC,MAAM,EAAE;gBACN,IAAI,EAAE,eAAe;aACtB;SACF,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,OAAO;QACL,QAAQ;QACR,WAAW;QACX,QAAQ;QACR,UAAU;QACV,cAAc;QACd,gBAAgB;KACjB,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"useHelpCenter.js","sourceRoot":"","sources":["../../../src/help-center/useHelpCenter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,YAAY,MAAM,iBAAiB,CAAC;AAE3C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AA2E7C;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,GAAe,EAAE;IAC5C,MAAM,WAAW,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAE1C,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAS,EAAE;QACtC,WAAW,CAAC,aAAa,CAAC,UAAU,EAAE;YACpC,MAAM,EAAE;gBACN,IAAI,EAAE,MAAM;aACb;SACF,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,SAAiB,EAAQ,EAAE;QAC1B,WAAW,CAAC,aAAa,CAAC,UAAU,EAAE;YACpC,MAAM,EAAE;gBACN,IAAI,EAAE,SAAS;gBACf,SAAS,EAAE,SAAS;aACrB;SACF,CAAC,CAAC;IACL,CAAC,EACD,CAAC,WAAW,CAAC,CACd,CAAC;IAEF,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAS,EAAE;QACtC,WAAW,CAAC,aAAa,CAAC,UAAU,EAAE;YACpC,MAAM,EAAE;gBACN,IAAI,EAAE,MAAM;aACb;SACF,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,MAAM,UAAU,GAAG,WAAW,CAC5B,CAAC,MAAc,EAAQ,EAAE;QACvB,WAAW,CAAC,aAAa,CAAC,UAAU,EAAE;YACpC,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,MAAM;aACf;SACF,CAAC,CAAC;IACL,CAAC,EACD,CAAC,WAAW,CAAC,CACd,CAAC;IAEF,MAAM,cAAc,GAAG,WAAW,CAAC,GAAS,EAAE;QAC5C,WAAW,CAAC,aAAa,CAAC,UAAU,EAAE;YACpC,MAAM,EAAE;gBACN,IAAI,EAAE,YAAY;aACnB;SACF,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,MAAM,gBAAgB,GAAG,WAAW,CAAC,GAAS,EAAE;QAC9C,WAAW,CAAC,aAAa,CAAC,UAAU,EAAE;YACpC,MAAM,EAAE;gBACN,IAAI,EAAE,eAAe;aACtB;SACF,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,OAAO;QACL,QAAQ;QACR,WAAW;QACX,QAAQ;QACR,UAAU;QACV,cAAc;QACd,gBAAgB;KACjB,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -32,6 +32,7 @@ export const useToken = (req) => {
32
32
  msalProvider
33
33
  .acquireToken({ request: req })
34
34
  .then((result) => {
35
+ // Only update state when a token was actually acquired
35
36
  if (result) {
36
37
  setToken(result);
37
38
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useToken.js","sourceRoot":"","sources":["../../../src/msal/useToken.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAI5C,OAAO,YAAY,MAAM,iBAAiB,CAAC;AAE3C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,GAExB,EAAsE,EAAE;IACvE,MAAM,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IAC1C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAmC,SAAS,CAAC,CAAC;IAChF,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAU,KAAK,CAAC,CAAC;IACvD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAU,IAAI,CAAC,CAAC;IAClD,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,QAAQ,CAAC,SAAS,CAAC,CAAC;QACpB,YAAY;aACT,YAAY,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;aAC9B,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YACf,IAAI,MAAM,EAAE,CAAC;gBACX,QAAQ,CAAC,MAAM,CAAC,CAAC;YACnB,CAAC;QACH,CAAC,CAAC;aACD,KAAK,CAAC,QAAQ,CAAC;aACf,OAAO,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IACtC,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC;IACxB,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;AACnC,CAAC,CAAC;AAEF,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"useToken.js","sourceRoot":"","sources":["../../../src/msal/useToken.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAI5C,OAAO,YAAY,MAAM,iBAAiB,CAAC;AAE3C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,GAExB,EAAsE,EAAE;IACvE,MAAM,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IAC1C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAmC,SAAS,CAAC,CAAC;IAChF,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAU,KAAK,CAAC,CAAC;IACvD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAU,IAAI,CAAC,CAAC;IAClD,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,QAAQ,CAAC,SAAS,CAAC,CAAC;QACpB,YAAY;aACT,YAAY,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;aAC9B,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YACf,uDAAuD;YACvD,IAAI,MAAM,EAAE,CAAC;gBACX,QAAQ,CAAC,MAAM,CAAC,CAAC;YACnB,CAAC;QACH,CAAC,CAAC;aACD,KAAK,CAAC,QAAQ,CAAC;aACf,OAAO,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IACtC,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC;IACxB,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;AACnC,CAAC,CAAC;AAEF,eAAe,QAAQ,CAAC"}
@@ -46,6 +46,7 @@ export const useAppSetting = (prop, defaultValue, hooks) => {
46
46
  return new BehaviorSubject(defaultValue);
47
47
  }, [currentApp]);
48
48
  useLayoutEffect(() => {
49
+ // Narrow the settings stream down to just this specific setting's value
49
50
  const sub = currentApp?.settings$
50
51
  .pipe(map((settings) => settings[prop]))
51
52
  .subscribe(subject);
@@ -55,6 +56,7 @@ export const useAppSetting = (prop, defaultValue, hooks) => {
55
56
  const { value: setting } = useObservableState(subject);
56
57
  // update function
57
58
  const setSetting = useCallback((update) => {
59
+ // Cannot persist a setting update without a current app to write it to
58
60
  if (!currentApp) {
59
61
  return onError?.(new Error('App is not available'));
60
62
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useAppSetting.js","sourceRoot":"","sources":["../../../src/settings/useAppSetting.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAE5C,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAEpE,OAAO,EAAE,oBAAoB,EAA+B,MAAM,wBAAwB,CAAC;AAG3F,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAItE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAI3B,IAAW,EACX,YAA+B,EAC/B,KAGC,EAID,EAAE;IACF,MAAM,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IAEpF,MAAM,EAAE,UAAU,GAAG,IAAI,EAAE,GAAG,aAAa,EAAE,CAAC;IAE9C,+CAA+C;IAC/C,wFAAwF;IACxF,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE;QAC3B,OAAO,IAAI,eAAe,CAA+B,YAAY,CAAC,CAAC;IACzE,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,eAAe,CAAC,GAAG,EAAE;QACnB,MAAM,GAAG,GAAG,UAAU,EAAE,SAAS;aAC9B,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAE,QAAsB,CAAC,IAAI,CAAC,CAAC,CAAC;aACtD,SAAS,CAAC,OAAO,CAAC,CAAC;QACtB,OAAO,GAAG,EAAE,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC;IAClC,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAEhC,iCAAiC;IACjC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAEvD,kBAAkB;IAClB,MAAM,UAAU,GAAG,WAAW,CAC5B,CAAC,MAAkE,EAAE,EAAE;QACrE,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,OAAO,EAAE,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;QACtD,CAAC;QAED,4DAA4D;QAC5D,MAAM,KAAK,GACT,OAAO,MAAM,KAAK,UAAU;YAC1B,CAAC,CAAE,MAAkD,CAAC,OAAO,CAAC,KAAK,CAAC;YACpE,CAAC,CAAC,MAAM,CAAC;QAEb,UAAU,CAAC,aAAa,CAAmB,IAAI,EAAE,KAAK,CAAC,CAAC,SAAS,CAAC;YAChE,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,SAAS;SACpB,CAAC,CAAC;IACL,CAAC,EACD,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,CAChD,CAAC;IAEF,eAAe;IACf,oBAAoB,CAAC,UAAU,EAAE;QAC/B,SAAS;QACT,UAAU;KACX,CAAC,CAAC;IAEH,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;AAC/B,CAAC,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"useAppSetting.js","sourceRoot":"","sources":["../../../src/settings/useAppSetting.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAE5C,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAEpE,OAAO,EAAE,oBAAoB,EAA+B,MAAM,wBAAwB,CAAC;AAG3F,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAItE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAI3B,IAAW,EACX,YAA+B,EAC/B,KAGC,EAID,EAAE;IACF,MAAM,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IAEpF,MAAM,EAAE,UAAU,GAAG,IAAI,EAAE,GAAG,aAAa,EAAE,CAAC;IAE9C,+CAA+C;IAC/C,wFAAwF;IACxF,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE;QAC3B,OAAO,IAAI,eAAe,CAA+B,YAAY,CAAC,CAAC;IACzE,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,eAAe,CAAC,GAAG,EAAE;QACnB,wEAAwE;QACxE,MAAM,GAAG,GAAG,UAAU,EAAE,SAAS;aAC9B,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAE,QAAsB,CAAC,IAAI,CAAC,CAAC,CAAC;aACtD,SAAS,CAAC,OAAO,CAAC,CAAC;QACtB,OAAO,GAAG,EAAE,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC;IAClC,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAEhC,iCAAiC;IACjC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAEvD,kBAAkB;IAClB,MAAM,UAAU,GAAG,WAAW,CAC5B,CAAC,MAAkE,EAAE,EAAE;QACrE,uEAAuE;QACvE,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,OAAO,EAAE,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;QACtD,CAAC;QAED,4DAA4D;QAC5D,MAAM,KAAK,GACT,OAAO,MAAM,KAAK,UAAU;YAC1B,CAAC,CAAE,MAAkD,CAAC,OAAO,CAAC,KAAK,CAAC;YACpE,CAAC,CAAC,MAAM,CAAC;QAEb,UAAU,CAAC,aAAa,CAAmB,IAAI,EAAE,KAAK,CAAC,CAAC,SAAS,CAAC;YAChE,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,SAAS;SACpB,CAAC,CAAC;IACL,CAAC,EACD,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,CAChD,CAAC;IAEF,eAAe;IACf,oBAAoB,CAAC,UAAU,EAAE;QAC/B,SAAS;QACT,UAAU;KACX,CAAC,CAAC;IAEH,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;AAC/B,CAAC,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -48,12 +48,17 @@ export const useAppSettings = (defaultValue, hooks) => {
48
48
  }, [currentApp]);
49
49
  // connect the subject to the current app settings stream
50
50
  useLayoutEffect(() => {
51
- const sub = (currentApp?.settings$).subscribe(subject);
52
- return () => sub?.unsubscribe();
51
+ // Nothing to subscribe to until an app is resolved
52
+ if (!currentApp) {
53
+ return;
54
+ }
55
+ const sub = currentApp.settings$.subscribe(subject);
56
+ return () => sub.unsubscribe();
53
57
  }, [currentApp, subject]);
54
58
  // subscribe to the subject to get the latest settings
55
59
  const { value: settings } = useObservableState(subject, { initial: defaultValue });
56
60
  const setSettings = useCallback((update) => {
61
+ // Cannot persist settings updates without a current app to write them to
57
62
  if (!currentApp) {
58
63
  return onError?.(new Error('App is not available'));
59
64
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useAppSettings.js","sourceRoot":"","sources":["../../../src/settings/useAppSettings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAmB,MAAM,MAAM,CAAC;AAIxD,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAEtE,OAAO,EAAE,oBAAoB,EAA+B,MAAM,wBAAwB,CAAC;AAI3F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,YAAwB,EACxB,KAGC,EAC+E,EAAE;IAClF,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,KAAK,IAAI,EAAE,CAAC;IAClE,MAAM,EAAE,UAAU,GAAG,IAAI,EAAE,GAAG,aAAa,EAAE,CAAC;IAE9C,+FAA+F;IAC/F,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE;QAC3B,OAAO,IAAI,eAAe,CAAY,YAAY,IAAK,EAAgB,CAAC,CAAC;IAC3E,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,yDAAyD;IACzD,eAAe,CAAC,GAAG,EAAE;QACnB,MAAM,GAAG,GAAG,CAAC,UAAU,EAAE,SAAmC,CAAA,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAChF,OAAO,GAAG,EAAE,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC;IAClC,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;IAE1B,sDAAsD;IACtD,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,kBAAkB,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;IAEnF,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,MAAqD,EAAE,EAAE;QACxD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,OAAO,EAAE,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;QACtD,CAAC;QAED,uDAAuD;QACvD,MAAM,QAAQ,GAAG,OAAO,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAE/E,UAAU,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC;YAC5C,IAAI,EAAE,GAAG,EAAE;gBACT,SAAS,EAAE,EAAE,CAAC;gBACd,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC;YAClB,CAAC;YACD,KAAK,EAAE,OAAO;SACf,CAAC,CAAC;IACL,CAAC,EACD,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAC1C,CAAC;IAEF,oBAAoB,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;IAE5D,OAAO,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;AACjC,CAAC,CAAC;AAEF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"useAppSettings.js","sourceRoot":"","sources":["../../../src/settings/useAppSettings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAmB,MAAM,MAAM,CAAC;AAIxD,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAEtE,OAAO,EAAE,oBAAoB,EAA+B,MAAM,wBAAwB,CAAC;AAI3F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,YAAwB,EACxB,KAGC,EAC+E,EAAE;IAClF,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,KAAK,IAAI,EAAE,CAAC;IAClE,MAAM,EAAE,UAAU,GAAG,IAAI,EAAE,GAAG,aAAa,EAAE,CAAC;IAE9C,+FAA+F;IAC/F,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE;QAC3B,OAAO,IAAI,eAAe,CAAY,YAAY,IAAK,EAAgB,CAAC,CAAC;IAC3E,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,yDAAyD;IACzD,eAAe,CAAC,GAAG,EAAE;QACnB,mDAAmD;QACnD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QACD,MAAM,GAAG,GAAI,UAAU,CAAC,SAAmC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC/E,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;IACjC,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;IAE1B,sDAAsD;IACtD,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,kBAAkB,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;IAEnF,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,MAAqD,EAAE,EAAE;QACxD,yEAAyE;QACzE,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,OAAO,EAAE,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;QACtD,CAAC;QAED,uDAAuD;QACvD,MAAM,QAAQ,GAAG,OAAO,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAE/E,UAAU,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC;YAC5C,IAAI,EAAE,GAAG,EAAE;gBACT,SAAS,EAAE,EAAE,CAAC;gBACd,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC;YAClB,CAAC;YACD,KAAK,EAAE,OAAO;SACf,CAAC,CAAC;IACL,CAAC,EACD,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAC1C,CAAC;IAEF,oBAAoB,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;IAE5D,OAAO,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;AACjC,CAAC,CAAC;AAEF,eAAe,cAAc,CAAC"}
@@ -20,7 +20,9 @@ import { map } from 'rxjs';
20
20
  export const useAppSettingsStatus = (app, hooks) => {
21
21
  const { onLoading, onUpdating } = hooks ?? {};
22
22
  useLayoutEffect(() => {
23
+ // Only subscribe once both an app and an onLoading callback are available
23
24
  if (app && onLoading) {
25
+ // Derive a boolean loading flag from whether 'fetch_settings' is an active status
24
26
  const subscription = app.status$
25
27
  .pipe(map((status) => status.has('fetch_settings')))
26
28
  .subscribe(onLoading);
@@ -28,7 +30,9 @@ export const useAppSettingsStatus = (app, hooks) => {
28
30
  }
29
31
  }, [app, onLoading]);
30
32
  useLayoutEffect(() => {
33
+ // Only subscribe once both an app and an onUpdating callback are available
31
34
  if (app && onUpdating) {
35
+ // Derive a boolean updating flag from whether 'update_settings' is an active status
32
36
  const subscription = app.status$
33
37
  .pipe(map((status) => status.has('update_settings')))
34
38
  .subscribe(onUpdating);
@@ -1 +1 @@
1
- {"version":3,"file":"useAppSettingsStatus.js","sourceRoot":"","sources":["../../../src/settings/useAppSettingsStatus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAS3B;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,GAAgB,EAAE,KAA8B,EAAE,EAAE;IACvF,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,KAAK,IAAI,EAAE,CAAC;IAE9C,eAAe,CAAC,GAAG,EAAE;QACnB,IAAI,GAAG,IAAI,SAAS,EAAE,CAAC;YACrB,MAAM,YAAY,GAAG,GAAG,CAAC,OAAO;iBAC7B,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC;iBACnD,SAAS,CAAC,SAAS,CAAC,CAAC;YACxB,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;QAC1C,CAAC;IACH,CAAC,EAAE,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC;IAErB,eAAe,CAAC,GAAG,EAAE;QACnB,IAAI,GAAG,IAAI,UAAU,EAAE,CAAC;YACtB,MAAM,YAAY,GAAG,GAAG,CAAC,OAAO;iBAC7B,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC;iBACpD,SAAS,CAAC,UAAU,CAAC,CAAC;YACzB,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;QAC1C,CAAC;IACH,CAAC,EAAE,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC;AACxB,CAAC,CAAC"}
1
+ {"version":3,"file":"useAppSettingsStatus.js","sourceRoot":"","sources":["../../../src/settings/useAppSettingsStatus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAS3B;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,GAAgB,EAAE,KAA8B,EAAE,EAAE;IACvF,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,KAAK,IAAI,EAAE,CAAC;IAE9C,eAAe,CAAC,GAAG,EAAE;QACnB,0EAA0E;QAC1E,IAAI,GAAG,IAAI,SAAS,EAAE,CAAC;YACrB,kFAAkF;YAClF,MAAM,YAAY,GAAG,GAAG,CAAC,OAAO;iBAC7B,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC;iBACnD,SAAS,CAAC,SAAS,CAAC,CAAC;YACxB,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;QAC1C,CAAC;IACH,CAAC,EAAE,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC;IAErB,eAAe,CAAC,GAAG,EAAE;QACnB,2EAA2E;QAC3E,IAAI,GAAG,IAAI,UAAU,EAAE,CAAC;YACtB,oFAAoF;YACpF,MAAM,YAAY,GAAG,GAAG,CAAC,OAAO;iBAC7B,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC;iBACpD,SAAS,CAAC,UAAU,CAAC,CAAC;YACzB,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;QAC1C,CAAC;IACH,CAAC,EAAE,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC;AACxB,CAAC,CAAC"}
@@ -35,6 +35,7 @@ export const useAppEnvironmentVariables = () => {
35
35
  throw Error('Framework is missing app module');
36
36
  }
37
37
  const env$ = useMemo(() => {
38
+ // Extract just the environment slice of the app's config for consumers
38
39
  return app.getConfig().pipe(map((config) => {
39
40
  return config.environment;
40
41
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"useAppEnvironmentVariables.js","sourceRoot":"","sources":["../../src/useAppEnvironmentVariables.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAErC,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAEL,kBAAkB,GACnB,MAAM,kCAAkC,CAAC;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,GAEY,EAAE;IACtD,yDAAyD;IACzD,MAAM,GAAG,GAAG,aAAa,EAA6B,CAAC,UAAU,CAAC;IAElE,uDAAuD;IACvD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACjD,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE;QACxB,OAAO,GAAG,CAAC,SAAS,EAAE,CAAC,IAAI,CACzB,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YACb,OAAO,MAAM,CAAC,WAAoC,CAAC;QACrD,CAAC,CAAC,CACH,CAAC;IACJ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAEV,+DAA+D;IAC/D,OAAO,kBAAkB,CAAC,IAAI,EAAE;QAC9B,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,IAAK,EAA4B;KAClE,CAAC,CAAC;AACL,CAAC,CAAC"}
1
+ {"version":3,"file":"useAppEnvironmentVariables.js","sourceRoot":"","sources":["../../src/useAppEnvironmentVariables.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAErC,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAEL,kBAAkB,GACnB,MAAM,kCAAkC,CAAC;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,GAEY,EAAE;IACtD,yDAAyD;IACzD,MAAM,GAAG,GAAG,aAAa,EAA6B,CAAC,UAAU,CAAC;IAElE,uDAAuD;IACvD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACjD,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE;QACxB,uEAAuE;QACvE,OAAO,GAAG,CAAC,SAAS,EAAE,CAAC,IAAI,CACzB,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YACb,OAAO,MAAM,CAAC,WAAoC,CAAC;QACrD,CAAC,CAAC,CACH,CAAC;IACJ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAEV,+DAA+D;IAC/D,OAAO,kBAAkB,CAAC,IAAI,EAAE;QAC9B,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,IAAK,EAA4B;KAClE,CAAC,CAAC;AACL,CAAC,CAAC"}
@@ -17,6 +17,7 @@ import { useAppModules } from './useAppModules';
17
17
  */
18
18
  export function useAppModule(module) {
19
19
  const appModule = useAppModules()[module];
20
+ // Fail fast when the requested module was not registered on the app scope
20
21
  if (!appModule) {
21
22
  throw Error(`the requested module [${module}] is not included in the app scope`);
22
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useAppModule.js","sourceRoot":"","sources":["../../src/useAppModule.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,YAAY,CAI1B,MAAY;IAIZ,MAAM,SAAS,GAAG,aAAa,EAAE,CAAC,MAAkC,CAAC,CAAC;IACtE,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,KAAK,CAAC,yBAAyB,MAAM,oCAAoC,CAAC,CAAC;IACnF,CAAC;IACD,OAAO,SAEwD,CAAC;AAClE,CAAC;AAED,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"useAppModule.js","sourceRoot":"","sources":["../../src/useAppModule.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,YAAY,CAI1B,MAAY;IAIZ,MAAM,SAAS,GAAG,aAAa,EAAE,CAAC,MAAkC,CAAC,CAAC;IACtE,0EAA0E;IAC1E,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,KAAK,CAAC,yBAAyB,MAAM,oCAAoC,CAAC,CAAC;IACnF,CAAC;IACD,OAAO,SAEwD,CAAC;AAClE,CAAC;AAED,eAAe,YAAY,CAAC"}
@@ -1,3 +1,3 @@
1
1
  // Generated by genversion.
2
- export const version = '12.0.1';
2
+ export const version = '12.0.3';
3
3
  //# sourceMappingURL=version.js.map