@equinor/fusion-framework-module-navigation 7.0.0-next.1 → 7.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/CHANGELOG.md +35 -8
  2. package/README.md +97 -614
  3. package/dist/esm/NavigationProvider.js +57 -23
  4. package/dist/esm/NavigationProvider.js.map +1 -1
  5. package/dist/esm/events.js +20 -3
  6. package/dist/esm/events.js.map +1 -1
  7. package/dist/esm/index.js +23 -0
  8. package/dist/esm/index.js.map +1 -1
  9. package/dist/esm/lib/BaseHistory.js +23 -6
  10. package/dist/esm/lib/BaseHistory.js.map +1 -1
  11. package/dist/esm/lib/BrowserHistoryStack.js +5 -6
  12. package/dist/esm/lib/BrowserHistoryStack.js.map +1 -1
  13. package/dist/esm/lib/MemoryHistory.js +13 -6
  14. package/dist/esm/lib/MemoryHistory.js.map +1 -1
  15. package/dist/esm/lib/MemoryStack.js +1 -0
  16. package/dist/esm/lib/MemoryStack.js.map +1 -1
  17. package/dist/esm/lib/create-history.js +7 -13
  18. package/dist/esm/lib/create-history.js.map +1 -1
  19. package/dist/esm/lib/index.js +9 -0
  20. package/dist/esm/lib/index.js.map +1 -1
  21. package/dist/esm/lib/state/history.flows.js +7 -12
  22. package/dist/esm/lib/state/history.flows.js.map +1 -1
  23. package/dist/esm/lib/state/history.reducer.js +8 -4
  24. package/dist/esm/lib/state/history.reducer.js.map +1 -1
  25. package/dist/esm/lib/state/history.state.js +9 -3
  26. package/dist/esm/lib/state/history.state.js.map +1 -1
  27. package/dist/esm/lib/utils/resolve-browser-location.js +2 -2
  28. package/dist/esm/lib/utils/resolve-browser-location.js.map +1 -1
  29. package/dist/esm/module.js +4 -4
  30. package/dist/esm/version.js +1 -1
  31. package/dist/esm/version.js.map +1 -1
  32. package/dist/tsconfig.tsbuildinfo +1 -1
  33. package/dist/types/NavigationConfigurator.interface.d.ts +25 -5
  34. package/dist/types/NavigationProvider.d.ts +57 -23
  35. package/dist/types/NavigationProvider.interface.d.ts +20 -7
  36. package/dist/types/events.d.ts +20 -3
  37. package/dist/types/index.d.ts +24 -1
  38. package/dist/types/lib/BaseHistory.d.ts +23 -6
  39. package/dist/types/lib/BrowserHistoryStack.d.ts +5 -6
  40. package/dist/types/lib/MemoryHistory.d.ts +5 -5
  41. package/dist/types/lib/create-history.d.ts +7 -13
  42. package/dist/types/lib/index.d.ts +9 -0
  43. package/dist/types/lib/state/history.flows.d.ts +6 -11
  44. package/dist/types/lib/state/history.reducer.d.ts +8 -4
  45. package/dist/types/lib/state/history.state.d.ts +9 -3
  46. package/dist/types/lib/types.d.ts +39 -8
  47. package/dist/types/version.d.ts +1 -1
  48. package/package.json +11 -12
  49. package/src/NavigationConfigurator.interface.ts +28 -5
  50. package/src/NavigationProvider.interface.ts +20 -7
  51. package/src/NavigationProvider.ts +57 -23
  52. package/src/events.ts +20 -3
  53. package/src/index.ts +25 -1
  54. package/src/lib/BaseHistory.ts +23 -6
  55. package/src/lib/BrowserHistoryStack.ts +5 -6
  56. package/src/lib/MemoryHistory.ts +13 -6
  57. package/src/lib/MemoryStack.ts +1 -0
  58. package/src/lib/create-history.ts +7 -13
  59. package/src/lib/index.ts +10 -0
  60. package/src/lib/state/history.flows.ts +7 -12
  61. package/src/lib/state/history.reducer.ts +8 -4
  62. package/src/lib/state/history.state.ts +9 -3
  63. package/src/lib/types.ts +39 -8
  64. package/src/lib/utils/resolve-browser-location.ts +2 -2
  65. package/src/module.ts +4 -4
  66. package/src/version.ts +1 -1
