@equinor/fusion-framework-cli 0.0.0-context-error-20240131144633

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.
Files changed (154) hide show
  1. package/CHANGELOG.md +1306 -0
  2. package/LICENSE +21 -0
  3. package/README.md +78 -0
  4. package/bin/cli.mjs +2 -0
  5. package/dist/bin/build-application.js +44 -0
  6. package/dist/bin/build-application.js.map +1 -0
  7. package/dist/bin/bundle-application.js +59 -0
  8. package/dist/bin/bundle-application.js.map +1 -0
  9. package/dist/bin/create-dev-serve.js +139 -0
  10. package/dist/bin/create-dev-serve.js.map +1 -0
  11. package/dist/bin/create-export-config.js +51 -0
  12. package/dist/bin/create-export-config.js.map +1 -0
  13. package/dist/bin/create-export-manifest.js +60 -0
  14. package/dist/bin/create-export-manifest.js.map +1 -0
  15. package/dist/bin/dev-portal/AppLoader.js +55 -0
  16. package/dist/bin/dev-portal/AppLoader.js.map +1 -0
  17. package/dist/bin/dev-portal/BookMarkSideSheet.js +15 -0
  18. package/dist/bin/dev-portal/BookMarkSideSheet.js.map +1 -0
  19. package/dist/bin/dev-portal/ContextSelector.js +107 -0
  20. package/dist/bin/dev-portal/ContextSelector.js.map +1 -0
  21. package/dist/bin/dev-portal/EquinorLoader.js +14 -0
  22. package/dist/bin/dev-portal/EquinorLoader.js.map +1 -0
  23. package/dist/bin/dev-portal/ErrorViewer.js +7 -0
  24. package/dist/bin/dev-portal/ErrorViewer.js.map +1 -0
  25. package/dist/bin/dev-portal/FusionLogo.js +4 -0
  26. package/dist/bin/dev-portal/FusionLogo.js.map +1 -0
  27. package/dist/bin/dev-portal/Header.js +36 -0
  28. package/dist/bin/dev-portal/Header.js.map +1 -0
  29. package/dist/bin/dev-portal/PersonSideSheet/index.js +27 -0
  30. package/dist/bin/dev-portal/PersonSideSheet/index.js.map +1 -0
  31. package/dist/bin/dev-portal/PersonSideSheet/sheets/FeatureSheetContent.js +12 -0
  32. package/dist/bin/dev-portal/PersonSideSheet/sheets/FeatureSheetContent.js.map +1 -0
  33. package/dist/bin/dev-portal/PersonSideSheet/sheets/FeatureTogglerApp.js +13 -0
  34. package/dist/bin/dev-portal/PersonSideSheet/sheets/FeatureTogglerApp.js.map +1 -0
  35. package/dist/bin/dev-portal/PersonSideSheet/sheets/FeatureTogglerPortal.js +13 -0
  36. package/dist/bin/dev-portal/PersonSideSheet/sheets/FeatureTogglerPortal.js.map +1 -0
  37. package/dist/bin/dev-portal/PersonSideSheet/sheets/LandingSheetContent.js +16 -0
  38. package/dist/bin/dev-portal/PersonSideSheet/sheets/LandingSheetContent.js.map +1 -0
  39. package/dist/bin/dev-portal/PersonSideSheet/sheets/Styled.js +30 -0
  40. package/dist/bin/dev-portal/PersonSideSheet/sheets/Styled.js.map +1 -0
  41. package/dist/bin/dev-portal/PersonSideSheet/sheets/index.js +3 -0
  42. package/dist/bin/dev-portal/PersonSideSheet/sheets/index.js.map +1 -0
  43. package/dist/bin/dev-portal/PersonSideSheet/sheets/types.js +2 -0
  44. package/dist/bin/dev-portal/PersonSideSheet/sheets/types.js.map +1 -0
  45. package/dist/bin/dev-portal/Router.js +43 -0
  46. package/dist/bin/dev-portal/Router.js.map +1 -0
  47. package/dist/bin/dev-portal/config.js +64 -0
  48. package/dist/bin/dev-portal/config.js.map +1 -0
  49. package/dist/bin/dev-portal/main.js +14 -0
  50. package/dist/bin/dev-portal/main.js.map +1 -0
  51. package/dist/bin/dev-portal/resources/fallback-photo.svg.js +3 -0
  52. package/dist/bin/dev-portal/resources/fallback-photo.svg.js.map +1 -0
  53. package/dist/bin/dev-portal/usePersonResolver.js +40 -0
  54. package/dist/bin/dev-portal/usePersonResolver.js.map +1 -0
  55. package/dist/bin/dev-proxy.js +76 -0
  56. package/dist/bin/dev-proxy.js.map +1 -0
  57. package/dist/bin/main.app.js +87 -0
  58. package/dist/bin/main.app.js.map +1 -0
  59. package/dist/bin/main.js +18 -0
  60. package/dist/bin/main.js.map +1 -0
  61. package/dist/bin/public/assets/index-YVsDC70w.js +4402 -0
  62. package/dist/bin/public/index.html +41 -0
  63. package/dist/bin/utils/execute-commant.js +20 -0
  64. package/dist/bin/utils/execute-commant.js.map +1 -0
  65. package/dist/bin/utils/format.js +17 -0
  66. package/dist/bin/utils/format.js.map +1 -0
  67. package/dist/bin/utils/load-app-config.js +34 -0
  68. package/dist/bin/utils/load-app-config.js.map +1 -0
  69. package/dist/bin/utils/load-manifest.js +35 -0
  70. package/dist/bin/utils/load-manifest.js.map +1 -0
  71. package/dist/bin/utils/load-package.js +24 -0
  72. package/dist/bin/utils/load-package.js.map +1 -0
  73. package/dist/bin/utils/load-vite-config.js +54 -0
  74. package/dist/bin/utils/load-vite-config.js.map +1 -0
  75. package/dist/bin/utils/spinner.js +67 -0
  76. package/dist/bin/utils/spinner.js.map +1 -0
  77. package/dist/index.js +12 -0
  78. package/dist/index.js.map +1 -0
  79. package/dist/lib/app-config.js +54 -0
  80. package/dist/lib/app-config.js.map +1 -0
  81. package/dist/lib/app-manifest.js +70 -0
  82. package/dist/lib/app-manifest.js.map +1 -0
  83. package/dist/lib/app-package.js +33 -0
  84. package/dist/lib/app-package.js.map +1 -0
  85. package/dist/lib/index.js +4 -0
  86. package/dist/lib/index.js.map +1 -0
  87. package/dist/lib/utils/assert.js +27 -0
  88. package/dist/lib/utils/assert.js.map +1 -0
  89. package/dist/lib/utils/config.js +77 -0
  90. package/dist/lib/utils/config.js.map +1 -0
  91. package/dist/lib/utils/expect.js +27 -0
  92. package/dist/lib/utils/expect.js.map +1 -0
  93. package/dist/lib/utils/file-exists.js +36 -0
  94. package/dist/lib/utils/file-exists.js.map +1 -0
  95. package/dist/lib/utils/ts-transpile.js +51 -0
  96. package/dist/lib/utils/ts-transpile.js.map +1 -0
  97. package/dist/lib/utils/types.js +2 -0
  98. package/dist/lib/utils/types.js.map +1 -0
  99. package/dist/lib/vite-config.js +86 -0
  100. package/dist/lib/vite-config.js.map +1 -0
  101. package/dist/lib/vite-logger.js +20 -0
  102. package/dist/lib/vite-logger.js.map +1 -0
  103. package/dist/types/bin/build-application.d.ts +12 -0
  104. package/dist/types/bin/bundle-application.d.ts +4 -0
  105. package/dist/types/bin/create-dev-serve.d.ts +11 -0
  106. package/dist/types/bin/create-export-config.d.ts +7 -0
  107. package/dist/types/bin/create-export-manifest.d.ts +20 -0
  108. package/dist/types/bin/dev-portal/AppLoader.d.ts +4 -0
  109. package/dist/types/bin/dev-portal/BookMarkSideSheet.d.ts +6 -0
  110. package/dist/types/bin/dev-portal/ContextSelector.d.ts +2 -0
  111. package/dist/types/bin/dev-portal/EquinorLoader.d.ts +5 -0
  112. package/dist/types/bin/dev-portal/ErrorViewer.d.ts +4 -0
  113. package/dist/types/bin/dev-portal/FusionLogo.d.ts +6 -0
  114. package/dist/types/bin/dev-portal/Header.d.ts +3 -0
  115. package/dist/types/bin/dev-portal/PersonSideSheet/index.d.ts +7 -0
  116. package/dist/types/bin/dev-portal/PersonSideSheet/sheets/FeatureSheetContent.d.ts +2 -0
  117. package/dist/types/bin/dev-portal/PersonSideSheet/sheets/FeatureTogglerApp.d.ts +2 -0
  118. package/dist/types/bin/dev-portal/PersonSideSheet/sheets/FeatureTogglerPortal.d.ts +2 -0
  119. package/dist/types/bin/dev-portal/PersonSideSheet/sheets/LandingSheetContent.d.ts +2 -0
  120. package/dist/types/bin/dev-portal/PersonSideSheet/sheets/Styled.d.ts +7 -0
  121. package/dist/types/bin/dev-portal/PersonSideSheet/sheets/index.d.ts +2 -0
  122. package/dist/types/bin/dev-portal/PersonSideSheet/sheets/types.d.ts +5 -0
  123. package/dist/types/bin/dev-portal/Router.d.ts +1 -0
  124. package/dist/types/bin/dev-portal/config.d.ts +3 -0
  125. package/dist/types/bin/dev-portal/main.d.ts +1 -0
  126. package/dist/types/bin/dev-portal/resources/fallback-photo.svg.d.ts +2 -0
  127. package/dist/types/bin/dev-portal/usePersonResolver.d.ts +1 -0
  128. package/dist/types/bin/dev-proxy.d.ts +28 -0
  129. package/dist/types/bin/main.app.d.ts +3 -0
  130. package/dist/types/bin/main.d.ts +1 -0
  131. package/dist/types/bin/utils/execute-commant.d.ts +8 -0
  132. package/dist/types/bin/utils/format.d.ts +10 -0
  133. package/dist/types/bin/utils/load-app-config.d.ts +9 -0
  134. package/dist/types/bin/utils/load-manifest.d.ts +9 -0
  135. package/dist/types/bin/utils/load-package.d.ts +5 -0
  136. package/dist/types/bin/utils/load-vite-config.d.ts +10 -0
  137. package/dist/types/bin/utils/spinner.d.ts +19 -0
  138. package/dist/types/index.d.ts +4 -0
  139. package/dist/types/lib/app-config.d.ts +27 -0
  140. package/dist/types/lib/app-manifest.d.ts +35 -0
  141. package/dist/types/lib/app-package.d.ts +23 -0
  142. package/dist/types/lib/index.d.ts +3 -0
  143. package/dist/types/lib/utils/assert.d.ts +11 -0
  144. package/dist/types/lib/utils/config.d.ts +26 -0
  145. package/dist/types/lib/utils/expect.d.ts +4 -0
  146. package/dist/types/lib/utils/file-exists.d.ts +6 -0
  147. package/dist/types/lib/utils/ts-transpile.d.ts +2 -0
  148. package/dist/types/lib/utils/types.d.ts +6 -0
  149. package/dist/types/lib/vite-config.d.ts +17 -0
  150. package/dist/types/lib/vite-logger.d.ts +2 -0
  151. package/dist/types/version.d.ts +1 -0
  152. package/dist/version.js +2 -0
  153. package/dist/version.js.map +1 -0
  154. package/package.json +99 -0
