@equinor/fusion-framework-cli 11.0.0-next.13 → 11.0.0-next.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,36 @@
1
1
  # Change Log
2
2
 
3
+ ## 11.0.0-next.15
4
+
5
+ ### Patch Changes
6
+
7
+ - [#3137](https://github.com/equinor/fusion-framework/pull/3137) [`7c58c78`](https://github.com/equinor/fusion-framework/commit/7c58c7868c66b1fc0f720b4ed13d39e0fe505461) Thanks [@odinr](https://github.com/odinr)! - updates from main
8
+
9
+ - [#3075](https://github.com/equinor/fusion-framework/pull/3075) [`db34d90`](https://github.com/equinor/fusion-framework/commit/db34d9003d64e4c7cb46cf0c95f0c7a0e7587128) Thanks [@odinr](https://github.com/odinr)! - merge with main
10
+
11
+ - Updated dependencies [[`7c58c78`](https://github.com/equinor/fusion-framework/commit/7c58c7868c66b1fc0f720b4ed13d39e0fe505461), [`db34d90`](https://github.com/equinor/fusion-framework/commit/db34d9003d64e4c7cb46cf0c95f0c7a0e7587128)]:
12
+ - @equinor/fusion-imports@1.1.1-next.1
13
+ - @equinor/fusion-framework-dev-portal@1.0.0-next.3
14
+ - @equinor/fusion-framework-dev-server@1.0.0-next.10
15
+
16
+ ## 11.0.0-next.14
17
+
18
+ ### Patch Changes
19
+
20
+ - [#3075](https://github.com/equinor/fusion-framework/pull/3075) [`5973182`](https://github.com/equinor/fusion-framework/commit/5973182b156adb56137f1fc683635ae15274cc57) Thanks [@odinr](https://github.com/odinr)! - Update portal config and manifest API routes and types for consistency:
21
+
22
+ - Change dev server API route for portal manifest/config from `/portals/portals/...` to `/portal-config/portals/...` for alignment with client usage.
23
+ - Make portal config optional in dev server route and type definitions.
24
+ - Update SPA bootstrap to use `portal-config` as the service discovery client key.
25
+ - Refactor portal manifest/config loading and merging to use `RecursivePartial` and `lodash.mergewith` for deep merge support.
26
+ - Remove unused zod import from portal config type.
27
+
28
+ These changes improve consistency, flexibility, and correctness in portal manifest/config handling across CLI and SPA plugin.
29
+
30
+ - Updated dependencies []:
31
+ - @equinor/fusion-framework-dev-server@1.0.0-next.9
32
+ - @equinor/fusion-framework-dev-portal@1.0.0-next.2
33
+
3
34
  ## 11.0.0-next.13
4
35
 
5
36
  ### Patch Changes
package/bin/build/bin.js CHANGED
@@ -1,4 +1,4 @@
1
- export { b as buildApplication, c as buildPortal, a as bundleApp, d as bundlePortal, g as generateApplicationConfig, e as generatePortalConfig, l as loadPortalManifest, h as pack, p as publishAppConfig, f as publishPortalConfig, s as startAppDevServer } from './portal-config-publish-DfiJReWS.js';
1
+ export { b as buildApplication, c as buildPortal, a as bundleApp, d as bundlePortal, g as generateApplicationConfig, e as generatePortalConfig, l as loadPortalManifest, h as pack, p as publishAppConfig, f as publishPortalConfig, s as startAppDevServer } from './portal-config-publish-8-d0BD44.js';
2
2
  import 'vite';
3
3
  import 'chalk';
4
4
  import '@equinor/fusion-imports';
package/bin/build/cli.js CHANGED
@@ -4,7 +4,7 @@ import { readPackageUpSync } from 'read-package-up';
4
4
  import { createCommand, createOption, InvalidOptionArgumentError, Command } from 'commander';
5
5
  import 'node:fs';
6
6
  import chalk from 'chalk';
7
- import { S as Spinner, b as buildApplication, a as bundleApp, F as FusionEnv, r as resolveDefaultEnv, i as resolveProjectPackage, j as resolveAppManifest, k as initializeFramework, p as publishAppConfig, g as generateApplicationConfig, m as formatPath, H as HttpJsonResponseError, n as loadAppManifest, s as startAppDevServer, o as fileExistsSync, N as NoAccountsError, q as resolvePortalManifest, t as resolvePortalConfig, u as createDevServer, l as loadPortalManifest, v as getDefaultExportFromCjs, w as loadPortalSchema, x as writeFile$1, c as buildPortal, d as bundlePortal, f as publishPortalConfig, e as generatePortalConfig } from './portal-config-publish-DfiJReWS.js';
7
+ import { S as Spinner, b as buildApplication, a as bundleApp, F as FusionEnv, r as resolveDefaultEnv, i as resolveProjectPackage, j as resolveAppManifest, k as initializeFramework, p as publishAppConfig, g as generateApplicationConfig, m as formatPath, H as HttpJsonResponseError, n as loadAppManifest, s as startAppDevServer, o as fileExistsSync, N as NoAccountsError, q as resolvePortalManifest, t as resolvePortalConfig, u as createDevServer, l as loadPortalManifest, v as getDefaultExportFromCjs, w as loadPortalSchema, x as writeFile$1, c as buildPortal, d as bundlePortal, f as publishPortalConfig, e as generatePortalConfig } from './portal-config-publish-8-d0BD44.js';
8
8
  import { importJSON } from '@equinor/fusion-imports';
9
9
  import '@equinor/fusion-framework-dev-server';
10
10
  import 'vite';
@@ -1,4 +1,4 @@
1
- import { P as PublicClientApplication } from './portal-config-publish-DfiJReWS.js';
1
+ import { P as PublicClientApplication } from './portal-config-publish-8-d0BD44.js';
2
2
  import 'crypto';
3
3
  import { promises } from 'fs';
4
4
  import { pid } from 'process';
@@ -30,7 +30,7 @@ import 'node:buffer';
30
30
  import 'node:util';
31
31
  import 'ora';
32
32
 
33
- /*! @azure/msal-node-extensions v1.5.13 2025-05-06 */
33
+ /*! @azure/msal-node-extensions v1.5.14 2025-05-30 */
34
34
  /*
35
35
  * Copyright (c) Microsoft Corporation. All rights reserved.
36
36
  * Licensed under the MIT License.
@@ -87,7 +87,7 @@ const ErrorCodes = {
87
87
  UNKNOWN: "unknown_error",
88
88
  };
89
89
 
90
- /*! @azure/msal-node-extensions v1.5.13 2025-05-06 */
90
+ /*! @azure/msal-node-extensions v1.5.14 2025-05-30 */
91
91
  /*
92
92
  * Copyright (c) Microsoft Corporation. All rights reserved.
93
93
  * Licensed under the MIT License.
@@ -175,7 +175,7 @@ class PersistenceError extends Error {
175
175
  }
176
176
  }
177
177
 
178
- /*! @azure/msal-node-extensions v1.5.13 2025-05-06 */
178
+ /*! @azure/msal-node-extensions v1.5.14 2025-05-30 */
179
179
  /*
180
180
  * Copyright (c) Microsoft Corporation. All rights reserved.
181
181
  * Licensed under the MIT License.
@@ -187,7 +187,7 @@ const isNodeError = (error) => {
187
187
  return !!error && typeof error === "object" && error.hasOwnProperty("code");
188
188
  };
189
189
 
190
- /*! @azure/msal-node-extensions v1.5.13 2025-05-06 */
190
+ /*! @azure/msal-node-extensions v1.5.14 2025-05-30 */
191
191
 
192
192
  /*
193
193
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -274,7 +274,7 @@ class CrossPlatformLock {
274
274
  }
275
275
  }
276
276
 
277
- /*! @azure/msal-node-extensions v1.5.13 2025-05-06 */
277
+ /*! @azure/msal-node-extensions v1.5.14 2025-05-30 */
278
278
 
279
279
  /*
280
280
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -368,7 +368,7 @@ class PersistenceCachePlugin {
368
368
  }
369
369
  }
370
370
 
371
- /*! @azure/msal-node-extensions v1.5.13 2025-05-06 */
371
+ /*! @azure/msal-node-extensions v1.5.14 2025-05-30 */
372
372
 
373
373
  /*
374
374
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -399,8 +399,8 @@ class BasePersistence {
399
399
  }
400
400
  }
401
401
 
402
- /*! @azure/msal-node-extensions v1.5.13 2025-05-06 */
403
- /*! @azure/msal-common v15.6.0 2025-05-06 */
402
+ /*! @azure/msal-node-extensions v1.5.14 2025-05-30 */
403
+ /*! @azure/msal-common v15.7.0 2025-05-30 */
404
404
  /*
405
405
  * Copyright (c) Microsoft Corporation. All rights reserved.
406
406
  * Licensed under the MIT License.
@@ -408,9 +408,9 @@ class BasePersistence {
408
408
  const Constants = {
409
409
  EMPTY_STRING: ""};
410
410
 
411
- /*! @azure/msal-node-extensions v1.5.13 2025-05-06 */
411
+ /*! @azure/msal-node-extensions v1.5.14 2025-05-30 */
412
412
 
413
- /*! @azure/msal-common v15.6.0 2025-05-06 */
413
+ /*! @azure/msal-common v15.7.0 2025-05-30 */
414
414
 
415
415
  /*
416
416
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -598,7 +598,7 @@ class Logger {
598
598
  }
599
599
  }
600
600
 
601
- /*! @azure/msal-node-extensions v1.5.13 2025-05-06 */
601
+ /*! @azure/msal-node-extensions v1.5.14 2025-05-30 */
602
602
 
603
603
  /*
604
604
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -761,7 +761,7 @@ class FilePersistence extends BasePersistence {
761
761
  }
762
762
  }
763
763
 
764
- /*! @azure/msal-node-extensions v1.5.13 2025-05-06 */
764
+ /*! @azure/msal-node-extensions v1.5.14 2025-05-30 */
765
765
 
766
766
  /*
767
767
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -795,7 +795,7 @@ else {
795
795
  }
796
796
  }
797
797
 
798
- /*! @azure/msal-node-extensions v1.5.13 2025-05-06 */
798
+ /*! @azure/msal-node-extensions v1.5.14 2025-05-30 */
799
799
  /*
800
800
  * Copyright (c) Microsoft Corporation. All rights reserved.
801
801
  * Licensed under the MIT License.
@@ -814,7 +814,7 @@ else {
814
814
  const DataProtectionScope = {
815
815
  CurrentUser: "CurrentUser"};
816
816
 
817
- /*! @azure/msal-node-extensions v1.5.13 2025-05-06 */
817
+ /*! @azure/msal-node-extensions v1.5.14 2025-05-30 */
818
818
 
819
819
  /*
820
820
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -894,7 +894,7 @@ class FilePersistenceWithDataProtection extends BasePersistence {
894
894
  }
895
895
  }
896
896
 
897
- /*! @azure/msal-node-extensions v1.5.13 2025-05-06 */
897
+ /*! @azure/msal-node-extensions v1.5.14 2025-05-30 */
898
898
 
899
899
  /*
900
900
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -975,7 +975,7 @@ class KeychainPersistence extends BasePersistence {
975
975
  }
976
976
  }
977
977
 
978
- /*! @azure/msal-node-extensions v1.5.13 2025-05-06 */
978
+ /*! @azure/msal-node-extensions v1.5.14 2025-05-30 */
979
979
 
980
980
  /*
981
981
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -1057,7 +1057,7 @@ class LibSecretPersistence extends BasePersistence {
1057
1057
  }
1058
1058
  }
1059
1059
 
1060
- /*! @azure/msal-node-extensions v1.5.13 2025-05-06 */
1060
+ /*! @azure/msal-node-extensions v1.5.14 2025-05-30 */
1061
1061
 
1062
1062
  /*
1063
1063
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -1145,7 +1145,7 @@ class Environment {
1145
1145
  }
1146
1146
  }
1147
1147
 
1148
- /*! @azure/msal-node-extensions v1.5.13 2025-05-06 */
1148
+ /*! @azure/msal-node-extensions v1.5.14 2025-05-30 */
1149
1149
 
1150
1150
  /*
1151
1151
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -2526,8 +2526,9 @@ const applyAppRouting = (base, manifest, config) => {
2526
2526
  const applyPortalRouting = (base, manifest, config) => {
2527
2527
  base.api.routes ??= [];
2528
2528
  // @todo - might add correct tag handling later
2529
+ const serviceName = 'portal-config';
2529
2530
  base.api.routes.push({
2530
- match: `/portals/portals/${manifest.name}{@:tag}`,
2531
+ match: `/${serviceName}/portals/${manifest.name}{@:tag}`,
2531
2532
  middleware: async (_req, res) => {
2532
2533
  res.writeHead(200, {
2533
2534
  'content-type': 'application/json',
@@ -2535,15 +2536,18 @@ const applyPortalRouting = (base, manifest, config) => {
2535
2536
  res.end(JSON.stringify(manifest));
2536
2537
  },
2537
2538
  });
2538
- base.api.routes.push({
2539
- match: `/portals/portals/${manifest.name}{@:tag}/config`,
2540
- middleware: async (_req, res) => {
2541
- res.writeHead(200, {
2542
- 'content-type': 'application/json',
2543
- });
2544
- res.end(JSON.stringify(config));
2545
- },
2546
- });
2539
+ // @TODO - should config be allowed, dev-server.config could be used instead
2540
+ if (config) {
2541
+ base.api.routes.push({
2542
+ match: `/${serviceName}/portals/${manifest.name}{@:tag}/config`,
2543
+ middleware: async (_req, res) => {
2544
+ res.writeHead(200, {
2545
+ 'content-type': 'application/json',
2546
+ });
2547
+ res.end(JSON.stringify(config));
2548
+ },
2549
+ });
2550
+ }
2547
2551
  };
2548
2552
  /**
2549
2553
  * Creates the full dev server configuration for Fusion CLI.
@@ -23424,7 +23428,7 @@ class AuthConfigurator extends BaseConfigBuilder {
23424
23428
  // Dynamically import the createAuthClient function since the client uses `libsecret``
23425
23429
  // which is not default installed in all environments.
23426
23430
  // This avoids installing `libsecret` in environments where it is not needed, like CI/CD pipelines.
23427
- const { createAuthClient } = await import('./create-auth-client-BEG7gK6o.js');
23431
+ const { createAuthClient } = await import('./create-auth-client-CUsaZifS.js');
23428
23432
  return createAuthClient(tenantId, clientId);
23429
23433
  });
23430
23434
  }
@@ -26402,7 +26406,7 @@ const resolveDefaultLogLevel = () => {
26402
26406
  const defaultLogLevel = resolveDefaultLogLevel();
26403
26407
 
26404
26408
  // Generated by genversion.
26405
- const version = '1.1.4';
26409
+ const version = '1.1.5-next.0';
26406
26410
 
26407
26411
  /**
26408
26412
  * Defines an abstract base class for a logger implementation that provides common logging functionality.
@@ -29083,14 +29087,17 @@ const loadPortalManifest$1 = async (env, options) => {
29083
29087
  resolve: async (module) => {
29084
29088
  // Use the provided base manifest or an empty object as the starting point
29085
29089
  const base = options?.base ?? {};
29090
+ let overrides;
29086
29091
  // If the manifest export is a function, call it with the environment and base manifest
29087
29092
  if (typeof module.default === 'function') {
29088
29093
  // Await the result of the manifest function, falling back to base if undefined
29089
- const result = (await module.default(env, { base })) ?? base;
29090
- return result ?? base;
29094
+ overrides = (await module.default(env, { base })) ?? undefined;
29095
+ }
29096
+ else {
29097
+ // If the manifest export is not a function, treat it as an object
29098
+ overrides = module.default;
29091
29099
  }
29092
- // If the manifest export is an object, merge or return it directly
29093
- return module.default ?? base;
29100
+ return mergeWith(base, overrides);
29094
29101
  },
29095
29102
  },
29096
29103
  });
@@ -102,8 +102,9 @@ const applyAppRouting = (base, manifest, config) => {
102
102
  const applyPortalRouting = (base, manifest, config) => {
103
103
  base.api.routes ??= [];
104
104
  // @todo - might add correct tag handling later
105
+ const serviceName = 'portal-config';
105
106
  base.api.routes.push({
106
- match: `/portals/portals/${manifest.name}{@:tag}`,
107
+ match: `/${serviceName}/portals/${manifest.name}{@:tag}`,
107
108
  middleware: async (_req, res) => {
108
109
  res.writeHead(200, {
109
110
  'content-type': 'application/json',
@@ -111,15 +112,18 @@ const applyPortalRouting = (base, manifest, config) => {
111
112
  res.end(JSON.stringify(manifest));
112
113
  },
113
114
  });
114
- base.api.routes.push({
115
- match: `/portals/portals/${manifest.name}{@:tag}/config`,
116
- middleware: async (_req, res) => {
117
- res.writeHead(200, {
118
- 'content-type': 'application/json',
119
- });
120
- res.end(JSON.stringify(config));
121
- },
122
- });
115
+ // @TODO - should config be allowed, dev-server.config could be used instead
116
+ if (config) {
117
+ base.api.routes.push({
118
+ match: `/${serviceName}/portals/${manifest.name}{@:tag}/config`,
119
+ middleware: async (_req, res) => {
120
+ res.writeHead(200, {
121
+ 'content-type': 'application/json',
122
+ });
123
+ res.end(JSON.stringify(config));
124
+ },
125
+ });
126
+ }
123
127
  };
124
128
  /**
125
129
  * Creates the full dev server configuration for Fusion CLI.
@@ -1 +1 @@
1
- {"version":3,"file":"create-dev-server.js","sourceRoot":"","sources":["../../../../src/bin/utils/create-dev-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-dev-server.js","sourceRoot":"","sources":["../../../../src/bin/utils/create-dev-server.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { importConfig } from '@equinor/fusion-imports';
2
+ import mergeWith from 'lodash.mergewith';
2
3
  import { PortalManifestSchema } from './portal-manifest.schema.js';
3
4
  /**
4
5
  * Loads a portal manifest configuration file, merging it with optional base values and supporting multiple file extensions.
@@ -27,14 +28,17 @@ export const loadPortalManifest = async (env, options) => {
27
28
  resolve: async (module) => {
28
29
  // Use the provided base manifest or an empty object as the starting point
29
30
  const base = options?.base ?? {};
31
+ let overrides;
30
32
  // If the manifest export is a function, call it with the environment and base manifest
31
33
  if (typeof module.default === 'function') {
32
34
  // Await the result of the manifest function, falling back to base if undefined
33
- const result = (await module.default(env, { base })) ?? base;
34
- return result ?? base;
35
+ overrides = (await module.default(env, { base })) ?? undefined;
35
36
  }
36
- // If the manifest export is an object, merge or return it directly
37
- return module.default ?? base;
37
+ else {
38
+ // If the manifest export is not a function, treat it as an object
39
+ overrides = module.default;
40
+ }
41
+ return mergeWith(base, overrides);
38
42
  },
39
43
  },
40
44
  });
@@ -1 +1 @@
1
- {"version":3,"file":"load-portal-manifest.js","sourceRoot":"","sources":["../../../../src/lib/portal/load-portal-manifest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAuDnE;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EACrC,GAAe,EACf,OAAsC,EACA,EAAE;IACxC,iGAAiG;IACjG,MAAM,WAAW,GAAG,OAAO,EAAE,IAAI,IAAI,CAAC,mBAAmB,GAAG,CAAC,WAAW,EAAE,EAAE,iBAAiB,CAAC,CAAC;IAE/F,+EAA+E;IAC/E,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC,WAAW,EAAE;QACnD,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,iDAAiD;QACpE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,2CAA2C;QAC5E,MAAM,EAAE;YACN,uCAAuC;YACvC,OAAO,EAAE,KAAK,EAAE,MAA4C,EAAc,EAAE;gBAC1E,0EAA0E;gBAC1E,MAAM,IAAI,GAAM,OAAO,EAAE,IAAI,IAAK,EAAQ,CAAC;gBAC3C,uFAAuF;gBACvF,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;oBACzC,+EAA+E;oBAC/E,MAAM,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC;oBAC7D,OAAO,MAAM,IAAI,IAAI,CAAC;gBACxB,CAAC;gBACD,mEAAmE;gBACnE,OAAQ,MAAM,CAAC,OAAa,IAAI,IAAI,CAAC;YACvC,CAAC;SACF;KACF,CAAC,CAAC;IAEH,0EAA0E;IAC1E,8EAA8E;IAC9E,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAW,CAAC;IAC1C,MAAM,UAAU,GAAG,oBAAoB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC5D,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CACb,4BAA4B,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACjH,CAAC;IACJ,CAAC;IACD,OAAO;QACL,QAAQ;QACR,IAAI,EAAE,YAAY,CAAC,IAAI;QACvB,SAAS,EAAE,YAAY,CAAC,SAAS;KAClC,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"load-portal-manifest.js","sourceRoot":"","sources":["../../../../src/lib/portal/load-portal-manifest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,SAAS,MAAM,kBAAkB,CAAC;AAEzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAuDnE;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EACrC,GAAe,EACf,OAAsC,EACA,EAAE;IACxC,iGAAiG;IACjG,MAAM,WAAW,GAAG,OAAO,EAAE,IAAI,IAAI,CAAC,mBAAmB,GAAG,CAAC,WAAW,EAAE,EAAE,iBAAiB,CAAC,CAAC;IAE/F,+EAA+E;IAC/E,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC,WAAW,EAAE;QACnD,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,iDAAiD;QACpE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,2CAA2C;QAC5E,MAAM,EAAE;YACN,uCAAuC;YACvC,OAAO,EAAE,KAAK,EAAE,MAA4C,EAAc,EAAE;gBAC1E,0EAA0E;gBAC1E,MAAM,IAAI,GAAM,OAAO,EAAE,IAAI,IAAK,EAAQ,CAAC;gBAC3C,IAAI,SAA0C,CAAC;gBAC/C,uFAAuF;gBACvF,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;oBACzC,+EAA+E;oBAC/E,SAAS,GAAG,CAAC,MAAM,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,SAAS,CAAC;gBACjE,CAAC;qBAAM,CAAC;oBACN,kEAAkE;oBAClE,SAAS,GAAG,MAAM,CAAC,OAA8B,CAAC;gBACpD,CAAC;gBACD,OAAO,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YACpC,CAAC;SACF;KACF,CAAC,CAAC;IAEH,0EAA0E;IAC1E,8EAA8E;IAC9E,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAW,CAAC;IAC1C,MAAM,UAAU,GAAG,oBAAoB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC5D,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CACb,4BAA4B,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACjH,CAAC;IACJ,CAAC;IACD,OAAO;QACL,QAAQ;QACR,IAAI,EAAE,YAAY,CAAC,IAAI;QACvB,SAAS,EAAE,YAAY,CAAC,SAAS;KAClC,CAAC;AACJ,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"portal-config.js","sourceRoot":"","sources":["../../../../src/lib/portal/portal-config.ts"],"names":[],"mappings":"AAwDA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EAAkB,EAAE,EAAE,CAAC,EAAE,CAAC"}
1
+ {"version":3,"file":"portal-config.js","sourceRoot":"","sources":["../../../../src/lib/portal/portal-config.ts"],"names":[],"mappings":"AAuDA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EAAkB,EAAE,EAAE,CAAC,EAAE,CAAC"}
@@ -1,3 +1,3 @@
1
1
  // Generated by genversion.
2
- export const version = '11.0.0-next.13';
2
+ export const version = '11.0.0-next.15';
3
3
  //# sourceMappingURL=version.js.map