@@ -8,10 +8,16 @@ export const defaultFlows = [flowCreators.navigate, flowCreators.go, flowCreator
8
8
  /**
9
9
  * Creates a history store with the specified stack and reducer.
10
10
  *
11
- * @param stack - The history stack implementation
12
- * @param reducer - The reducer for history state
11
+ * Combines the reactive state container with a {@link HistoryStack} and wires
12
+ * up navigation flows for action processing.
13
+ *
14
+ * @param stack - The history stack implementation (browser, hash, or memory)
15
+ * @param reducer - The reducer that handles state transitions
13
16
  * @param options - Optional configuration options
14
- * @returns A HistoryState instance
17
+ * @param options.flows - Custom flow creators (defaults to {@link defaultFlows})
18
+ * @param options.skipBlockCheck - Skip blocker checking in flows
19
+ * @param options.validateCurrentLocation - Add location validation flow
20
+ * @returns A fully-initialized {@link HistoryState} with flows attached
15
21
  */
16
22
  export const createStore = (stack, reducer, options) => {
17
23
  // Create base state with actions and reducer, then add stack property
@@ -1 +1 @@
1
- {"version":3,"file":"history.state.js","sourceRoot":"","sources":["../../../../src/lib/state/history.state.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,GAGZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,OAAO,EAAgB,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,UAAU,EAA2B,MAAM,iBAAiB,CAAC;AAUpF;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,YAAY,CAAC,QAAQ,EAAE,YAAY,CAAC,EAAE,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;AAEvF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,KAAmB,EACnB,OAAwD,EACxD,OAIC,EACa,EAAE;IAChB,sEAAsE;IACtE,gEAAgE;IAChE,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,CAAiB,CAAC;IAEtF,4DAA4D;IAC5D,sEAAsE;IACtE,MAAM,KAAK,GAAG,IAAI,GAAG,CAAqB,OAAO,EAAE,KAAK,IAAI,YAAY,CAAC,CAAC;IAC1E,+DAA+D;IAC/D,IAAI,OAAO,EAAE,uBAAuB,EAAE,CAAC;QACrC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,uBAAuB,CAAC,CAAC;IAClD,CAAC;IAED,8CAA8C;IAC9C,4DAA4D;IAC5D,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE;QAClC,cAAc,EAAE,OAAO,EAAE,cAAc;KACxC,CAAC,CAAC;IAEH,qEAAqE;IACrE,mEAAmE;IACnE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAEnC,OAAO,KAAK,CAAC;AACf,CAAC,CAAC"}
1
+ {"version":3,"file":"history.state.js","sourceRoot":"","sources":["../../../../src/lib/state/history.state.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,GAGZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,OAAO,EAAgB,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,UAAU,EAA2B,MAAM,iBAAiB,CAAC;AAUpF;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,YAAY,CAAC,QAAQ,EAAE,YAAY,CAAC,EAAE,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;AAEvF;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,KAAmB,EACnB,OAAwD,EACxD,OAIC,EACa,EAAE;IAChB,sEAAsE;IACtE,gEAAgE;IAChE,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,CAAiB,CAAC;IAEtF,4DAA4D;IAC5D,sEAAsE;IACtE,MAAM,KAAK,GAAG,IAAI,GAAG,CAAqB,OAAO,EAAE,KAAK,IAAI,YAAY,CAAC,CAAC;IAC1E,+DAA+D;IAC/D,IAAI,OAAO,EAAE,uBAAuB,EAAE,CAAC;QACrC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,uBAAuB,CAAC,CAAC;IAClD,CAAC;IAED,8CAA8C;IAC9C,4DAA4D;IAC5D,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE;QAClC,cAAc,EAAE,OAAO,EAAE,cAAc;KACxC,CAAC,CAAC;IAEH,qEAAqE;IACrE,mEAAmE;IACnE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAEnC,OAAO,KAAK,CAAC;AACf,CAAC,CAAC"}
@@ -24,7 +24,7 @@ const resolveState = (target) => {
24
24
  export const resolveWindowLocation = (window, target) => {
25
25
  const { pathname, search, hash } = resolvePath(window.location);
26
26
  const { state, key } = resolveState(target);
27
- return { pathname, search, hash, state, key };
27
+ return { pathname, search, hash, state, key, unstable_mask: undefined };
28
28
  };
29
29
  /**
30
30
  * Resolves the current location from window.location.hash.
@@ -48,6 +48,6 @@ export const resolveHashLocation = (window, target) => {
48
48
  const location = resolveWindowLocation(window, target);
49
49
  const { pathname, search, hash } = resolvePath(location.hash?.replace('#', '') ?? '');
50
50
  const { state, key } = resolveState(target);
51
- return { pathname, search, hash, state, key };
51
+ return { pathname, search, hash, state, key, unstable_mask: undefined };
52
52
  };
53
53
  //# sourceMappingURL=resolve-browser-location.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-browser-location.js","sourceRoot":"","sources":["../../../../src/lib/utils/resolve-browser-location.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,YAAY,GAAG,CAAC,MAA2B,EAAmC,EAAE;IACpF,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,SAAS,EAAE,GAC9B,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK;QAC/B,EAGC,CAAC;IACL,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;AAC/B,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,MAAc,EAAE,MAA2B,EAAY,EAAE;IAC7F,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAChE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;AAChD,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,MAAc,EAAE,MAA2B,EAAY,EAAE;IAC3F,MAAM,QAAQ,GAAG,qBAAqB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvD,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;IACtF,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;AAChD,CAAC,CAAC"}
1
+ {"version":3,"file":"resolve-browser-location.js","sourceRoot":"","sources":["../../../../src/lib/utils/resolve-browser-location.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,YAAY,GAAG,CAAC,MAA2B,EAAmC,EAAE;IACpF,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,SAAS,EAAE,GAC9B,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK;QAC/B,EAGC,CAAC;IACL,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;AAC/B,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,MAAc,EAAE,MAA2B,EAAY,EAAE;IAC7F,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAChE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC;AAC1E,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,MAAc,EAAE,MAA2B,EAAY,EAAE;IAC3F,MAAM,QAAQ,GAAG,qBAAqB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvD,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;IACtF,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC;AAC1E,CAAC,CAAC"}
@@ -19,16 +19,16 @@ export const module = {
19
19
  version: new SemanticVersion(version),
20
20
  name: moduleKey,
21
21
  /**
22
- * Configures the navigation module.
22
+ * Creates a new {@link NavigationConfigurator} for the module.
23
23
  *
24
- * @returns A new NavigationConfigurator instance
24
+ * @returns A fresh {@link NavigationConfigurator} instance with default settings
25
25
  */
26
26
  configure: () => new NavigationConfigurator(),
27
27
  /**
28
28
  * Initializes the navigation module with validated configuration.
29
29
  *
30
- * @param init - Module initialization arguments
31
- * @returns A Promise that resolves to a new NavigationProvider instance
30
+ * @param init - Module initialization arguments containing config and refs
31
+ * @returns A promise that resolves to a configured {@link NavigationProvider}
32
32
  */
33
33
  initialize: async (init) => {
34
34
  const config = await init.config.createConfigAsync(init);
@@ -1,3 +1,3 @@
1
1
  // Generated by genversion.
2
- export const version = '7.0.0-next.1';
2
+ export const version = '7.0.0';
3
3
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAC3B,MAAM,CAAC,MAAM,OAAO,GAAG,cAAc,CAAC"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAC3B,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC"}