@equinor/fusion-framework-module-context 4.1.1 → 4.2.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # Change Log
2
2
 
3
+ ## 4.2.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#1933](https://github.com/equinor/fusion-framework/pull/1933) [`701c297`](https://github.com/equinor/fusion-framework/commit/701c29709351ff80864d26311efc72a439cd4098) Thanks [@odinr](https://github.com/odinr)! - updated method for resolving context from path, will now search all path fragments for context id by default
8
+
9
+ updated documentation of utility functions
10
+
11
+ ### Patch Changes
12
+
13
+ - [#1933](https://github.com/equinor/fusion-framework/pull/1933) [`701c297`](https://github.com/equinor/fusion-framework/commit/701c29709351ff80864d26311efc72a439cd4098) Thanks [@odinr](https://github.com/odinr)! - Export of utility function for extracting context id from path
14
+
3
15
  ## 4.1.1
4
16
 
5
17
  ### Patch Changes
@@ -1,3 +1,4 @@
1
1
  export { enableContext } from './enable-context';
2
2
  export { resolveInitialContext } from './resolve-initial-context';
3
+ export { extractContextIdFromPath, resolveContextFromPath } from './resolve-context-from-path';
3
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC"}
@@ -1,17 +1,22 @@
1
1
  import { EMPTY } from 'rxjs';
2
2
  const matchGUID = /^(?:(?:[0-9a-fA-F]){8}-(?:[0-9a-fA-F]){4}-(?:[0-9a-fA-F]){4}-(?:[0-9a-fA-F]){4}-(?:[0-9a-fA-F]){12})$/;
3
- const extractContextIdFromPath = (path) => path.replace(/^\/+/, '').split('/').shift();
3
+ export const extractContextIdFromPath = (path, matcher = matchGUID) => path
4
+ .replace(/^\/+/, '')
5
+ .split('/')
6
+ .find((x) => x.match(matcher));
4
7
  const validateContextId = (contextId) => !!contextId.match(matchGUID);
5
- export const resolveContextFromPath = (context, args) => (path) => {
6
- const { extract = extractContextIdFromPath, validate = validateContextId } = args !== null && args !== void 0 ? args : {};
7
- const contextId = extract(path);
8
- if (!contextId) {
9
- return EMPTY;
10
- }
11
- if (validate(contextId)) {
12
- return context.contextClient.resolveContext(contextId);
13
- }
14
- throw Error(`Failed to validate context [${contextId}] from path [${path}]`);
15
- };
8
+ export function resolveContextFromPath(context, args) {
9
+ return (path) => {
10
+ const { extract = extractContextIdFromPath, validate = validateContextId } = args !== null && args !== void 0 ? args : {};
11
+ const contextId = extract(path);
12
+ if (!contextId) {
13
+ return EMPTY;
14
+ }
15
+ if (validate(contextId)) {
16
+ return context.contextClient.resolveContext(contextId);
17
+ }
18
+ throw Error(`Failed to validate context [${contextId}] from path [${path}]`);
19
+ };
20
+ }
16
21
  export default resolveContextFromPath;
17
22
  //# sourceMappingURL=resolve-context-from-path.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-context-from-path.js","sourceRoot":"","sources":["../../../src/utils/resolve-context-from-path.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AAW7B,MAAM,SAAS,GACX,uGAAuG,CAAC;AAE5G,MAAM,wBAAwB,GAAG,CAAC,IAAY,EAAsB,EAAE,CAClE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC;AAEhD,MAAM,iBAAiB,GAAG,CAAC,SAAiB,EAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;AAEvF,MAAM,CAAC,MAAM,sBAAsB,GAC/B,CAAC,OAAkC,EAAE,IAA6B,EAAE,EAAE,CAAC,CAAC,IAAY,EAAE,EAAE;IACpF,MAAM,EAAE,OAAO,GAAG,wBAAwB,EAAE,QAAQ,GAAG,iBAAiB,EAAE,GAAG,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAC;IACxF,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QACtB,OAAO,OAAO,CAAC,aAAa,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,KAAK,CAAC,+BAA+B,SAAS,gBAAgB,IAAI,GAAG,CAAC,CAAC;AACjF,CAAC,CAAC;AAEN,eAAe,sBAAsB,CAAC"}
1
+ {"version":3,"file":"resolve-context-from-path.js","sourceRoot":"","sources":["../../../src/utils/resolve-context-from-path.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAc,MAAM,MAAM,CAAC;AA0BzC,MAAM,SAAS,GACX,uGAAuG,CAAC;AAiB5G,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACpC,IAAY,EACZ,UAAkB,SAAS,EACT,EAAE,CACpB,IAAI;KAEC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;KAEnB,KAAK,CAAC,GAAG,CAAC;KAEV,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AAEvC,MAAM,iBAAiB,GAAG,CAAC,SAAiB,EAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;AAoDvF,MAAM,UAAU,sBAAsB,CAClC,OAAkC,EAClC,IAA6B;IAE7B,OAAO,CAAC,IAAY,EAAE,EAAE;QACpB,MAAM,EAAE,OAAO,GAAG,wBAAwB,EAAE,QAAQ,GAAG,iBAAiB,EAAE,GAAG,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAC;QACxF,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACtB,OAAO,OAAO,CAAC,aAAa,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAC3D,CAAC;QAED,MAAM,KAAK,CAAC,+BAA+B,SAAS,gBAAgB,IAAI,GAAG,CAAC,CAAC;IACjF,CAAC,CAAC;AACN,CAAC;AAED,eAAe,sBAAsB,CAAC"}
@@ -8,9 +8,11 @@ export const resolveContextFromParent = ({ ref }) => {
8
8
  return parentContext.currentContext ? of(parentContext.currentContext) : EMPTY;
9
9
  };
10
10
  export const resolveInitialContext = (options) => ({ ref, modules }) => {
11
+ var _a, _b;
11
12
  const { context, navigation } = modules;
12
13
  const pathResolver = resolveContextFromPath(context, options === null || options === void 0 ? void 0 : options.path);
13
- return concat(navigation ? pathResolver(navigation.path.pathname) : EMPTY, resolveContextFromParent({ ref, modules })).pipe(first());
14
+ const pathname = (_a = navigation === null || navigation === void 0 ? void 0 : navigation.path.pathname) !== null && _a !== void 0 ? _a : (_b = ref.navigation) === null || _b === void 0 ? void 0 : _b.path.pathname;
15
+ return concat(pathname ? pathResolver(pathname) : EMPTY, resolveContextFromParent({ ref, modules })).pipe(first());
14
16
  };
15
17
  export default resolveInitialContext;
16
18
  //# sourceMappingURL=resolve-initial-context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-initial-context.js","sourceRoot":"","sources":["../../../src/utils/resolve-initial-context.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAEhD,OAAO,EAA0B,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAE7F,MAAM,CAAC,MAAM,wBAAwB,GAAiD,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE;IAC9F,MAAM,aAAa,GAAI,GAAwC,aAAxC,GAAG,uBAAH,GAAG,CAAuC,OAAO,CAAC;IACzE,IAAI,CAAC,aAAa,EAAE,CAAC;QACjB,MAAM,KAAK,CAAC,CAAC,8BAA8B,EAAE,+BAA+B,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9F,CAAC;IACD,OAAO,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AACnF,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAC9B,CAAC,OAEA,EAA0D,EAAE,CAC7D,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE;IACjB,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IACxC,MAAM,YAAY,GAAG,sBAAsB,CAAC,OAAO,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,CAAC,CAAC;IACpE,OAAO,MAAM,CACT,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,EAC3D,wBAAwB,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAC7C,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;AACpB,CAAC,CAAC;AAEN,eAAe,qBAAqB,CAAC"}
1
+ {"version":3,"file":"resolve-initial-context.js","sourceRoot":"","sources":["../../../src/utils/resolve-initial-context.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAEhD,OAAO,EAA+B,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AASlG,MAAM,CAAC,MAAM,wBAAwB,GAAiD,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE;IAC9F,MAAM,aAAa,GAAI,GAAwC,aAAxC,GAAG,uBAAH,GAAG,CAAuC,OAAO,CAAC;IAEzE,IAAI,CAAC,aAAa,EAAE,CAAC;QACjB,MAAM,KAAK,CAAC,CAAC,8BAA8B,EAAE,+BAA+B,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9F,CAAC;IAED,OAAO,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AACnF,CAAC,CAAC;AAUF,MAAM,CAAC,MAAM,qBAAqB,GAC9B,CAAC,OAEA,EAA0D,EAAE,CAC7D,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE;;IACjB,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IAExC,MAAM,YAAY,GAAG,sBAAsB,CAAC,OAAO,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,CAAC,CAAC;IAEpE,MAAM,QAAQ,GACV,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAI,CAAC,QAAQ,mCACzB,MAAC,GAAoD,CAAC,UAAU,0CAAE,IAAI,CAAC,QAAQ,CAAC;IAEpF,OAAO,MAAM,CACT,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,EACzC,wBAAwB,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAC7C,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;AACpB,CAAC,CAAC;AAEN,eAAe,qBAAqB,CAAC"}
@@ -1,2 +1,2 @@
1
- export const version = '4.1.1';
1
+ export const version = '4.2.0';
2
2
  //# sourceMappingURL=version.js.map