@@ -0,0 +1,107 @@
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 { jsx as _jsx } from "react/jsx-runtime";
11
+ import { useCallback, useMemo, useState } from 'react';
12
+ import { useFramework } from '@equinor/fusion-framework-react';
13
+ import { useCurrentApp } from '@equinor/fusion-framework-react/app';
14
+ import { useObservableState, useObservableSubscription } from '@equinor/fusion-observable/react';
15
+ import { EMPTY } from 'rxjs';
16
+ import { ContextProvider, ContextSearch, } from '@equinor/fusion-react-context-selector';
17
+ import { styled } from 'styled-components';
18
+ const Styled = {
19
+ ContextSelectorWrapper: styled.div `
20
+ min-width: 25rem;
21
+ width: fit-content;
22
+ `,
23
+ };
24
+ const mapper = (src) => {
25
+ return src.map((i) => {
26
+ var _a, _b;
27
+ return {
28
+ id: i.id,
29
+ title: i.title,
30
+ subTitle: (_a = i.type) === null || _a === void 0 ? void 0 : _a.id,
31
+ graphic: ((_b = i.type) === null || _b === void 0 ? void 0 : _b.id) === 'OrgChart' ? 'list' : undefined,
32
+ };
33
+ });
34
+ };
35
+ const singleItem = (props) => {
36
+ return Object.assign({ id: 'no-such-item', title: 'Change me' }, props);
37
+ };
38
+ const noPreselect = [];
39
+ const useQueryContext = () => {
40
+ const framework = useFramework();
41
+ const { value: currentContext } = useObservableState(useMemo(() => framework.modules.context.currentContext$, [framework.modules.context]));
42
+ const preselected = useMemo(() => (currentContext ? mapper([currentContext]) : noPreselect), [currentContext]);
43
+ const [provider, setProvider] = useState(null);
44
+ const { currentApp } = useCurrentApp();
45
+ const instance$ = useMemo(() => (currentApp === null || currentApp === void 0 ? void 0 : currentApp.instance$) || EMPTY, [currentApp]);
46
+ const onContextProviderChange = useCallback((modules) => {
47
+ const contextProvider = modules.context;
48
+ if (contextProvider) {
49
+ setProvider(contextProvider);
50
+ }
51
+ }, [setProvider]);
52
+ const clearContextProvider = useCallback(() => setProvider(null), [setProvider]);
53
+ useObservableSubscription(instance$, onContextProviderChange, clearContextProvider);
54
+ const minLength = 3;
55
+ const resolver = useMemo(() => ({
56
+ searchQuery: (search) => __awaiter(void 0, void 0, void 0, function* () {
57
+ if (!provider) {
58
+ return [];
59
+ }
60
+ if (search.length < minLength) {
61
+ return [
62
+ singleItem({
63
+ id: 'min-length',
64
+ title: `Type ${minLength - search.length} more chars to search`,
65
+ isDisabled: true,
66
+ }),
67
+ ];
68
+ }
69
+ try {
70
+ const result = yield provider.queryContextAsync(search);
71
+ if (result.length) {
72
+ return mapper(result);
73
+ }
74
+ return [
75
+ singleItem({
76
+ id: 'no-results',
77
+ title: 'No results found',
78
+ isDisabled: true,
79
+ }),
80
+ ];
81
+ }
82
+ catch (e) {
83
+ console.log('ContextResolver query was cancelled');
84
+ return [];
85
+ }
86
+ }),
87
+ initialResult: preselected,
88
+ }), [provider, preselected]);
89
+ const setContext = useCallback((e) => {
90
+ var _a;
91
+ if ((_a = e.nativeEvent.detail) === null || _a === void 0 ? void 0 : _a.selected.length) {
92
+ framework.modules.context.setCurrentContextByIdAsync(e.nativeEvent.detail.selected[0].id);
93
+ }
94
+ }, [framework]);
95
+ const clearContext = useCallback(() => {
96
+ if (!framework)
97
+ return;
98
+ framework.modules.context.clearCurrentContext();
99
+ }, [framework]);
100
+ return [resolver, setContext, preselected === null || preselected === void 0 ? void 0 : preselected[0], clearContext];
101
+ };
102
+ export const ContextSelector = () => {
103
+ const [resolver, setContext, currentContext, clearContext] = useQueryContext();
104
+ return (_jsx(ContextProvider, { resolver: resolver, children: _jsx(Styled.ContextSelectorWrapper, { children: _jsx(ContextSearch, { id: "context-selector-header", placeholder: "Search for context", initialText: "Start typing to search", dropdownHeight: "300px", variant: "header", onSelect: setContext, autofocus: true, onClearContext: clearContext, previewItem: currentContext !== null && currentContext !== void 0 ? currentContext : null, value: currentContext === null || currentContext === void 0 ? void 0 : currentContext.title, selectedId: currentContext === null || currentContext === void 0 ? void 0 : currentContext.title }) }) }));
105
+ };
106
+ export default ContextSelector;
107
+ //# sourceMappingURL=ContextSelector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContextSelector.js","sourceRoot":"","sources":["../../../src/bin/dev-portal/ContextSelector.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { StarProgress } from '@equinor/fusion-react-progress-indicator';
3
+ export const EquinorLoader = ({ children, text, }) => {
4
+ return (_jsx("div", { style: {
5
+ display: 'flex',
6
+ justifyContent: 'center',
7
+ alignItems: 'center',
8
+ width: '100vw',
9
+ height: '100vh',
10
+ overflow: 'hidden',
11
+ }, children: _jsx(StarProgress, { text: text, children: children }) }));
12
+ };
13
+ export default EquinorLoader;
14
+ //# sourceMappingURL=EquinorLoader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EquinorLoader.js","sourceRoot":"","sources":["../../../src/bin/dev-portal/EquinorLoader.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,0CAA0C,CAAC;AAExE,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAC1B,QAAQ,EACR,IAAI,GAC6C,EAAe,EAAE;IAClE,OAAO,CACH,cACI,KAAK,EAAE;YACH,OAAO,EAAE,MAAM;YACf,cAAc,EAAE,QAAQ;YACxB,UAAU,EAAE,QAAQ;YACpB,KAAK,EAAE,OAAO;YACd,MAAM,EAAE,OAAO;YACf,QAAQ,EAAE,QAAQ;SACrB,YAED,KAAC,YAAY,IAAC,IAAI,EAAE,IAAI,YAAG,QAAQ,GAAgB,GACjD,CACT,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { Typography } from '@equinor/eds-core-react';
3
+ export const ErrorViewer = ({ error }) => {
4
+ return (_jsxs(_Fragment, { children: [_jsxs("div", { style: { marginTop: 20, border: '1px solid' }, children: [_jsx(Typography, { variant: "h4", color: "warning", children: error.message }), _jsx("section", { style: { padding: 10 }, children: error.stack && _jsx("pre", { children: error.stack }) })] }), error.cause && _jsx(ErrorViewer, { error: error.cause })] }));
5
+ };
6
+ export default ErrorViewer;
7
+ //# sourceMappingURL=ErrorViewer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ErrorViewer.js","sourceRoot":"","sources":["../../../src/bin/dev-portal/ErrorViewer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EAAE,KAAK,EAA6B,EAAE,EAAE;IAChE,OAAO,CACH,8BACI,eAAK,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,aAC9C,KAAC,UAAU,IAAC,OAAO,EAAC,IAAI,EAAC,KAAK,EAAC,SAAS,YACnC,KAAK,CAAC,OAAO,GACL,EACb,kBAAS,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,YAAG,KAAK,CAAC,KAAK,IAAI,wBAAM,KAAK,CAAC,KAAK,GAAO,GAAW,IAClF,EACL,KAAK,CAAC,KAAK,IAAI,KAAC,WAAW,IAAC,KAAK,EAAE,KAAK,CAAC,KAAc,GAAI,IAC7D,CACN,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ export const FusionLogo = ({ scale = 1, style }) => (_jsxs("svg", { viewBox: "0 0 50 35", style: Object.assign(Object.assign({ height: '1em' }, style), { transform: `scale(${scale})` }), children: [_jsx("path", { d: "M0 2V23.1776L7.05405 16.1235V7.05405H16.1235L23.1776 0H2C0.895431 0 0 0.89543 0 2Z", transform: "translate(50 17.5) scale(0.92727 1.06779) rotate(135)", fill: "url(#paint0_linear)" }), _jsx("path", { d: "M0 2V23.1776L7.05405 16.1235V7.05405H16.1235L23.1776 0H2C0.895431 0 0 0.89543 0 2Z", transform: "translate(0 17.5) scale(0.92727 1.06779) rotate(-45)", fill: "url(#paint1_linear)" }), _jsx("path", { d: "M9.61965 36.6972L2.60087 29.6784L1.96135 22.3809L8.42623 22.9069L9.61965 36.6972Z", transform: "translate(33.8887 34.9863) scale(0.92727 -1.06779) rotate(45)", fill: "#990025" }), _jsx("path", { d: "M7.05434 7.05434L0 0L1.21096 13.8183L7.68846 14.3818L7.05434 7.05434Z", transform: "translate(33.8887 34.9863) scale(0.92727 -1.06779) rotate(45)", fill: "#990025" }), _jsx("path", { d: "M0 0L2.49398 29.5715L9.61965 36.6972L7.01878 7.01878L0 0Z", transform: "translate(33.8887 0.015625) scale(0.92727 1.06779) rotate(45)", fill: "#FF1243" }), _jsxs("defs", { children: [_jsxs("linearGradient", { id: "paint0_linear", x2: "1", gradientUnits: "userSpaceOnUse", gradientTransform: "matrix(-13.5478 9.01983 -12.9578 -13.5478 18.0677 6.77391)", children: [_jsx("stop", { offset: "0.508287", stopColor: "#DC002E" }), _jsx("stop", { offset: "0.508387", stopColor: "#FF1243" })] }), _jsxs("linearGradient", { id: "paint1_linear", x2: "1", gradientUnits: "userSpaceOnUse", gradientTransform: "matrix(-13.5478 9.01983 -12.9578 -13.5478 18.0677 6.77391)", children: [_jsx("stop", { offset: "0.508287", stopColor: "#DC002E" }), _jsx("stop", { offset: "0.508387", stopColor: "#FF1243" })] })] })] }));
3
+ export default FusionLogo;
4
+ //# sourceMappingURL=FusionLogo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FusionLogo.js","sourceRoot":"","sources":["../../../src/bin/dev-portal/FusionLogo.tsx"],"names":[],"mappings":";AAIA,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,EAAmB,EAAE,EAAE,CAAC,CACjE,eAAK,OAAO,EAAC,WAAW,EAAC,KAAK,gCAAI,MAAM,EAAE,KAAK,IAAK,KAAK,KAAE,SAAS,EAAE,SAAS,KAAK,GAAG,gBACnF,eACI,CAAC,EAAC,oFAAoF,EACtF,SAAS,EAAC,uDAAuD,EACjE,IAAI,EAAC,qBAAqB,GAC5B,EACF,eACI,CAAC,EAAC,oFAAoF,EACtF,SAAS,EAAC,sDAAsD,EAChE,IAAI,EAAC,qBAAqB,GAC5B,EACF,eACI,CAAC,EAAC,mFAAmF,EACrF,SAAS,EAAC,+DAA+D,EACzE,IAAI,EAAC,SAAS,GAChB,EACF,eACI,CAAC,EAAC,uEAAuE,EACzE,SAAS,EAAC,+DAA+D,EACzE,IAAI,EAAC,SAAS,GAChB,EACF,eACI,CAAC,EAAC,2DAA2D,EAC7D,SAAS,EAAC,+DAA+D,EACzE,IAAI,EAAC,SAAS,GAChB,EACF,2BACI,0BACI,EAAE,EAAC,eAAe,EAClB,EAAE,EAAC,GAAG,EACN,aAAa,EAAC,gBAAgB,EAC9B,iBAAiB,EAAC,4DAA4D,aAE9E,eAAM,MAAM,EAAC,UAAU,EAAC,SAAS,EAAC,SAAS,GAAG,EAC9C,eAAM,MAAM,EAAC,UAAU,EAAC,SAAS,EAAC,SAAS,GAAG,IACjC,EACjB,0BACI,EAAE,EAAC,eAAe,EAClB,EAAE,EAAC,GAAG,EACN,aAAa,EAAC,gBAAgB,EAC9B,iBAAiB,EAAC,4DAA4D,aAE9E,eAAM,MAAM,EAAC,UAAU,EAAC,SAAS,EAAC,SAAS,GAAG,EAC9C,eAAM,MAAM,EAAC,UAAU,EAAC,SAAS,EAAC,SAAS,GAAG,IACjC,IACd,IACL,CACT,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,36 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { useState } from 'react';
3
+ import { ContextSelector } from './ContextSelector';
4
+ import { FusionLogo } from './FusionLogo';
5
+ import '@material-ui/styles';
6
+ import { BookmarkSideSheet } from './BookMarkSideSheet';
7
+ import { Button, Icon, TopBar } from '@equinor/eds-core-react';
8
+ import { BookmarkProvider } from '@equinor/fusion-framework-react-components-bookmark';
9
+ import { useCurrentUser } from '@equinor/fusion-framework-react/hooks';
10
+ import { add, menu, tag } from '@equinor/eds-icons';
11
+ import { styled } from 'styled-components';
12
+ import { PersonSideSheet } from './PersonSideSheet';
13
+ import { PersonAvatarElement } from '@equinor/fusion-wc-person';
14
+ PersonAvatarElement;
15
+ Icon.add({ menu, add, tag });
16
+ const Styled = {
17
+ Title: styled.div `
18
+ display: flex;
19
+ align-items: center;
20
+ gap: 0.75rem;
21
+ font-size: 1rem;
22
+ font-weight: 500;
23
+ `,
24
+ };
25
+ export const Header = () => {
26
+ const [isPersonSheetOpen, setIsPersonSheetOpen] = useState(false);
27
+ const [isBookmarkOpen, setIsBookmarkOpen] = useState(false);
28
+ const currentUser = useCurrentUser();
29
+ const { localAccountId: azureId } = currentUser !== null && currentUser !== void 0 ? currentUser : {};
30
+ function toggleBookmark() {
31
+ setIsBookmarkOpen((s) => !s);
32
+ }
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, size: "small" }) })] })] }), _jsx(BookmarkProvider, { children: _jsx(BookmarkSideSheet, { isOpen: isBookmarkOpen, onClose: toggleBookmark }) }), _jsx(PersonSideSheet, { azureId: azureId, isOpen: isPersonSheetOpen, onClose: () => setIsPersonSheetOpen(!isPersonSheetOpen) })] }));
34
+ };
35
+ export default Header;
36
+ //# sourceMappingURL=Header.js.map
@@ -0,0 +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;AAG1C,OAAO,qBAAqB,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qDAAqD,CAAC;AACvF,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AACvE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,mBAAmB,CAAC;AAEpB,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;AAE7B,MAAM,MAAM,GAAG;IACX,KAAK,EAAE,MAAM,CAAC,GAAG,CAAA;;;;;;KAMhB;CACJ,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,EAAE;IACvB,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClE,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC5D,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,GAAG,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,EAAE,CAAC;IAEtD,SAAS,cAAc;QACnB,iBAAiB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,CACH,8BACI,MAAC,MAAM,IAAC,EAAE,EAAC,aAAa,EAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,aACrE,KAAC,MAAM,CAAC,MAAM,cACV,MAAC,MAAM,CAAC,KAAK,eACT,KAAC,UAAU,KAAG,EACd,kDAAiC,IACtB,GACH,EAChB,KAAC,MAAM,CAAC,aAAa,cACjB,KAAC,eAAe,KAAG,GACA,EAEvB,MAAC,MAAM,CAAC,OAAO,IAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,aAClD,KAAC,MAAM,IAAC,OAAO,EAAE,cAAc,EAAE,OAAO,EAAC,YAAY,YACjD,KAAC,IAAI,IAAC,IAAI,EAAC,KAAK,GAAG,GACd,EACT,KAAC,MAAM,IACH,OAAO,EAAE,GAAG,EAAE,CAAC,oBAAoB,CAAC,CAAC,iBAAiB,CAAC,EACvD,OAAO,EAAC,YAAY,YAEpB,4BACI,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,KAAK,EAChB,IAAI,EAAC,OAAO,GACK,GAChB,IACI,IACZ,EACT,KAAC,gBAAgB,cACb,KAAC,iBAAiB,IAAC,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,cAAc,GAAI,GACvD,EACnB,KAAC,eAAe,IACZ,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,GAAG,EAAE,CAAC,oBAAoB,CAAC,CAAC,iBAAiB,CAAC,GACzD,IACH,CACN,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -0,0 +1,27 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useCallback, useMemo, useState } from 'react';
3
+ import { SideSheet } from '@equinor/fusion-react-side-sheet';
4
+ import { PersonListItem } from '@equinor/fusion-react-person';
5
+ import { Divider } from '@equinor/eds-core-react';
6
+ import { LandingSheetContent, FeatureSheetContent } from './sheets';
7
+ export const PersonSideSheet = ({ azureId, isOpen, onClose }) => {
8
+ const [currentSheet, setCurrentSheet] = useState('landing');
9
+ const Component = useMemo(() => {
10
+ let Comp;
11
+ switch (currentSheet) {
12
+ case 'features':
13
+ Comp = FeatureSheetContent;
14
+ break;
15
+ default:
16
+ Comp = LandingSheetContent;
17
+ break;
18
+ }
19
+ return Comp;
20
+ }, [currentSheet]);
21
+ const navigateCallback = useCallback((sheet) => {
22
+ setCurrentSheet(sheet !== null && sheet !== void 0 ? sheet : 'default');
23
+ }, [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(PersonListItem, { azureId: azureId }) }), _jsx(Divider, {}), _jsx(Component, { azureId: azureId, sheet: currentSheet, navigate: navigateCallback })] }) })] }));
25
+ };
26
+ export default PersonSideSheet;
27
+ //# sourceMappingURL=index.js.map
@@ -0,0 +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,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAElD,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAYpE,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,KAAC,cAAc,IAAC,OAAO,EAAE,OAAO,GAAmB,GACjD,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"}
@@ -0,0 +1,12 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from 'react';
3
+ import { FeatureTogglerApp } from './FeatureTogglerApp';
4
+ import { FeatureTogglerPortal } from './FeatureTogglerPortal';
5
+ import { Divider, Icon, Button, Tabs } from '@equinor/eds-core-react';
6
+ import { arrow_back, category } from '@equinor/eds-icons';
7
+ Icon.add({ arrow_back, category });
8
+ export const FeatureSheetContent = ({ navigate }) => {
9
+ const [tab, setTab] = useState(0);
10
+ 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, {}) })] })] }) })] }));
11
+ };
12
+ //# sourceMappingURL=FeatureSheetContent.js.map
@@ -0,0 +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;AAQnC,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"}
@@ -0,0 +1,13 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useCurrentAppFeatures } from '@equinor/fusion-framework-react/feature-flag';
3
+ import { Typography, Switch } from '@equinor/eds-core-react';
4
+ import { Styled } from './Styled';
5
+ export const FeatureTogglerApp = () => {
6
+ const { features, toggleFeature } = useCurrentAppFeatures();
7
+ return (_jsx(Styled.SwitchList, { children: features === null || features === void 0 ? void 0 : features.map((feature) => {
8
+ var _a;
9
+ return (_jsxs(Styled.SwitchListItem, { onClick: () => toggleFeature(feature.key), children: [_jsxs(Styled.SwitchLabel, { children: [_jsx(Typography, { variant: "body_short_bold", children: (_a = feature.title) !== null && _a !== void 0 ? _a : feature.key }), feature.description && (_jsx(Typography, { variant: "body_short_italic", children: feature.description }))] }), _jsx(Styled.Switch, { children: _jsx(Switch, { checked: feature.enabled, disabled: feature.readonly }) })] }, `feat-${feature.key}`));
10
+ }) }));
11
+ };
12
+ export default FeatureTogglerApp;
13
+ //# sourceMappingURL=FeatureTogglerApp.js.map
@@ -0,0 +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;AAKlC,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"}
@@ -0,0 +1,13 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useFrameworkFeatures } from '@equinor/fusion-framework-react/feature-flag';
3
+ import { Typography, Switch } from '@equinor/eds-core-react';
4
+ import { Styled } from './Styled';
5
+ export const FeatureTogglerPortal = () => {
6
+ const { features, toggleFeature } = useFrameworkFeatures();
7
+ return (_jsx(Styled.SwitchList, { children: features === null || features === void 0 ? void 0 : features.map((feature) => {
8
+ var _a, _b;
9
+ return (_jsxs(Styled.SwitchListItem, { onClick: () => toggleFeature(feature.key), children: [_jsxs(Styled.SwitchLabel, { children: [_jsx(Typography, { variant: "body_short_bold", children: (_a = feature.title) !== null && _a !== void 0 ? _a : feature.key }), _jsx(Typography, { variant: "body_short_italic", children: (_b = feature.description) !== null && _b !== void 0 ? _b : '' })] }), _jsx(Switch, { checked: feature.enabled, disabled: feature.readonly })] }, `feat-${feature.key}`));
10
+ }) }));
11
+ };
12
+ export default FeatureTogglerPortal;
13
+ //# sourceMappingURL=FeatureTogglerPortal.js.map
@@ -0,0 +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;AAKlC,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"}
@@ -0,0 +1,16 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Divider, Icon, Button } from '@equinor/eds-core-react';
3
+ import { bandage, category, work_outline, security } from '@equinor/eds-icons';
4
+ Icon.add({ bandage, category, work_outline, security });
5
+ import styled from 'styled-components';
6
+ const BtnList = styled.ul `
7
+ list-style: none;
8
+ padding-left: 0;
9
+ `;
10
+ const BtnListItem = styled.li `
11
+ margin: 1em 0;
12
+ `;
13
+ export const LandingSheetContent = ({ azureId, navigate }) => {
14
+ 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
+ };
16
+ //# sourceMappingURL=LandingSheetContent.js.map
@@ -0,0 +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;AAKF,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"}
@@ -0,0 +1,30 @@
1
+ import styled from 'styled-components';
2
+ export const Styled = {
3
+ SwitchList: styled.ul `
4
+ list-style: none;
5
+ padding-left: 0;
6
+ `,
7
+ SwitchListItem: styled.li `
8
+ display: flex;
9
+ flex-flow: row nowrap;
10
+ justify-content: space-between;
11
+ margin: 1em 0;
12
+ border-left: 3px solid var(--eds_interactive_primary__resting, rgba(0, 112, 121, 1));
13
+ cursor: pointer;
14
+ `,
15
+ SwitchLabel: styled.div `
16
+ display: flex;
17
+ flex-direction: column;
18
+ align-items: left;
19
+ justify-content: center;
20
+ width: 85%;
21
+ transform: scale(0.9);
22
+ `,
23
+ Switch: styled.div `
24
+ width: 15%;
25
+ display: flex;
26
+ justify-content: flex-end;
27
+ transform: scale(0.9);
28
+ `,
29
+ };
30
+ //# sourceMappingURL=Styled.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Styled.js","sourceRoot":"","sources":["../../../../../src/bin/dev-portal/PersonSideSheet/sheets/Styled.tsx"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,mBAAmB,CAAC;AACvC,MAAM,CAAC,MAAM,MAAM,GAAG;IAClB,UAAU,EAAE,MAAM,CAAC,EAAE,CAAA;;;KAGpB;IACD,cAAc,EAAE,MAAM,CAAC,EAAE,CAAA;;;;;;;KAOxB;IACD,WAAW,EAAE,MAAM,CAAC,GAAG,CAAA;;;;;;;KAOtB;IACD,MAAM,EAAE,MAAM,CAAC,GAAG,CAAA;;;;;KAKjB;CACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { FeatureSheetContent } from './FeatureSheetContent';
2
+ export { LandingSheetContent } from './LandingSheetContent';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/bin/dev-portal/PersonSideSheet/sheets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/bin/dev-portal/PersonSideSheet/sheets/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,43 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useBookmarkNavigate } from '@equinor/fusion-framework-react-module-bookmark/portal';
3
+ import { Outlet, RouterProvider, useParams } from 'react-router-dom';
4
+ import AppLoader from './AppLoader';
5
+ import Header from './Header';
6
+ import { useFramework } from '@equinor/fusion-framework-react';
7
+ import { useState } from 'react';
8
+ import { styled } from 'styled-components';
9
+ const Styled = {
10
+ ContentContainer: styled.div `
11
+ display: grid;
12
+ grid-template-columns: 1fr;
13
+ grid-template-rows: 48px 1fr;
14
+ height: 100vh;
15
+ overflow: hidden;
16
+ `,
17
+ };
18
+ const Root = () => {
19
+ useBookmarkNavigate({ resolveAppPath: (appKey) => `/apps/${appKey}` });
20
+ return (_jsxs(Styled.ContentContainer, { children: [_jsx(Header, {}), _jsx(Outlet, {})] }));
21
+ };
22
+ const AppRoute = () => {
23
+ const { appKey } = useParams();
24
+ return appKey ? _jsx(AppLoader, { appKey: appKey }) : null;
25
+ };
26
+ const routes = [
27
+ {
28
+ path: '/',
29
+ element: _jsx(Root, {}),
30
+ children: [
31
+ {
32
+ path: 'apps/:appKey/*',
33
+ element: _jsx(AppRoute, {}),
34
+ },
35
+ ],
36
+ },
37
+ ];
38
+ export const Router = () => {
39
+ const { navigation } = useFramework().modules;
40
+ const [router] = useState(() => navigation.createRouter(routes));
41
+ return (_jsx(RouterProvider, { router: router, fallbackElement: _jsx("p", { children: "wooot" }) }));
42
+ };
43
+ //# sourceMappingURL=Router.js.map
@@ -0,0 +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;AAE3C,MAAM,MAAM,GAAG;IACX,gBAAgB,EAAE,MAAM,CAAC,GAAG,CAAA;;;;;;KAM3B;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,KAAG,EACV,KAAC,MAAM,KAAG,IACY,CAC7B,CAAC;AACN,CAAC,CAAC;AAGF,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;AAGF,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,OAAO,CACH,KAAC,cAAc,IACX,MAAM,EAAE,MAAkD,EAC1D,eAAe,EAAE,gCAAY,GAC/B,CACL,CAAC;AACN,CAAC,CAAC"}
@@ -0,0 +1,64 @@
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 { enableAppModule } from '@equinor/fusion-framework-module-app';
11
+ import { ConsoleLogger } from '@equinor/fusion-framework-module-msal/client';
12
+ import { enableBookmark } from '@equinor/fusion-framework-module-bookmark';
13
+ import { enableNavigation } from '@equinor/fusion-framework-module-navigation';
14
+ import { enableServices } from '@equinor/fusion-framework-module-services';
15
+ import { enableFeatureFlagging } from '@equinor/fusion-framework-module-feature-flag';
16
+ import { createLocalStoragePlugin, createUrlPlugin, } from '@equinor/fusion-framework-module-feature-flag/plugins';
17
+ export const configure = (config) => __awaiter(void 0, void 0, void 0, function* () {
18
+ config.logger.level = 0;
19
+ config.configureServiceDiscovery({
20
+ client: {
21
+ baseUri: import.meta.url,
22
+ defaultScopes: ['5a842df8-3238-415d-b168-9f16a6a6031b/.default'],
23
+ },
24
+ });
25
+ config.configureMsal({
26
+ tenantId: '3aa4a235-b6e2-48d5-9195-7fcf05b459b0',
27
+ clientId: '9b707e3a-3e90-41ed-a47e-652a1e3b53d0',
28
+ redirectUri: '/authentication/login-callback',
29
+ }, { requiresAuth: true });
30
+ enableAppModule(config);
31
+ enableNavigation(config);
32
+ enableServices(config);
33
+ enableBookmark(config, (builder) => {
34
+ builder.setSourceSystem({
35
+ subSystem: 'CLI',
36
+ identifier: 'fusion-cli',
37
+ name: 'Fusion CLI',
38
+ });
39
+ });
40
+ enableFeatureFlagging(config, (builder) => {
41
+ builder.addPlugin(createLocalStoragePlugin([
42
+ {
43
+ key: 'fusionDebug',
44
+ title: 'Fusion debug log',
45
+ description: 'Show Fusion debug log in console',
46
+ },
47
+ {
48
+ key: 'pinkBg',
49
+ title: 'Use pink bg?',
50
+ description: 'When enabled the background should be pink',
51
+ },
52
+ ]));
53
+ builder.addPlugin(createUrlPlugin(['fusionDebug']));
54
+ });
55
+ config.onConfigured(() => {
56
+ console.log('framework config done');
57
+ });
58
+ config.onInitialized((fusion) => __awaiter(void 0, void 0, void 0, function* () {
59
+ fusion.auth.defaultClient.setLogger(new ConsoleLogger(0));
60
+ console.debug('📒 subscribing to all events');
61
+ }));
62
+ });
63
+ export default configure;
64
+ //# sourceMappingURL=config.js.map
@@ -0,0 +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;AAE/D,MAAM,CAAC,MAAM,SAAS,GAAG,CAAO,MAA6B,EAAE,EAAE;IAC7D,MAAM,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;IAExB,MAAM,CAAC,yBAAyB,CAAC;QAC7B,MAAM,EAAE;YACJ,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG;YACxB,aAAa,EAAE,CAAC,+CAA+C,CAAC;SACnE;KACJ,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;IAGH,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"}
@@ -0,0 +1,14 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import React from 'react';
3
+ import ReactDOM from 'react-dom/client';
4
+ import { Framework } from '@equinor/fusion-framework-react';
5
+ import { ThemeProvider, theme } from '@equinor/fusion-react-styles';
6
+ import { EquinorLoader } from './EquinorLoader';
7
+ import { configure } from './config';
8
+ import { Router } from './Router';
9
+ import { PeopleResolverProvider } from '@equinor/fusion-framework-react-components-people-provider';
10
+ const target = document.getElementById('root');
11
+ import fallbackSvg from './resources/fallback-photo.svg';
12
+ const fallbackImage = new Blob([fallbackSvg], { type: 'image/svg+xml' });
13
+ ReactDOM.createRoot(target).render(_jsx(React.StrictMode, { children: _jsx(ThemeProvider, { theme: theme, children: _jsx(Framework, { configure: configure, fallback: _jsx(EquinorLoader, { text: "Loading framework" }), children: _jsx(PeopleResolverProvider, { options: { fallbackImage }, children: _jsx(Router, {}) }) }) }) }));
14
+ //# sourceMappingURL=main.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../../src/bin/dev-portal/main.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,QAAQ,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AAEpE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4DAA4D,CAAC;AAEpG,MAAM,MAAM,GAAG,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAgB,CAAC;AAE9D,OAAO,WAAW,MAAM,gCAAgC,CAAC;AAEzD,MAAM,aAAa,GAAG,IAAI,IAAI,CAAC,CAAC,WAAW,CAAC,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,CAAC;AAEzE,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,CAC9B,KAAC,KAAK,CAAC,UAAU,cACb,KAAC,aAAa,IAAC,KAAK,EAAE,KAAK,YACvB,KAAC,SAAS,IAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAC,aAAa,IAAC,IAAI,EAAC,mBAAmB,GAAG,YACjF,KAAC,sBAAsB,IAAC,OAAO,EAAE,EAAE,aAAa,EAAE,YAC9C,KAAC,MAAM,KAAG,GACW,GACjB,GACA,GACD,CACtB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export const svg = `<svg height="24px" width="24px" fill="#999" viewBox="0 0 24 24" title="person" role="img" xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" fill="#eee" /><path d="M12 4C9.79 4 8 5.79 8 8s1.79 4 4 4 4-1.79 4-4-1.79-4-4-4Zm2 4c0-1.1-.9-2-2-2s-2 .9-2 2 .9 2 2 2 2-.9 2-2Zm4 10c-.2-.71-3.3-2-6-2-2.69 0-5.77 1.28-6 2h12ZM4 18c0-2.66 5.33-4 8-4s8 1.34 8 4v2H4v-2Z" fill-rule="evenodd" clip-rule="evenodd" class="sc-dmqHEX eydzYY"></path></svg>`;
2
+ export default svg;
3
+ //# sourceMappingURL=fallback-photo.svg.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fallback-photo.svg.js","sourceRoot":"","sources":["../../../../src/bin/dev-portal/resources/fallback-photo.svg.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,GAAG,GAAG,0cAA0c,CAAC;AAC9d,eAAe,GAAG,CAAC"}
@@ -0,0 +1,40 @@
1
+ import { useFramework } from '@equinor/fusion-framework-react';
2
+ import { Query } from '@equinor/fusion-query';
3
+ import { useMemo, useState } from 'react';
4
+ const createPersonClient = (client) => {
5
+ const expire = 3 * 60 * 1000;
6
+ const queryDetails = new Query({
7
+ expire,
8
+ queueOperator: 'merge',
9
+ key: (azureId) => azureId,
10
+ client: {
11
+ fn: (azureId) => {
12
+ return client.json(`/persons/${azureId}?api-version=4.0`);
13
+ },
14
+ },
15
+ });
16
+ const queryPresence = new Query({
17
+ expire,
18
+ queueOperator: 'merge',
19
+ key: (azureId) => azureId,
20
+ client: {
21
+ fn: (azureId) => client.json(`/persons/${azureId}/presence?api-version=1.0`),
22
+ },
23
+ });
24
+ return {
25
+ getDetails: (azureId) => queryDetails.queryAsync(azureId).then((x) => x.value),
26
+ getPresence: (azureId) => queryPresence.queryAsync(azureId).then((x) => x.value),
27
+ };
28
+ };
29
+ export const usePersonResolver = () => {
30
+ const [resolver, setResolver] = useState(undefined);
31
+ const framework = useFramework();
32
+ useMemo(() => {
33
+ framework.modules.serviceDiscovery
34
+ .createClient('people')
35
+ .then((httpClient) => createPersonClient(httpClient))
36
+ .then(setResolver);
37
+ }, [framework]);
38
+ return resolver;
39
+ };
40
+ //# sourceMappingURL=usePersonResolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usePersonResolver.js","sourceRoot":"","sources":["../../../src/bin/dev-portal/usePersonResolver.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE1C,MAAM,kBAAkB,GAAG,CAAC,MAAmB,EAAE,EAAE;IAE/C,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;IAC7B,MAAM,YAAY,GAAG,IAAI,KAAK,CAAC;QAC3B,MAAM;QACN,aAAa,EAAE,OAAO;QACtB,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO;QACzB,MAAM,EAAE;YACJ,EAAE,EAAE,CAAC,OAAe,EAAE,EAAE;gBACpB,OAAO,MAAM,CAAC,IAAI,CAAgB,YAAY,OAAO,kBAAkB,CAAC,CAAC;YAC7E,CAAC;SACJ;KACJ,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,IAAI,KAAK,CAAC;QAC5B,MAAM;QACN,aAAa,EAAE,OAAO;QACtB,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO;QACzB,MAAM,EAAE;YACJ,EAAE,EAAE,CAAC,OAAe,EAAE,EAAE,CACpB,MAAM,CAAC,IAAI,CAAiB,YAAY,OAAO,2BAA2B,CAAC;SAClF;KACJ,CAAC,CAAC;IAEH,OAAO;QACH,UAAU,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QACtF,WAAW,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;KAC3F,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,EAAE;IAGlC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAkB,SAAS,CAAC,CAAC;IACrE,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;IACjC,OAAO,CAAC,GAAG,EAAE;QACT,SAAS,CAAC,OAAO,CAAC,gBAAgB;aAC7B,YAAY,CAAC,QAAQ,CAAC;aACtB,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;aACpD,IAAI,CAAC,WAAW,CAAC,CAAC;IAC3B,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAChB,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAC"}