@equinor/fusion-framework-cli 10.6.1 → 10.7.0-beta-AH-test-778ecddcafac619d1bdc9be4a2c50f2f8c15cc68

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,61 @@
1
1
  # Change Log
2
2
 
3
+ ## 10.7.0-beta-AH-test-778ecddcafac619d1bdc9be4a2c50f2f8c15cc68
4
+
5
+ ### Minor Changes
6
+
7
+ - [#2930](https://github.com/equinor/fusion-framework/pull/2930) [`778ecdd`](https://github.com/equinor/fusion-framework/commit/778ecddcafac619d1bdc9be4a2c50f2f8c15cc68) Thanks [@odinr](https://github.com/odinr)! - **@equinor/fusion-framework-react:**
8
+
9
+ - Enhanced `useAppContextNavigation` to support custom context path extraction and generation. This allows for more flexible navigation handling based on application-specific requirements.
10
+
11
+ **@equinor/fusion-framework-module-context:**
12
+
13
+ - Added support for custom context path extraction and generation in `ContextConfigBuilder`, `ContextProvider`, and `ContextModuleConfigurator`.
14
+ - Introduced `setContextPathExtractor` and `setContextPathGenerator` methods in `ContextConfigBuilder` to allow developers to define custom logic for extracting and generating context paths.
15
+ - Updated `ContextProvider` to utilize `extractContextIdFromPath` and `generatePathFromContext` from the configuration, enabling dynamic path handling.
16
+ - Enhanced `ContextModuleConfigurator` to include `extractContextIdFromPath` and `generatePathFromContext` in the module configuration.
17
+
18
+ If you are using `@equinor/fusion-framework-module-context` and need custom logic for context path handling:
19
+
20
+ 1. Use `setContextPathExtractor` to define how to extract context IDs from paths.
21
+ 2. Use `setContextPathGenerator` to define how to generate paths based on context items.
22
+
23
+ Example:
24
+
25
+ ```typescript
26
+ builder.setContextPathExtractor((path) => {
27
+ // Custom logic to extract context ID from path
28
+ return path.match(/\/custom\/(.+)/)?.[1];
29
+ });
30
+
31
+ builder.setContextPathGenerator((context, path) => {
32
+ // Custom logic to generate path from context
33
+ return path.replace(/^(\/)?custom\/[^/]+(.*)$/, `/app/${item.id}$2`);
34
+ });
35
+ ```
36
+
37
+ If your portal is generating context paths based on context items, you can now define custom logic for context path handling:
38
+
39
+ ```typescript
40
+ contextProvider.currentContext$
41
+ .pipe(
42
+ map((context) => {
43
+ // Custom logic to generate path from context
44
+ const path = contextProvider.generatePathFromContext?.(
45
+ context,
46
+ location.pathname
47
+ );
48
+ return path ?? fallbackPathGenerator(context, location.pathname);
49
+ }),
50
+ filter(Boolean)
51
+ )
52
+ .subscribe((path) => history.push(path));
53
+ ```
54
+
55
+ ### Patch Changes
56
+
57
+ - pre-release changeset for tag **beta-AH-test**, all public packages are patched
58
+
3
59
  ## 10.6.1
4
60
 
5
61
  ### Patch Changes
@@ -22,6 +22,7 @@ export const useAppContextNavigation = () => {
22
22
  (_a = context === null || context === void 0 ? void 0 : context.currentContext$) !== null && _a !== void 0 ? _a : EMPTY,
23
23
  // when the context changes, navigate to the new context
24
24
  useCallback((item) => {
25
+ var _a, _b, _c, _d;
25
26
  // sanity check, if the item or navigation is undefined, early return
26
27
  if (item === undefined || navigation === undefined) {
27
28
  return;
@@ -47,12 +48,12 @@ export const useAppContextNavigation = () => {
47
48
  return;
48
49
  }
49
50
  // extract the context id from the current path
50
- const pathContextId = extractContextIdFromPath(currentPathname);
51
+ const pathContextId = (_b = (_a = context === null || context === void 0 ? void 0 : context.extractContextIdFromPath) === null || _a === void 0 ? void 0 : _a.call(context, currentPathname)) !== null && _b !== void 0 ? _b : extractContextIdFromPath(currentPathname);
51
52
  // generate path to the selected context
52
53
  const pathname = pathContextId
53
54
  ? item
54
55
  ? // context id exists in the url, replace it with the new context id
55
- currentPathname.replace(pathContextId, item.id)
56
+ ((_d = (_c = context === null || context === void 0 ? void 0 : context.generatePathFromContext) === null || _c === void 0 ? void 0 : _c.call(context, item, currentPathname)) !== null && _d !== void 0 ? _d : currentPathname.replace(pathContextId, item.id))
56
57
  : // context was cleared, set the path to the root
57
58
  '/'
58
59
  : // could not find context id in the url, set the path to the new context id
@@ -1 +1 @@
1
- {"version":3,"file":"useAppContextNavigation.js","sourceRoot":"","sources":["../../../src/bin/dev-portal/useAppContextNavigation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useAppContextNavigation.js","sourceRoot":"","sources":["../../../src/bin/dev-portal/useAppContextNavigation.ts"],"names":[],"mappings":"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"}