@onecx/integration-interface 8.0.0-rc.9 → 9.0.0-rc.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 (50) hide show
  1. package/README.md +0 -1
  2. package/dist/index.cjs +351 -68
  3. package/dist/index.mjs +351 -68
  4. package/package.json +2 -9
  5. package/src/index.d.ts +8 -0
  6. package/src/index.js +8 -0
  7. package/src/index.js.map +1 -1
  8. package/src/lib/services/notification.service.d.ts +7 -0
  9. package/src/lib/services/notification.service.js +15 -0
  10. package/src/lib/services/notification.service.js.map +1 -0
  11. package/src/lib/topics/notification/v1/notification.model.d.ts +21 -0
  12. package/src/lib/topics/notification/v1/notification.model.js +1 -0
  13. package/src/lib/topics/notification/v1/notification.model.js.map +1 -0
  14. package/src/lib/topics/notification/v1/notification.topic.d.ts +5 -0
  15. package/src/lib/topics/notification/v1/notification.topic.js +7 -0
  16. package/src/lib/topics/notification/v1/notification.topic.js.map +1 -0
  17. package/src/lib/topics/remote-components/v1/remote-component.model.d.ts +1 -0
  18. package/src/lib/utils/configuration.utils.d.ts +41 -0
  19. package/src/lib/utils/configuration.utils.js +52 -0
  20. package/src/lib/utils/configuration.utils.js.map +1 -0
  21. package/src/lib/utils/parameters.utils.d.ts +14 -0
  22. package/src/lib/utils/parameters.utils.js +15 -0
  23. package/src/lib/utils/parameters.utils.js.map +1 -0
  24. package/src/lib/utils/portal-message.utils.d.ts +54 -0
  25. package/src/lib/utils/portal-message.utils.js +49 -0
  26. package/src/lib/utils/portal-message.utils.js.map +1 -0
  27. package/src/lib/utils/shell-capability.utils.d.ts +20 -1
  28. package/src/lib/utils/shell-capability.utils.js +29 -3
  29. package/src/lib/utils/shell-capability.utils.js.map +1 -1
  30. package/src/lib/utils/user-language.utils.d.ts +30 -0
  31. package/src/lib/utils/user-language.utils.js +56 -0
  32. package/src/lib/utils/user-language.utils.js.map +1 -0
  33. package/src/lib/utils/workspace.utils.d.ts +76 -0
  34. package/src/lib/utils/workspace.utils.js +199 -0
  35. package/src/lib/utils/workspace.utils.js.map +1 -0
  36. package/src/version.d.ts +1 -1
  37. package/src/version.js +1 -1
  38. package/migrations/index.d.ts +0 -3
  39. package/migrations/index.js +0 -4
  40. package/migrations/index.js.map +0 -1
  41. package/migrations/v5/warn-for-events-publisher-navigated.d.ts +0 -2
  42. package/migrations/v5/warn-for-events-publisher-navigated.js +0 -30
  43. package/migrations/v5/warn-for-events-publisher-navigated.js.map +0 -1
  44. package/migrations/v5/warn-for-events-topic-navigated.d.ts +0 -2
  45. package/migrations/v5/warn-for-events-topic-navigated.js +0 -31
  46. package/migrations/v5/warn-for-events-topic-navigated.js.map +0 -1
  47. package/migrations/v6/migrate-onecx-to-v6.d.ts +0 -2
  48. package/migrations/v6/migrate-onecx-to-v6.js +0 -5
  49. package/migrations/v6/migrate-onecx-to-v6.js.map +0 -1
  50. package/migrations.json +0 -46
