@equinor/fusion-framework-module-context 6.0.7-next.0 → 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.
- package/CHANGELOG.md +3 -6
- package/README.md +33 -0
- package/dist/esm/ContextConfigBuilder.js +70 -2
- package/dist/esm/ContextConfigBuilder.js.map +1 -1
- package/dist/esm/ContextProvider.js +201 -0
- package/dist/esm/ContextProvider.js.map +1 -1
- package/dist/esm/client/ContextClient.js +65 -1
- package/dist/esm/client/ContextClient.js.map +1 -1
- package/dist/esm/configurator.js +3 -5
- package/dist/esm/configurator.js.map +1 -1
- package/dist/esm/errors.js +12 -1
- package/dist/esm/errors.js.map +1 -1
- package/dist/esm/module.js +21 -0
- package/dist/esm/module.js.map +1 -1
- package/dist/esm/utils/enable-context.js +19 -3
- package/dist/esm/utils/enable-context.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/version.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/ContextConfigBuilder.d.ts +70 -0
- package/dist/types/ContextProvider.d.ts +347 -6
- package/dist/types/client/ContextClient.d.ts +65 -1
- package/dist/types/errors.d.ts +12 -1
- package/dist/types/module.d.ts +31 -0
- package/dist/types/types.d.ts +33 -0
- package/dist/types/utils/enable-context.d.ts +18 -2
- package/dist/types/version.d.ts +1 -1
- package/package.json +7 -7
- package/src/ContextConfigBuilder.ts +70 -4
- package/src/ContextProvider.ts +347 -8
- package/src/client/ContextClient.ts +66 -2
- package/src/configurator.ts +4 -5
- package/src/errors.ts +12 -1
- package/src/module.ts +31 -0
- package/src/types.ts +33 -0
- package/src/utils/enable-context.ts +19 -3
- package/src/version.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configurator.js","sourceRoot":"","sources":["../../src/configurator.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAS/F,OAAO,EAAE,oBAAoB,EAAqC,MAAM,wBAAwB,CAAC;AAEjG,OAAO,qBAAqB,MAAM,iCAAiC,CAAC;AAqDpE,MAAM,OAAO,yBAAyB;IACpC,iBAAiB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;IAElC,eAAe,GAAwC,EAAE,CAAC;IAE1D,gBAAgB,CAAC,IAAkC;QACjD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAES,KAAK,CAAC,mBAAmB,CACjC,IAAyE;QAEzE,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QAC1C,CAAC;
|
|
1
|
+
{"version":3,"file":"configurator.js","sourceRoot":"","sources":["../../src/configurator.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/errors.js
CHANGED
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Represents an error that occurs during a
|
|
2
|
+
* Represents an error that occurs during a Fusion context search operation.
|
|
3
|
+
*
|
|
4
|
+
* This error provides a title and an optional description to give more context
|
|
5
|
+
* about the failure. It extends the built-in `Error` class and sets the error
|
|
6
|
+
* name to `'FusionContextSearchError'`.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```typescript
|
|
10
|
+
* throw new FusionContextSearchError({ title: 'Search failed', description: 'No results found.' });
|
|
11
|
+
* ```
|
|
12
|
+
*
|
|
13
|
+
* @public
|
|
3
14
|
*/
|
|
4
15
|
export class FusionContextSearchError extends Error {
|
|
5
16
|
#details;
|
package/dist/esm/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IACjD,QAAQ,CAAC;IAET;;OAEG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;IACnC,CAAC;IAED;;;;OAIG;IACH,YACE,OASC,EACD,OAAsB;QAEtB,KAAK,CAAC,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACrD,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;IACzC,CAAC;CACF"}
|
package/dist/esm/module.js
CHANGED
|
@@ -2,6 +2,27 @@ import { catchError, EMPTY, from, Observable, switchMap, filter, Subscription }
|
|
|
2
2
|
import { ContextModuleConfigurator } from './configurator';
|
|
3
3
|
import { ContextProvider } from './ContextProvider';
|
|
4
4
|
export const moduleKey = 'context';
|
|
5
|
+
/**
|
|
6
|
+
* The `module` object implements the `ContextModule` interface and provides the configuration,
|
|
7
|
+
* initialization, and lifecycle management for the context module within the Fusion Framework.
|
|
8
|
+
*
|
|
9
|
+
* @remarks
|
|
10
|
+
* - The `configure` method returns a new `ContextModuleConfigurator` for module configuration.
|
|
11
|
+
* - The `initialize` method asynchronously creates a `ContextProvider` using the provided configuration,
|
|
12
|
+
* optional event module, and optional parent context provider. It also sets up resource disposal and
|
|
13
|
+
* post-initialization logic.
|
|
14
|
+
* - The `postInitialize` function (attached during initialization) resolves the initial context if available,
|
|
15
|
+
* sets it as the current context, and connects to the parent context provider if configured to do so.
|
|
16
|
+
* - The `dispose` function ensures proper cleanup by unsubscribing from the provider's subscription.
|
|
17
|
+
*
|
|
18
|
+
* @property {string} name - The unique key identifying the module.
|
|
19
|
+
* @method configure - Returns a new instance of `ContextModuleConfigurator` for configuring the module.
|
|
20
|
+
* @method initialize - Asynchronously initializes the context provider, sets up context resolution,
|
|
21
|
+
* and manages lifecycle hooks.
|
|
22
|
+
* @see ContextModule
|
|
23
|
+
* @see ContextModuleConfigurator
|
|
24
|
+
* @see ContextProvider
|
|
25
|
+
*/
|
|
5
26
|
export const module = {
|
|
6
27
|
name: moduleKey,
|
|
7
28
|
configure: () => new ContextModuleConfigurator(),
|
package/dist/esm/module.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module.js","sourceRoot":"","sources":["../../src/module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAQ5F,OAAO,EAAmC,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC5F,OAAO,EAAyB,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAK3E,MAAM,CAAC,MAAM,SAAS,GAAqB,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"module.js","sourceRoot":"","sources":["../../src/module.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,26 @@
|
|
|
1
1
|
import { module } from '../module';
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
4
|
-
*
|
|
3
|
+
* Enables context configuration for a given modules configurator.
|
|
4
|
+
*
|
|
5
|
+
* @param configurator - The modules configurator instance to which the context module will be added.
|
|
6
|
+
* @param builder - An optional function that receives a context configuration builder. This function can be used to further configure the context module. It can be asynchronous.
|
|
7
|
+
*
|
|
8
|
+
* @remarks
|
|
9
|
+
* This utility function adds the context module to the provided configurator and optionally applies additional configuration using the provided builder function.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* import { enableContext } from '@equinor/fusion-framework-module-context';
|
|
14
|
+
*
|
|
15
|
+
* const configure = (configurator: IModulesConfigurator<any, any>) => {
|
|
16
|
+
* enableContext(configurator, (builder) => {
|
|
17
|
+
* // configure the context module here
|
|
18
|
+
* });
|
|
19
|
+
* };
|
|
20
|
+
* ```
|
|
5
21
|
*/
|
|
6
22
|
export const enableContext = (
|
|
7
|
-
//
|
|
23
|
+
// biome-ignore lint/suspicious/noExplicitAny: must be any to support all module types
|
|
8
24
|
configurator, builder) => {
|
|
9
25
|
configurator.addConfig({
|
|
10
26
|
module,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enable-context.js","sourceRoot":"","sources":["../../../src/utils/enable-context.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC
|
|
1
|
+
{"version":3,"file":"enable-context.js","sourceRoot":"","sources":["../../../src/utils/enable-context.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;AAC3B,sFAAsF;AACtF,YAA4C,EAC5C,OAEyB,EACnB,EAAE;IACR,YAAY,CAAC,SAAS,CAAC;QACrB,MAAM;QACN,SAAS,EAAE,CAAC,mBAAmB,EAAE,EAAE;YACjC,OAAO,IAAI,mBAAmB,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC3D,CAAC;KACF,CAAC,CAAC;AACL,CAAC,CAAC"}
|
package/dist/esm/version.js
CHANGED
package/dist/esm/version.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAC3B,MAAM,CAAC,MAAM,OAAO,GAAG,
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAC3B,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC"}
|