@equinor/fusion-framework-cli 8.1.1 → 9.0.1

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 (133) hide show
  1. package/CHANGELOG.md +105 -0
  2. package/README.md +78 -0
  3. package/bin/cli.mjs +1 -4
  4. package/dist/bin/build-application.js +44 -0
  5. package/dist/bin/build-application.js.map +1 -0
  6. package/dist/bin/bundle-application.js +55 -0
  7. package/dist/bin/bundle-application.js.map +1 -0
  8. package/dist/bin/create-dev-serve.js +117 -0
  9. package/dist/bin/create-dev-serve.js.map +1 -0
  10. package/dist/bin/create-export-config.js +51 -0
  11. package/dist/bin/create-export-config.js.map +1 -0
  12. package/dist/bin/create-export-manifest.js +60 -0
  13. package/dist/bin/create-export-manifest.js.map +1 -0
  14. package/dist/bin/dev-portal/AppLoader.js +54 -0
  15. package/dist/bin/dev-portal/AppLoader.js.map +1 -0
  16. package/dist/bin/dev-portal/BookMarkSideSheet.js +15 -0
  17. package/dist/bin/dev-portal/BookMarkSideSheet.js.map +1 -0
  18. package/dist/bin/dev-portal/ContextSelector.js +107 -0
  19. package/dist/bin/dev-portal/ContextSelector.js.map +1 -0
  20. package/dist/bin/dev-portal/EquinorLoader.js +14 -0
  21. package/dist/bin/dev-portal/EquinorLoader.js.map +1 -0
  22. package/dist/bin/dev-portal/ErrorViewer.js +7 -0
  23. package/dist/bin/dev-portal/ErrorViewer.js.map +1 -0
  24. package/dist/bin/dev-portal/FusionLogo.js +4 -0
  25. package/dist/bin/dev-portal/FusionLogo.js.map +1 -0
  26. package/dist/bin/dev-portal/Header.js +31 -0
  27. package/dist/bin/dev-portal/Header.js.map +1 -0
  28. package/dist/bin/dev-portal/Router.js +46 -0
  29. package/dist/bin/dev-portal/Router.js.map +1 -0
  30. package/dist/bin/dev-portal/config.js +45 -0
  31. package/dist/bin/dev-portal/config.js.map +1 -0
  32. package/dist/bin/dev-portal/main.js +11 -0
  33. package/dist/bin/dev-portal/main.js.map +1 -0
  34. package/dist/bin/dev-portal/usePersonResolver.js +40 -0
  35. package/dist/bin/dev-portal/usePersonResolver.js.map +1 -0
  36. package/dist/bin/dev-proxy.js +75 -0
  37. package/dist/bin/dev-proxy.js.map +1 -0
  38. package/dist/bin/main.app.js +78 -0
  39. package/dist/bin/main.app.js.map +1 -0
  40. package/dist/bin/main.js +18 -0
  41. package/dist/bin/main.js.map +1 -0
  42. package/dist/bin/utils/execute-commant.js +20 -0
  43. package/dist/bin/utils/execute-commant.js.map +1 -0
  44. package/dist/bin/utils/format.js +17 -0
  45. package/dist/bin/utils/format.js.map +1 -0
  46. package/dist/bin/utils/load-app-config.js +34 -0
  47. package/dist/bin/utils/load-app-config.js.map +1 -0
  48. package/dist/bin/utils/load-manifest.js +35 -0
  49. package/dist/bin/utils/load-manifest.js.map +1 -0
  50. package/dist/bin/utils/load-package.js +24 -0
  51. package/dist/bin/utils/load-package.js.map +1 -0
  52. package/dist/bin/utils/load-vite-config.js +54 -0
  53. package/dist/bin/utils/load-vite-config.js.map +1 -0
  54. package/dist/bin/utils/spinner.js +67 -0
  55. package/dist/bin/utils/spinner.js.map +1 -0
  56. package/dist/lib/app-config.js +54 -0
  57. package/dist/lib/app-config.js.map +1 -0
  58. package/dist/lib/app-manifest.js +70 -0
  59. package/dist/lib/app-manifest.js.map +1 -0
  60. package/dist/lib/app-package.js +33 -0
  61. package/dist/lib/app-package.js.map +1 -0
  62. package/dist/lib/index.js +4 -0
  63. package/dist/lib/index.js.map +1 -0
  64. package/dist/lib/utils/assert.js +27 -0
  65. package/dist/lib/utils/assert.js.map +1 -0
  66. package/dist/lib/utils/config.js +76 -0
  67. package/dist/lib/utils/config.js.map +1 -0
  68. package/dist/lib/utils/expect.js +27 -0
  69. package/dist/lib/utils/expect.js.map +1 -0
  70. package/dist/lib/utils/file-exists.js +27 -0
  71. package/dist/lib/utils/file-exists.js.map +1 -0
  72. package/dist/lib/utils/types.js +2 -0
  73. package/dist/lib/utils/types.js.map +1 -0
  74. package/dist/lib/vite-config.js +81 -0
  75. package/dist/lib/vite-config.js.map +1 -0
  76. package/dist/lib/vite-logger.js +14 -0
  77. package/dist/lib/vite-logger.js.map +1 -0
  78. package/dist/types/bin/build-application.d.ts +12 -0
  79. package/dist/types/bin/bundle-application.d.ts +4 -0
  80. package/dist/types/bin/create-dev-serve.d.ts +10 -0
  81. package/dist/types/bin/create-export-config.d.ts +7 -0
  82. package/dist/types/bin/create-export-manifest.d.ts +20 -0
  83. package/dist/types/bin/dev-portal/AppLoader.d.ts +4 -0
  84. package/dist/types/bin/dev-portal/BookMarkSideSheet.d.ts +6 -0
  85. package/dist/types/bin/dev-portal/ContextSelector.d.ts +2 -0
  86. package/dist/types/bin/dev-portal/EquinorLoader.d.ts +5 -0
  87. package/dist/types/bin/dev-portal/ErrorViewer.d.ts +4 -0
  88. package/dist/types/bin/dev-portal/FusionLogo.d.ts +6 -0
  89. package/dist/types/bin/dev-portal/Header.d.ts +3 -0
  90. package/dist/types/bin/dev-portal/Router.d.ts +1 -0
  91. package/dist/types/bin/dev-portal/config.d.ts +3 -0
  92. package/dist/types/bin/dev-portal/main.d.ts +1 -0
  93. package/dist/types/bin/dev-portal/usePersonResolver.d.ts +1 -0
  94. package/dist/types/bin/dev-proxy.d.ts +27 -0
  95. package/dist/types/bin/main.app.d.ts +3 -0
  96. package/dist/types/bin/main.d.ts +1 -0
  97. package/dist/types/bin/utils/execute-commant.d.ts +8 -0
  98. package/dist/types/bin/utils/format.d.ts +9 -0
  99. package/dist/types/bin/utils/load-app-config.d.ts +9 -0
  100. package/dist/types/bin/utils/load-manifest.d.ts +9 -0
  101. package/dist/types/bin/utils/load-package.d.ts +5 -0
  102. package/dist/types/bin/utils/load-vite-config.d.ts +10 -0
  103. package/dist/types/bin/utils/spinner.d.ts +19 -0
  104. package/dist/types/lib/app-config.d.ts +27 -0
  105. package/dist/types/lib/app-manifest.d.ts +35 -0
  106. package/dist/types/lib/app-package.d.ts +23 -0
  107. package/dist/types/lib/index.d.ts +3 -0
  108. package/dist/types/lib/utils/assert.d.ts +10 -0
  109. package/dist/types/lib/utils/config.d.ts +26 -0
  110. package/dist/types/lib/utils/expect.d.ts +4 -0
  111. package/dist/types/lib/utils/file-exists.d.ts +6 -0
  112. package/dist/types/lib/utils/types.d.ts +6 -0
  113. package/dist/types/lib/vite-config.d.ts +17 -0
  114. package/dist/types/lib/vite-logger.d.ts +2 -0
  115. package/dist/types/version.d.ts +1 -0
  116. package/dist/version.js +1 -1
  117. package/package.json +26 -2
  118. package/dist/scripts/app-config.d.ts +0 -38
  119. package/dist/scripts/app-config.js +0 -73
  120. package/dist/scripts/app-config.js.map +0 -1
  121. package/dist/scripts/create-config.d.ts +0 -7
  122. package/dist/scripts/create-config.js +0 -59
  123. package/dist/scripts/create-config.js.map +0 -1
  124. package/dist/scripts/main.d.ts +0 -2
  125. package/dist/scripts/main.js +0 -51
  126. package/dist/scripts/main.js.map +0 -1
  127. package/dist/scripts/serve.d.ts +0 -6
  128. package/dist/scripts/serve.js +0 -109
  129. package/dist/scripts/serve.js.map +0 -1
  130. package/dist/version.d.ts +0 -1
  131. /package/dist/{scripts/dev-portal → bin/public}/assets/index-61aab88e.js +0 -0
  132. /package/dist/{scripts/dev-portal → bin/public}/index.html +0 -0
  133. /package/dist/{index.d.ts → types/index.d.ts} +0 -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 = (props) => (_jsxs("svg", { viewBox: "0 0 50 35", style: Object.assign({ height: '1em' }, props.style), 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,KAAsB,EAAE,EAAE,CAAC,CAClD,eAAK,OAAO,EAAC,WAAW,EAAC,KAAK,kBAAI,MAAM,EAAE,KAAK,IAAK,KAAK,CAAC,KAAK,cAC3D,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,31 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { useState, useRef } 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 { add, menu, tag } from '@equinor/eds-icons';
10
+ import { styled } from 'styled-components';
11
+ Icon.add({ menu, add, tag });
12
+ const Styled = {
13
+ Title: styled.div `
14
+ display: flex;
15
+ align-items: center;
16
+ gap: 0.75rem;
17
+ font-size: 1rem;
18
+ font-weight: 500;
19
+ `,
20
+ };
21
+ export const Header = () => {
22
+ const buttonRef = useRef(null);
23
+ const [open, setOpen] = useState(false);
24
+ const [isBookmarkOpen, setIsBookmarkOpen] = useState(false);
25
+ function toggleBookmark() {
26
+ setIsBookmarkOpen((s) => !s);
27
+ }
28
+ return (_jsxs(_Fragment, { children: [_jsxs(TopBar, { id: "cli-top-bar", sticky: false, style: { padding: 0, height: 48 }, children: [_jsxs(TopBar.Header, { children: [_jsx(Button, { ref: buttonRef, onClick: () => setOpen(!open), variant: "ghost_icon", children: _jsx(Icon, { name: "menu" }) }), _jsxs(Styled.Title, { children: [_jsx(FusionLogo, {}), _jsx("span", { children: "Fusion CLI" })] })] }), _jsx(TopBar.CustomContent, { children: _jsx(ContextSelector, {}) }), _jsx(TopBar.Actions, { style: { minWidth: 48, minHeight: 48 }, children: _jsx(Button, { onClick: toggleBookmark, variant: "ghost_icon", children: _jsx(Icon, { name: "tag" }) }) })] }), _jsx(BookmarkProvider, { children: _jsx(BookmarkSideSheet, { isOpen: isBookmarkOpen, onClose: toggleBookmark }) })] }));
29
+ };
30
+ export default Header;
31
+ //# 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,EAAE,MAAM,OAAO,CAAC;AACzC,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,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,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,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAExC,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5D,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,MAAC,MAAM,CAAC,MAAM,eACV,KAAC,MAAM,IAAC,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAC,YAAY,YACvE,KAAC,IAAI,IAAC,IAAI,EAAC,MAAM,GAAG,GACf,EACT,MAAC,MAAM,CAAC,KAAK,eACT,KAAC,UAAU,KAAG,EACd,wCAAuB,IACZ,IACH,EAChB,KAAC,MAAM,CAAC,aAAa,cACjB,KAAC,eAAe,KAAG,GACA,EAEvB,KAAC,MAAM,CAAC,OAAO,IAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,YAClD,KAAC,MAAM,IAAC,OAAO,EAAE,cAAc,EAAE,OAAO,EAAC,YAAY,YACjD,KAAC,IAAI,IAAC,IAAI,EAAC,KAAK,GAAG,GACd,GACI,IACZ,EACT,KAAC,gBAAgB,cACb,KAAC,iBAAiB,IAAC,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,cAAc,GAAI,GACvD,IACpB,CACN,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -0,0 +1,46 @@
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 { PersonProvider } from '@equinor/fusion-react-person';
7
+ import { usePersonResolver } from './usePersonResolver';
8
+ import { useFramework } from '@equinor/fusion-framework-react';
9
+ import { useState } from 'react';
10
+ import { styled } from 'styled-components';
11
+ const Styled = {
12
+ ContentContainer: styled.div `
13
+ display: grid;
14
+ grid-template-columns: 1fr;
15
+ grid-template-rows: 48px 1fr;
16
+ height: 100vh;
17
+ overflow: hidden;
18
+ `,
19
+ };
20
+ const Root = () => {
21
+ const personResolver = usePersonResolver();
22
+ useBookmarkNavigate({ resolveAppPath: (appKey) => `/apps/${appKey}` });
23
+ return (_jsx(PersonProvider, { resolve: personResolver, children: _jsxs(Styled.ContentContainer, { children: [_jsx(Header, {}), _jsx(Outlet, {})] }) }));
24
+ };
25
+ const AppRoute = () => {
26
+ const { appKey } = useParams();
27
+ return appKey ? _jsx(AppLoader, { appKey: appKey }) : null;
28
+ };
29
+ const routes = [
30
+ {
31
+ path: '/',
32
+ element: _jsx(Root, {}),
33
+ children: [
34
+ {
35
+ path: 'apps/:appKey/*',
36
+ element: _jsx(AppRoute, {}),
37
+ },
38
+ ],
39
+ },
40
+ ];
41
+ export const Router = () => {
42
+ const { navigation } = useFramework().modules;
43
+ const [router] = useState(() => navigation.createRouter(routes));
44
+ return (_jsx(RouterProvider, { router: router, fallbackElement: _jsx("p", { children: "wooot" }) }));
45
+ };
46
+ //# 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,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,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,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;IAE3C,mBAAmB,CAAC,EAAE,cAAc,EAAE,CAAC,MAAc,EAAE,EAAE,CAAC,SAAS,MAAM,EAAE,EAAE,CAAC,CAAC;IAE/E,OAAO,CACH,KAAC,cAAc,IAAC,OAAO,EAAE,cAAc,YACnC,MAAC,MAAM,CAAC,gBAAgB,eACpB,KAAC,MAAM,KAAG,EACV,KAAC,MAAM,KAAG,IACY,GACb,CACpB,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,45 @@
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
+ export const configure = (config) => __awaiter(void 0, void 0, void 0, function* () {
15
+ config.logger.level = 0;
16
+ config.configureServiceDiscovery({
17
+ client: {
18
+ baseUri: import.meta.url,
19
+ defaultScopes: ['5a842df8-3238-415d-b168-9f16a6a6031b/.default'],
20
+ },
21
+ });
22
+ config.configureMsal({
23
+ tenantId: '3aa4a235-b6e2-48d5-9195-7fcf05b459b0',
24
+ clientId: '9b707e3a-3e90-41ed-a47e-652a1e3b53d0',
25
+ redirectUri: '/authentication/login-callback',
26
+ }, { requiresAuth: true });
27
+ enableAppModule(config);
28
+ enableNavigation(config);
29
+ enableBookmark(config, (builder) => {
30
+ builder.setSourceSystem({
31
+ subSystem: 'CLI',
32
+ identifier: 'fusion-cli',
33
+ name: 'Fusion CLI',
34
+ });
35
+ });
36
+ config.onConfigured(() => {
37
+ console.log('framework config done');
38
+ });
39
+ config.onInitialized((fusion) => __awaiter(void 0, void 0, void 0, function* () {
40
+ fusion.auth.defaultClient.setLogger(new ConsoleLogger(0));
41
+ console.debug('📒 subscribing to all events');
42
+ }));
43
+ });
44
+ export default configure;
45
+ //# 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;AAE/E,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,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,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;QAE1D,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAElD,CAAC,CAAA,CAAC,CAAC;AACP,CAAC,CAAA,CAAC;AAEF,eAAe,SAAS,CAAC"}
@@ -0,0 +1,11 @@
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
+ const target = document.getElementById('root');
10
+ 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(Router, {}) }) }) }));
11
+ //# 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;AAElC,MAAM,MAAM,GAAG,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAgB,CAAC;AAE9D,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,MAAM,KAAG,GACF,GACA,GACD,CACtB,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"}
@@ -0,0 +1,75 @@
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 express from 'express';
11
+ import { createProxyMiddleware, responseInterceptor, } from 'http-proxy-middleware';
12
+ import { Spinner } from './utils/spinner.js';
13
+ import chalk, { formatPath } from './utils/format.js';
14
+ const createResponseInterceptor = (cb) => {
15
+ return responseInterceptor((responseBuffer, proxyRes, req, res) => __awaiter(void 0, void 0, void 0, function* () {
16
+ var _a, _b, _c;
17
+ res.setHeader('x-proxy-status-message', (_a = proxyRes.statusMessage) !== null && _a !== void 0 ? _a : '');
18
+ res.setHeader('x-proxy-status-code', (_b = proxyRes.statusCode) !== null && _b !== void 0 ? _b : '');
19
+ const { response, statusCode, path } = (_c = (yield Promise.resolve(cb(req.params, proxyRes, Number(proxyRes.statusCode) < 400 &&
20
+ JSON.parse(responseBuffer.toString('utf8')))))) !== null && _c !== void 0 ? _c : {};
21
+ if (statusCode) {
22
+ res.statusCode = statusCode;
23
+ }
24
+ if (response) {
25
+ path && res.setHeader('x-interceptor-handler', path);
26
+ return JSON.stringify(response);
27
+ }
28
+ return responseBuffer;
29
+ }));
30
+ };
31
+ export const createDevProxy = (handler, options) => {
32
+ var _a;
33
+ const proxyOptions = Object.assign({
34
+ changeOrigin: true,
35
+ selfHandleResponse: true,
36
+ onProxyReq: (proxyReq) => {
37
+ const spinner = Spinner.Clone();
38
+ spinner.ora.suffixText = formatPath([proxyReq.protocol, '//', proxyReq.host, proxyReq.path].join(''));
39
+ spinner.start('proxy request');
40
+ proxyReq.on('response', (res) => {
41
+ var _a;
42
+ if (Number(res.statusCode) < 400) {
43
+ spinner.succeed();
44
+ }
45
+ else {
46
+ spinner.warn(chalk.yellow((_a = res.statusMessage) !== null && _a !== void 0 ? _a : `${res.statusCode} `));
47
+ }
48
+ spinner.stop();
49
+ });
50
+ proxyReq.on('error', () => {
51
+ spinner.fail();
52
+ });
53
+ },
54
+ }, options);
55
+ const app = express();
56
+ app.disable('x-powered-by');
57
+ (_a = options.staticAssets) === null || _a === void 0 ? void 0 : _a.forEach((asset) => {
58
+ app.use(express.static(asset.path, asset.options));
59
+ });
60
+ app.use(createProxyMiddleware('/_discovery/environments/current', Object.assign(Object.assign({}, proxyOptions), { onProxyRes: responseInterceptor((responseBuffer, _proxyRes, req) => __awaiter(void 0, void 0, void 0, function* () {
61
+ const response = JSON.parse(responseBuffer.toString('utf8'));
62
+ response.environmentName = 'DEVELOPMENT';
63
+ response.services = response.services.filter((x) => x.key !== 'app');
64
+ response.services.push({
65
+ key: 'app',
66
+ uri: new URL('/', req.headers.referer).href,
67
+ });
68
+ return JSON.stringify(response);
69
+ })) })));
70
+ app.get('/api/apps/:appKey/config', createProxyMiddleware('/api/apps/*/config', Object.assign(Object.assign({}, proxyOptions), { onProxyRes: createResponseInterceptor(handler.onConfigResponse) })));
71
+ app.get('/api/apps/:appKey', createProxyMiddleware('/api/apps/*', Object.assign(Object.assign({}, proxyOptions), { onProxyRes: createResponseInterceptor(handler.onManifestResponse) })));
72
+ return app;
73
+ };
74
+ export default createDevProxy;
75
+ //# sourceMappingURL=dev-proxy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev-proxy.js","sourceRoot":"","sources":["../../src/bin/dev-proxy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,78 @@
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 { createDevServer } from './create-dev-serve.js';
11
+ import { buildApplication } from './build-application.js';
12
+ import { formatPath, chalk } from './utils/format.js';
13
+ import createExportManifest from './create-export-manifest.js';
14
+ import { bundleApplication } from './bundle-application.js';
15
+ import { createExportConfig } from './create-export-config.js';
16
+ export default (program) => {
17
+ const app = program
18
+ .command('app')
19
+ .description('Tooling for developing applications build on Fusion Framework');
20
+ app.command('dev')
21
+ .description('Create a development server')
22
+ .option('-p, --port <number>', 'dev-server port')
23
+ .option('-P, --portal <string>', 'fusion portal host')
24
+ .option('-c, --config <file>', `use specified application config, by default search for ${formatPath('app.config.{ts,js,json}')}`)
25
+ .option(' --manifest <file>', `use specified manifest, by default search for ${formatPath('app.manifest.config.{ts,js,json}')}`)
26
+ .option(' --vite <file>', `use specified Vite config file, by default search for ${formatPath('app.vite.config.{ts,js,json}')}`)
27
+ .option('-F, --framework <string>', `application framework to build the application on, supported: [${chalk.yellowBright('react')}]`, 'react')
28
+ .action((opt) => __awaiter(void 0, void 0, void 0, function* () {
29
+ var _a;
30
+ yield createDevServer({
31
+ portal: (_a = process.env.FUSION_PORTAL_HOST) !== null && _a !== void 0 ? _a : 'https://fusion-s-portal-ci.azurewebsites.net',
32
+ configSourceFiles: {
33
+ app: opt.config,
34
+ manifest: opt.manifest,
35
+ vite: opt.vite,
36
+ },
37
+ library: opt.framework,
38
+ port: opt.port,
39
+ });
40
+ }));
41
+ app.command('build')
42
+ .option('-o, --outDir, <string>', 'output directory of package', 'dist')
43
+ .option('-c, --config <string>', 'Use specified config file, see https://vitejs.dev/guide/cli.html#build')
44
+ .option(' --vite <string>', `use specified Vite config file, by default search for ${formatPath('app.config.vite.{ts,js,json}')}`)
45
+ .option('-F, --framework <string>', `application framework to build the application on, supported: [${chalk.yellowBright('react')}]`, 'react')
46
+ .action((opt) => __awaiter(void 0, void 0, void 0, function* () {
47
+ buildApplication({
48
+ configSourceFiles: {
49
+ vite: opt.vite,
50
+ },
51
+ outDir: opt.outDir,
52
+ });
53
+ }));
54
+ app.command('config')
55
+ .option('-o, --output <string>', 'output file')
56
+ .option('-c, --config <string>', 'application config file')
57
+ .action((opt) => {
58
+ createExportConfig({
59
+ outputFile: opt.output,
60
+ configFile: opt.config,
61
+ });
62
+ });
63
+ app.command('manifest')
64
+ .option('-o, --output <string>', 'output file')
65
+ .option('-c, --config <string>', 'manifest config file')
66
+ .action((opt) => {
67
+ createExportManifest({
68
+ outputFile: opt.output,
69
+ configFile: opt.config,
70
+ });
71
+ });
72
+ app.command('pack')
73
+ .option('-o, --outDir, <string>', 'output directory of package', 'dist')
74
+ .action((opt) => __awaiter(void 0, void 0, void 0, function* () {
75
+ bundleApplication({ archive: 'app.bundle.zip', outDir: opt.outDir });
76
+ }));
77
+ };
78
+ //# sourceMappingURL=main.app.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.app.js","sourceRoot":"","sources":["../../src/bin/main.app.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ var _a;
2
+ import { fileURLToPath } from 'node:url';
3
+ import { dirname, resolve } from 'node:path';
4
+ import { readPackageUpSync } from 'read-pkg-up';
5
+ const pkg = readPackageUpSync({ cwd: fileURLToPath(import.meta.url) });
6
+ if (!pkg) {
7
+ throw Error('failed to find program root');
8
+ }
9
+ process.env.CLI_BIN = resolve(dirname(pkg.path), String(pkg.packageJson.bin['fusion-framework-cli']));
10
+ import { Command } from 'commander';
11
+ const program = new Command();
12
+ program.name(pkg.packageJson.name);
13
+ program.description((_a = pkg.packageJson.description) !== null && _a !== void 0 ? _a : 'CLI for Fusion Framework');
14
+ program.version(pkg.packageJson.version);
15
+ import app from './main.app.js';
16
+ app(program);
17
+ program.parse();
18
+ //# sourceMappingURL=main.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/bin/main.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAG7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,MAAM,GAAG,GAAG,iBAAiB,CAAC,EAAE,GAAG,EAAE,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AACvE,IAAI,CAAC,GAAG,EAAE;IACN,MAAM,KAAK,CAAC,6BAA6B,CAAC,CAAC;CAC9C;AACD,OAAO,CAAC,GAAG,CAAC,OAAO,GAAG,OAAO,CACzB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EACjB,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,GAAI,CAAC,sBAAsB,CAAC,CAAC,CACvD,CAAC;AAEF,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAC9B,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;AACnC,OAAO,CAAC,WAAW,CAAC,MAAA,GAAG,CAAC,WAAW,CAAC,WAAW,mCAAI,0BAA0B,CAAC,CAAC;AAC/E,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AAGzC,OAAO,GAAG,MAAM,eAAe,CAAC;AAChC,GAAG,CAAC,OAAO,CAAC,CAAC;AAGb,OAAO,CAAC,KAAK,EAAE,CAAC"}
@@ -0,0 +1,20 @@
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 { fork } from 'node:child_process';
11
+ import { assert } from 'node:console';
12
+ export const executeCommand = (program, command, ...options) => __awaiter(void 0, void 0, void 0, function* () {
13
+ assert(process.env.CLI_BIN, 'expected bin path in env');
14
+ return new Promise((resolve, reject) => {
15
+ const job = fork(String(process.env.CLI_BIN), [program, command, ...(options !== null && options !== void 0 ? options : [])], {});
16
+ job.addListener('close', resolve);
17
+ job.addListener('error', reject);
18
+ });
19
+ });
20
+ //# sourceMappingURL=execute-commant.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute-commant.js","sourceRoot":"","sources":["../../../src/bin/utils/execute-commant.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAUtC,MAAM,CAAC,MAAM,cAAc,GAAG,CAC1B,OAAiB,EACjB,OAAiC,EAGjC,GAAG,OAAc,EACnB,EAAE;IACA,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,0BAA0B,CAAC,CAAC;IACxD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACnC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1F,GAAG,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAClC,GAAG,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;AACP,CAAC,CAAA,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { relative } from 'node:path';
2
+ import { statSync } from 'node:fs';
3
+ import chalk from 'chalk';
4
+ import prettyBytes from 'pretty-bytes';
5
+ export { chalk };
6
+ export const formatPath = (path, opt) => {
7
+ var _a;
8
+ return chalk.blueBright((opt === null || opt === void 0 ? void 0 : opt.relative) ? relative((_a = opt === null || opt === void 0 ? void 0 : opt.cwd) !== null && _a !== void 0 ? _a : process.cwd(), path) : path);
9
+ };
10
+ export const formatByteSize = (input) => {
11
+ if (typeof input === 'string') {
12
+ return formatByteSize(statSync(input).size);
13
+ }
14
+ return chalk.yellowBright(prettyBytes(input));
15
+ };
16
+ export default chalk;
17
+ //# sourceMappingURL=format.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../../../src/bin/utils/format.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,WAAW,MAAM,cAAc,CAAC;AAEvC,OAAO,EAAE,KAAK,EAAE,CAAC;AAEjB,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,GAA0C,EAAE,EAAE;;IACnF,OAAO,KAAK,CAAC,UAAU,CAAC,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,QAAQ,EAAC,CAAC,CAAC,QAAQ,CAAC,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,GAAG,mCAAI,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AAC9F,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAsB,EAAU,EAAE;IAC7D,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC3B,OAAO,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;KAC/C;IACD,OAAO,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;AAClD,CAAC,CAAC;AAEF,eAAe,KAAK,CAAC"}