@equinor/fusion-framework-cli 10.0.0-widget-acdcb9b2 → 10.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 +636 -39
- package/README.md +31 -9
- package/dist/bin/build-application.js +23 -3
- package/dist/bin/build-application.js.map +1 -1
- package/dist/bin/bundle-application.js +9 -12
- package/dist/bin/bundle-application.js.map +1 -1
- package/dist/bin/create-dev-serve.js +89 -123
- package/dist/bin/create-dev-serve.js.map +1 -1
- package/dist/bin/create-export-config.js +5 -6
- package/dist/bin/create-export-config.js.map +1 -1
- package/dist/bin/create-export-manifest.js +44 -27
- package/dist/bin/create-export-manifest.js.map +1 -1
- package/dist/bin/dev-portal/AppLoader.js +26 -4
- package/dist/bin/dev-portal/AppLoader.js.map +1 -1
- package/dist/bin/dev-portal/ContextSelector/ContextSelector.js +41 -0
- package/dist/bin/dev-portal/ContextSelector/ContextSelector.js.map +1 -0
- package/dist/bin/dev-portal/ContextSelector/index.js +2 -0
- package/dist/bin/dev-portal/ContextSelector/index.js.map +1 -0
- package/dist/bin/dev-portal/ContextSelector/useContextResolver.js +171 -0
- package/dist/bin/dev-portal/ContextSelector/useContextResolver.js.map +1 -0
- package/dist/bin/dev-portal/Header.js +3 -2
- package/dist/bin/dev-portal/Header.js.map +1 -1
- package/dist/bin/dev-portal/PersonSideSheet/index.js +7 -2
- package/dist/bin/dev-portal/PersonSideSheet/index.js.map +1 -1
- package/dist/bin/dev-portal/PersonSideSheet/sheets/FeatureSheetContent.js +4 -0
- package/dist/bin/dev-portal/PersonSideSheet/sheets/FeatureSheetContent.js.map +1 -1
- package/dist/bin/dev-portal/PersonSideSheet/sheets/FeatureTogglerApp.js +3 -0
- package/dist/bin/dev-portal/PersonSideSheet/sheets/FeatureTogglerApp.js.map +1 -1
- package/dist/bin/dev-portal/PersonSideSheet/sheets/FeatureTogglerPortal.js +3 -0
- package/dist/bin/dev-portal/PersonSideSheet/sheets/FeatureTogglerPortal.js.map +1 -1
- package/dist/bin/dev-portal/PersonSideSheet/sheets/LandingSheetContent.js +3 -0
- package/dist/bin/dev-portal/PersonSideSheet/sheets/LandingSheetContent.js.map +1 -1
- package/dist/bin/dev-portal/Router.js +17 -1
- package/dist/bin/dev-portal/Router.js.map +1 -1
- package/dist/bin/dev-portal/config.js +7 -4
- package/dist/bin/dev-portal/config.js.map +1 -1
- package/dist/bin/dev-portal/main.js +1 -2
- package/dist/bin/dev-portal/main.js.map +1 -1
- package/dist/bin/dev-portal/useAppContextNavigation.js +68 -0
- package/dist/bin/dev-portal/useAppContextNavigation.js.map +1 -0
- package/dist/bin/main.app.js +92 -14
- package/dist/bin/main.app.js.map +1 -1
- package/dist/bin/main.js +5 -5
- package/dist/bin/main.js.map +1 -1
- package/dist/bin/public/assets/index-D0eBBcR8.js +5235 -0
- package/dist/bin/public/index.html +1 -5
- package/dist/bin/publish-application.js +104 -0
- package/dist/bin/publish-application.js.map +1 -0
- package/dist/bin/tag-application.js +82 -0
- package/dist/bin/tag-application.js.map +1 -0
- package/dist/bin/upload-application.js +72 -0
- package/dist/bin/upload-application.js.map +1 -0
- package/dist/bin/upload-export-config.js +87 -0
- package/dist/bin/upload-export-config.js.map +1 -0
- package/dist/bin/utils/{execute-commant.js → execute-command.js} +5 -2
- package/dist/bin/utils/execute-command.js.map +1 -0
- package/dist/bin/utils/format.js +1 -1
- package/dist/bin/utils/format.js.map +1 -1
- package/dist/bin/utils/getEndpointUrl.js +49 -0
- package/dist/bin/utils/getEndpointUrl.js.map +1 -0
- package/dist/bin/utils/index.js +14 -0
- package/dist/bin/utils/index.js.map +1 -0
- package/dist/bin/utils/isAppRegistered.js +35 -0
- package/dist/bin/utils/isAppRegistered.js.map +1 -0
- package/dist/bin/utils/load-app-config.js +3 -2
- package/dist/bin/utils/load-app-config.js.map +1 -1
- package/dist/bin/utils/load-manifest.js +9 -4
- package/dist/bin/utils/load-manifest.js.map +1 -1
- package/dist/bin/utils/load-vite-config.js.map +1 -1
- package/dist/bin/utils/proxy-request-logger.js +34 -0
- package/dist/bin/utils/proxy-request-logger.js.map +1 -0
- package/dist/bin/utils/publishAppConfig.js +36 -0
- package/dist/bin/utils/publishAppConfig.js.map +1 -0
- package/dist/bin/utils/requireToken.js +10 -0
- package/dist/bin/utils/requireToken.js.map +1 -0
- package/dist/bin/utils/spinner.js +10 -0
- package/dist/bin/utils/spinner.js.map +1 -1
- package/dist/bin/utils/tagAppBundle.js +35 -0
- package/dist/bin/utils/tagAppBundle.js.map +1 -0
- package/dist/bin/utils/uploadAppBundle.js +54 -0
- package/dist/bin/utils/uploadAppBundle.js.map +1 -0
- package/dist/lib/app-config.js +5 -17
- package/dist/lib/app-config.js.map +1 -1
- package/dist/lib/app-manifest.js +97 -15
- package/dist/lib/app-manifest.js.map +1 -1
- package/dist/lib/app-package.js +52 -5
- package/dist/lib/app-package.js.map +1 -1
- package/dist/lib/index.js +2 -5
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/plugins/app-assets/app-asset-plugin.js +102 -0
- package/dist/lib/plugins/app-assets/app-asset-plugin.js.map +1 -0
- package/dist/lib/plugins/app-assets/emit-asset.js +41 -0
- package/dist/lib/plugins/app-assets/emit-asset.js.map +1 -0
- package/dist/lib/plugins/app-assets/extension-filter-pattern.js +20 -0
- package/dist/lib/plugins/app-assets/extension-filter-pattern.js.map +1 -0
- package/dist/lib/plugins/app-assets/index.js +4 -0
- package/dist/lib/plugins/app-assets/index.js.map +1 -0
- package/dist/lib/plugins/app-assets/read-asset-content.js +34 -0
- package/dist/lib/plugins/app-assets/read-asset-content.js.map +1 -0
- package/dist/lib/plugins/app-assets/resolve-asset-id.js +63 -0
- package/dist/lib/plugins/app-assets/resolve-asset-id.js.map +1 -0
- package/dist/lib/plugins/app-assets/static.js +15 -0
- package/dist/lib/plugins/app-assets/static.js.map +1 -0
- package/dist/lib/plugins/app-proxy/app-proxy-plugin.js +127 -0
- package/dist/lib/plugins/app-proxy/app-proxy-plugin.js.map +1 -0
- package/dist/lib/plugins/app-proxy/index.js +2 -0
- package/dist/lib/plugins/app-proxy/index.js.map +1 -0
- package/dist/lib/plugins/external-public/external-public-plugin.js +103 -0
- package/dist/lib/plugins/external-public/external-public-plugin.js.map +1 -0
- package/dist/lib/plugins/external-public/index.js +2 -0
- package/dist/lib/plugins/external-public/index.js.map +1 -0
- package/dist/lib/utils/assert.js +2 -1
- package/dist/lib/utils/assert.js.map +1 -1
- package/dist/lib/utils/config.js +5 -0
- package/dist/lib/utils/config.js.map +1 -1
- package/dist/lib/utils/file-exists.js.map +1 -1
- package/dist/lib/utils/ts-transpile.js.map +1 -1
- package/dist/lib/vite-config.js +7 -8
- package/dist/lib/vite-config.js.map +1 -1
- package/dist/lib/vite-logger.js +2 -0
- package/dist/lib/vite-logger.js.map +1 -1
- package/dist/schemas.js +14 -0
- package/dist/schemas.js.map +1 -0
- package/dist/types/bin/build-application.d.ts +3 -3
- package/dist/types/bin/bundle-application.d.ts +0 -1
- package/dist/types/bin/create-dev-serve.d.ts +1 -4
- package/dist/types/bin/create-export-config.d.ts +9 -3
- package/dist/types/bin/create-export-manifest.d.ts +7 -11
- package/dist/types/bin/dev-portal/AppLoader.d.ts +7 -0
- package/dist/types/bin/dev-portal/ContextSelector/ContextSelector.d.ts +8 -0
- package/dist/types/bin/dev-portal/ContextSelector/index.d.ts +1 -0
- package/dist/types/bin/dev-portal/ContextSelector/useContextResolver.d.ts +15 -0
- package/dist/types/bin/dev-portal/FusionLogo.d.ts +0 -1
- package/dist/types/bin/dev-portal/PersonSideSheet/index.d.ts +4 -0
- package/dist/types/bin/dev-portal/PersonSideSheet/sheets/FeatureSheetContent.d.ts +4 -0
- package/dist/types/bin/dev-portal/PersonSideSheet/sheets/FeatureTogglerApp.d.ts +3 -0
- package/dist/types/bin/dev-portal/PersonSideSheet/sheets/FeatureTogglerPortal.d.ts +3 -0
- package/dist/types/bin/dev-portal/PersonSideSheet/sheets/LandingSheetContent.d.ts +3 -0
- package/dist/types/bin/dev-portal/PersonSideSheet/sheets/Styled.d.ts +4 -1088
- package/dist/types/bin/dev-portal/useAppContextNavigation.d.ts +5 -0
- package/dist/types/bin/publish-application.d.ts +6 -0
- package/dist/types/bin/tag-application.d.ts +12 -0
- package/dist/types/bin/upload-application.d.ts +6 -0
- package/dist/types/bin/upload-export-config.d.ts +10 -0
- package/dist/types/bin/utils/execute-command.d.ts +8 -0
- package/dist/types/bin/utils/format.d.ts +0 -1
- package/dist/types/bin/utils/getEndpointUrl.d.ts +10 -0
- package/dist/types/bin/utils/index.d.ts +14 -0
- package/dist/types/bin/utils/isAppRegistered.d.ts +5 -0
- package/dist/types/bin/utils/load-app-config.d.ts +3 -2
- package/dist/types/bin/utils/load-manifest.d.ts +3 -2
- package/dist/types/bin/utils/proxy-request-logger.d.ts +15 -0
- package/dist/types/bin/utils/publishAppConfig.d.ts +9 -0
- package/dist/types/bin/utils/requireToken.d.ts +4 -0
- package/dist/types/bin/utils/spinner.d.ts +1 -0
- package/dist/types/bin/utils/tagAppBundle.d.ts +7 -0
- package/dist/types/bin/utils/uploadAppBundle.d.ts +7 -0
- package/dist/types/lib/app-config.d.ts +13 -14
- package/dist/types/lib/app-manifest.d.ts +30 -14
- package/dist/types/lib/app-package.d.ts +35 -4
- package/dist/types/lib/index.d.ts +2 -5
- package/dist/types/lib/plugins/app-assets/app-asset-plugin.d.ts +36 -0
- package/dist/types/lib/plugins/app-assets/emit-asset.d.ts +18 -0
- package/dist/types/lib/plugins/app-assets/extension-filter-pattern.d.ts +14 -0
- package/dist/types/lib/plugins/app-assets/index.d.ts +3 -0
- package/dist/types/lib/plugins/app-assets/read-asset-content.d.ts +14 -0
- package/dist/types/lib/plugins/app-assets/resolve-asset-id.d.ts +16 -0
- package/dist/types/lib/plugins/app-assets/static.d.ts +5 -0
- package/dist/types/lib/plugins/app-proxy/app-proxy-plugin.d.ts +71 -0
- package/dist/types/lib/plugins/app-proxy/index.d.ts +1 -0
- package/dist/types/lib/plugins/external-public/external-public-plugin.d.ts +30 -0
- package/dist/types/lib/plugins/external-public/index.d.ts +1 -0
- package/dist/types/lib/utils/assert.d.ts +2 -1
- package/dist/types/lib/utils/config.d.ts +9 -6
- package/dist/types/lib/utils/expect.d.ts +1 -1
- package/dist/types/lib/vite-config.d.ts +1 -1
- package/dist/types/schemas.d.ts +30 -0
- package/dist/types/version.d.ts +1 -1
- package/dist/version.js +2 -1
- package/dist/version.js.map +1 -1
- package/package.json +52 -42
- package/dist/bin/bundle-widget.js +0 -61
- package/dist/bin/bundle-widget.js.map +0 -1
- package/dist/bin/create-export-manifest-widget.js +0 -68
- package/dist/bin/create-export-manifest-widget.js.map +0 -1
- package/dist/bin/dev-portal/ContextSelector.js +0 -107
- package/dist/bin/dev-portal/ContextSelector.js.map +0 -1
- package/dist/bin/dev-portal/usePersonResolver.js +0 -40
- package/dist/bin/dev-portal/usePersonResolver.js.map +0 -1
- package/dist/bin/dev-proxy.js +0 -90
- package/dist/bin/dev-proxy.js.map +0 -1
- package/dist/bin/main.widget.js +0 -78
- package/dist/bin/main.widget.js.map +0 -1
- package/dist/bin/public/assets/index-UrNngCGF.js +0 -4083
- package/dist/bin/utils/execute-commant.js.map +0 -1
- package/dist/bin/utils/load-dev-proxy.js +0 -56
- package/dist/bin/utils/load-dev-proxy.js.map +0 -1
- package/dist/bin/utils/load-widget-manifest.js +0 -35
- package/dist/bin/utils/load-widget-manifest.js.map +0 -1
- package/dist/bin/utils/load-widget-package.js +0 -24
- package/dist/bin/utils/load-widget-package.js.map +0 -1
- package/dist/index.js +0 -12
- package/dist/index.js.map +0 -1
- package/dist/lib/dev-config.js +0 -9
- package/dist/lib/dev-config.js.map +0 -1
- package/dist/lib/widget-config.js +0 -57
- package/dist/lib/widget-config.js.map +0 -1
- package/dist/lib/widget-manifest.js +0 -73
- package/dist/lib/widget-manifest.js.map +0 -1
- package/dist/lib/widget-package.js +0 -33
- package/dist/lib/widget-package.js.map +0 -1
- package/dist/types/bin/bundle-widget.d.ts +0 -5
- package/dist/types/bin/create-export-manifest-widget.d.ts +0 -20
- package/dist/types/bin/dev-portal/ContextSelector.d.ts +0 -2
- package/dist/types/bin/dev-portal/usePersonResolver.d.ts +0 -1
- package/dist/types/bin/dev-proxy.d.ts +0 -39
- package/dist/types/bin/main.widget.d.ts +0 -3
- package/dist/types/bin/utils/execute-commant.d.ts +0 -8
- package/dist/types/bin/utils/load-dev-proxy.d.ts +0 -6
- package/dist/types/bin/utils/load-widget-manifest.d.ts +0 -8
- package/dist/types/bin/utils/load-widget-package.d.ts +0 -5
- package/dist/types/index.d.ts +0 -4
- package/dist/types/lib/dev-config.d.ts +0 -13
- package/dist/types/lib/widget-config.d.ts +0 -26
- package/dist/types/lib/widget-manifest.d.ts +0 -53
- package/dist/types/lib/widget-package.d.ts +0 -23
|
@@ -6,50 +6,72 @@ import { useObservableState } from '@equinor/fusion-observable/react';
|
|
|
6
6
|
import { AppManifestError } from '@equinor/fusion-framework-module-app/errors.js';
|
|
7
7
|
import { ErrorViewer } from './ErrorViewer';
|
|
8
8
|
import EquinorLoader from './EquinorLoader';
|
|
9
|
+
/**
|
|
10
|
+
* React Functional Component for handling current application
|
|
11
|
+
*
|
|
12
|
+
* this component will set the current app by provided appKey.
|
|
13
|
+
* when the appKey changes, this component will try to initialize the referred application
|
|
14
|
+
* and render it.
|
|
15
|
+
*/
|
|
9
16
|
export const AppLoader = (props) => {
|
|
10
17
|
const { appKey } = props;
|
|
11
18
|
const fusion = useFramework();
|
|
19
|
+
/** reference of application section/container */
|
|
12
20
|
const ref = useRef(null);
|
|
13
21
|
const [loading, setLoading] = useState(false);
|
|
14
22
|
const [error, setError] = useState();
|
|
23
|
+
// TODO change to `useCurrentApp`
|
|
24
|
+
/** observe and use the current selected application from framework */
|
|
15
25
|
const { value: currentApp } = useObservableState(useMemo(() => fusion.modules.app.current$, [fusion.modules.app]));
|
|
16
26
|
useEffect(() => {
|
|
27
|
+
/** when appKey property change, assign it to current */
|
|
17
28
|
fusion.modules.app.setCurrentApp(appKey);
|
|
18
29
|
}, [appKey, fusion]);
|
|
19
30
|
useEffect(() => {
|
|
31
|
+
/** flag that application is loading */
|
|
20
32
|
setLoading(true);
|
|
33
|
+
/** clear previous errors */
|
|
21
34
|
setError(undefined);
|
|
35
|
+
/** create a teardown of load */
|
|
22
36
|
const subscription = new Subscription();
|
|
37
|
+
/** make sure that initialize is canceled and disposed if current app changes */
|
|
23
38
|
subscription.add(currentApp === null || currentApp === void 0 ? void 0 : currentApp.initialize().subscribe({
|
|
24
39
|
next: ({ manifest, script, config }) => {
|
|
25
40
|
var _a, _b;
|
|
41
|
+
/** generate basename for application */
|
|
26
42
|
const [basename] = (_a = window.location.pathname.match(/\/?apps\/[a-z|-]+(\/)?/g)) !== null && _a !== void 0 ? _a : [''];
|
|
43
|
+
/** create a 'private' element for the application */
|
|
27
44
|
const el = document.createElement('div');
|
|
28
|
-
el.style.display = 'contents';
|
|
29
45
|
if (!ref.current) {
|
|
30
46
|
throw Error('Missing application mounting point');
|
|
31
47
|
}
|
|
32
48
|
ref.current.appendChild(el);
|
|
49
|
+
/** extract render callback function from javascript module */
|
|
33
50
|
const render = (_b = script.renderApp) !== null && _b !== void 0 ? _b : script.default;
|
|
51
|
+
/** add application teardown to current render effect teardown */
|
|
34
52
|
subscription.add(render(el, { fusion, env: { basename, config, manifest } }));
|
|
53
|
+
/** remove app element when application unmounts */
|
|
35
54
|
subscription.add(() => el.remove());
|
|
36
55
|
},
|
|
37
56
|
complete: () => {
|
|
57
|
+
/** flag that application is no longer loading */
|
|
38
58
|
setLoading(false);
|
|
39
59
|
},
|
|
40
60
|
error: (err) => {
|
|
61
|
+
/** set error if initialization of application fails */
|
|
41
62
|
setError(err);
|
|
42
63
|
},
|
|
43
64
|
}));
|
|
65
|
+
/** teardown application when hook unmounts */
|
|
44
66
|
return () => subscription.unsubscribe();
|
|
45
67
|
}, [fusion, currentApp, ref]);
|
|
46
68
|
if (error) {
|
|
47
69
|
if (error.cause instanceof AppManifestError) {
|
|
48
|
-
return (_jsxs("div", { children: [_jsx("h2", { children: "\uD83D\uDD25 Failed to load application manifest \uD83E\uDD2C" }), _jsx("h3", { children: error.cause.type }), _jsx(ErrorViewer, { error: error })
|
|
70
|
+
return (_jsxs("div", { children: [_jsx("h2", { children: "\uD83D\uDD25 Failed to load application manifest \uD83E\uDD2C" }), _jsx("h3", { children: error.cause.type }), _jsx(ErrorViewer, { error: error })] }));
|
|
49
71
|
}
|
|
50
|
-
return (_jsxs("div", { children: [_jsx("h2", { children: "\uD83D\uDD25 Failed to load application \uD83E\uDD2C" }), _jsx(ErrorViewer, { error: error })
|
|
72
|
+
return (_jsxs("div", { children: [_jsx("h2", { children: "\uD83D\uDD25 Failed to load application \uD83E\uDD2C" }), _jsx(ErrorViewer, { error: error })] }));
|
|
51
73
|
}
|
|
52
|
-
return (_jsx("section", { id: "application-content", ref: ref, children: loading && _jsx(EquinorLoader, { text: "Loading Application" }) }));
|
|
74
|
+
return (_jsx("section", { id: "application-content", ref: ref, style: { display: 'contents' }, children: loading && _jsx(EquinorLoader, { text: "Loading Application" }) }));
|
|
53
75
|
};
|
|
54
76
|
export default AppLoader;
|
|
55
77
|
//# sourceMappingURL=AppLoader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppLoader.js","sourceRoot":"","sources":["../../../src/bin/dev-portal/AppLoader.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE7D,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAEpC,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAEtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gDAAgD,CAAC;AAElF,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,aAAa,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"AppLoader.js","sourceRoot":"","sources":["../../../src/bin/dev-portal/AppLoader.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback, useEffect, useMemo } from 'react';
|
|
3
|
+
import { ContextProvider, ContextSearch, ContextClearEvent, } from '@equinor/fusion-react-context-selector';
|
|
4
|
+
import { useContextResolver } from './useContextResolver';
|
|
5
|
+
/**
|
|
6
|
+
* See fusion-react-component storybook for available attributes
|
|
7
|
+
* @link https://equinor.github.io/fusion-react-components/?path=/docs/data-contextselector--component
|
|
8
|
+
* @returns JSX element
|
|
9
|
+
*/
|
|
10
|
+
export const ContextSelector = (props) => {
|
|
11
|
+
var _a, _b, _c, _d;
|
|
12
|
+
const { resolver, provider, currentContext: [selectedContextItem], } = useContextResolver();
|
|
13
|
+
/** callback handler for context selector, when context is changed or cleared */
|
|
14
|
+
const onContextSelect = useCallback((e) => {
|
|
15
|
+
if (provider) {
|
|
16
|
+
if (e.type === 'select') {
|
|
17
|
+
const ev = e;
|
|
18
|
+
if (ev.nativeEvent.detail.selected.length) {
|
|
19
|
+
provider.contextClient.setCurrentContext(ev.nativeEvent.detail.selected[0].id);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
provider.clearCurrentContext();
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}, [provider]);
|
|
27
|
+
/**
|
|
28
|
+
* Clears context when ctx has been cleared outside the selector.
|
|
29
|
+
*/
|
|
30
|
+
const clearEvent = useMemo(() => new ContextClearEvent({ date: Date.now() }), []);
|
|
31
|
+
useEffect(() => {
|
|
32
|
+
if (!selectedContextItem) {
|
|
33
|
+
document.dispatchEvent(clearEvent);
|
|
34
|
+
}
|
|
35
|
+
}, [clearEvent, selectedContextItem]);
|
|
36
|
+
if (!resolver)
|
|
37
|
+
return null;
|
|
38
|
+
return (_jsx("div", { style: { flex: 1, maxWidth: '480px' }, children: _jsx(ContextProvider, { resolver: resolver, children: _jsx(ContextSearch, { id: "context-selector-cli-header", placeholder: (_a = props.placeholder) !== null && _a !== void 0 ? _a : 'Search for context', initialText: (_b = props.initialText) !== null && _b !== void 0 ? _b : 'Start typing to search', dropdownHeight: (_c = props.dropdownHeight) !== null && _c !== void 0 ? _c : '300px', variant: (_d = props.variant) !== null && _d !== void 0 ? _d : 'header', onSelect: (e) => onContextSelect(e), selectTextOnFocus: true, previewItem: selectedContextItem, onClearContext: onContextSelect }) }) }));
|
|
39
|
+
};
|
|
40
|
+
export default ContextSelector;
|
|
41
|
+
//# sourceMappingURL=ContextSelector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ContextSelector.js","sourceRoot":"","sources":["../../../../src/bin/dev-portal/ContextSelector/ContextSelector.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACxD,OAAO,EACH,eAAe,EACf,aAAa,EAGb,iBAAiB,GACpB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAyB,EAAsB,EAAE;;IAC7E,MAAM,EACF,QAAQ,EACR,QAAQ,EACR,cAAc,EAAE,CAAC,mBAAmB,CAAC,GACxC,GAAG,kBAAkB,EAAE,CAAC;IAEzB,gFAAgF;IAChF,MAAM,eAAe,GAAG,WAAW,CAC/B,CAAC,CAA6B,EAAE,EAAE;QAC9B,IAAI,QAAQ,EAAE,CAAC;YACX,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACtB,MAAM,EAAE,GAAG,CAAkC,CAAC;gBAC9C,IAAI,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;oBACxC,QAAQ,CAAC,aAAa,CAAC,iBAAiB,CACpC,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CACvC,CAAC;gBACN,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,QAAQ,CAAC,mBAAmB,EAAE,CAAC;YACnC,CAAC;QACL,CAAC;IACL,CAAC,EACD,CAAC,QAAQ,CAAC,CACb,CAAC;IAEF;;OAEG;IACH,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,iBAAiB,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAClF,SAAS,CAAC,GAAG,EAAE;QACX,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACvB,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACvC,CAAC;IACL,CAAC,EAAE,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAEtC,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAE3B,OAAO,CACH,cAAK,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,YACtC,KAAC,eAAe,IAAC,QAAQ,EAAE,QAAQ,YAC/B,KAAC,aAAa,IACV,EAAE,EAAC,6BAA6B,EAChC,WAAW,EAAE,MAAA,KAAK,CAAC,WAAW,mCAAI,oBAAoB,EACtD,WAAW,EAAE,MAAA,KAAK,CAAC,WAAW,mCAAI,wBAAwB,EAC1D,cAAc,EAAE,MAAA,KAAK,CAAC,cAAc,mCAAI,OAAO,EAC/C,OAAO,EAAE,MAAA,KAAK,CAAC,OAAO,mCAAI,QAAQ,EAClC,QAAQ,EAAE,CAAC,CAAqB,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,EACvD,iBAAiB,EAAE,IAAI,EACvB,WAAW,EAAE,mBAAmB,EAChC,cAAc,EAAE,eAAe,GACjC,GACY,GAChB,CACT,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/bin/dev-portal/ContextSelector/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import { useCallback, useEffect, useMemo, useState } from 'react';
|
|
11
|
+
import { useFramework } from '@equinor/fusion-framework-react';
|
|
12
|
+
import { useCurrentApp } from '@equinor/fusion-framework-react/app';
|
|
13
|
+
import { useObservableState, useObservableSubscription } from '@equinor/fusion-observable/react';
|
|
14
|
+
import '@equinor/fusion-framework-app';
|
|
15
|
+
import { ChipElement } from '@equinor/fusion-wc-chip';
|
|
16
|
+
ChipElement;
|
|
17
|
+
import { EMPTY, catchError, lastValueFrom, map, of } from 'rxjs';
|
|
18
|
+
function capitalizeFirstLetter(string) {
|
|
19
|
+
return string.charAt(0).toUpperCase() + string.slice(1).toLowerCase();
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Map context query result to ContextSelectorResult.
|
|
23
|
+
* Add any icons to selected types by using the 'graphic' property
|
|
24
|
+
* @param src context query result
|
|
25
|
+
* @returns src mapped to ContextResult type
|
|
26
|
+
*/
|
|
27
|
+
const mapper = (src) => {
|
|
28
|
+
return src.map((i) => {
|
|
29
|
+
var _a;
|
|
30
|
+
const baseResult = {
|
|
31
|
+
id: i.id,
|
|
32
|
+
title: i.title,
|
|
33
|
+
subTitle: (_a = i.subTitle) !== null && _a !== void 0 ? _a : i.type.id,
|
|
34
|
+
graphic: i.graphic,
|
|
35
|
+
meta: i.meta,
|
|
36
|
+
};
|
|
37
|
+
switch (i.type.id) {
|
|
38
|
+
case 'EquinorTask':
|
|
39
|
+
return Object.assign(Object.assign({}, baseResult), { meta: i.value.taskState && i.value.taskState !== 'Active'
|
|
40
|
+
? `<fwc-chip disabled variant="outlined" value="${i.value.taskState}" />`
|
|
41
|
+
: '' });
|
|
42
|
+
case 'OrgChart':
|
|
43
|
+
return Object.assign(Object.assign({}, baseResult), { graphic: 'list', meta: i.value.state && i.value.state.toLowerCase() !== 'active'
|
|
44
|
+
? `<fwc-chip disabled variant="outlined" value="${capitalizeFirstLetter(i.value.state)}" />`
|
|
45
|
+
: '' });
|
|
46
|
+
default:
|
|
47
|
+
return baseResult;
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* Create a single ContextResultItem
|
|
53
|
+
* @param props pops for the item to merge with defaults
|
|
54
|
+
* @returns ContextResultItem
|
|
55
|
+
*/
|
|
56
|
+
const singleItem = (props) => {
|
|
57
|
+
return Object.assign({ id: 'no-such-item', title: 'Change me' }, props);
|
|
58
|
+
};
|
|
59
|
+
/**
|
|
60
|
+
* Hook for querying context and setting resolver for ContextSelector component
|
|
61
|
+
* See React Components storybook for info about ContextSelector component and its resolver
|
|
62
|
+
* @link https://equinor.github.io/fusion-react-components/?path=/docs/data-contextselector--component
|
|
63
|
+
* @return Array<ContextResolver, SetContextCallback>
|
|
64
|
+
*/
|
|
65
|
+
export const useContextResolver = () => {
|
|
66
|
+
/* Framework modules */
|
|
67
|
+
const framework = useFramework();
|
|
68
|
+
const { currentApp } = useCurrentApp();
|
|
69
|
+
/** App module collection instance */
|
|
70
|
+
const instance$ = useMemo(() => (currentApp === null || currentApp === void 0 ? void 0 : currentApp.instance$) || EMPTY, [currentApp]);
|
|
71
|
+
/* context provider state */
|
|
72
|
+
const [provider, setProvider] = useState(null);
|
|
73
|
+
/* Current context observable */
|
|
74
|
+
const { value: currentContext } = useObservableState(useMemo(() => (provider === null || provider === void 0 ? void 0 : provider.currentContext$) || EMPTY, [provider]));
|
|
75
|
+
const preselected = useMemo(() => {
|
|
76
|
+
return currentContext ? mapper([currentContext]) : [];
|
|
77
|
+
}, [currentContext]);
|
|
78
|
+
/** callback function when current app instance changes */
|
|
79
|
+
const onContextProviderChange = useCallback((modules) => {
|
|
80
|
+
/** try to get the context module from the app module instance */
|
|
81
|
+
const contextProvider = modules.context;
|
|
82
|
+
if (contextProvider) {
|
|
83
|
+
setProvider(contextProvider);
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
setProvider(null);
|
|
87
|
+
}
|
|
88
|
+
}, [setProvider]);
|
|
89
|
+
/** clear the app provider */
|
|
90
|
+
const clearContextProvider = useCallback(() => {
|
|
91
|
+
setProvider(null);
|
|
92
|
+
}, [setProvider]);
|
|
93
|
+
/** observe changes to app modules and clear / set the context provider on change */
|
|
94
|
+
useObservableSubscription(instance$, onContextProviderChange, clearContextProvider);
|
|
95
|
+
useEffect(() => framework.modules.event.addEventListener('onReactAppLoaded', (e) => {
|
|
96
|
+
console.debug('useContextResolver::onReactAppLoaded', 'using legacy register hack method');
|
|
97
|
+
return onContextProviderChange(e.detail.modules);
|
|
98
|
+
}), [framework, onContextProviderChange]);
|
|
99
|
+
const processError = useCallback((err) => {
|
|
100
|
+
if (err.name === 'QueryClientError') {
|
|
101
|
+
return processError(err.cause);
|
|
102
|
+
}
|
|
103
|
+
if (err.name === 'FusionContextSearchError') {
|
|
104
|
+
const error = err;
|
|
105
|
+
return [
|
|
106
|
+
singleItem({
|
|
107
|
+
id: error.name,
|
|
108
|
+
title: error.title,
|
|
109
|
+
subTitle: error.description,
|
|
110
|
+
graphic: 'error_outlined',
|
|
111
|
+
isDisabled: true,
|
|
112
|
+
}),
|
|
113
|
+
];
|
|
114
|
+
}
|
|
115
|
+
return [
|
|
116
|
+
singleItem({
|
|
117
|
+
title: 'Unexpected error occurred',
|
|
118
|
+
subTitle: 'Please try again or report the issue in Services@Equinor',
|
|
119
|
+
graphic: 'error_outlined',
|
|
120
|
+
isDisabled: true,
|
|
121
|
+
}),
|
|
122
|
+
];
|
|
123
|
+
}, []);
|
|
124
|
+
/**
|
|
125
|
+
* set resolver for ContextSelector
|
|
126
|
+
* @return ContextResolver
|
|
127
|
+
*/
|
|
128
|
+
const minLength = 2;
|
|
129
|
+
const resolver = useMemo(() => provider && {
|
|
130
|
+
searchQuery: (search) => __awaiter(void 0, void 0, void 0, function* () {
|
|
131
|
+
if (search.length < minLength) {
|
|
132
|
+
return [
|
|
133
|
+
singleItem({
|
|
134
|
+
// TODO - make as enum if used for checks, or type
|
|
135
|
+
id: 'min-length',
|
|
136
|
+
title: `Type ${minLength - search.length} more chars to search`,
|
|
137
|
+
isDisabled: true,
|
|
138
|
+
}),
|
|
139
|
+
];
|
|
140
|
+
}
|
|
141
|
+
try {
|
|
142
|
+
return lastValueFrom(provider.queryContext(search).pipe(map(mapper), map((x) => x.length
|
|
143
|
+
? x
|
|
144
|
+
: [
|
|
145
|
+
singleItem({
|
|
146
|
+
// TODO - make as enum if used for checks, or type
|
|
147
|
+
id: 'no-results',
|
|
148
|
+
title: 'No results found',
|
|
149
|
+
graphic: 'info_circle',
|
|
150
|
+
isDisabled: true,
|
|
151
|
+
}),
|
|
152
|
+
]),
|
|
153
|
+
/** handle failures */
|
|
154
|
+
catchError((err) => {
|
|
155
|
+
console.error('PORTAL::ContextResolver', `failed to resolve context for query ${search}`, err, err.cause);
|
|
156
|
+
return of(processError(err));
|
|
157
|
+
})));
|
|
158
|
+
/** this should NEVER happen! */
|
|
159
|
+
}
|
|
160
|
+
catch (e) {
|
|
161
|
+
const err = e;
|
|
162
|
+
console.error('PORTAL::ContextResolver', `unhandled error for [${search}]`, e);
|
|
163
|
+
return processError(err);
|
|
164
|
+
}
|
|
165
|
+
}),
|
|
166
|
+
initialResult: preselected,
|
|
167
|
+
}, [provider, preselected, processError]);
|
|
168
|
+
return { resolver, provider, currentContext: preselected };
|
|
169
|
+
};
|
|
170
|
+
export default useContextResolver;
|
|
171
|
+
//# sourceMappingURL=useContextResolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useContextResolver.js","sourceRoot":"","sources":["../../../../src/bin/dev-portal/ContextSelector/useContextResolver.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAQpE,OAAO,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AACjG,OAAO,+BAA+B,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,WAAW,CAAC;AAEZ,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAWjE,SAAS,qBAAqB,CAAC,MAAc;IACzC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;AAC1E,CAAC;AAED;;;;;GAKG;AACH,MAAM,MAAM,GAAG,CAAC,GAAuB,EAAiB,EAAE;IACtD,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;;QACjB,MAAM,UAAU,GAAG;YACf,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,QAAQ,EAAE,MAAA,CAAC,CAAC,QAAQ,mCAAI,CAAC,CAAC,IAAI,CAAC,EAAE;YACjC,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,IAAI,EAAE,CAAC,CAAC,IAAI;SACf,CAAC;QAEF,QAAQ,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YAChB,KAAK,aAAa;gBACd,uCACO,UAAU,KACb,IAAI,EACA,CAAC,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC,SAAS,KAAK,QAAQ;wBAC/C,CAAC,CAAC,gDAAgD,CAAC,CAAC,KAAK,CAAC,SAAS,MAAM;wBACzE,CAAC,CAAC,EAAE,IACd;YACN,KAAK,UAAU;gBACX,uCACO,UAAU,KACb,OAAO,EAAE,MAAM,EACf,IAAI,EACA,CAAC,CAAC,KAAK,CAAC,KAAK,IAAK,CAAC,CAAC,KAAK,CAAC,KAAgB,CAAC,WAAW,EAAE,KAAK,QAAQ;wBACjE,CAAC,CAAC,gDAAgD,qBAAqB,CAAC,CAAC,CAAC,KAAK,CAAC,KAAe,CAAC,MAAM;wBACtG,CAAC,CAAC,EAAE,IACd;YACN;gBACI,OAAO,UAAU,CAAC;QAC1B,CAAC;IACL,CAAC,CAAC,CAAC;AACP,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,GAAG,CAAC,KAAiC,EAAqB,EAAE;IACxE,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,KAAK,CAAC,CAAC;AAC5E,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAIhC,EAAE;IACA,uBAAuB;IACvB,MAAM,SAAS,GAAG,YAAY,EAAiC,CAAC;IAEhE,MAAM,EAAE,UAAU,EAAE,GAAG,aAAa,EAAE,CAAC;IAEvC,qCAAqC;IACrC,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,SAAS,KAAI,KAAK,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAE9E,4BAA4B;IAC5B,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAA0B,IAAI,CAAC,CAAC;IAExE,gCAAgC;IAChC,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,kBAAkB,CAChD,OAAO,CAAC,GAAG,EAAE,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,eAAe,KAAI,KAAK,EAAE,CAAC,QAAQ,CAAC,CAAC,CAChE,CAAC;IAEF,MAAM,WAAW,GAAkB,OAAO,CAAC,GAAG,EAAE;QAC5C,OAAO,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1D,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IAErB,0DAA0D;IAC1D,MAAM,uBAAuB,GAAG,WAAW,CACvC,CAAC,OAA2B,EAAE,EAAE;QAC5B,iEAAiE;QACjE,MAAM,eAAe,GAAI,OAA+C,CAAC,OAAO,CAAC;QACjF,IAAI,eAAe,EAAE,CAAC;YAClB,WAAW,CAAC,eAAe,CAAC,CAAC;QACjC,CAAC;aAAM,CAAC;YACJ,WAAW,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC;IACL,CAAC,EACD,CAAC,WAAW,CAAC,CAChB,CAAC;IAEF,6BAA6B;IAC7B,MAAM,oBAAoB,GAAG,WAAW,CAAC,GAAG,EAAE;QAC1C,WAAW,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,qFAAqF;IACrF,yBAAyB,CAAC,SAAS,EAAE,uBAAuB,EAAE,oBAAoB,CAAC,CAAC;IACpF,SAAS,CACL,GAAG,EAAE,CACD,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,CAAC,CAAC,EAAE,EAAE;QAC/D,OAAO,CAAC,KAAK,CACT,sCAAsC,EACtC,mCAAmC,CACtC,CAAC;QACF,OAAO,uBAAuB,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACrD,CAAC,CAAC,EACN,CAAC,SAAS,EAAE,uBAAuB,CAAC,CACvC,CAAC;IAEF,MAAM,YAAY,GAAG,WAAW,CAAC,CAAC,GAAU,EAAiB,EAAE;QAC3D,IAAI,GAAG,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;YAClC,OAAO,YAAY,CAAE,GAAwB,CAAC,KAAc,CAAC,CAAC;QAClE,CAAC;QAED,IAAI,GAAG,CAAC,IAAI,KAAK,0BAA0B,EAAE,CAAC;YAC1C,MAAM,KAAK,GAAG,GAA+B,CAAC;YAC9C,OAAO;gBACH,UAAU,CAAC;oBACP,EAAE,EAAE,KAAK,CAAC,IAAI;oBACd,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,QAAQ,EAAE,KAAK,CAAC,WAAW;oBAC3B,OAAO,EAAE,gBAAgB;oBACzB,UAAU,EAAE,IAAI;iBACnB,CAAC;aACL,CAAC;QACN,CAAC;QAED,OAAO;YACH,UAAU,CAAC;gBACP,KAAK,EAAE,2BAA2B;gBAClC,QAAQ,EAAE,0DAA0D;gBACpE,OAAO,EAAE,gBAAgB;gBACzB,UAAU,EAAE,IAAI;aACnB,CAAC;SACL,CAAC;IACN,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP;;;OAGG;IACH,MAAM,SAAS,GAAG,CAAC,CAAC;IACpB,MAAM,QAAQ,GAAG,OAAO,CACpB,GAA2B,EAAE,CACzB,QAAQ,IAAI;QACR,WAAW,EAAE,CAAO,MAAc,EAA0B,EAAE;YAC1D,IAAI,MAAM,CAAC,MAAM,GAAG,SAAS,EAAE,CAAC;gBAC5B,OAAO;oBACH,UAAU,CAAC;wBACP,kDAAkD;wBAClD,EAAE,EAAE,YAAY;wBAChB,KAAK,EAAE,QAAQ,SAAS,GAAG,MAAM,CAAC,MAAM,uBAAuB;wBAC/D,UAAU,EAAE,IAAI;qBACnB,CAAC;iBACL,CAAC;YACN,CAAC;YACD,IAAI,CAAC;gBACD,OAAO,aAAa,CAChB,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,CAC9B,GAAG,CAAC,MAAM,CAAC,EACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACN,CAAC,CAAC,MAAM;oBACJ,CAAC,CAAC,CAAC;oBACH,CAAC,CAAC;wBACI,UAAU,CAAC;4BACP,kDAAkD;4BAClD,EAAE,EAAE,YAAY;4BAChB,KAAK,EAAE,kBAAkB;4BACzB,OAAO,EAAE,aAAa;4BACtB,UAAU,EAAE,IAAI;yBACnB,CAAC;qBACL,CACV;gBACD,sBAAsB;gBACtB,UAAU,CAAC,CAAC,GAAG,EAAE,EAAE;oBACf,OAAO,CAAC,KAAK,CACT,yBAAyB,EACzB,uCAAuC,MAAM,EAAE,EAC/C,GAAG,EACH,GAAG,CAAC,KAAK,CACZ,CAAC;oBAEF,OAAO,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;gBACjC,CAAC,CAAC,CACL,CACJ,CAAC;gBACF,gCAAgC;YACpC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,MAAM,GAAG,GAAG,CAAU,CAAC;gBACvB,OAAO,CAAC,KAAK,CACT,yBAAyB,EACzB,wBAAwB,MAAM,GAAG,EACjC,CAAC,CACJ,CAAC;gBACF,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC;YAC7B,CAAC;QACL,CAAC,CAAA;QACD,aAAa,EAAE,WAAW;KAC7B,EACL,CAAC,QAAQ,EAAE,WAAW,EAAE,YAAY,CAAC,CACxC,CAAC;IACF,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC;AAC/D,CAAC,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
|
|
@@ -2,6 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
|
|
|
2
2
|
import { useState } from 'react';
|
|
3
3
|
import { ContextSelector } from './ContextSelector';
|
|
4
4
|
import { FusionLogo } from './FusionLogo';
|
|
5
|
+
/* typescript reference for makeStyles */
|
|
5
6
|
import '@material-ui/styles';
|
|
6
7
|
import { BookmarkSideSheet } from './BookMarkSideSheet';
|
|
7
8
|
import { Button, Icon, TopBar } from '@equinor/eds-core-react';
|
|
@@ -10,7 +11,7 @@ import { useCurrentUser } from '@equinor/fusion-framework-react/hooks';
|
|
|
10
11
|
import { add, menu, tag } from '@equinor/eds-icons';
|
|
11
12
|
import { styled } from 'styled-components';
|
|
12
13
|
import { PersonSideSheet } from './PersonSideSheet';
|
|
13
|
-
import
|
|
14
|
+
import PersonAvatarElement from '@equinor/fusion-wc-person/avatar';
|
|
14
15
|
PersonAvatarElement;
|
|
15
16
|
Icon.add({ menu, add, tag });
|
|
16
17
|
const Styled = {
|
|
@@ -30,7 +31,7 @@ export const Header = () => {
|
|
|
30
31
|
function toggleBookmark() {
|
|
31
32
|
setIsBookmarkOpen((s) => !s);
|
|
32
33
|
}
|
|
33
|
-
return (_jsxs(_Fragment, { children: [_jsxs(TopBar, { id: "cli-top-bar", sticky: false, style: { padding: 0, height: 48 }, children: [_jsx(TopBar.Header, { children: _jsxs(Styled.Title, { children: [_jsx(FusionLogo, {}), _jsx("span", { children: "Fusion Framework CLI" })] }) }), _jsx(TopBar.CustomContent, { children: _jsx(ContextSelector, {}) }), _jsxs(TopBar.Actions, { style: { minWidth: 48, minHeight: 48 }, children: [_jsx(Button, { onClick: toggleBookmark, variant: "ghost_icon", children: _jsx(Icon, { name: "tag" }) }), _jsx(Button, { onClick: () => setIsPersonSheetOpen(!isPersonSheetOpen), variant: "ghost_icon", children: _jsx("fwc-person-avatar", { azureId: azureId, clickable: false
|
|
34
|
+
return (_jsxs(_Fragment, { children: [_jsxs(TopBar, { id: "cli-top-bar", sticky: false, style: { padding: '0 1em', height: 48 }, children: [_jsx(TopBar.Header, { children: _jsxs(Styled.Title, { children: [_jsx(FusionLogo, {}), _jsx("span", { children: "Fusion Framework CLI" })] }) }), _jsx(TopBar.CustomContent, { children: _jsx(ContextSelector, {}) }), _jsxs(TopBar.Actions, { style: { minWidth: 48, minHeight: 48 }, children: [_jsx(Button, { onClick: toggleBookmark, variant: "ghost_icon", children: _jsx(Icon, { name: "tag" }) }), _jsx(Button, { onClick: () => setIsPersonSheetOpen(!isPersonSheetOpen), variant: "ghost_icon", children: _jsx("fwc-person-avatar", { size: "small", azureId: azureId, clickable: false }) })] })] }), _jsx(BookmarkProvider, { children: _jsx(BookmarkSideSheet, { isOpen: isBookmarkOpen, onClose: toggleBookmark }) }), _jsx(PersonSideSheet, { azureId: azureId, isOpen: isPersonSheetOpen, onClose: () => setIsPersonSheetOpen(!isPersonSheetOpen) })] }));
|
|
34
35
|
};
|
|
35
36
|
export default Header;
|
|
36
37
|
//# sourceMappingURL=Header.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Header.js","sourceRoot":"","sources":["../../../src/bin/dev-portal/Header.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"Header.js","sourceRoot":"","sources":["../../../src/bin/dev-portal/Header.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useCallback, useMemo, useState } from 'react';
|
|
3
3
|
import { SideSheet } from '@equinor/fusion-react-side-sheet';
|
|
4
|
-
import
|
|
4
|
+
import PersonListItem from '@equinor/fusion-wc-person/list-item';
|
|
5
|
+
PersonListItem;
|
|
5
6
|
import { Divider } from '@equinor/eds-core-react';
|
|
6
7
|
import { LandingSheetContent, FeatureSheetContent } from './sheets';
|
|
8
|
+
/**
|
|
9
|
+
* Add Sidesheet with settings for the current user.
|
|
10
|
+
* @param PersonSideSheetProps
|
|
11
|
+
*/
|
|
7
12
|
export const PersonSideSheet = ({ azureId, isOpen, onClose }) => {
|
|
8
13
|
const [currentSheet, setCurrentSheet] = useState('landing');
|
|
9
14
|
const Component = useMemo(() => {
|
|
@@ -21,7 +26,7 @@ export const PersonSideSheet = ({ azureId, isOpen, onClose }) => {
|
|
|
21
26
|
const navigateCallback = useCallback((sheet) => {
|
|
22
27
|
setCurrentSheet(sheet !== null && sheet !== void 0 ? sheet : 'default');
|
|
23
28
|
}, [setCurrentSheet]);
|
|
24
|
-
return (_jsxs(SideSheet, { isOpen: isOpen, onClose: onClose, isDismissable: true, children: [_jsx(SideSheet.Title, { title: "User settings" }), _jsx(SideSheet.SubTitle, { subTitle: 'Settings for your user in Fusion portal' }), _jsx(SideSheet.Actions, {}), _jsx(SideSheet.Content, { children: _jsxs("section", { style: { paddingLeft: '0.5em' }, children: [_jsx("div", { children: _jsx(
|
|
29
|
+
return (_jsxs(SideSheet, { isOpen: isOpen, onClose: onClose, isDismissable: true, children: [_jsx(SideSheet.Title, { title: "User settings" }), _jsx(SideSheet.SubTitle, { subTitle: 'Settings for your user in Fusion portal' }), _jsx(SideSheet.Actions, {}), _jsx(SideSheet.Content, { children: _jsxs("section", { style: { paddingLeft: '0.5em' }, children: [_jsx("div", { children: _jsx("fwc-person-list-item", { azureId: azureId }) }), _jsx(Divider, {}), _jsx(Component, { azureId: azureId, sheet: currentSheet, navigate: navigateCallback })] }) })] }));
|
|
25
30
|
};
|
|
26
31
|
export default PersonSideSheet;
|
|
27
32
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/bin/dev-portal/PersonSideSheet/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAC7D,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/bin/dev-portal/PersonSideSheet/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAC7D,OAAO,cAAc,MAAM,qCAAqC,CAAC;AACjE,cAAc,CAAC;AAEf,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAElD,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAQpE;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAwB,EAAE,EAAE;IAClF,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAS,SAAS,CAAC,CAAC;IAEpE,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE;QAC3B,IAAI,IAAI,CAAC;QACT,QAAQ,YAAY,EAAE,CAAC;YACnB,KAAK,UAAU;gBACX,IAAI,GAAG,mBAAmB,CAAC;gBAC3B,MAAM;YACV;gBACI,IAAI,GAAG,mBAAmB,CAAC;gBAC3B,MAAM;QACd,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,MAAM,gBAAgB,GAAG,WAAW,CAChC,CAAC,KAAa,EAAE,EAAE;QACd,eAAe,CAAC,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,SAAS,CAAC,CAAC;IACxC,CAAC,EACD,CAAC,eAAe,CAAC,CACpB,CAAC;IAEF,OAAO,CACH,MAAC,SAAS,IAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,aAC5D,KAAC,SAAS,CAAC,KAAK,IAAC,KAAK,EAAC,eAAe,GAAG,EACzC,KAAC,SAAS,CAAC,QAAQ,IAAC,QAAQ,EAAE,yCAAyC,GAAI,EAC3E,KAAC,SAAS,CAAC,OAAO,KAAqB,EACvC,KAAC,SAAS,CAAC,OAAO,cACd,mBAAS,KAAK,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,aACpC,wBACI,+BAAsB,OAAO,EAAE,OAAO,GAAyB,GAC7D,EACN,KAAC,OAAO,KAAW,EACnB,KAAC,SAAS,IACN,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,gBAAgB,GACjB,IACP,GACM,IACZ,CACf,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -5,6 +5,10 @@ import { FeatureTogglerPortal } from './FeatureTogglerPortal';
|
|
|
5
5
|
import { Divider, Icon, Button, Tabs } from '@equinor/eds-core-react';
|
|
6
6
|
import { arrow_back, category } from '@equinor/eds-icons';
|
|
7
7
|
Icon.add({ arrow_back, category });
|
|
8
|
+
/**
|
|
9
|
+
* JSX structure for the content of the PersonSidesheet's Features page.
|
|
10
|
+
* @param SheetContentProps
|
|
11
|
+
*/
|
|
8
12
|
export const FeatureSheetContent = ({ navigate }) => {
|
|
9
13
|
const [tab, setTab] = useState(0);
|
|
10
14
|
return (_jsxs("section", { children: [_jsx("div", { children: _jsx("div", { children: _jsxs(Button, { variant: "ghost", onClick: () => navigate(), children: [_jsx(Icon, { name: "arrow_back" }), _jsx(Icon, { name: "category" }), "My Features"] }) }) }), _jsx(Divider, {}), _jsx("div", { children: _jsxs(Tabs, { activeTab: tab, onChange: (index) => setTab(index), children: [_jsxs(Tabs.List, { children: [_jsx(Tabs.Tab, { children: "App features" }), _jsx(Tabs.Tab, { children: "Portal features" })] }), _jsxs(Tabs.Panels, { children: [_jsx(Tabs.Panel, { children: _jsx(FeatureTogglerApp, {}) }), _jsx(Tabs.Panel, { children: _jsx(FeatureTogglerPortal, {}) })] })] }) })] }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeatureSheetContent.js","sourceRoot":"","sources":["../../../../../src/bin/dev-portal/PersonSideSheet/sheets/FeatureSheetContent.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC1D,IAAI,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"FeatureSheetContent.js","sourceRoot":"","sources":["../../../../../src/bin/dev-portal/PersonSideSheet/sheets/FeatureSheetContent.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC1D,IAAI,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC;AAInC;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EAAE,QAAQ,EAAqB,EAAE,EAAE;IACnE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAS,CAAC,CAAC,CAAC;IAE1C,OAAO,CACH,8BACI,wBACI,wBACI,MAAC,MAAM,IAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE,aAC7C,KAAC,IAAI,IAAC,IAAI,EAAC,YAAY,GAAQ,EAC/B,KAAC,IAAI,IAAC,IAAI,EAAC,UAAU,GAAQ,mBAExB,GACP,GACJ,EACN,KAAC,OAAO,KAAW,EACnB,wBACI,MAAC,IAAI,IAAC,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,aACpD,MAAC,IAAI,CAAC,IAAI,eACN,KAAC,IAAI,CAAC,GAAG,+BAAwB,EACjC,KAAC,IAAI,CAAC,GAAG,kCAA2B,IAC5B,EACZ,MAAC,IAAI,CAAC,MAAM,eACR,KAAC,IAAI,CAAC,KAAK,cACP,KAAC,iBAAiB,KAAG,GACZ,EACb,KAAC,IAAI,CAAC,KAAK,cACP,KAAC,oBAAoB,KAAG,GACf,IACH,IACX,GACL,IACA,CACb,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -2,6 +2,9 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { useCurrentAppFeatures } from '@equinor/fusion-framework-react/feature-flag';
|
|
3
3
|
import { Typography, Switch } from '@equinor/eds-core-react';
|
|
4
4
|
import { Styled } from './Styled';
|
|
5
|
+
/**
|
|
6
|
+
* JSX structure for Feature toggler tab for app features in the PersonSidesheet's Feature page.
|
|
7
|
+
*/
|
|
5
8
|
export const FeatureTogglerApp = () => {
|
|
6
9
|
const { features, toggleFeature } = useCurrentAppFeatures();
|
|
7
10
|
return (_jsx(Styled.SwitchList, { children: features === null || features === void 0 ? void 0 : features.map((feature) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeatureTogglerApp.js","sourceRoot":"","sources":["../../../../../src/bin/dev-portal/PersonSideSheet/sheets/FeatureTogglerApp.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AAErF,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAE7D,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"FeatureTogglerApp.js","sourceRoot":"","sources":["../../../../../src/bin/dev-portal/PersonSideSheet/sheets/FeatureTogglerApp.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AAErF,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAE7D,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,EAAE;IAClC,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC5D,OAAO,CACH,KAAC,MAAM,CAAC,UAAU,cACb,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;;YACvB,OAAO,CACH,MAAC,MAAM,CAAC,cAAc,IAElB,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,aAEzC,MAAC,MAAM,CAAC,WAAW,eACf,KAAC,UAAU,IAAC,OAAO,EAAC,iBAAiB,YAChC,MAAA,OAAO,CAAC,KAAK,mCAAI,OAAO,CAAC,GAAG,GACpB,EACZ,OAAO,CAAC,WAAW,IAAI,CACpB,KAAC,UAAU,IAAC,OAAO,EAAC,mBAAmB,YAClC,OAAO,CAAC,WAAW,GACX,CAChB,IACgB,EACrB,KAAC,MAAM,CAAC,MAAM,cACV,KAAC,MAAM,IAAC,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,GAAI,GACpD,KAfX,QAAQ,OAAO,CAAC,GAAG,EAAE,CAgBN,CAC3B,CAAC;QACN,CAAC,CAAC,GACc,CACvB,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
|
|
@@ -2,6 +2,9 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { useFrameworkFeatures } from '@equinor/fusion-framework-react/feature-flag';
|
|
3
3
|
import { Typography, Switch } from '@equinor/eds-core-react';
|
|
4
4
|
import { Styled } from './Styled';
|
|
5
|
+
/**
|
|
6
|
+
* Content for Feature toggler tab for portal features in the PersonSidesheet's Feature page.
|
|
7
|
+
*/
|
|
5
8
|
export const FeatureTogglerPortal = () => {
|
|
6
9
|
const { features, toggleFeature } = useFrameworkFeatures();
|
|
7
10
|
return (_jsx(Styled.SwitchList, { children: features === null || features === void 0 ? void 0 : features.map((feature) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeatureTogglerPortal.js","sourceRoot":"","sources":["../../../../../src/bin/dev-portal/PersonSideSheet/sheets/FeatureTogglerPortal.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AAEpF,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAE7D,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"FeatureTogglerPortal.js","sourceRoot":"","sources":["../../../../../src/bin/dev-portal/PersonSideSheet/sheets/FeatureTogglerPortal.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AAEpF,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAE7D,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,EAAE;IACrC,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,oBAAoB,EAAE,CAAC;IAC3D,OAAO,CACH,KAAC,MAAM,CAAC,UAAU,cACb,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;;YAAC,OAAA,CACxB,MAAC,MAAM,CAAC,cAAc,IAElB,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,aAEzC,MAAC,MAAM,CAAC,WAAW,eACf,KAAC,UAAU,IAAC,OAAO,EAAC,iBAAiB,YAChC,MAAA,OAAO,CAAC,KAAK,mCAAI,OAAO,CAAC,GAAG,GACpB,EACb,KAAC,UAAU,IAAC,OAAO,EAAC,mBAAmB,YAClC,MAAA,OAAO,CAAC,WAAW,mCAAI,EAAE,GACjB,IACI,EACrB,KAAC,MAAM,IAAC,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,GAAI,KAX3D,QAAQ,OAAO,CAAC,GAAG,EAAE,CAYN,CAC3B,CAAA;SAAA,CAAC,GACc,CACvB,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
|
|
@@ -10,6 +10,9 @@ const BtnList = styled.ul `
|
|
|
10
10
|
const BtnListItem = styled.li `
|
|
11
11
|
margin: 1em 0;
|
|
12
12
|
`;
|
|
13
|
+
/**
|
|
14
|
+
* Content for the main tab in the PersonSidesheet.
|
|
15
|
+
*/
|
|
13
16
|
export const LandingSheetContent = ({ azureId, navigate }) => {
|
|
14
17
|
return (_jsxs("section", { children: [_jsx(BtnList, { children: _jsx(BtnListItem, { children: _jsxs(Button, { variant: "ghost", onClick: () => navigate('features'), children: [_jsx(Icon, { name: "category" }), "My Features"] }) }) }), _jsx(Divider, {}), _jsx(BtnList, { children: _jsx(BtnListItem, { children: _jsxs(Button, { variant: "ghost", href: `https://eur.delve.office.com/?u=${azureId}&v=work`, target: "_blank", children: [_jsx("svg", { height: "24", viewBox: "0 0 24 24", width: "24", children: _jsx("path", { d: "M22.5 3C22.7031 3 22.8789 3.07422 23.0273 3.22266C23.1758 3.37109 23.25 3.54688 23.25 3.75V20.25C23.25 20.4531 23.1758 20.6289 23.0273 20.7773C22.8789 20.9258 22.7031 21 22.5 21H14.25V23.3438L0.75 20.9883V3.08203L14.25 0.65625V3H22.5ZM7.07812 16.6992C7.52344 16.6992 7.92188 16.6289 8.27344 16.4883C8.625 16.3477 8.9375 16.1602 9.21094 15.9258C9.48438 15.6914 9.71484 15.4102 9.90234 15.082C10.0898 14.7539 10.25 14.4062 10.3828 14.0391C10.5156 13.6719 10.6055 13.293 10.6523 12.9023C10.6992 12.5117 10.7266 12.1289 10.7344 11.7539C10.7344 11.1602 10.6836 10.5859 10.582 10.0312C10.4805 9.47656 10.3008 8.98047 10.043 8.54297C9.78516 8.10547 9.42969 7.75781 8.97656 7.5C8.52344 7.24219 7.95312 7.10938 7.26562 7.10156C6.78906 7.10156 6.3125 7.12891 5.83594 7.18359C5.35938 7.23828 4.88281 7.28906 4.40625 7.33594V16.5117L5.74219 16.6289C6.1875 16.668 6.63281 16.6914 7.07812 16.6992ZM17.25 16.5H14.25V20.25H17.25V16.5ZM17.25 3.75H14.25V15.75H17.25V3.75ZM22.5 9H18V20.25H22.5V9ZM22.5 3.75H18V8.25H22.5V3.75ZM5.89453 8.92969C6.04297 8.91406 6.1875 8.90234 6.32812 8.89453C6.46875 8.88672 6.62109 8.88281 6.78516 8.88281C7.19141 8.88281 7.53125 8.96875 7.80469 9.14062C8.07812 9.3125 8.29688 9.53906 8.46094 9.82031C8.625 10.1016 8.74219 10.4141 8.8125 10.7578C8.88281 11.1016 8.91797 11.4453 8.91797 11.7891C8.91797 12.125 8.88672 12.4766 8.82422 12.8438C8.76172 13.2109 8.64453 13.5508 8.47266 13.8633C8.30078 14.1758 8.08203 14.4297 7.81641 14.625C7.55078 14.8203 7.20312 14.9219 6.77344 14.9297H6.33984C6.19922 14.9297 6.05078 14.9219 5.89453 14.9062V8.92969Z", fill: "currentColor" }) }), "Delve"] }) }) })] }));
|
|
15
18
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LandingSheetContent.js","sourceRoot":"","sources":["../../../../../src/bin/dev-portal/PersonSideSheet/sheets/LandingSheetContent.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC/E,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;AAIxD,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAEvC,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,CAAA;;;CAGxB,CAAC;AACF,MAAM,WAAW,GAAG,MAAM,CAAC,EAAE,CAAA;;CAE5B,CAAC;
|
|
1
|
+
{"version":3,"file":"LandingSheetContent.js","sourceRoot":"","sources":["../../../../../src/bin/dev-portal/PersonSideSheet/sheets/LandingSheetContent.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC/E,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;AAIxD,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAEvC,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,CAAA;;;CAGxB,CAAC;AACF,MAAM,WAAW,GAAG,MAAM,CAAC,EAAE,CAAA;;CAE5B,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAqB,EAAE,EAAE;IAC5E,OAAO,CACH,8BACI,KAAC,OAAO,cACJ,KAAC,WAAW,cACR,MAAC,MAAM,IAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,aACvD,KAAC,IAAI,IAAC,IAAI,EAAC,UAAU,GAAQ,mBAExB,GACC,GACR,EACV,KAAC,OAAO,KAAW,EACnB,KAAC,OAAO,cACJ,KAAC,WAAW,cACR,MAAC,MAAM,IACH,OAAO,EAAC,OAAO,EACf,IAAI,EAAE,mCAAmC,OAAO,SAAS,EACzD,MAAM,EAAC,QAAQ,aAEf,cAAK,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,IAAI,YAC3C,eACI,CAAC,EAAC,0hDAA0hD,EAC5hD,IAAI,EAAC,cAAc,GACf,GACN,aAED,GACC,GACR,IACJ,CACb,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -6,6 +6,7 @@ import Header from './Header';
|
|
|
6
6
|
import { useFramework } from '@equinor/fusion-framework-react';
|
|
7
7
|
import { useState } from 'react';
|
|
8
8
|
import { styled } from 'styled-components';
|
|
9
|
+
import { useAppContextNavigation } from './useAppContextNavigation';
|
|
9
10
|
const Styled = {
|
|
10
11
|
ContentContainer: styled.div `
|
|
11
12
|
display: grid;
|
|
@@ -13,12 +14,24 @@ const Styled = {
|
|
|
13
14
|
grid-template-rows: 48px 1fr;
|
|
14
15
|
height: 100vh;
|
|
15
16
|
overflow: hidden;
|
|
17
|
+
grid-template-areas: 'head' 'main';
|
|
18
|
+
`,
|
|
19
|
+
Head: styled.section `
|
|
20
|
+
grid-area: head;
|
|
21
|
+
`,
|
|
22
|
+
Main: styled.section `
|
|
23
|
+
grid-area: main;
|
|
24
|
+
overflow: auto;
|
|
25
|
+
position: relative;
|
|
26
|
+
max-width: 100%;
|
|
27
|
+
display: grid;
|
|
16
28
|
`,
|
|
17
29
|
};
|
|
18
30
|
const Root = () => {
|
|
19
31
|
useBookmarkNavigate({ resolveAppPath: (appKey) => `/apps/${appKey}` });
|
|
20
|
-
return (_jsxs(Styled.ContentContainer, { children: [_jsx(Header, {}), _jsx(Outlet, {})] }));
|
|
32
|
+
return (_jsxs(Styled.ContentContainer, { children: [_jsx(Styled.Head, { children: _jsx(Header, {}) }), _jsx(Styled.Main, { children: _jsx(Outlet, {}) })] }));
|
|
21
33
|
};
|
|
34
|
+
// eslint-disable-next-line react/no-multi-comp
|
|
22
35
|
const AppRoute = () => {
|
|
23
36
|
const { appKey } = useParams();
|
|
24
37
|
return appKey ? _jsx(AppLoader, { appKey: appKey }) : null;
|
|
@@ -35,9 +48,12 @@ const routes = [
|
|
|
35
48
|
],
|
|
36
49
|
},
|
|
37
50
|
];
|
|
51
|
+
// eslint-disable-next-line react/no-multi-comp
|
|
38
52
|
export const Router = () => {
|
|
39
53
|
const { navigation } = useFramework().modules;
|
|
40
54
|
const [router] = useState(() => navigation.createRouter(routes));
|
|
55
|
+
// observe the context changes and navigate when the context changes
|
|
56
|
+
useAppContextNavigation();
|
|
41
57
|
return (_jsx(RouterProvider, { router: router, fallbackElement: _jsx("p", { children: "wooot" }) }));
|
|
42
58
|
};
|
|
43
59
|
//# sourceMappingURL=Router.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Router.js","sourceRoot":"","sources":["../../../src/bin/dev-portal/Router.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,wDAAwD,CAAC;AAE7F,OAAO,EAAE,MAAM,EAAE,cAAc,EAAuB,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC1F,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"Router.js","sourceRoot":"","sources":["../../../src/bin/dev-portal/Router.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,wDAAwD,CAAC;AAE7F,OAAO,EAAE,MAAM,EAAE,cAAc,EAAuB,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC1F,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,MAAM,MAAM,GAAG;IACX,gBAAgB,EAAE,MAAM,CAAC,GAAG,CAAA;;;;;;;KAO3B;IACD,IAAI,EAAE,MAAM,CAAC,OAAO,CAAA;;KAEnB;IACD,IAAI,EAAE,MAAM,CAAC,OAAO,CAAA;;;;;;KAMnB;CACJ,CAAC;AAEF,MAAM,IAAI,GAAG,GAAG,EAAE;IACd,mBAAmB,CAAC,EAAE,cAAc,EAAE,CAAC,MAAc,EAAE,EAAE,CAAC,SAAS,MAAM,EAAE,EAAE,CAAC,CAAC;IAC/E,OAAO,CACH,MAAC,MAAM,CAAC,gBAAgB,eACpB,KAAC,MAAM,CAAC,IAAI,cACR,KAAC,MAAM,KAAG,GACA,EACd,KAAC,MAAM,CAAC,IAAI,cACR,KAAC,MAAM,KAAG,GACA,IACQ,CAC7B,CAAC;AACN,CAAC,CAAC;AAEF,+CAA+C;AAC/C,MAAM,QAAQ,GAAG,GAAG,EAAE;IAClB,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,CAAC;IAC/B,OAAO,MAAM,CAAC,CAAC,CAAC,KAAC,SAAS,IAAC,MAAM,EAAE,MAAM,GAAI,CAAC,CAAC,CAAC,IAAI,CAAC;AACzD,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG;IACX;QACI,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,KAAC,IAAI,KAAG;QACjB,QAAQ,EAAE;YACN;gBACI,IAAI,EAAE,gBAAgB;gBACtB,OAAO,EAAE,KAAC,QAAQ,KAAG;aACxB;SACJ;KACJ;CACJ,CAAC;AAEF,+CAA+C;AAC/C,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,EAAE;IACvB,MAAM,EAAE,UAAU,EAAE,GAAG,YAAY,EAAsB,CAAC,OAAO,CAAC;IAClE,MAAM,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;IACjE,oEAAoE;IACpE,uBAAuB,EAAE,CAAC;IAC1B,OAAO,CACH,KAAC,cAAc,IACX,MAAM,EAAE,MAAkD,EAC1D,eAAe,EAAE,gCAAY,GAC/B,CACL,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -14,15 +14,18 @@ import { enableNavigation } from '@equinor/fusion-framework-module-navigation';
|
|
|
14
14
|
import { enableServices } from '@equinor/fusion-framework-module-services';
|
|
15
15
|
import { enableFeatureFlagging } from '@equinor/fusion-framework-module-feature-flag';
|
|
16
16
|
import { createLocalStoragePlugin, createUrlPlugin, } from '@equinor/fusion-framework-module-feature-flag/plugins';
|
|
17
|
-
import { enableWidgetModule } from '@equinor/fusion-framework-react-widget';
|
|
18
17
|
export const configure = (config) => __awaiter(void 0, void 0, void 0, function* () {
|
|
19
|
-
config.logger.level = 0;
|
|
20
18
|
config.configureServiceDiscovery({
|
|
21
19
|
client: {
|
|
22
|
-
baseUri:
|
|
20
|
+
baseUri: 'https://discovery.fusion.equinor.com/service-registry/environments/ci/services',
|
|
23
21
|
defaultScopes: ['5a842df8-3238-415d-b168-9f16a6a6031b/.default'],
|
|
24
22
|
},
|
|
25
23
|
});
|
|
24
|
+
// Add custom client for app
|
|
25
|
+
config.configureHttpClient('app', {
|
|
26
|
+
baseUri: new URL('/apps-proxy/', window.location.href).href,
|
|
27
|
+
defaultScopes: ['5a842df8-3238-415d-b168-9f16a6a6031b/.default'],
|
|
28
|
+
});
|
|
26
29
|
config.configureMsal({
|
|
27
30
|
tenantId: '3aa4a235-b6e2-48d5-9195-7fcf05b459b0',
|
|
28
31
|
clientId: '9b707e3a-3e90-41ed-a47e-652a1e3b53d0',
|
|
@@ -31,7 +34,6 @@ export const configure = (config) => __awaiter(void 0, void 0, void 0, function*
|
|
|
31
34
|
enableAppModule(config);
|
|
32
35
|
enableNavigation(config);
|
|
33
36
|
enableServices(config);
|
|
34
|
-
enableWidgetModule(config);
|
|
35
37
|
enableBookmark(config, (builder) => {
|
|
36
38
|
builder.setSourceSystem({
|
|
37
39
|
subSystem: 'CLI',
|
|
@@ -39,6 +41,7 @@ export const configure = (config) => __awaiter(void 0, void 0, void 0, function*
|
|
|
39
41
|
name: 'Fusion CLI',
|
|
40
42
|
});
|
|
41
43
|
});
|
|
44
|
+
/* Adds demo portal features to cli */
|
|
42
45
|
enableFeatureFlagging(config, (builder) => {
|
|
43
46
|
builder.addPlugin(createLocalStoragePlugin([
|
|
44
47
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/bin/dev-portal/config.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;AAC7E,OAAO,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAE3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,6CAA6C,CAAC;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAC3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,+CAA+C,CAAC;AACtF,OAAO,EACH,wBAAwB,EACxB,eAAe,GAClB,MAAM,uDAAuD,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/bin/dev-portal/config.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;AAC7E,OAAO,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAE3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,6CAA6C,CAAC;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAC3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,+CAA+C,CAAC;AACtF,OAAO,EACH,wBAAwB,EACxB,eAAe,GAClB,MAAM,uDAAuD,CAAC;AAE/D,MAAM,CAAC,MAAM,SAAS,GAAG,CAAO,MAA6B,EAAE,EAAE;IAC7D,MAAM,CAAC,yBAAyB,CAAC;QAC7B,MAAM,EAAE;YACJ,OAAO,EACH,gFAAgF;YACpF,aAAa,EAAE,CAAC,+CAA+C,CAAC;SACnE;KACJ,CAAC,CAAC;IAEH,4BAA4B;IAC5B,MAAM,CAAC,mBAAmB,CAAC,KAAK,EAAE;QAC9B,OAAO,EAAE,IAAI,GAAG,CAAC,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI;QAC3D,aAAa,EAAE,CAAC,+CAA+C,CAAC;KACnE,CAAC,CAAC;IAEH,MAAM,CAAC,aAAa,CAChB;QACI,QAAQ,EAAE,sCAAsC;QAChD,QAAQ,EAAE,sCAAsC;QAChD,WAAW,EAAE,gCAAgC;KAChD,EACD,EAAE,YAAY,EAAE,IAAI,EAAE,CACzB,CAAC;IAEF,eAAe,CAAC,MAAM,CAAC,CAAC;IAExB,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAEzB,cAAc,CAAC,MAAM,CAAC,CAAC;IAEvB,cAAc,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE;QAC/B,OAAO,CAAC,eAAe,CAAC;YACpB,SAAS,EAAE,KAAK;YAChB,UAAU,EAAE,YAAY;YACxB,IAAI,EAAE,YAAY;SACrB,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,sCAAsC;IACtC,qBAAqB,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE;QACtC,OAAO,CAAC,SAAS,CACb,wBAAwB,CAAC;YACrB;gBACI,GAAG,EAAE,aAAa;gBAClB,KAAK,EAAE,kBAAkB;gBACzB,WAAW,EAAE,kCAAkC;aAClD;YACD;gBACI,GAAG,EAAE,QAAQ;gBACb,KAAK,EAAE,cAAc;gBACrB,WAAW,EAAE,4CAA4C;aAC5D;SACJ,CAAC,CACL,CAAC;QACF,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE;QACrB,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,aAAa,CAAC,CAAO,MAAM,EAAE,EAAE;QAClC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1D,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAClD,CAAC,CAAA,CAAC,CAAC;AACP,CAAC,CAAA,CAAC;AAEF,eAAe,SAAS,CAAC"}
|