@acorex-platform/module-integration-management-client 0.0.32 → 0.0.37

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 (48) hide show
  1. package/fesm2022/acorex-platform-module-integration-management-client-connect-with-credentials.command-DO_zqjHV.mjs.map +1 -1
  2. package/fesm2022/acorex-platform-module-integration-management-client-contracts-entities-integration-application.mjs +153 -0
  3. package/fesm2022/acorex-platform-module-integration-management-client-contracts-entities-integration-application.mjs.map +1 -0
  4. package/fesm2022/acorex-platform-module-integration-management-client-contracts-entities-integration-connection.mjs +191 -0
  5. package/fesm2022/acorex-platform-module-integration-management-client-contracts-entities-integration-connection.mjs.map +1 -0
  6. package/fesm2022/acorex-platform-module-integration-management-client-contracts-entities-integration-oauth-state.mjs +127 -0
  7. package/fesm2022/acorex-platform-module-integration-management-client-contracts-entities-integration-oauth-state.mjs.map +1 -0
  8. package/fesm2022/acorex-platform-module-integration-management-client-contracts-entity-catalog-acorex-platform-module-integration-management-client-contracts-entity-catalog-BT3-xrGZ.mjs +69 -0
  9. package/fesm2022/acorex-platform-module-integration-management-client-contracts-entity-catalog-acorex-platform-module-integration-management-client-contracts-entity-catalog-BT3-xrGZ.mjs.map +1 -0
  10. package/fesm2022/acorex-platform-module-integration-management-client-contracts-entity-catalog-integration-application.entity-BGZKCUt8.mjs +105 -0
  11. package/fesm2022/acorex-platform-module-integration-management-client-contracts-entity-catalog-integration-application.entity-BGZKCUt8.mjs.map +1 -0
  12. package/fesm2022/acorex-platform-module-integration-management-client-contracts-entity-catalog-integration-connection.entity-CYQq6jv2.mjs +143 -0
  13. package/fesm2022/acorex-platform-module-integration-management-client-contracts-entity-catalog-integration-connection.entity-CYQq6jv2.mjs.map +1 -0
  14. package/fesm2022/acorex-platform-module-integration-management-client-contracts-entity-catalog-integration-oauth-state.entity-BPvTE55S.mjs +79 -0
  15. package/fesm2022/acorex-platform-module-integration-management-client-contracts-entity-catalog-integration-oauth-state.entity-BPvTE55S.mjs.map +1 -0
  16. package/fesm2022/acorex-platform-module-integration-management-client-contracts-entity-catalog.mjs +2 -0
  17. package/fesm2022/acorex-platform-module-integration-management-client-contracts-entity-catalog.mjs.map +1 -0
  18. package/fesm2022/acorex-platform-module-integration-management-client-contracts.mjs.map +1 -1
  19. package/fesm2022/acorex-platform-module-integration-management-client-delete-connection.command-DQ_kn8dH.mjs.map +1 -1
  20. package/fesm2022/acorex-platform-module-integration-management-client-disconnect-connection.command-B4HeDA1n.mjs.map +1 -1
  21. package/fesm2022/acorex-platform-module-integration-management-client-get-provider.query-Ds10RwnU.mjs.map +1 -1
  22. package/fesm2022/acorex-platform-module-integration-management-client-integration-connection-lifecycle.dispatcher-DRWR9ysx.mjs.map +1 -1
  23. package/fesm2022/{acorex-platform-module-integration-management-client-integration-oauth-callback-page.component-CZu5mKUA.mjs → acorex-platform-module-integration-management-client-integration-oauth-callback-page.component-CY0tOlNi.mjs} +2 -2
  24. package/fesm2022/{acorex-platform-module-integration-management-client-integration-oauth-callback-page.component-CZu5mKUA.mjs.map → acorex-platform-module-integration-management-client-integration-oauth-callback-page.component-CY0tOlNi.mjs.map} +1 -1
  25. package/fesm2022/acorex-platform-module-integration-management-client-integration-ref-display.service-CP818xou.mjs.map +1 -1
  26. package/fesm2022/{acorex-platform-module-integration-management-client-integration-ref-filter-widget-edit.component-DeED5cU5.mjs → acorex-platform-module-integration-management-client-integration-ref-filter-widget-edit.component-zVURpFT4.mjs} +10 -11
  27. package/fesm2022/acorex-platform-module-integration-management-client-integration-ref-filter-widget-edit.component-zVURpFT4.mjs.map +1 -0
  28. package/fesm2022/acorex-platform-module-integration-management-client-integration-ref-page.component-D9hdpnQq.mjs.map +1 -1
  29. package/fesm2022/acorex-platform-module-integration-management-client-integration-ref-widget-column.component-CPLhmHOe.mjs.map +1 -1
  30. package/fesm2022/acorex-platform-module-integration-management-client-integration-ref-widget-view.component-BRpGpWHZ.mjs.map +1 -1
  31. package/fesm2022/{acorex-platform-module-integration-management-client-integrations-page.component-iH0DqEak.mjs → acorex-platform-module-integration-management-client-integrations-page.component-BIDqAXx3.mjs} +2 -2
  32. package/fesm2022/{acorex-platform-module-integration-management-client-integrations-page.component-iH0DqEak.mjs.map → acorex-platform-module-integration-management-client-integrations-page.component-BIDqAXx3.mjs.map} +1 -1
  33. package/fesm2022/acorex-platform-module-integration-management-client-list-domains.query--GGD6J46.mjs.map +1 -1
  34. package/fesm2022/acorex-platform-module-integration-management-client-list-my-connections.query-CmHu1qFm.mjs.map +1 -1
  35. package/fesm2022/acorex-platform-module-integration-management-client-list-providers.query-ODKJ_UhI.mjs.map +1 -1
  36. package/fesm2022/acorex-platform-module-integration-management-client-local-entities.mjs +31 -0
  37. package/fesm2022/acorex-platform-module-integration-management-client-local-entities.mjs.map +1 -0
  38. package/fesm2022/acorex-platform-module-integration-management-client-update-connection.command-BNMR-t12.mjs.map +1 -1
  39. package/fesm2022/acorex-platform-module-integration-management-client-validate-connection.command-CGtb_GPX.mjs.map +1 -1
  40. package/fesm2022/acorex-platform-module-integration-management-client.mjs +4 -4
  41. package/fesm2022/acorex-platform-module-integration-management-client.mjs.map +1 -1
  42. package/package.json +21 -1
  43. package/types/acorex-platform-module-integration-management-client-contracts-entities-integration-application.d.ts +5 -0
  44. package/types/acorex-platform-module-integration-management-client-contracts-entities-integration-connection.d.ts +5 -0
  45. package/types/acorex-platform-module-integration-management-client-contracts-entities-integration-oauth-state.d.ts +5 -0
  46. package/types/acorex-platform-module-integration-management-client-contracts-entity-catalog.d.ts +10 -0
  47. package/types/acorex-platform-module-integration-management-client-local-entities.d.ts +12 -0
  48. package/fesm2022/acorex-platform-module-integration-management-client-integration-ref-filter-widget-edit.component-DeED5cU5.mjs.map +0 -1
