@equinor/fusion-framework-react 8.0.0-next.0 → 8.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 +48 -12
- package/README.md +164 -31
- package/dist/esm/Framework.js +32 -0
- package/dist/esm/Framework.js.map +1 -1
- package/dist/esm/app/index.js.map +1 -1
- package/dist/esm/app/useAppProvider.js +11 -2
- package/dist/esm/app/useAppProvider.js.map +1 -1
- package/dist/esm/app/useApps.js +17 -3
- package/dist/esm/app/useApps.js.map +1 -1
- package/dist/esm/app/useCurrentApp.js +25 -4
- package/dist/esm/app/useCurrentApp.js.map +1 -1
- package/dist/esm/app/useCurrentAppModule.js +13 -7
- package/dist/esm/app/useCurrentAppModule.js.map +1 -1
- package/dist/esm/app/useCurrentAppModules.js +14 -4
- package/dist/esm/app/useCurrentAppModules.js.map +1 -1
- package/dist/esm/context/index.js +10 -0
- package/dist/esm/context/index.js.map +1 -1
- package/dist/esm/context/useCurrentContext.js +16 -0
- package/dist/esm/context/useCurrentContext.js.map +1 -1
- package/dist/esm/context.js +9 -0
- package/dist/esm/context.js.map +1 -1
- package/dist/esm/create-framework-provider.js +29 -8
- package/dist/esm/create-framework-provider.js.map +1 -1
- package/dist/esm/feature-flag/index.js +10 -0
- package/dist/esm/feature-flag/index.js.map +1 -1
- package/dist/esm/feature-flag/useCurrentAppFeatures.js +12 -2
- package/dist/esm/feature-flag/useCurrentAppFeatures.js.map +1 -1
- package/dist/esm/feature-flag/useFeature.js +12 -5
- package/dist/esm/feature-flag/useFeature.js.map +1 -1
- package/dist/esm/feature-flag/useFeatures.js +14 -5
- package/dist/esm/feature-flag/useFeatures.js.map +1 -1
- package/dist/esm/feature-flag/useFrameworkFeature.js +12 -5
- package/dist/esm/feature-flag/useFrameworkFeature.js.map +1 -1
- package/dist/esm/feature-flag/useFrameworkFeatures.js +11 -4
- package/dist/esm/feature-flag/useFrameworkFeatures.js.map +1 -1
- package/dist/esm/hooks/index.js +8 -0
- package/dist/esm/hooks/index.js.map +1 -1
- package/dist/esm/hooks/use-current-user.js +14 -0
- package/dist/esm/hooks/use-current-user.js.map +1 -1
- package/dist/esm/hooks/use-http-client.js +13 -0
- package/dist/esm/hooks/use-http-client.js.map +1 -1
- package/dist/esm/http/index.js +10 -0
- package/dist/esm/http/index.js.map +1 -1
- package/dist/esm/index.js +8 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/useFramework.js +16 -4
- package/dist/esm/useFramework.js.map +1 -1
- package/dist/esm/useFrameworkModule.js +13 -6
- package/dist/esm/useFrameworkModule.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/Framework.d.ts +37 -0
- package/dist/types/app/index.d.ts +10 -0
- package/dist/types/app/useAppProvider.d.ts +11 -2
- package/dist/types/app/useApps.d.ts +17 -3
- package/dist/types/app/useCurrentApp.d.ts +25 -4
- package/dist/types/app/useCurrentAppModule.d.ts +13 -7
- package/dist/types/app/useCurrentAppModules.d.ts +14 -4
- package/dist/types/context/index.d.ts +10 -0
- package/dist/types/context/useCurrentContext.d.ts +16 -0
- package/dist/types/context.d.ts +0 -1
- package/dist/types/create-framework-provider.d.ts +29 -8
- package/dist/types/feature-flag/index.d.ts +10 -0
- package/dist/types/feature-flag/useCurrentAppFeatures.d.ts +12 -2
- package/dist/types/feature-flag/useFeature.d.ts +23 -6
- package/dist/types/feature-flag/useFeatures.d.ts +23 -6
- package/dist/types/feature-flag/useFrameworkFeature.d.ts +12 -5
- package/dist/types/feature-flag/useFrameworkFeatures.d.ts +11 -4
- package/dist/types/hooks/index.d.ts +8 -0
- package/dist/types/hooks/use-current-user.d.ts +14 -0
- package/dist/types/hooks/use-http-client.d.ts +15 -0
- package/dist/types/http/index.d.ts +10 -0
- package/dist/types/index.d.ts +8 -0
- package/dist/types/useFramework.d.ts +16 -4
- package/dist/types/useFrameworkModule.d.ts +13 -6
- package/dist/types/version.d.ts +1 -1
- package/package.json +15 -14
- package/src/Framework.tsx +37 -0
- package/src/app/index.ts +10 -0
- package/src/app/useAppProvider.ts +11 -2
- package/src/app/useApps.ts +17 -3
- package/src/app/useCurrentApp.ts +25 -4
- package/src/app/useCurrentAppModule.ts +13 -7
- package/src/app/useCurrentAppModules.ts +14 -4
- package/src/context/index.ts +10 -0
- package/src/context/useCurrentContext.ts +16 -0
- package/src/context.ts +9 -0
- package/src/create-framework-provider.tsx +29 -8
- package/src/feature-flag/index.ts +10 -0
- package/src/feature-flag/useCurrentAppFeatures.ts +12 -2
- package/src/feature-flag/useFeature.ts +23 -6
- package/src/feature-flag/useFeatures.ts +23 -6
- package/src/feature-flag/useFrameworkFeature.ts +12 -5
- package/src/feature-flag/useFrameworkFeatures.ts +11 -4
- package/src/hooks/index.ts +8 -0
- package/src/hooks/use-current-user.ts +14 -0
- package/src/hooks/use-http-client.ts +16 -0
- package/src/http/index.ts +10 -0
- package/src/index.tsx +8 -0
- package/src/useFramework.ts +16 -4
- package/src/useFrameworkModule.ts +13 -6
- package/src/version.ts +1 -1
package/src/useFramework.ts
CHANGED
|
@@ -4,12 +4,24 @@ import type { AnyModule } from '@equinor/fusion-framework-module';
|
|
|
4
4
|
import { useContext } from 'react';
|
|
5
5
|
import { context } from './context';
|
|
6
6
|
/**
|
|
7
|
+
* React hook that returns the current Fusion Framework instance from context.
|
|
8
|
+
*
|
|
9
|
+
* @remarks
|
|
10
|
+
* The hook first looks for a framework instance provided via
|
|
11
|
+
* {@link FrameworkProvider}. If none is found it falls back to the global
|
|
12
|
+
* `window.Fusion` object. A console warning / error is emitted when the
|
|
13
|
+
* framework cannot be resolved.
|
|
14
|
+
*
|
|
15
|
+
* @template TModules - Tuple of additional module types expected on the
|
|
16
|
+
* framework instance (used for type-narrowing only).
|
|
17
|
+
* @returns The active {@link Fusion} instance.
|
|
18
|
+
*
|
|
7
19
|
* @example
|
|
8
20
|
* ```ts
|
|
9
|
-
* const
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* }
|
|
21
|
+
* const useMyService = () => {
|
|
22
|
+
* const fusion = useFramework();
|
|
23
|
+
* return fusion.modules.http.createClient('my-service');
|
|
24
|
+
* };
|
|
13
25
|
* ```
|
|
14
26
|
*/
|
|
15
27
|
export const useFramework = <TModules extends Array<AnyModule> = []>(): Fusion<TModules> => {
|
|
@@ -8,13 +8,20 @@ import type {
|
|
|
8
8
|
} from '@equinor/fusion-framework-module';
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
|
-
*
|
|
11
|
+
* React hook that retrieves a module from the Fusion Framework by name.
|
|
12
12
|
*
|
|
13
|
-
* @template TType - The
|
|
14
|
-
* @template TKey - The
|
|
15
|
-
* @param name - The name of the module to retrieve.
|
|
16
|
-
* @returns The
|
|
17
|
-
*
|
|
13
|
+
* @template TType - The expected module type (used for type-narrowing).
|
|
14
|
+
* @template TKey - The module key string.
|
|
15
|
+
* @param name - The registered name of the module to retrieve.
|
|
16
|
+
* @returns The resolved module instance, or `undefined` if the module is
|
|
17
|
+
* not registered.
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```ts
|
|
21
|
+
* import type { HttpModule } from '@equinor/fusion-framework-module-http';
|
|
22
|
+
*
|
|
23
|
+
* const http = useFrameworkModule<HttpModule>('http');
|
|
24
|
+
* ```
|
|
18
25
|
*/
|
|
19
26
|
export const useFrameworkModule = <
|
|
20
27
|
TType extends AnyModule | unknown = unknown,
|
package/src/version.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// Generated by genversion.
|
|
2
|
-
export const version = '8.0.0
|
|
2
|
+
export const version = '8.0.0';
|