@@ -0,0 +1,199 @@
1
+ const aliasStart = '[[';
2
+ const aliasEnd = ']]';
3
+ const paramStart = '{';
4
+ const paramEnd = '}';
5
+ /**
6
+ * Joins base and path segments with a single slash.
7
+ *
8
+ * @param base - Base URL segment.
9
+ * @param path - Path segment to append.
10
+ * @returns Joined URL string.
11
+ */
12
+ const joinWithSlash = (base, path) => {
13
+ let normalizedBase = base;
14
+ let normalizedPath = path;
15
+ if (!normalizedBase.endsWith('/')) {
16
+ normalizedBase += '/';
17
+ }
18
+ if (normalizedPath.startsWith('/')) {
19
+ normalizedPath = normalizedPath.slice(1);
20
+ }
21
+ return normalizedBase + normalizedPath;
22
+ };
23
+ /**
24
+ * Builds the base URL from the workspace, with warnings on missing values.
25
+ *
26
+ * @param workspace - Workspace definition.
27
+ * @returns Base URL string or empty string if missing.
28
+ */
29
+ const constructBaseUrlFromWorkspace = (workspace, warn) => {
30
+ if (workspace.baseUrl === undefined) {
31
+ warn('There was no baseUrl for received workspace.');
32
+ return '';
33
+ }
34
+ return workspace.baseUrl;
35
+ };
36
+ /**
37
+ * Finds a route entry for a product/app pair.
38
+ *
39
+ * @param routes - Available route definitions.
40
+ * @param appId - Application identifier.
41
+ * @param productName - Product name identifier.
42
+ * @returns Matched route or undefined.
43
+ */
44
+ const filterRouteFromList = (routes, appId, productName, warn) => {
45
+ if (!routes) {
46
+ return undefined;
47
+ }
48
+ const productRoutes = routes.filter((route) => route.appId === appId && route.productName === productName);
49
+ if (productRoutes.length === 0) {
50
+ return undefined;
51
+ }
52
+ if (productRoutes.length > 1) {
53
+ warn('There were more than one route. First route has been used.');
54
+ }
55
+ return productRoutes[0];
56
+ };
57
+ /**
58
+ * Resolves endpoint aliases to the final endpoint definition.
59
+ *
60
+ * @param endpointName - Endpoint name or alias.
61
+ * @param endpoints - Available endpoint definitions.
62
+ * @returns Resolved endpoint or undefined.
63
+ */
64
+ const dissolveEndpoint = (endpointName, endpoints) => {
65
+ let endpoint = endpoints.find((ep) => ep.name === endpointName);
66
+ if (!endpoint) {
67
+ return undefined;
68
+ }
69
+ while (endpoint.path?.includes(aliasStart)) {
70
+ const path = endpoint.path;
71
+ const startIdx = path.indexOf(aliasStart) + aliasStart.length;
72
+ const endIdx = path.lastIndexOf(aliasEnd);
73
+ if (endIdx <= startIdx) {
74
+ return undefined;
75
+ }
76
+ const aliasName = path.substring(startIdx, endIdx);
77
+ endpoint = endpoints.find((ep) => ep.name === aliasName);
78
+ if (!endpoint) {
79
+ return undefined;
80
+ }
81
+ }
82
+ return endpoint;
83
+ };
84
+ /**
85
+ * Normalizes parameter values into strings for URL interpolation.
86
+ *
87
+ * @param value - Parameter value to normalize.
88
+ * @returns Normalized string value.
89
+ */
90
+ const getStringFromUnknown = (value) => {
91
+ if (value === null || value === undefined) {
92
+ return '';
93
+ }
94
+ if (typeof value === 'string') {
95
+ return value;
96
+ }
97
+ return String(value);
98
+ };
99
+ /**
100
+ * Replaces path parameters with the provided endpoint parameter values.
101
+ *
102
+ * @param path - Endpoint path template.
103
+ * @param endpointParameters - Parameters to inject.
104
+ * @returns Path with parameters resolved, or empty string on failure.
105
+ */
106
+ const fillParamsForPath = (path, endpointParameters, warn) => {
107
+ while (path.includes(paramStart)) {
108
+ const paramName = path.substring(path.indexOf(paramStart) + paramStart.length, path.indexOf(paramEnd));
109
+ const paramValue = getStringFromUnknown(endpointParameters[paramName]);
110
+ if (paramValue && paramValue.length > 0) {
111
+ path = path.replace(paramStart.concat(paramName).concat(paramEnd), paramValue);
112
+ }
113
+ else {
114
+ warn(`Searched param "${paramName}" was not found in given param list `);
115
+ return '';
116
+ }
117
+ }
118
+ return path;
119
+ };
120
+ /**
121
+ * Constructs a URL path for a concrete endpoint, resolving aliases and params.
122
+ *
123
+ * @param route - Route definition.
124
+ * @param endpointName - Endpoint name or alias.
125
+ * @param endpointParameters - Endpoint parameters for interpolation.
126
+ * @returns Endpoint URL path string.
127
+ */
128
+ const constructEndpointUrl = (route, endpointName, endpointParameters, warn = console.warn) => {
129
+ if (!route.endpoints) {
130
+ return '';
131
+ }
132
+ const finalEndpoint = dissolveEndpoint(endpointName, route.endpoints);
133
+ if (!finalEndpoint?.path) {
134
+ warn('No endpoint or endpoint.path could be found');
135
+ return '';
136
+ }
137
+ const paramsFilled = fillParamsForPath(finalEndpoint.path, endpointParameters ?? {}, warn);
138
+ if (paramsFilled === undefined) {
139
+ warn('Params could not be filled correctly');
140
+ return '';
141
+ }
142
+ return paramsFilled;
143
+ };
144
+ /**
145
+ * Constructs a full route URL for a workspace, app, and optional endpoint.
146
+ *
147
+ * @param workspace - Workspace definition.
148
+ * @param appId - Application identifier.
149
+ * @param productName - Product name identifier.
150
+ * @param endpointName - Optional endpoint name.
151
+ * @param endpointParameters - Optional endpoint parameters.
152
+ * @returns Resolved route URL string.
153
+ */
154
+ const constructRouteUrl = (workspace, appId, productName, endpointName, endpointParameters, warn = console.warn) => {
155
+ const route = filterRouteFromList(workspace.routes, appId, productName, warn);
156
+ let url = constructBaseUrlFromWorkspace(workspace, warn);
157
+ if (!route) {
158
+ warn(`No route.baseUrl could be found for given appId "${appId}" and productName "${productName}"`);
159
+ return url;
160
+ }
161
+ if (route.baseUrl?.length) {
162
+ url = route.baseUrl;
163
+ }
164
+ if (endpointName == undefined) {
165
+ return url;
166
+ }
167
+ const endpointPath = constructEndpointUrl(route, endpointName, endpointParameters, warn);
168
+ if (!endpointPath.length) {
169
+ return url;
170
+ }
171
+ url = joinWithSlash(url, endpointPath);
172
+ return url;
173
+ };
174
+ /**
175
+ * Checks whether a route or endpoint URL exists for the given identifiers.
176
+ *
177
+ * @param workspace - Workspace definition.
178
+ * @param productName - Product name identifier.
179
+ * @param appId - Application identifier.
180
+ * @param endpointName - Optional endpoint name to validate.
181
+ * @returns True if the URL exists.
182
+ */
183
+ const doesUrlExistForWorkspace = (workspace, productName, appId, endpointName, warn = console.warn) => {
184
+ const checkEndpoint = endpointName !== undefined && endpointName.length > 0;
185
+ if (!workspace.routes) {
186
+ return false;
187
+ }
188
+ const route = filterRouteFromList(workspace.routes, appId, productName, warn);
189
+ if (checkEndpoint) {
190
+ if (!route?.endpoints?.length) {
191
+ return false;
192
+ }
193
+ const endpoint = route.endpoints.find((ep) => ep.name === endpointName);
194
+ return !!endpoint?.path?.length;
195
+ }
196
+ return !!route?.baseUrl?.length;
197
+ };
198
+ export { constructBaseUrlFromWorkspace, constructEndpointUrl, constructRouteUrl, doesUrlExistForWorkspace, dissolveEndpoint, fillParamsForPath, filterRouteFromList, getStringFromUnknown, };
199
+ //# sourceMappingURL=workspace.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspace.utils.js","sourceRoot":"","sources":["../../../../../../libs/integration-interface/src/lib/utils/workspace.utils.ts"],"names":[],"mappings":"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"}
package/src/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
1
  export declare const LIB_NAME = "@onecx/integration-interface";