@@ -0,0 +1,69 @@
1
+ //#region ---- Module Config ----
2
+ const config = {
3
+ i18n: 'integration-management',
4
+ module: 'IntegrationManagement',
5
+ route: 'integration-management',
6
+ };
7
+ const RootConfig = {
8
+ config,
9
+ module: {
10
+ name: config.module,
11
+ route: config.route,
12
+ title: `@${config.i18n}:module.title`,
13
+ icon: 'fa-light fa-plug',
14
+ },
15
+ entities: {
16
+ integrationConnection: {
17
+ name: 'IntegrationConnection',
18
+ source: `${config.module}.IntegrationConnection`,
19
+ title: `@${config.i18n}:connections.entities.connection.title`,
20
+ titlePlural: `@${config.i18n}:connections.entities.connection.plural`,
21
+ icon: 'fa-light fa-link',
22
+ },
23
+ integrationOAuthState: {
24
+ name: 'IntegrationOAuthState',
25
+ source: `${config.module}.IntegrationOAuthState`,
26
+ title: `@${config.i18n}:oauth-states.entities.oauth-state.title`,
27
+ titlePlural: `@${config.i18n}:oauth-states.entities.oauth-state.plural`,
28
+ icon: 'fa-light fa-key',
29
+ },
30
+ integrationApplication: {
31
+ name: 'IntegrationApplication',
32
+ source: `${config.module}.IntegrationApplication`,
33
+ title: `@${config.i18n}:applications.entities.application.title`,
34
+ titlePlural: `@${config.i18n}:applications.entities.application.plural`,
35
+ icon: 'fa-light fa-shield-keyhole',
36
+ },
37
+ },
38
+ queries: {
39
+ dashboard: {
40
+ integrationsDonut: `${config.module}:Dashboard:IntegrationsDonut`,
41
+ },
42
+ },
43
+ };
44
+ //#endregion
45
+
46
+ //#region ----- Imports -----
47
+ //#endregion
48
+ //#region ----- Local entity catalog -----
49
+ /**
50
+ * Lazy per-entity layout factories. Do not re-export from the contracts barrel
51
+ * so RootConfig imports stay light. Server seed and client `local-entities`
52
+ * consume this catalog explicitly.
53
+ */
54
+ const integrationManagementLocalEntityCatalog = {
55
+ moduleName: RootConfig.module.name,
56
+ loaders: {
57
+ [RootConfig.entities.integrationApplication.name]: () => import('./acorex-platform-module-integration-management-client-contracts-entity-catalog-integration-application.entity-BGZKCUt8.mjs').then((m) => m.factoryIntegrationApplication()),
58
+ [RootConfig.entities.integrationConnection.name]: () => import('./acorex-platform-module-integration-management-client-contracts-entity-catalog-integration-connection.entity-CYQq6jv2.mjs').then((m) => m.factoryIntegrationConnection()),
59
+ [RootConfig.entities.integrationOAuthState.name]: () => import('./acorex-platform-module-integration-management-client-contracts-entity-catalog-integration-oauth-state.entity-BPvTE55S.mjs').then((m) => m.factoryIntegrationOAuthState()),
60
+ },
61
+ };
62
+ //#endregion
63
+
64
+ /**
65
+ * Generated bundle index. Do not edit.
66
+ */
67
+
68
+ export { RootConfig as R, integrationManagementLocalEntityCatalog as i };
69
+ //# sourceMappingURL=acorex-platform-module-integration-management-client-contracts-entity-catalog-acorex-platform-module-integration-management-client-contracts-entity-catalog-BT3-xrGZ.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-module-integration-management-client-contracts-entity-catalog-acorex-platform-module-integration-management-client-contracts-entity-catalog-BT3-xrGZ.mjs","sources":["../../../../libs/modules/integration-management/contracts/src/root-config.ts","../../../../libs/modules/integration-management/contracts/src/entity-catalog.ts","../../../../libs/modules/integration-management/contracts/src/acorex-platform-module-integration-management-client-contracts-entity-catalog.ts"],"sourcesContent":["//#region ---- Module Config ----\n\nconst config = {\n i18n: 'integration-management',\n module: 'IntegrationManagement',\n route: 'integration-management',\n};\n\nexport const RootConfig = {\n config,\n module: {\n name: config.module,\n route: config.route,\n title: `@${config.i18n}:module.title`,\n icon: 'fa-light fa-plug',\n },\n entities: {\n integrationConnection: {\n name: 'IntegrationConnection',\n source: `${config.module}.IntegrationConnection`,\n title: `@${config.i18n}:connections.entities.connection.title`,\n titlePlural: `@${config.i18n}:connections.entities.connection.plural`,\n icon: 'fa-light fa-link',\n },\n integrationOAuthState: {\n name: 'IntegrationOAuthState',\n source: `${config.module}.IntegrationOAuthState`,\n title: `@${config.i18n}:oauth-states.entities.oauth-state.title`,\n titlePlural: `@${config.i18n}:oauth-states.entities.oauth-state.plural`,\n icon: 'fa-light fa-key',\n },\n integrationApplication: {\n name: 'IntegrationApplication',\n source: `${config.module}.IntegrationApplication`,\n title: `@${config.i18n}:applications.entities.application.title`,\n titlePlural: `@${config.i18n}:applications.entities.application.plural`,\n icon: 'fa-light fa-shield-keyhole',\n },\n },\n queries: {\n dashboard: {\n integrationsDonut: `${config.module}:Dashboard:IntegrationsDonut`,\n },\n },\n};\n\n//#endregion\n","//#region ----- Imports -----\n\nimport type { AXPLocalEntityCatalog } from '@acorex-platform/framework-shared/entity';\n\nimport { RootConfig } from './root-config';\n\n//#endregion\n\n//#region ----- Local entity catalog -----\n\n/**\n * Lazy per-entity layout factories. Do not re-export from the contracts barrel\n * so RootConfig imports stay light. Server seed and client `local-entities`\n * consume this catalog explicitly.\n */\nexport const integrationManagementLocalEntityCatalog: AXPLocalEntityCatalog = {\n moduleName: RootConfig.module.name,\n loaders: {\n [RootConfig.entities.integrationApplication.name]: () =>\n import('./entities/integration-application/integration-application.entity.js').then((m) => m.factoryIntegrationApplication()),\n [RootConfig.entities.integrationConnection.name]: () =>\n import('./entities/integration-connection/integration-connection.entity.js').then((m) => m.factoryIntegrationConnection()),\n [RootConfig.entities.integrationOAuthState.name]: () =>\n import('./entities/integration-oauth-state/integration-oauth-state.entity.js').then((m) => m.factoryIntegrationOAuthState()),\n },\n};\n\n//#endregion\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './entity-catalog';\n"],"names":[],"mappings":"AAAA;AAEA,MAAM,MAAM,GAAG;AACb,IAAA,IAAI,EAAE,wBAAwB;AAC9B,IAAA,MAAM,EAAE,uBAAuB;AAC/B,IAAA,KAAK,EAAE,wBAAwB;CAChC;AAEM,MAAM,UAAU,GAAG;IACxB,MAAM;AACN,IAAA,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC,MAAM;QACnB,KAAK,EAAE,MAAM,CAAC,KAAK;AACnB,QAAA,KAAK,EAAE,CAAA,CAAA,EAAI,MAAM,CAAC,IAAI,CAAA,aAAA,CAAe;AACrC,QAAA,IAAI,EAAE,kBAAkB;AACzB,KAAA;AACD,IAAA,QAAQ,EAAE;AACR,QAAA,qBAAqB,EAAE;AACrB,YAAA,IAAI,EAAE,uBAAuB;AAC7B,YAAA,MAAM,EAAE,CAAA,EAAG,MAAM,CAAC,MAAM,CAAA,sBAAA,CAAwB;AAChD,YAAA,KAAK,EAAE,CAAA,CAAA,EAAI,MAAM,CAAC,IAAI,CAAA,sCAAA,CAAwC;AAC9D,YAAA,WAAW,EAAE,CAAA,CAAA,EAAI,MAAM,CAAC,IAAI,CAAA,uCAAA,CAAyC;AACrE,YAAA,IAAI,EAAE,kBAAkB;AACzB,SAAA;AACD,QAAA,qBAAqB,EAAE;AACrB,YAAA,IAAI,EAAE,uBAAuB;AAC7B,YAAA,MAAM,EAAE,CAAA,EAAG,MAAM,CAAC,MAAM,CAAA,sBAAA,CAAwB;AAChD,YAAA,KAAK,EAAE,CAAA,CAAA,EAAI,MAAM,CAAC,IAAI,CAAA,wCAAA,CAA0C;AAChE,YAAA,WAAW,EAAE,CAAA,CAAA,EAAI,MAAM,CAAC,IAAI,CAAA,yCAAA,CAA2C;AACvE,YAAA,IAAI,EAAE,iBAAiB;AACxB,SAAA;AACD,QAAA,sBAAsB,EAAE;AACtB,YAAA,IAAI,EAAE,wBAAwB;AAC9B,YAAA,MAAM,EAAE,CAAA,EAAG,MAAM,CAAC,MAAM,CAAA,uBAAA,CAAyB;AACjD,YAAA,KAAK,EAAE,CAAA,CAAA,EAAI,MAAM,CAAC,IAAI,CAAA,wCAAA,CAA0C;AAChE,YAAA,WAAW,EAAE,CAAA,CAAA,EAAI,MAAM,CAAC,IAAI,CAAA,yCAAA,CAA2C;AACvE,YAAA,IAAI,EAAE,4BAA4B;AACnC,SAAA;AACF,KAAA;AACD,IAAA,OAAO,EAAE;AACP,QAAA,SAAS,EAAE;AACT,YAAA,iBAAiB,EAAE,CAAA,EAAG,MAAM,CAAC,MAAM,CAAA,4BAAA,CAA8B;AAClE,SAAA;AACF,KAAA;;AAGH;;AC9CA;AAMA;AAEA;AAEA;;;;AAIG;AACI,MAAM,uCAAuC,GAA0B;AAC5E,IAAA,UAAU,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI;AAClC,IAAA,OAAO,EAAE;AACP,QAAA,CAAC,UAAU,CAAC,QAAQ,CAAC,sBAAsB,CAAC,IAAI,GAAG,MACjD,OAAO,6HAAsE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,6BAA6B,EAAE,CAAC;AAC/H,QAAA,CAAC,UAAU,CAAC,QAAQ,CAAC,qBAAqB,CAAC,IAAI,GAAG,MAChD,OAAO,4HAAoE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,4BAA4B,EAAE,CAAC;AAC5H,QAAA,CAAC,UAAU,CAAC,QAAQ,CAAC,qBAAqB,CAAC,IAAI,GAAG,MAChD,OAAO,6HAAsE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,4BAA4B,EAAE,CAAC;AAC/H,KAAA;;AAGH;;AC3BA;;AAEG;;"}
@@ -0,0 +1,105 @@
1
+ import { AXPWidgetsCatalog } from '@acorex-platform/framework-shared/core';
2
+ import { entityMasterRecordActions, createAllQueryView, entityMasterCrudActions } from '@acorex-platform/framework-shared/entity';
3
+ import { R as RootConfig } from './acorex-platform-module-integration-management-client-contracts-entity-catalog-acorex-platform-module-integration-management-client-contracts-entity-catalog-BT3-xrGZ.mjs';
4
+
5
+ //#region ---- Entity Factory ----
6
+ async function factoryIntegrationApplication() {
7
+ const i18n = `${RootConfig.config.i18n}:applications.entities.application`;
8
+ const entityDef = {
9
+ module: RootConfig.module.name,
10
+ name: RootConfig.entities.integrationApplication.name,
11
+ title: RootConfig.entities.integrationApplication.title,
12
+ icon: RootConfig.entities.integrationApplication.icon,
13
+ formats: {
14
+ individual: RootConfig.entities.integrationApplication.title,
15
+ plural: RootConfig.entities.integrationApplication.titlePlural,
16
+ searchResult: { title: '{{ providerId }}', description: '{{ clientId }}' },
17
+ },
18
+ plugins: [
19
+ {
20
+ name: 'unique-fields',
21
+ options: {
22
+ fields: ['scopeInfo.tenantId', 'scopeInfo.applicationId', 'providerId'],
23
+ scope: 'global',
24
+ },
25
+ },
26
+ { name: 'history' },
27
+ ],
28
+ groups: [
29
+ { id: 'basic-info', title: '@general:terms.interface.basic-info' },
30
+ { id: 'oauth', title: `@${i18n}.groups.oauth` },
31
+ ],
32
+ properties: [
33
+ {
34
+ name: 'id',
35
+ title: '@general:terms.common.id',
36
+ groupId: 'basic-info',
37
+ schema: { dataType: 'uuid', visible: false, nullable: false, readonly: true, unique: { enabled: true } },
38
+ },
39
+ {
40
+ name: 'providerId',
41
+ title: `@${i18n}.fields.provider-id.title`,
42
+ groupId: 'basic-info',
43
+ schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text } },
44
+ validations: [{ rule: 'required' }],
45
+ },
46
+ {
47
+ name: 'clientId',
48
+ title: `@${i18n}.fields.client-id.title`,
49
+ groupId: 'oauth',
50
+ schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text } },
51
+ validations: [{ rule: 'required' }],
52
+ },
53
+ {
54
+ name: 'clientSecretRef',
55
+ title: `@${i18n}.fields.client-secret-ref.title`,
56
+ groupId: 'oauth',
57
+ schema: { dataType: 'string', visible: false, interface: { type: AXPWidgetsCatalog.text }, readonly: true },
58
+ },
59
+ {
60
+ name: 'authorizationEndpoint',
61
+ title: `@${i18n}.fields.authorization-endpoint.title`,
62
+ groupId: 'oauth',
63
+ schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text } },
64
+ },
65
+ {
66
+ name: 'tokenEndpoint',
67
+ title: `@${i18n}.fields.token-endpoint.title`,
68
+ groupId: 'oauth',
69
+ schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text } },
70
+ },
71
+ {
72
+ name: 'redirectUri',
73
+ title: `@${i18n}.fields.redirect-uri.title`,
74
+ groupId: 'oauth',
75
+ schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text } },
76
+ },
77
+ {
78
+ name: 'isActive',
79
+ title: '@general:terms.common.active',
80
+ groupId: 'basic-info',
81
+ schema: { dataType: 'boolean', defaultValue: true, interface: { type: AXPWidgetsCatalog.toggle } },
82
+ },
83
+ ],
84
+ interfaces: {
85
+ master: {
86
+ list: {
87
+ actions: [...entityMasterCrudActions()],
88
+ views: [createAllQueryView({ sorts: [{ name: 'providerId', dir: 'asc' }] })],
89
+ },
90
+ create: { sections: [{ id: 'basic-info' }, { id: 'oauth' }] },
91
+ update: { sections: [{ id: 'basic-info' }, { id: 'oauth' }] },
92
+ single: {
93
+ title: '{{ providerId }}',
94
+ sections: [{ id: 'basic-info' }, { id: 'oauth' }],
95
+ actions: [...entityMasterRecordActions()],
96
+ },
97
+ },
98
+ },
99
+ };
100
+ return entityDef;
101
+ }
102
+ //#endregion
103
+
104
+ export { factoryIntegrationApplication };
105
+ //# sourceMappingURL=acorex-platform-module-integration-management-client-contracts-entity-catalog-integration-application.entity-BGZKCUt8.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-module-integration-management-client-contracts-entity-catalog-integration-application.entity-BGZKCUt8.mjs","sources":["../../../../libs/modules/integration-management/contracts/src/entities/integration-application/integration-application.entity.ts"],"sourcesContent":["import { AXPWidgetsCatalog } from '@acorex-platform/framework-shared/core';\nimport { AXPEntity, createAllQueryView, entityMasterCrudActions, entityMasterRecordActions } from '@acorex-platform/framework-shared/entity';\nimport { RootConfig } from '../../root-config';\n\n//#region ---- Entity Factory ----\n\nexport async function factoryIntegrationApplication(): Promise<AXPEntity | null> {\n const i18n = `${RootConfig.config.i18n}:applications.entities.application`;\n\n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: RootConfig.entities.integrationApplication.name,\n title: RootConfig.entities.integrationApplication.title,\n icon: RootConfig.entities.integrationApplication.icon,\n formats: {\n individual: RootConfig.entities.integrationApplication.title,\n plural: RootConfig.entities.integrationApplication.titlePlural,\n searchResult: { title: '{{ providerId }}', description: '{{ clientId }}' },\n },\n plugins: [\n {\n name: 'unique-fields',\n options: {\n fields: ['scopeInfo.tenantId', 'scopeInfo.applicationId', 'providerId'],\n scope: 'global',\n },\n },\n { name: 'history' },\n ],\n groups: [\n { id: 'basic-info', title: '@general:terms.interface.basic-info' },\n { id: 'oauth', title: `@${i18n}.groups.oauth` },\n ],\n properties: [\n {\n name: 'id',\n title: '@general:terms.common.id',\n groupId: 'basic-info',\n schema: { dataType: 'uuid', visible: false, nullable: false, readonly: true, unique: { enabled: true } },\n },\n {\n name: 'providerId',\n title: `@${i18n}.fields.provider-id.title`,\n groupId: 'basic-info',\n schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text } },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'clientId',\n title: `@${i18n}.fields.client-id.title`,\n groupId: 'oauth',\n schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text } },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'clientSecretRef',\n title: `@${i18n}.fields.client-secret-ref.title`,\n groupId: 'oauth',\n schema: { dataType: 'string', visible: false, interface: { type: AXPWidgetsCatalog.text }, readonly: true },\n },\n {\n name: 'authorizationEndpoint',\n title: `@${i18n}.fields.authorization-endpoint.title`,\n groupId: 'oauth',\n schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text } },\n },\n {\n name: 'tokenEndpoint',\n title: `@${i18n}.fields.token-endpoint.title`,\n groupId: 'oauth',\n schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text } },\n },\n {\n name: 'redirectUri',\n title: `@${i18n}.fields.redirect-uri.title`,\n groupId: 'oauth',\n schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text } },\n },\n {\n name: 'isActive',\n title: '@general:terms.common.active',\n groupId: 'basic-info',\n schema: { dataType: 'boolean', defaultValue: true, interface: { type: AXPWidgetsCatalog.toggle } },\n },\n ],\n interfaces: {\n master: {\n list: {\n actions: [...entityMasterCrudActions()],\n views: [createAllQueryView({ sorts: [{ name: 'providerId', dir: 'asc' }] })],\n },\n create: { sections: [{ id: 'basic-info' }, { id: 'oauth' }] },\n update: { sections: [{ id: 'basic-info' }, { id: 'oauth' }] },\n single: {\n title: '{{ providerId }}',\n sections: [{ id: 'basic-info' }, { id: 'oauth' }],\n actions: [...entityMasterRecordActions()],\n },\n },\n },\n };\n\n return entityDef;\n}\n\n//#endregion\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,143 @@
1
+ import { AXPWidgetsCatalog } from '@acorex-platform/framework-shared/core';
2
+ import { entityMasterRecordActions, createAllQueryView, entityMasterCrudActions } from '@acorex-platform/framework-shared/entity';
3
+ import { R as RootConfig } from './acorex-platform-module-integration-management-client-contracts-entity-catalog-acorex-platform-module-integration-management-client-contracts-entity-catalog-BT3-xrGZ.mjs';
4
+
5
+ //#region ---- Entity Factory ----
6
+ async function factoryIntegrationConnection() {
7
+ const i18n = `${RootConfig.config.i18n}:connections.entities.connection`;
8
+ const entityDef = {
9
+ module: RootConfig.module.name,
10
+ name: RootConfig.entities.integrationConnection.name,
11
+ title: RootConfig.entities.integrationConnection.title,
12
+ icon: RootConfig.entities.integrationConnection.icon,
13
+ formats: {
14
+ individual: RootConfig.entities.integrationConnection.title,
15
+ plural: RootConfig.entities.integrationConnection.titlePlural,
16
+ searchResult: { title: '{{ displayName }}', description: '{{ providerId }}' },
17
+ },
18
+ plugins: [
19
+ {
20
+ name: 'unique-fields',
21
+ options: {
22
+ fields: [
23
+ 'scopeInfo.tenantId',
24
+ 'scopeInfo.applicationId',
25
+ 'scopeInfo.userId',
26
+ 'connectionScope',
27
+ 'providerId',
28
+ 'connectionKey',
29
+ ],
30
+ scope: 'global',
31
+ },
32
+ },
33
+ { name: 'history' },
34
+ ],
35
+ groups: [
36
+ { id: 'basic-info', title: '@general:terms.interface.basic-info' },
37
+ { id: 'connection', title: `@${i18n}.groups.connection` },
38
+ { id: 'status', title: `@${i18n}.groups.status` },
39
+ ],
40
+ properties: [
41
+ {
42
+ name: 'id',
43
+ title: '@general:terms.common.id',
44
+ groupId: 'basic-info',
45
+ schema: { dataType: 'uuid', visible: false, nullable: false, readonly: true, unique: { enabled: true } },
46
+ },
47
+ {
48
+ name: 'providerId',
49
+ title: `@${i18n}.fields.provider-id.title`,
50
+ groupId: 'basic-info',
51
+ schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text }, readonly: true },
52
+ validations: [{ rule: 'required' }],
53
+ },
54
+ {
55
+ name: 'displayName',
56
+ title: '@general:terms.common.title',
57
+ groupId: 'basic-info',
58
+ schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text } },
59
+ validations: [{ rule: 'required' }],
60
+ },
61
+ {
62
+ name: 'connectionScope',
63
+ title: `@${i18n}.fields.connection-scope.title`,
64
+ groupId: 'connection',
65
+ schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text }, readonly: true },
66
+ },
67
+ {
68
+ name: 'connectionKey',
69
+ title: `@${i18n}.fields.connection-key.title`,
70
+ groupId: 'connection',
71
+ schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text }, readonly: true },
72
+ },
73
+ {
74
+ name: 'authMethodType',
75
+ title: `@${i18n}.fields.auth-method-type.title`,
76
+ groupId: 'connection',
77
+ schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text }, readonly: true },
78
+ },
79
+ {
80
+ name: 'status',
81
+ title: '@general:terms.common.status',
82
+ groupId: 'status',
83
+ schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text }, readonly: true },
84
+ },
85
+ {
86
+ name: 'instanceUrl',
87
+ title: `@${i18n}.fields.instance-url.title`,
88
+ groupId: 'connection',
89
+ schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text } },
90
+ },
91
+ {
92
+ name: 'externalAccountName',
93
+ title: `@${i18n}.fields.external-account-name.title`,
94
+ groupId: 'connection',
95
+ schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text }, readonly: true },
96
+ },
97
+ {
98
+ name: 'secretRef',
99
+ title: `@${i18n}.fields.secret-ref.title`,
100
+ groupId: 'connection',
101
+ schema: { dataType: 'string', visible: false, interface: { type: AXPWidgetsCatalog.text }, readonly: true },
102
+ },
103
+ {
104
+ name: 'config',
105
+ title: `@${i18n}.fields.config.title`,
106
+ groupId: 'connection',
107
+ schema: { dataType: 'object', visible: false, interface: { type: 'json' } },
108
+ },
109
+ {
110
+ name: 'isRevoked',
111
+ title: `@${i18n}.fields.is-revoked.title`,
112
+ groupId: 'status',
113
+ schema: { dataType: 'boolean', defaultValue: false, interface: { type: AXPWidgetsCatalog.toggle }, readonly: true },
114
+ },
115
+ {
116
+ name: 'isDisabled',
117
+ title: `@${i18n}.fields.is-disabled.title`,
118
+ groupId: 'status',
119
+ schema: { dataType: 'boolean', defaultValue: false, interface: { type: AXPWidgetsCatalog.toggle } },
120
+ },
121
+ ],
122
+ interfaces: {
123
+ master: {
124
+ list: {
125
+ actions: [...entityMasterCrudActions()],
126
+ views: [createAllQueryView({ sorts: [{ name: 'displayName', dir: 'asc' }] })],
127
+ },
128
+ create: { sections: [{ id: 'basic-info' }, { id: 'connection' }] },
129
+ update: { sections: [{ id: 'basic-info' }, { id: 'connection' }, { id: 'status' }] },
130
+ single: {
131
+ title: '{{ displayName }}',
132
+ sections: [{ id: 'basic-info' }, { id: 'connection' }, { id: 'status' }],
133
+ actions: [...entityMasterRecordActions()],
134
+ },
135
+ },
136
+ },
137
+ };
138
+ return entityDef;
139
+ }
140
+ //#endregion
141
+
142
+ export { factoryIntegrationConnection };
143
+ //# sourceMappingURL=acorex-platform-module-integration-management-client-contracts-entity-catalog-integration-connection.entity-CYQq6jv2.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-module-integration-management-client-contracts-entity-catalog-integration-connection.entity-CYQq6jv2.mjs","sources":["../../../../libs/modules/integration-management/contracts/src/entities/integration-connection/integration-connection.entity.ts"],"sourcesContent":["import { AXPWidgetsCatalog } from '@acorex-platform/framework-shared/core';\nimport { AXPEntity, createAllQueryView, entityMasterCrudActions, entityMasterRecordActions } from '@acorex-platform/framework-shared/entity';\nimport { RootConfig } from '../../root-config';\n\n//#region ---- Entity Factory ----\n\nexport async function factoryIntegrationConnection(): Promise<AXPEntity | null> {\n const i18n = `${RootConfig.config.i18n}:connections.entities.connection`;\n\n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: RootConfig.entities.integrationConnection.name,\n title: RootConfig.entities.integrationConnection.title,\n icon: RootConfig.entities.integrationConnection.icon,\n formats: {\n individual: RootConfig.entities.integrationConnection.title,\n plural: RootConfig.entities.integrationConnection.titlePlural,\n searchResult: { title: '{{ displayName }}', description: '{{ providerId }}' },\n },\n plugins: [\n {\n name: 'unique-fields',\n options: {\n fields: [\n 'scopeInfo.tenantId',\n 'scopeInfo.applicationId',\n 'scopeInfo.userId',\n 'connectionScope',\n 'providerId',\n 'connectionKey',\n ],\n scope: 'global',\n },\n },\n { name: 'history' },\n ],\n groups: [\n { id: 'basic-info', title: '@general:terms.interface.basic-info' },\n { id: 'connection', title: `@${i18n}.groups.connection` },\n { id: 'status', title: `@${i18n}.groups.status` },\n ],\n properties: [\n {\n name: 'id',\n title: '@general:terms.common.id',\n groupId: 'basic-info',\n schema: { dataType: 'uuid', visible: false, nullable: false, readonly: true, unique: { enabled: true } },\n },\n {\n name: 'providerId',\n title: `@${i18n}.fields.provider-id.title`,\n groupId: 'basic-info',\n schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text }, readonly: true },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'displayName',\n title: '@general:terms.common.title',\n groupId: 'basic-info',\n schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text } },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'connectionScope',\n title: `@${i18n}.fields.connection-scope.title`,\n groupId: 'connection',\n schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text }, readonly: true },\n },\n {\n name: 'connectionKey',\n title: `@${i18n}.fields.connection-key.title`,\n groupId: 'connection',\n schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text }, readonly: true },\n },\n {\n name: 'authMethodType',\n title: `@${i18n}.fields.auth-method-type.title`,\n groupId: 'connection',\n schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text }, readonly: true },\n },\n {\n name: 'status',\n title: '@general:terms.common.status',\n groupId: 'status',\n schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text }, readonly: true },\n },\n {\n name: 'instanceUrl',\n title: `@${i18n}.fields.instance-url.title`,\n groupId: 'connection',\n schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text } },\n },\n {\n name: 'externalAccountName',\n title: `@${i18n}.fields.external-account-name.title`,\n groupId: 'connection',\n schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text }, readonly: true },\n },\n {\n name: 'secretRef',\n title: `@${i18n}.fields.secret-ref.title`,\n groupId: 'connection',\n schema: { dataType: 'string', visible: false, interface: { type: AXPWidgetsCatalog.text }, readonly: true },\n },\n {\n name: 'config',\n title: `@${i18n}.fields.config.title`,\n groupId: 'connection',\n schema: { dataType: 'object', visible: false, interface: { type: 'json' } },\n },\n {\n name: 'isRevoked',\n title: `@${i18n}.fields.is-revoked.title`,\n groupId: 'status',\n schema: { dataType: 'boolean', defaultValue: false, interface: { type: AXPWidgetsCatalog.toggle }, readonly: true },\n },\n {\n name: 'isDisabled',\n title: `@${i18n}.fields.is-disabled.title`,\n groupId: 'status',\n schema: { dataType: 'boolean', defaultValue: false, interface: { type: AXPWidgetsCatalog.toggle } },\n },\n ],\n interfaces: {\n master: {\n list: {\n actions: [...entityMasterCrudActions()],\n views: [createAllQueryView({ sorts: [{ name: 'displayName', dir: 'asc' }] })],\n },\n create: { sections: [{ id: 'basic-info' }, { id: 'connection' }] },\n update: { sections: [{ id: 'basic-info' }, { id: 'connection' }, { id: 'status' }] },\n single: {\n title: '{{ displayName }}',\n sections: [{ id: 'basic-info' }, { id: 'connection' }, { id: 'status' }],\n actions: [...entityMasterRecordActions()],\n },\n },\n },\n };\n\n return entityDef;\n}\n\n//#endregion\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,79 @@
1
+ import { AXPWidgetsCatalog } from '@acorex-platform/framework-shared/core';
2
+ import { createAllQueryView } from '@acorex-platform/framework-shared/entity';
3
+ import { R as RootConfig } from './acorex-platform-module-integration-management-client-contracts-entity-catalog-acorex-platform-module-integration-management-client-contracts-entity-catalog-BT3-xrGZ.mjs';
4
+
5
+ //#region ---- Entity Factory ----
6
+ async function factoryIntegrationOAuthState() {
7
+ const i18n = `${RootConfig.config.i18n}:oauth-states.entities.oauth-state`;
8
+ const entityDef = {
9
+ module: RootConfig.module.name,
10
+ name: RootConfig.entities.integrationOAuthState.name,
11
+ title: RootConfig.entities.integrationOAuthState.title,
12
+ icon: RootConfig.entities.integrationOAuthState.icon,
13
+ formats: {
14
+ individual: RootConfig.entities.integrationOAuthState.title,
15
+ plural: RootConfig.entities.integrationOAuthState.titlePlural,
16
+ },
17
+ plugins: [
18
+ {
19
+ name: 'unique-fields',
20
+ options: { fields: 'state', scope: 'global' },
21
+ },
22
+ ],
23
+ groups: [{ id: 'basic-info', title: '@general:terms.interface.basic-info' }],
24
+ properties: [
25
+ {
26
+ name: 'id',
27
+ title: '@general:terms.common.id',
28
+ groupId: 'basic-info',
29
+ schema: { dataType: 'uuid', visible: false, nullable: false, readonly: true, unique: { enabled: true } },
30
+ },
31
+ {
32
+ name: 'state',
33
+ title: `@${i18n}.fields.state.title`,
34
+ groupId: 'basic-info',
35
+ schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text }, readonly: true },
36
+ },
37
+ {
38
+ name: 'providerId',
39
+ title: `@${i18n}.fields.provider-id.title`,
40
+ groupId: 'basic-info',
41
+ schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text }, readonly: true },
42
+ },
43
+ {
44
+ name: 'expiresAt',
45
+ title: `@${i18n}.fields.expires-at.title`,
46
+ groupId: 'basic-info',
47
+ schema: { dataType: 'datetime', interface: { type: AXPWidgetsCatalog.dateTime }, readonly: true },
48
+ },
49
+ {
50
+ name: 'codeVerifier',
51
+ title: `@${i18n}.fields.code-verifier.title`,
52
+ groupId: 'basic-info',
53
+ schema: { dataType: 'string', visible: false, interface: { type: AXPWidgetsCatalog.text }, readonly: true },
54
+ },
55
+ {
56
+ name: 'redirectUri',
57
+ title: `@${i18n}.fields.redirect-uri.title`,
58
+ groupId: 'basic-info',
59
+ schema: { dataType: 'string', visible: false, interface: { type: AXPWidgetsCatalog.text }, readonly: true },
60
+ },
61
+ {
62
+ name: 'consumedAt',
63
+ title: `@${i18n}.fields.consumed-at.title`,
64
+ groupId: 'basic-info',
65
+ schema: { dataType: 'datetime', visible: false, interface: { type: AXPWidgetsCatalog.dateTime }, readonly: true },
66
+ },
67
+ ],
68
+ interfaces: {
69
+ master: {
70
+ list: { views: [createAllQueryView({ sorts: [{ name: 'expiresAt', dir: 'desc' }] })] },
71
+ },
72
+ },
73
+ };
74
+ return entityDef;
75
+ }
76
+ //#endregion
77
+
78
+ export { factoryIntegrationOAuthState };
79
+ //# sourceMappingURL=acorex-platform-module-integration-management-client-contracts-entity-catalog-integration-oauth-state.entity-BPvTE55S.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-module-integration-management-client-contracts-entity-catalog-integration-oauth-state.entity-BPvTE55S.mjs","sources":["../../../../libs/modules/integration-management/contracts/src/entities/integration-oauth-state/integration-oauth-state.entity.ts"],"sourcesContent":["import { AXPWidgetsCatalog } from '@acorex-platform/framework-shared/core';\nimport { AXPEntity, createAllQueryView } from '@acorex-platform/framework-shared/entity';\nimport { RootConfig } from '../../root-config';\n\n//#region ---- Entity Factory ----\n\nexport async function factoryIntegrationOAuthState(): Promise<AXPEntity | null> {\n const i18n = `${RootConfig.config.i18n}:oauth-states.entities.oauth-state`;\n\n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: RootConfig.entities.integrationOAuthState.name,\n title: RootConfig.entities.integrationOAuthState.title,\n icon: RootConfig.entities.integrationOAuthState.icon,\n formats: {\n individual: RootConfig.entities.integrationOAuthState.title,\n plural: RootConfig.entities.integrationOAuthState.titlePlural,\n },\n plugins: [\n {\n name: 'unique-fields',\n options: { fields: 'state', scope: 'global' },\n },\n ],\n groups: [{ id: 'basic-info', title: '@general:terms.interface.basic-info' }],\n properties: [\n {\n name: 'id',\n title: '@general:terms.common.id',\n groupId: 'basic-info',\n schema: { dataType: 'uuid', visible: false, nullable: false, readonly: true, unique: { enabled: true } },\n },\n {\n name: 'state',\n title: `@${i18n}.fields.state.title`,\n groupId: 'basic-info',\n schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text }, readonly: true },\n },\n {\n name: 'providerId',\n title: `@${i18n}.fields.provider-id.title`,\n groupId: 'basic-info',\n schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text }, readonly: true },\n },\n {\n name: 'expiresAt',\n title: `@${i18n}.fields.expires-at.title`,\n groupId: 'basic-info',\n schema: { dataType: 'datetime', interface: { type: AXPWidgetsCatalog.dateTime }, readonly: true },\n },\n {\n name: 'codeVerifier',\n title: `@${i18n}.fields.code-verifier.title`,\n groupId: 'basic-info',\n schema: { dataType: 'string', visible: false, interface: { type: AXPWidgetsCatalog.text }, readonly: true },\n },\n {\n name: 'redirectUri',\n title: `@${i18n}.fields.redirect-uri.title`,\n groupId: 'basic-info',\n schema: { dataType: 'string', visible: false, interface: { type: AXPWidgetsCatalog.text }, readonly: true },\n },\n {\n name: 'consumedAt',\n title: `@${i18n}.fields.consumed-at.title`,\n groupId: 'basic-info',\n schema: { dataType: 'datetime', visible: false, interface: { type: AXPWidgetsCatalog.dateTime }, readonly: true },\n },\n ],\n interfaces: {\n master: {\n list: { views: [createAllQueryView({ sorts: [{ name: 'expiresAt', dir: 'desc' }] })] },\n },\n },\n };\n\n return entityDef;\n}\n\n//#endregion\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { i as integrationManagementLocalEntityCatalog } from './acorex-platform-module-integration-management-client-contracts-entity-catalog-acorex-platform-module-integration-management-client-contracts-entity-catalog-BT3-xrGZ.mjs';
2
+ //# sourceMappingURL=acorex-platform-module-integration-management-client-contracts-entity-catalog.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-module-integration-management-client-contracts-entity-catalog.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-module-integration-management-client-contracts.mjs","sources":["../../../../libs/modules/integration-management/contracts/src/root-config.ts","../../../../libs/modules/integration-management/contracts/src/permission.keys.ts","../../../../libs/modules/integration-management/contracts/src/commands.keys.ts","../../../../libs/modules/integration-management/contracts/src/queries.keys.ts","../../../../libs/modules/integration-management/contracts/src/menu.keys.ts","../../../../libs/modules/integration-management/contracts/src/route.helpers.ts","../../../../libs/modules/integration-management/contracts/src/entities/integration-application/integration-application.types.ts","../../../../libs/modules/integration-management/contracts/src/entities/integration-connection/integration-connection.types.ts","../../../../libs/modules/integration-management/contracts/src/entities/integration-oauth-state/integration-oauth-state.types.ts","../../../../libs/modules/integration-management/contracts/src/acorex-platform-module-integration-management-client-contracts.ts"],"sourcesContent":["//#region ---- Module Config ----\n\nconst config = {\n i18n: 'integration-management',\n module: 'IntegrationManagement',\n route: 'integration-management',\n};\n\nexport const RootConfig = {\n config,\n module: {\n name: config.module,\n route: config.route,\n title: `@${config.i18n}:module.title`,\n icon: 'fa-light fa-plug',\n },\n entities: {\n integrationConnection: {\n name: 'IntegrationConnection',\n source: `${config.module}.IntegrationConnection`,\n title: `@${config.i18n}:connections.entities.connection.title`,\n titlePlural: `@${config.i18n}:connections.entities.connection.plural`,\n icon: 'fa-light fa-link',\n },\n integrationOAuthState: {\n name: 'IntegrationOAuthState',\n source: `${config.module}.IntegrationOAuthState`,\n title: `@${config.i18n}:oauth-states.entities.oauth-state.title`,\n titlePlural: `@${config.i18n}:oauth-states.entities.oauth-state.plural`,\n icon: 'fa-light fa-key',\n },\n integrationApplication: {\n name: 'IntegrationApplication',\n source: `${config.module}.IntegrationApplication`,\n title: `@${config.i18n}:applications.entities.application.title`,\n titlePlural: `@${config.i18n}:applications.entities.application.plural`,\n icon: 'fa-light fa-shield-keyhole',\n },\n },\n queries: {\n dashboard: {\n integrationsDonut: `${config.module}:Dashboard:IntegrationsDonut`,\n },\n },\n};\n\n//#endregion\n","/**\n * Administration capabilities used by this module.\n * Domain capability keys for this module. Root groups live in `AXPCommonPermissionGroupKeys` (common contracts).\n */\nexport const AXPAdministrationPermissionKeys = {\n Access: 'Administration:Permission:Access',\n MaintainUsersAndRoles: 'Administration:Permission:MaintainUsersAndRoles',\n ManageSessions: 'Administration:Permission:ManageSessions',\n MaintainPolicies: 'Administration:Permission:MaintainPolicies',\n ViewIntegrations: 'Administration:Permission:ViewIntegrations',\n MaintainConnections: 'Administration:Permission:MaintainConnections',\n ManageIntegrationActions: 'Administration:Permission:ManageIntegrationActions',\n MaintainWorkflows: 'Administration:Permission:MaintainWorkflows',\n ManageWorkflowActions: 'Administration:Permission:ManageWorkflowActions',\n ViewRules: 'Administration:Permission:ViewRules',\n MaintainRules: 'Administration:Permission:MaintainRules',\n ManageRuleActions: 'Administration:Permission:ManageRuleActions',\n MaintainAi: 'Administration:Permission:MaintainAi',\n UseAiAssist: 'Administration:Permission:UseAiAssist',\n MaintainDashboards: 'Administration:Permission:MaintainDashboards',\n ViewJobs: 'Administration:Permission:ViewJobs',\n ManageJobActions: 'Administration:Permission:ManageJobActions',\n ViewObservability: 'Administration:Permission:ViewObservability',\n MaintainObservability: 'Administration:Permission:MaintainObservability',\n} as const;\n\n/**\n * @deprecated Prefer {@link AXPAdministrationPermissionKeys}.\n * Legacy nested shape kept so existing imports compile during migration.\n */\nexport const AXMIntegrationManagementPermissionKeys = {\n Provider: {\n View: AXPAdministrationPermissionKeys.ViewIntegrations,\n },\n Connection: {\n View: AXPAdministrationPermissionKeys.ViewIntegrations,\n Management: AXPAdministrationPermissionKeys.MaintainConnections,\n },\n TenantConnection: {\n Management: AXPAdministrationPermissionKeys.MaintainConnections,\n },\n Application: {\n Management: AXPAdministrationPermissionKeys.MaintainConnections,\n },\n ConnectionHealth: {\n View: AXPAdministrationPermissionKeys.ViewIntegrations,\n },\n} as const;\n","//#region ---- Command Keys ----\n\nexport const AXMIntegrationManagementCommandKeys = {\n ConnectionConnectWithCredentials: 'IntegrationManagement.Connection:ConnectWithCredentials',\n ConnectionRefreshAuthorization: 'IntegrationManagement.Connection:RefreshAuthorization',\n ConnectionValidate: 'IntegrationManagement.Connection:Validate',\n ConnectionUpdate: 'IntegrationManagement.Connection:Update',\n ConnectionDisconnect: 'IntegrationManagement.Connection:Disconnect',\n ConnectionRevoke: 'IntegrationManagement.Connection:Revoke',\n ConnectionDelete: 'IntegrationManagement.Connection:Delete',\n ApplicationUpsert: 'IntegrationManagement.Application:Upsert',\n} as const;\n\n//#endregion\n","//#region ---- Query Keys ----\n\nexport const AXMIntegrationManagementQueryKeys = {\n DomainList: 'IntegrationManagement.Domain:List',\n ProviderList: 'IntegrationManagement.Provider:List',\n ProviderGet: 'IntegrationManagement.Provider:Get',\n ConnectionListMine: 'IntegrationManagement.Connection:ListMine',\n ConnectionGetStatus: 'IntegrationManagement.Connection:GetStatus',\n ConnectionGetAuthMethods: 'IntegrationManagement.Connection:GetAuthMethods',\n} as const;\n\n//#endregion\n","//#region ---- Menu Keys ----\n\nexport const AXMIntegrationManagementMenuKeys = {\n Integrations: 'IntegrationManagement:Menu:Integrations',\n} as const;\n\n//#endregion\n","//#region ----- Route helpers -----\n\n/** Tenant integrations admin page: `/{app}/admin/integrations`. */\nexport function buildTenantIntegrationsPagePath(appName: string): string {\n return `/${appName}/admin/integrations`;\n}\n\n/**\n * App-agnostic OAuth callback path.\n * Prefer this for providers with a fixed registered redirect URI (e.g. Simpro).\n */\nexport function buildIntegrationOAuthCallbackPath(providerId: string): string {\n return `/integrations/oauth/callback/${providerId}`;\n}\n\nexport function buildIntegrationOAuthCallbackUrl(origin: string, providerId: string): string {\n return `${origin.replace(/\\/+$/, '')}${buildIntegrationOAuthCallbackPath(providerId)}`;\n}\n\n/** Resolve the current app route slug — session first, then optional route/fallback. */\nexport function resolveAppRouteName(\n applicationName?: string | null,\n ...fallbacks: Array<string | null | undefined>\n): string | null {\n const candidates = [applicationName, ...fallbacks];\n for (const candidate of candidates) {\n const trimmed = String(candidate ?? '').trim();\n if (trimmed) {\n return trimmed;\n }\n }\n return null;\n}\n\n//#endregion\n","import type { AXPEntityModel } from '@acorex-platform/framework-shared/entity';\n\n//#region ---- Integration application entity model ----\n\n/**\n * Tenant/app isolation lives on {@link AXPEntityModel.scopeInfo}\n * (`tenantId`, `applicationId`).\n */\nexport interface AXMIntegrationManagementIntegrationApplicationEntityModel\n extends AXPEntityModel<string> {\n providerId: string;\n clientId: string;\n clientSecretRef: string;\n authorizationEndpoint?: string | null;\n tokenEndpoint?: string | null;\n redirectUri?: string | null;\n defaultScopes?: string[] | null;\n environment?: string | null;\n isActive: boolean;\n}\n\n//#endregion\n","import type { AXPEntityModel } from '@acorex-platform/framework-shared/entity';\nimport type {\n AXPIntegrationAuthMethodType,\n AXPIntegrationConnectionScope,\n AXPIntegrationConnectionStatus,\n} from '@acorex-platform/framework-shared/core';\n\n//#region ---- Integration connection entity model ----\n\n/**\n * Isolation lives on {@link AXPEntityModel.scopeInfo}:\n * - `tenantId` / `applicationId` always\n * - `userId` only when `connectionScope` is `user`\n */\nexport interface AXMIntegrationManagementIntegrationConnectionEntityModel\n extends AXPEntityModel<string> {\n providerId: string;\n connectionScope: AXPIntegrationConnectionScope;\n connectionKey: string;\n displayName: string;\n authMethodType: AXPIntegrationAuthMethodType;\n status: AXPIntegrationConnectionStatus;\n instanceUrl?: string | null;\n externalAccountId?: string | null;\n externalAccountName?: string | null;\n grantedScopes?: string[] | null;\n secretRef?: string | null;\n expiresAt?: string | null;\n lastConnectedAt?: string | null;\n lastValidatedAt?: string | null;\n lastSyncAt?: string | null;\n lastErrorCode?: string | null;\n lastErrorMessage?: string | null;\n isRevoked: boolean;\n isDisabled: boolean;\n config?: Record<string, unknown> | null;\n}\n\n//#endregion\n","import type { AXPEntityModel } from '@acorex-platform/framework-shared/entity';\n\n//#region ---- Integration OAuth state entity model ----\n\n/**\n * Isolation lives on {@link AXPEntityModel.scopeInfo}\n * (`tenantId`, `applicationId`, `userId` = authorizing user).\n */\nexport interface AXMIntegrationManagementIntegrationOAuthStateEntityModel\n extends AXPEntityModel<string> {\n state: string;\n codeVerifier: string;\n providerId: string;\n redirectUri: string;\n connectionScope: string;\n connectionKey: string;\n connectionId?: string | null;\n authMethodType: string;\n expiresAt: string;\n consumedAt?: string | null;\n}\n\n//#endregion\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-platform-module-integration-management-client-contracts.mjs","sources":["../../../../libs/modules/integration-management/contracts/src/root-config.ts","../../../../libs/modules/integration-management/contracts/src/permission.keys.ts","../../../../libs/modules/integration-management/contracts/src/commands.keys.ts","../../../../libs/modules/integration-management/contracts/src/queries.keys.ts","../../../../libs/modules/integration-management/contracts/src/menu.keys.ts","../../../../libs/modules/integration-management/contracts/src/route.helpers.ts","../../../../libs/modules/integration-management/contracts/src/entities/integration-application/integration-application.types.ts","../../../../libs/modules/integration-management/contracts/src/entities/integration-connection/integration-connection.types.ts","../../../../libs/modules/integration-management/contracts/src/entities/integration-oauth-state/integration-oauth-state.types.ts","../../../../libs/modules/integration-management/contracts/src/acorex-platform-module-integration-management-client-contracts.ts"],"sourcesContent":["//#region ---- Module Config ----\n\nconst config = {\n i18n: 'integration-management',\n module: 'IntegrationManagement',\n route: 'integration-management',\n};\n\nexport const RootConfig = {\n config,\n module: {\n name: config.module,\n route: config.route,\n title: `@${config.i18n}:module.title`,\n icon: 'fa-light fa-plug',\n },\n entities: {\n integrationConnection: {\n name: 'IntegrationConnection',\n source: `${config.module}.IntegrationConnection`,\n title: `@${config.i18n}:connections.entities.connection.title`,\n titlePlural: `@${config.i18n}:connections.entities.connection.plural`,\n icon: 'fa-light fa-link',\n },\n integrationOAuthState: {\n name: 'IntegrationOAuthState',\n source: `${config.module}.IntegrationOAuthState`,\n title: `@${config.i18n}:oauth-states.entities.oauth-state.title`,\n titlePlural: `@${config.i18n}:oauth-states.entities.oauth-state.plural`,\n icon: 'fa-light fa-key',\n },\n integrationApplication: {\n name: 'IntegrationApplication',\n source: `${config.module}.IntegrationApplication`,\n title: `@${config.i18n}:applications.entities.application.title`,\n titlePlural: `@${config.i18n}:applications.entities.application.plural`,\n icon: 'fa-light fa-shield-keyhole',\n },\n },\n queries: {\n dashboard: {\n integrationsDonut: `${config.module}:Dashboard:IntegrationsDonut`,\n },\n },\n};\n\n//#endregion\n","/**\n * Administration capabilities used by this module.\n * Domain capability keys for this module. Root groups live in `AXPCommonPermissionGroupKeys` (common contracts).\n */\nexport const AXPAdministrationPermissionKeys = {\n Access: 'Administration:Permission:Access',\n MaintainUsersAndRoles: 'Administration:Permission:MaintainUsersAndRoles',\n ManageSessions: 'Administration:Permission:ManageSessions',\n MaintainPolicies: 'Administration:Permission:MaintainPolicies',\n ViewIntegrations: 'Administration:Permission:ViewIntegrations',\n MaintainConnections: 'Administration:Permission:MaintainConnections',\n ManageIntegrationActions: 'Administration:Permission:ManageIntegrationActions',\n MaintainWorkflows: 'Administration:Permission:MaintainWorkflows',\n ManageWorkflowActions: 'Administration:Permission:ManageWorkflowActions',\n ViewRules: 'Administration:Permission:ViewRules',\n MaintainRules: 'Administration:Permission:MaintainRules',\n ManageRuleActions: 'Administration:Permission:ManageRuleActions',\n MaintainAi: 'Administration:Permission:MaintainAi',\n UseAiAssist: 'Administration:Permission:UseAiAssist',\n MaintainDashboards: 'Administration:Permission:MaintainDashboards',\n ViewJobs: 'Administration:Permission:ViewJobs',\n ManageJobActions: 'Administration:Permission:ManageJobActions',\n ViewObservability: 'Administration:Permission:ViewObservability',\n MaintainObservability: 'Administration:Permission:MaintainObservability',\n} as const;\n\n/**\n * @deprecated Prefer {@link AXPAdministrationPermissionKeys}.\n * Legacy nested shape kept so existing imports compile during migration.\n */\nexport const AXMIntegrationManagementPermissionKeys = {\n Provider: {\n View: AXPAdministrationPermissionKeys.ViewIntegrations,\n },\n Connection: {\n View: AXPAdministrationPermissionKeys.ViewIntegrations,\n Management: AXPAdministrationPermissionKeys.MaintainConnections,\n },\n TenantConnection: {\n Management: AXPAdministrationPermissionKeys.MaintainConnections,\n },\n Application: {\n Management: AXPAdministrationPermissionKeys.MaintainConnections,\n },\n ConnectionHealth: {\n View: AXPAdministrationPermissionKeys.ViewIntegrations,\n },\n} as const;\n","//#region ---- Command Keys ----\n\nexport const AXMIntegrationManagementCommandKeys = {\n ConnectionConnectWithCredentials: 'IntegrationManagement.Connection:ConnectWithCredentials',\n ConnectionRefreshAuthorization: 'IntegrationManagement.Connection:RefreshAuthorization',\n ConnectionValidate: 'IntegrationManagement.Connection:Validate',\n ConnectionUpdate: 'IntegrationManagement.Connection:Update',\n ConnectionDisconnect: 'IntegrationManagement.Connection:Disconnect',\n ConnectionRevoke: 'IntegrationManagement.Connection:Revoke',\n ConnectionDelete: 'IntegrationManagement.Connection:Delete',\n ApplicationUpsert: 'IntegrationManagement.Application:Upsert',\n} as const;\n\n//#endregion\n","//#region ---- Query Keys ----\n\nexport const AXMIntegrationManagementQueryKeys = {\n DomainList: 'IntegrationManagement.Domain:List',\n ProviderList: 'IntegrationManagement.Provider:List',\n ProviderGet: 'IntegrationManagement.Provider:Get',\n ConnectionListMine: 'IntegrationManagement.Connection:ListMine',\n ConnectionGetStatus: 'IntegrationManagement.Connection:GetStatus',\n ConnectionGetAuthMethods: 'IntegrationManagement.Connection:GetAuthMethods',\n} as const;\n\n//#endregion\n","//#region ---- Menu Keys ----\n\nexport const AXMIntegrationManagementMenuKeys = {\n Integrations: 'IntegrationManagement:Menu:Integrations',\n} as const;\n\n//#endregion\n","//#region ----- Route helpers -----\n\n/** Tenant integrations admin page: `/{app}/admin/integrations`. */\nexport function buildTenantIntegrationsPagePath(appName: string): string {\n return `/${appName}/admin/integrations`;\n}\n\n/**\n * App-agnostic OAuth callback path.\n * Prefer this for providers with a fixed registered redirect URI (e.g. Simpro).\n */\nexport function buildIntegrationOAuthCallbackPath(providerId: string): string {\n return `/integrations/oauth/callback/${providerId}`;\n}\n\nexport function buildIntegrationOAuthCallbackUrl(origin: string, providerId: string): string {\n return `${origin.replace(/\\/+$/, '')}${buildIntegrationOAuthCallbackPath(providerId)}`;\n}\n\n/** Resolve the current app route slug — session first, then optional route/fallback. */\nexport function resolveAppRouteName(\n applicationName?: string | null,\n ...fallbacks: Array<string | null | undefined>\n): string | null {\n const candidates = [applicationName, ...fallbacks];\n for (const candidate of candidates) {\n const trimmed = String(candidate ?? '').trim();\n if (trimmed) {\n return trimmed;\n }\n }\n return null;\n}\n\n//#endregion\n","import type { AXPEntityModel } from '@acorex-platform/framework-shared/entity';\n\n//#region ---- Integration application entity model ----\n\n/**\n * Tenant/app isolation lives on {@link AXPEntityModel.scopeInfo}\n * (`tenantId`, `applicationId`).\n */\nexport interface AXMIntegrationManagementIntegrationApplicationEntityModel\n extends AXPEntityModel<string> {\n providerId: string;\n clientId: string;\n clientSecretRef: string;\n authorizationEndpoint?: string | null;\n tokenEndpoint?: string | null;\n redirectUri?: string | null;\n defaultScopes?: string[] | null;\n environment?: string | null;\n isActive: boolean;\n}\n\n//#endregion\n","import type { AXPEntityModel } from '@acorex-platform/framework-shared/entity';\nimport type {\n AXPIntegrationAuthMethodType,\n AXPIntegrationConnectionScope,\n AXPIntegrationConnectionStatus,\n} from '@acorex-platform/framework-shared/core';\n\n//#region ---- Integration connection entity model ----\n\n/**\n * Isolation lives on {@link AXPEntityModel.scopeInfo}:\n * - `tenantId` / `applicationId` always\n * - `userId` only when `connectionScope` is `user`\n */\nexport interface AXMIntegrationManagementIntegrationConnectionEntityModel\n extends AXPEntityModel<string> {\n providerId: string;\n connectionScope: AXPIntegrationConnectionScope;\n connectionKey: string;\n displayName: string;\n authMethodType: AXPIntegrationAuthMethodType;\n status: AXPIntegrationConnectionStatus;\n instanceUrl?: string | null;\n externalAccountId?: string | null;\n externalAccountName?: string | null;\n grantedScopes?: string[] | null;\n secretRef?: string | null;\n expiresAt?: string | null;\n lastConnectedAt?: string | null;\n lastValidatedAt?: string | null;\n lastSyncAt?: string | null;\n lastErrorCode?: string | null;\n lastErrorMessage?: string | null;\n isRevoked: boolean;\n isDisabled: boolean;\n config?: Record<string, unknown> | null;\n}\n\n//#endregion\n","import type { AXPEntityModel } from '@acorex-platform/framework-shared/entity';\n\n//#region ---- Integration OAuth state entity model ----\n\n/**\n * Isolation lives on {@link AXPEntityModel.scopeInfo}\n * (`tenantId`, `applicationId`, `userId` = authorizing user).\n */\nexport interface AXMIntegrationManagementIntegrationOAuthStateEntityModel\n extends AXPEntityModel<string> {\n state: string;\n codeVerifier: string;\n providerId: string;\n redirectUri: string;\n connectionScope: string;\n connectionKey: string;\n connectionId?: string | null;\n authMethodType: string;\n expiresAt: string;\n consumedAt?: string | null;\n}\n\n//#endregion\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-module-integration-management-client-delete-connection.command-DQ_kn8dH.mjs","sources":["../../../../libs/modules/integration-management/client/src/lib/features/commands/delete-connection.command.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport { AXP_INTEGRATION_SECRET_STORE } from '@acorex-platform/framework-client/common';\nimport { Injectable, inject } from '@angular/core';\nimport {\n AXMIntegrationConnectionManager,\n toSafeIntegrationConnectionDto,\n} from '../shared/integration-connection.manager';\nimport { AXMIntegrationConnectionLifecycleDispatcher } from '../shared/integration-connection-lifecycle.dispatcher';\n\n//#endregion\n\n//#region ---- Types ----\n\nexport interface DeleteConnectionCommandInput {\n connectionId: string;\n}\n\n//#endregion\n\n//#region ---- Command ----\n\n@Injectable({ providedIn: 'root' })\nexport class DeleteConnectionCommand implements AXPCommand<DeleteConnectionCommandInput, { deleted: true }> {\n private readonly connectionManager = inject(AXMIntegrationConnectionManager);\n private readonly secretStore = inject(AXP_INTEGRATION_SECRET_STORE);\n private readonly lifecycle = inject(AXMIntegrationConnectionLifecycleDispatcher);\n\n async execute(\n input: DeleteConnectionCommandInput,\n ): AXPCommandExecuteResultPromise<{ deleted: true }> {\n try {\n const connection = await this.connectionManager.getByIdForCurrentUser(input.connectionId);\n if (!connection) {\n return { success: false, message: { text: 'Connection not found or access denied.' } };\n }\n\n const { tenantId, applicationId, userId } = this.connectionManager.getSessionContext();\n if (connection.secretRef) {\n await this.secretStore.delete(connection.secretRef, {\n tenantId,\n applicationId,\n userId,\n connectionId: connection.id,\n providerId: connection.providerId,\n connectionScope: connection.connectionScope,\n connectionKey: connection.connectionKey,\n authMethodType: connection.authMethodType,\n });\n }\n\n const safe = toSafeIntegrationConnectionDto(connection);\n await this.connectionManager.deleteConnection(connection.id);\n await this.lifecycle.dispatchDeleted(safe);\n\n return { success: true, kind: 'object', data: { deleted: true } };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to remove integration connection.';\n return { success: false, message: { text: message } };\n }\n }\n}\n\n//#endregion\n"],"names":[],"mappings":";;;;;;AAmBA;AAEA;MAGa,uBAAuB,CAAA;AADpC,IAAA,WAAA,GAAA;AAEmB,QAAA,IAAA,CAAA,iBAAiB,GAAG,MAAM,CAAC,+BAA+B,CAAC;AAC3D,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAC,4BAA4B,CAAC;AAClD,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,2CAA2C,CAAC;AAmCjF,IAAA;IAjCC,MAAM,OAAO,CACX,KAAmC,EAAA;AAEnC,QAAA,IAAI;AACF,YAAA,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,KAAK,CAAC,YAAY,CAAC;YACzF,IAAI,CAAC,UAAU,EAAE;AACf,gBAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,wCAAwC,EAAE,EAAE;YACxF;AAEA,YAAA,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,EAAE;AACtF,YAAA,IAAI,UAAU,CAAC,SAAS,EAAE;gBACxB,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE;oBAClD,QAAQ;oBACR,aAAa;oBACb,MAAM;oBACN,YAAY,EAAE,UAAU,CAAC,EAAE;oBAC3B,UAAU,EAAE,UAAU,CAAC,UAAU;oBACjC,eAAe,EAAE,UAAU,CAAC,eAAe;oBAC3C,aAAa,EAAE,UAAU,CAAC,aAAa;oBACvC,cAAc,EAAE,UAAU,CAAC,cAAc;AAC1C,iBAAA,CAAC;YACJ;AAEA,YAAA,MAAM,IAAI,GAAG,8BAA8B,CAAC,UAAU,CAAC;YACvD,MAAM,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,CAAC;YAC5D,MAAM,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC;AAE1C,YAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QACnE;QAAE,OAAO,KAAc,EAAE;AACvB,YAAA,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,0CAA0C;AACnG,YAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;QACvD;IACF;8GArCW,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAvB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,cADV,MAAM,EAAA,CAAA,CAAA;;2FACnB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBADnC,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;;;"}
1
+ {"version":3,"file":"acorex-platform-module-integration-management-client-delete-connection.command-DQ_kn8dH.mjs","sources":["../../../../libs/modules/integration-management/client/src/lib/features/commands/delete-connection.command.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport { AXP_INTEGRATION_SECRET_STORE } from '@acorex-platform/framework-client/common';\nimport { Injectable, inject } from '@angular/core';\nimport {\n AXMIntegrationConnectionManager,\n toSafeIntegrationConnectionDto,\n} from '../shared/integration-connection.manager';\nimport { AXMIntegrationConnectionLifecycleDispatcher } from '../shared/integration-connection-lifecycle.dispatcher';\n\n//#endregion\n\n//#region ---- Types ----\n\nexport interface DeleteConnectionCommandInput {\n connectionId: string;\n}\n\n//#endregion\n\n//#region ---- Command ----\n\n@Injectable({ providedIn: 'root' })\nexport class DeleteConnectionCommand implements AXPCommand<DeleteConnectionCommandInput, { deleted: true }> {\n private readonly connectionManager = inject(AXMIntegrationConnectionManager);\n private readonly secretStore = inject(AXP_INTEGRATION_SECRET_STORE);\n private readonly lifecycle = inject(AXMIntegrationConnectionLifecycleDispatcher);\n\n async execute(\n input: DeleteConnectionCommandInput,\n ): AXPCommandExecuteResultPromise<{ deleted: true }> {\n try {\n const connection = await this.connectionManager.getByIdForCurrentUser(input.connectionId);\n if (!connection) {\n return { success: false, message: { text: 'Connection not found or access denied.' } };\n }\n\n const { tenantId, applicationId, userId } = this.connectionManager.getSessionContext();\n if (connection.secretRef) {\n await this.secretStore.delete(connection.secretRef, {\n tenantId,\n applicationId,\n userId,\n connectionId: connection.id,\n providerId: connection.providerId,\n connectionScope: connection.connectionScope,\n connectionKey: connection.connectionKey,\n authMethodType: connection.authMethodType,\n });\n }\n\n const safe = toSafeIntegrationConnectionDto(connection);\n await this.connectionManager.deleteConnection(connection.id);\n await this.lifecycle.dispatchDeleted(safe);\n\n return { success: true, kind: 'object', data: { deleted: true } };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to remove integration connection.';\n return { success: false, message: { text: message } };\n }\n }\n}\n\n//#endregion\n"],"names":[],"mappings":";;;;;;AAmBA;AAEA;MAGa,uBAAuB,CAAA;AADpC,IAAA,WAAA,GAAA;AAEmB,QAAA,IAAA,CAAA,iBAAiB,GAAG,MAAM,CAAC,+BAA+B,CAAC;AAC3D,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAC,4BAA4B,CAAC;AAClD,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,2CAA2C,CAAC;AAmCjF,IAAA;IAjCC,MAAM,OAAO,CACX,KAAmC,EAAA;AAEnC,QAAA,IAAI;AACF,YAAA,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,KAAK,CAAC,YAAY,CAAC;YACzF,IAAI,CAAC,UAAU,EAAE;AACf,gBAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,wCAAwC,EAAE,EAAE;YACxF;AAEA,YAAA,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,EAAE;AACtF,YAAA,IAAI,UAAU,CAAC,SAAS,EAAE;gBACxB,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE;oBAClD,QAAQ;oBACR,aAAa;oBACb,MAAM;oBACN,YAAY,EAAE,UAAU,CAAC,EAAE;oBAC3B,UAAU,EAAE,UAAU,CAAC,UAAU;oBACjC,eAAe,EAAE,UAAU,CAAC,eAAe;oBAC3C,aAAa,EAAE,UAAU,CAAC,aAAa;oBACvC,cAAc,EAAE,UAAU,CAAC,cAAc;AAC1C,iBAAA,CAAC;YACJ;AAEA,YAAA,MAAM,IAAI,GAAG,8BAA8B,CAAC,UAAU,CAAC;YACvD,MAAM,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,CAAC;YAC5D,MAAM,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC;AAE1C,YAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QACnE;QAAE,OAAO,KAAc,EAAE;AACvB,YAAA,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,0CAA0C;AACnG,YAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;QACvD;IACF;8GArCW,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAvB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,cADV,MAAM,EAAA,CAAA,CAAA;;2FACnB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBADnC,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-module-integration-management-client-disconnect-connection.command-B4HeDA1n.mjs","sources":["../../../../libs/modules/integration-management/client/src/lib/features/commands/disconnect-connection.command.ts"],"sourcesContent":["\nimport { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport { AXP_INTEGRATION_CONNECTION_STATUS, type AXPSafeIntegrationConnectionDto } from '@acorex-platform/framework-shared/core';\n\nimport { Injectable, inject } from '@angular/core';\nimport {\n AXMIntegrationConnectionManager,\n scrubDisconnectedConnectionConfig,\n toSafeIntegrationConnectionDto,\n} from '../shared/integration-connection.manager';\nimport { AXMIntegrationConnectionLifecycleDispatcher } from '../shared/integration-connection-lifecycle.dispatcher';\n\nimport { AXP_INTEGRATION_SECRET_STORE } from '@acorex-platform/framework-client/common';\n\n//#region ---- Types ----\n\nexport interface DisconnectConnectionCommandInput {\n connectionId: string;\n}\n\n//#endregion\n\n@Injectable({ providedIn: 'root' })\nexport class DisconnectConnectionCommand\n implements AXPCommand<DisconnectConnectionCommandInput, AXPSafeIntegrationConnectionDto>\n{\n private readonly connectionManager = inject(AXMIntegrationConnectionManager);\n private readonly secretStore = inject(AXP_INTEGRATION_SECRET_STORE);\n private readonly lifecycle = inject(AXMIntegrationConnectionLifecycleDispatcher);\n\n async execute(\n input: DisconnectConnectionCommandInput,\n ): AXPCommandExecuteResultPromise<AXPSafeIntegrationConnectionDto> {\n try {\n const connection = await this.connectionManager.getByIdForCurrentUser(input.connectionId);\n if (!connection) {\n return { success: false, message: { text: 'Connection not found or access denied.' } };\n }\n\n const { tenantId, applicationId, userId } = this.connectionManager.getSessionContext();\n if (connection.secretRef) {\n await this.secretStore.delete(connection.secretRef, {\n tenantId,\n applicationId,\n userId,\n connectionId: connection.id,\n providerId: connection.providerId,\n connectionScope: connection.connectionScope,\n connectionKey: connection.connectionKey,\n authMethodType: connection.authMethodType,\n });\n }\n\n const updated = await this.connectionManager.updateConnection(connection.id, {\n secretRef: null,\n config: scrubDisconnectedConnectionConfig(\n (connection.config ?? null) as Record<string, unknown> | null,\n ),\n status: AXP_INTEGRATION_CONNECTION_STATUS.NotConnected,\n isRevoked: false,\n lastErrorCode: null,\n lastErrorMessage: null,\n });\n\n const safe = toSafeIntegrationConnectionDto(updated);\n await this.lifecycle.dispatchDisconnected(safe);\n\n return { success: true, kind: 'object', data: safe };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to disconnect integration.';\n return { success: false, message: { text: message } };\n }\n }\n}\n\n//#endregion\n"],"names":[],"mappings":";;;;;;;AAoBA;MAGa,2BAA2B,CAAA;AADxC,IAAA,WAAA,GAAA;AAImB,QAAA,IAAA,CAAA,iBAAiB,GAAG,MAAM,CAAC,+BAA+B,CAAC;AAC3D,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAC,4BAA4B,CAAC;AAClD,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,2CAA2C,CAAC;AA6CjF,IAAA;IA3CC,MAAM,OAAO,CACX,KAAuC,EAAA;AAEvC,QAAA,IAAI;AACF,YAAA,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,KAAK,CAAC,YAAY,CAAC;YACzF,IAAI,CAAC,UAAU,EAAE;AACf,gBAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,wCAAwC,EAAE,EAAE;YACxF;AAEA,YAAA,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,EAAE;AACtF,YAAA,IAAI,UAAU,CAAC,SAAS,EAAE;gBACxB,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE;oBAClD,QAAQ;oBACR,aAAa;oBACb,MAAM;oBACN,YAAY,EAAE,UAAU,CAAC,EAAE;oBAC3B,UAAU,EAAE,UAAU,CAAC,UAAU;oBACjC,eAAe,EAAE,UAAU,CAAC,eAAe;oBAC3C,aAAa,EAAE,UAAU,CAAC,aAAa;oBACvC,cAAc,EAAE,UAAU,CAAC,cAAc;AAC1C,iBAAA,CAAC;YACJ;AAEA,YAAA,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,EAAE;AAC3E,gBAAA,SAAS,EAAE,IAAI;gBACf,MAAM,EAAE,iCAAiC,EACtC,UAAU,CAAC,MAAM,IAAI,IAAI,EAC3B;gBACD,MAAM,EAAE,iCAAiC,CAAC,YAAY;AACtD,gBAAA,SAAS,EAAE,KAAK;AAChB,gBAAA,aAAa,EAAE,IAAI;AACnB,gBAAA,gBAAgB,EAAE,IAAI;AACvB,aAAA,CAAC;AAEF,YAAA,MAAM,IAAI,GAAG,8BAA8B,CAAC,OAAO,CAAC;YACpD,MAAM,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC;AAE/C,YAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE;QACtD;QAAE,OAAO,KAAc,EAAE;AACvB,YAAA,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,mCAAmC;AAC5F,YAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;QACvD;IACF;8GAjDW,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAA3B,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,2BAA2B,cADd,MAAM,EAAA,CAAA,CAAA;;2FACnB,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBADvC,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;;;"}
1
+ {"version":3,"file":"acorex-platform-module-integration-management-client-disconnect-connection.command-B4HeDA1n.mjs","sources":["../../../../libs/modules/integration-management/client/src/lib/features/commands/disconnect-connection.command.ts"],"sourcesContent":["\nimport { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport { AXP_INTEGRATION_CONNECTION_STATUS, type AXPSafeIntegrationConnectionDto } from '@acorex-platform/framework-shared/core';\n\nimport { Injectable, inject } from '@angular/core';\nimport {\n AXMIntegrationConnectionManager,\n scrubDisconnectedConnectionConfig,\n toSafeIntegrationConnectionDto,\n} from '../shared/integration-connection.manager';\nimport { AXMIntegrationConnectionLifecycleDispatcher } from '../shared/integration-connection-lifecycle.dispatcher';\n\nimport { AXP_INTEGRATION_SECRET_STORE } from '@acorex-platform/framework-client/common';\n\n//#region ---- Types ----\n\nexport interface DisconnectConnectionCommandInput {\n connectionId: string;\n}\n\n//#endregion\n\n@Injectable({ providedIn: 'root' })\nexport class DisconnectConnectionCommand\n implements AXPCommand<DisconnectConnectionCommandInput, AXPSafeIntegrationConnectionDto>\n{\n private readonly connectionManager = inject(AXMIntegrationConnectionManager);\n private readonly secretStore = inject(AXP_INTEGRATION_SECRET_STORE);\n private readonly lifecycle = inject(AXMIntegrationConnectionLifecycleDispatcher);\n\n async execute(\n input: DisconnectConnectionCommandInput,\n ): AXPCommandExecuteResultPromise<AXPSafeIntegrationConnectionDto> {\n try {\n const connection = await this.connectionManager.getByIdForCurrentUser(input.connectionId);\n if (!connection) {\n return { success: false, message: { text: 'Connection not found or access denied.' } };\n }\n\n const { tenantId, applicationId, userId } = this.connectionManager.getSessionContext();\n if (connection.secretRef) {\n await this.secretStore.delete(connection.secretRef, {\n tenantId,\n applicationId,\n userId,\n connectionId: connection.id,\n providerId: connection.providerId,\n connectionScope: connection.connectionScope,\n connectionKey: connection.connectionKey,\n authMethodType: connection.authMethodType,\n });\n }\n\n const updated = await this.connectionManager.updateConnection(connection.id, {\n secretRef: null,\n config: scrubDisconnectedConnectionConfig(\n (connection.config ?? null) as Record<string, unknown> | null,\n ),\n status: AXP_INTEGRATION_CONNECTION_STATUS.NotConnected,\n isRevoked: false,\n lastErrorCode: null,\n lastErrorMessage: null,\n });\n\n const safe = toSafeIntegrationConnectionDto(updated);\n await this.lifecycle.dispatchDisconnected(safe);\n\n return { success: true, kind: 'object', data: safe };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to disconnect integration.';\n return { success: false, message: { text: message } };\n }\n }\n}\n\n//#endregion\n"],"names":[],"mappings":";;;;;;;AAoBA;MAGa,2BAA2B,CAAA;AADxC,IAAA,WAAA,GAAA;AAImB,QAAA,IAAA,CAAA,iBAAiB,GAAG,MAAM,CAAC,+BAA+B,CAAC;AAC3D,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAC,4BAA4B,CAAC;AAClD,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,2CAA2C,CAAC;AA6CjF,IAAA;IA3CC,MAAM,OAAO,CACX,KAAuC,EAAA;AAEvC,QAAA,IAAI;AACF,YAAA,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,KAAK,CAAC,YAAY,CAAC;YACzF,IAAI,CAAC,UAAU,EAAE;AACf,gBAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,wCAAwC,EAAE,EAAE;YACxF;AAEA,YAAA,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,EAAE;AACtF,YAAA,IAAI,UAAU,CAAC,SAAS,EAAE;gBACxB,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE;oBAClD,QAAQ;oBACR,aAAa;oBACb,MAAM;oBACN,YAAY,EAAE,UAAU,CAAC,EAAE;oBAC3B,UAAU,EAAE,UAAU,CAAC,UAAU;oBACjC,eAAe,EAAE,UAAU,CAAC,eAAe;oBAC3C,aAAa,EAAE,UAAU,CAAC,aAAa;oBACvC,cAAc,EAAE,UAAU,CAAC,cAAc;AAC1C,iBAAA,CAAC;YACJ;AAEA,YAAA,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,EAAE;AAC3E,gBAAA,SAAS,EAAE,IAAI;gBACf,MAAM,EAAE,iCAAiC,EACtC,UAAU,CAAC,MAAM,IAAI,IAAI,EAC3B;gBACD,MAAM,EAAE,iCAAiC,CAAC,YAAY;AACtD,gBAAA,SAAS,EAAE,KAAK;AAChB,gBAAA,aAAa,EAAE,IAAI;AACnB,gBAAA,gBAAgB,EAAE,IAAI;AACvB,aAAA,CAAC;AAEF,YAAA,MAAM,IAAI,GAAG,8BAA8B,CAAC,OAAO,CAAC;YACpD,MAAM,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC;AAE/C,YAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE;QACtD;QAAE,OAAO,KAAc,EAAE;AACvB,YAAA,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,mCAAmC;AAC5F,YAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;QACvD;IACF;8GAjDW,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAA3B,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,2BAA2B,cADd,MAAM,EAAA,CAAA,CAAA;;2FACnB,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBADvC,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-module-integration-management-client-get-provider.query-Ds10RwnU.mjs","sources":["../../../../libs/modules/integration-management/client/src/lib/features/queries/get-provider.query.ts"],"sourcesContent":["import { AXPSessionService } from '@acorex-platform/framework-client/auth';\nimport { AXPIntegrationProviderRegistryService } from '@acorex-platform/framework-client/common';\nimport {\n runtimeQuerySuccessObject,\n type AXPIntegrationProviderDefinition,\n} from '@acorex-platform/framework-shared/core';\nimport { AXPQuery, type AXPQueryFetchResultPromise } from '@acorex-platform/framework-shared/runtime';\n\nimport { Injectable, inject } from '@angular/core';\n\n//#region ---- Types ----\n\nexport interface GetProviderQueryInput {\n providerId: string;\n}\n\n//#endregion\n\n//#region ---- Query ----\n\n@Injectable({ providedIn: 'root' })\nexport class GetProviderQuery implements AXPQuery<GetProviderQueryInput, AXPIntegrationProviderDefinition | null> {\n private readonly registry = inject(AXPIntegrationProviderRegistryService);\n private readonly sessionService = inject(AXPSessionService);\n\n async fetch(\n input: GetProviderQueryInput,\n ): AXPQueryFetchResultPromise<AXPIntegrationProviderDefinition | null> {\n const provider = await this.registry.get(input.providerId);\n if (!provider?.module || !this.sessionService.isModuleEnabled(provider.module)) {\n return runtimeQuerySuccessObject(null);\n }\n return runtimeQuerySuccessObject(provider);\n }\n}\n\n//#endregion\n"],"names":[],"mappings":";;;;;;AAgBA;AAEA;MAGa,gBAAgB,CAAA;AAD7B,IAAA,WAAA,GAAA;AAEmB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,qCAAqC,CAAC;AACxD,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAW5D,IAAA;IATC,MAAM,KAAK,CACT,KAA4B,EAAA;AAE5B,QAAA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC;AAC1D,QAAA,IAAI,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;AAC9E,YAAA,OAAO,yBAAyB,CAAC,IAAI,CAAC;QACxC;AACA,QAAA,OAAO,yBAAyB,CAAC,QAAQ,CAAC;IAC5C;8GAZW,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,cADH,MAAM,EAAA,CAAA,CAAA;;2FACnB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAD5B,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;;;"}
1
+ {"version":3,"file":"acorex-platform-module-integration-management-client-get-provider.query-Ds10RwnU.mjs","sources":["../../../../libs/modules/integration-management/client/src/lib/features/queries/get-provider.query.ts"],"sourcesContent":["import { AXPSessionService } from '@acorex-platform/framework-client/auth';\nimport { AXPIntegrationProviderRegistryService } from '@acorex-platform/framework-client/common';\nimport {\n runtimeQuerySuccessObject,\n type AXPIntegrationProviderDefinition,\n} from '@acorex-platform/framework-shared/core';\nimport { AXPQuery, type AXPQueryFetchResultPromise } from '@acorex-platform/framework-shared/runtime';\n\nimport { Injectable, inject } from '@angular/core';\n\n//#region ---- Types ----\n\nexport interface GetProviderQueryInput {\n providerId: string;\n}\n\n//#endregion\n\n//#region ---- Query ----\n\n@Injectable({ providedIn: 'root' })\nexport class GetProviderQuery implements AXPQuery<GetProviderQueryInput, AXPIntegrationProviderDefinition | null> {\n private readonly registry = inject(AXPIntegrationProviderRegistryService);\n private readonly sessionService = inject(AXPSessionService);\n\n async fetch(\n input: GetProviderQueryInput,\n ): AXPQueryFetchResultPromise<AXPIntegrationProviderDefinition | null> {\n const provider = await this.registry.get(input.providerId);\n if (!provider?.module || !this.sessionService.isModuleEnabled(provider.module)) {\n return runtimeQuerySuccessObject(null);\n }\n return runtimeQuerySuccessObject(provider);\n }\n}\n\n//#endregion\n"],"names":[],"mappings":";;;;;;AAgBA;AAEA;MAGa,gBAAgB,CAAA;AAD7B,IAAA,WAAA,GAAA;AAEmB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,qCAAqC,CAAC;AACxD,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAW5D,IAAA;IATC,MAAM,KAAK,CACT,KAA4B,EAAA;AAE5B,QAAA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC;AAC1D,QAAA,IAAI,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;AAC9E,YAAA,OAAO,yBAAyB,CAAC,IAAI,CAAC;QACxC;AACA,QAAA,OAAO,yBAAyB,CAAC,QAAQ,CAAC;IAC5C;8GAZW,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,cADH,MAAM,EAAA,CAAA,CAAA;;2FACnB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAD5B,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;"}