2
- export declare const LIB_VERSION = "8.0.0-rc.9";
2
+ export declare const LIB_VERSION = "9.0.0-rc.1";
package/src/version.js CHANGED
@@ -1,3 +1,3 @@
1
1
  export const LIB_NAME = '@onecx/integration-interface';
2
- export const LIB_VERSION = '8.0.0-rc.9';
2
+ export const LIB_VERSION = '9.0.0-rc.1';
3
3
  //# sourceMappingURL=version.js.map
@@ -1,3 +0,0 @@
1
- export * from './v6/migrate-onecx-to-v6';
2
- export * from './v5/warn-for-events-topic-navigated';
3
- export * from './v5/warn-for-events-publisher-navigated';
@@ -1,4 +0,0 @@
1
- export * from './v6/migrate-onecx-to-v6';
2
- export * from './v5/warn-for-events-topic-navigated';
3
- export * from './v5/warn-for-events-publisher-navigated';
4
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../libs/integration-interface/migrations/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA;AACxC,cAAc,sCAAsC,CAAA;AACpD,cAAc,0CAA0C,CAAA"}
@@ -1,2 +0,0 @@
1
- import { Tree } from '@nx/devkit';
2
- export default function warnForEventsPublisherNavigated(tree: Tree): Promise<void>;
@@ -1,30 +0,0 @@
1
- import { detectMethodCallsInFiles, printWarnings } from '@onecx/nx-migration-utils';
2
- function argsMatchExpectedPayload(callExpression) {
3
- return callExpression.arguments.some((arg) => {
4
- const argText = arg.getText();
5
- return /type:\s*['"]navigated['"]/.test(argText);
6
- });
7
- }
8
- export default async function warnForEventsPublisherNavigated(tree) {
9
- const warningForPotentialMatches = '⚠️ EventsPublisher usages were detected. Please double-check if EventsPublisher is used for publishing navigation events and switch to CurrentLocationPublisher if so.';
10
- const warningForExactMatches = '⚠️ You are using EventsPublisher to publish navigation events. Please switch to using CurrentLocationPublisher.';
11
- const potentialMatches = detectMethodCallsInFiles(tree, './src', 'publish', 'EventsPublisher');
12
- const exactMatches = new Map();
13
- const remainingPotentialMatches = new Map();
14
- potentialMatches.forEach((calls, file) => {
15
- const filteredCalls = calls.filter((call) => argsMatchExpectedPayload(call));
16
- if (filteredCalls.length > 0) {
17
- exactMatches.set(file, filteredCalls);
18
- }
19
- else {
20
- remainingPotentialMatches.set(file, calls);
21
- }
22
- });
23
- if (exactMatches.size > 0) {
24
- printWarnings(warningForExactMatches, Array.from(exactMatches.keys()));
25
- }
26
- if (remainingPotentialMatches.size > 0) {
27
- printWarnings(warningForPotentialMatches, Array.from(remainingPotentialMatches.keys()));
28
- }
29
- }
30
- //# sourceMappingURL=warn-for-events-publisher-navigated.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"warn-for-events-publisher-navigated.js","sourceRoot":"","sources":["../../../../../libs/integration-interface/migrations/v5/warn-for-events-publisher-navigated.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAGnF,SAAS,wBAAwB,CAAC,cAA8B;IAC9D,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;QAC3C,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,EAAE,CAAA;QAC7B,OAAO,2BAA2B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAClD,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,+BAA+B,CAAC,IAAU;IACtE,MAAM,0BAA0B,GAC9B,wKAAwK,CAAA;IAE1K,MAAM,sBAAsB,GAC1B,iHAAiH,CAAA;IAEnH,MAAM,gBAAgB,GAAG,wBAAwB,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAA;IAE9F,MAAM,YAAY,GAAG,IAAI,GAAG,EAA4B,CAAA;IACxD,MAAM,yBAAyB,GAAG,IAAI,GAAG,EAA4B,CAAA;IAErE,gBAAgB,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACvC,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAA;QAC5E,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,aAAa,CAAC,CAAA;QACvC,CAAC;aAAM,CAAC;YACN,yBAAyB,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAC5C,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,IAAI,YAAY,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QAC1B,aAAa,CAAC,sBAAsB,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;IACxE,CAAC;IACD,IAAI,yBAAyB,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACvC,aAAa,CAAC,0BAA0B,EAAE,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;IACzF,CAAC;AACH,CAAC"}
@@ -1,2 +0,0 @@
1
- import { Tree } from '@nx/devkit';
2
- export default function warnForEventsTopicNavigated(tree: Tree): Promise<void>;
@@ -1,31 +0,0 @@
1
- import { detectMethodCallsInFiles, printWarnings } from '@onecx/nx-migration-utils';
2
- import { ast, query } from '@phenomnomnominal/tsquery';
3
- function argsContainFilterForTypeNavigated(callExpression) {
4
- const callExpressionAst = ast(callExpression.getText());
5
- const filterCallsSelector = `CallExpression:has(Identifier[name="filter"]):has(ArrowFunction:has(BinaryExpression:has(PropertyAccessExpression:has(Identifier):has(Identifier[name="type"])):has(StringLiteral[value="navigated"])))`;
6
- const filterCalls = query(callExpressionAst, filterCallsSelector);
7
- return filterCalls.length > 0;
8
- }
9
- export default async function warnForEventsTopicNavigated(tree) {
10
- const warningForPotentialMatches = '⚠️ EventsTopic usages were detected. Please double-check if EventsTopic is used for subscribing to navigation events and switch to CurrentLocationTopic/appStateService.currentLocation$ if so.';
11
- const warningForExactMatches = '⚠️ You are using EventsTopic to listen for navigation events. Please switch to using CurrentLocationTopic/appStateService.currentLocation$.';
12
- const potentialMatches = detectMethodCallsInFiles(tree, './src', 'pipe', 'EventsTopic');
13
- const exactMatches = new Map();
14
- const remainingPotentialMatches = new Map();
15
- potentialMatches.forEach((calls, file) => {
16
- const filteredCalls = calls.filter((call) => argsContainFilterForTypeNavigated(call));
17
- if (filteredCalls.length > 0) {
18
- exactMatches.set(file, filteredCalls);
19
- }
20
- else {
21
- remainingPotentialMatches.set(file, calls);
22
- }
23
- });
24
- if (exactMatches.size > 0) {
25
- printWarnings(warningForExactMatches, Array.from(exactMatches.keys()));
26
- }
27
- if (remainingPotentialMatches.size > 0) {
28
- printWarnings(warningForPotentialMatches, Array.from(remainingPotentialMatches.keys()));
29
- }
30
- }
31
- //# sourceMappingURL=warn-for-events-topic-navigated.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"warn-for-events-topic-navigated.js","sourceRoot":"","sources":["../../../../../libs/integration-interface/migrations/v5/warn-for-events-topic-navigated.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAEnF,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAA;AAEtD,SAAS,iCAAiC,CAAC,cAA8B;IACvE,MAAM,iBAAiB,GAAG,GAAG,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,CAAA;IACvD,MAAM,mBAAmB,GAAG,yMAAyM,CAAA;IACrO,MAAM,WAAW,GAAG,KAAK,CAAC,iBAAiB,EAAE,mBAAmB,CAAC,CAAA;IACjE,OAAO,WAAW,CAAC,MAAM,GAAG,CAAC,CAAA;AAC/B,CAAC;AAED,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,2BAA2B,CAAC,IAAU;IAClE,MAAM,0BAA0B,GAC9B,iMAAiM,CAAA;IAEnM,MAAM,sBAAsB,GAC1B,6IAA6I,CAAA;IAE/I,MAAM,gBAAgB,GAAG,wBAAwB,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,CAAA;IAEvF,MAAM,YAAY,GAAG,IAAI,GAAG,EAA4B,CAAA;IACxD,MAAM,yBAAyB,GAAG,IAAI,GAAG,EAA4B,CAAA;IAErE,gBAAgB,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACvC,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,iCAAiC,CAAC,IAAI,CAAC,CAAC,CAAA;QACrF,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,aAAa,CAAC,CAAA;QACvC,CAAC;aAAM,CAAC;YACN,yBAAyB,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAC5C,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,IAAI,YAAY,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QAC1B,aAAa,CAAC,sBAAsB,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;IACxE,CAAC;IACD,IAAI,yBAAyB,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACvC,aAAa,CAAC,0BAA0B,EAAE,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;IACzF,CAAC;AACH,CAAC"}
@@ -1,2 +0,0 @@
1
- import { Tree } from '@nx/devkit';
2
- export default function migrateOnecxToV6(tree: Tree): Promise<void>;
@@ -1,5 +0,0 @@
1
- import { commonMigrateOnecxToV6 } from '@onecx/nx-migration-utils';
2
- export default async function migrateOnecxToV6(tree) {
3
- await commonMigrateOnecxToV6(tree);
4
- }
5
- //# sourceMappingURL=migrate-onecx-to-v6.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"migrate-onecx-to-v6.js","sourceRoot":"","sources":["../../../../../libs/integration-interface/migrations/v6/migrate-onecx-to-v6.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAA;AAElE,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAAU;IACvD,MAAM,sBAAsB,CAAC,IAAI,CAAC,CAAA;AACpC,CAAC"}
package/migrations.json DELETED
@@ -1,46 +0,0 @@
1
- {
2
- "generators": {
3
- "warn-for-events-topic-navigated": {
4
- "cli": "nx",
5
- "version": "5.34.6",
6
- "description": "Detects and warns for usage of the EventsTopic in the context of navigation",
7
- "factory": "migrations/v5/warn-for-events-topic-navigated"
8
- },
9
- "warn-for-events-publisher-navigated": {
10
- "cli": "nx",
11
- "version": "5.34.6",
12
- "description": "Detects and warns for usage of the EventsPublisher in the context of navigation",
13
- "factory": "migrations/v5/warn-for-events-publisher-navigated"
14
- },
15
- "migrate-onecx-to-v6": {
16
- "cli": "nx",
17
- "version": "6.0.0",
18
- "description": "Update package json to Angular 19, PrimeNG 19, OneCX versions to v6 and other dependencies to be compatible with Angular 19.",
19
- "factory": "migrations/v6/migrate-onecx-to-v6"
20
- }
21
- },
22
- "packageJsonUpdates": {
23
- "6.0.0": {
24
- "version": "6.0.0",
25
- "packages": {
26
- "@angular/cli": {
27
- "version": "~19.0.0",
28
- "alwaysAddToPackageJson": false
29
- },
30
- "@nx/angular": {
31
- "version": "~20.3.0",
32
- "alwaysAddToPackageJson": false
33
- },
34
- "@ngx-translate/core": {
35
- "version": "~16.0.4",
36
- "alwaysAddToPackageJson": false
37
- },
38
- "primeng": {
39
- "version": "~19.0.0",
40
- "alwaysAddToPackageJson": false
41
- }
42
- }
43
- },
44
- "version": "null"
45
- }
46
- }