@camunda/ccma-api 0.0.10 → 0.3.0

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 (96) hide show
  1. package/dist/index.d.ts +38 -8
  2. package/dist/index.js +56 -2
  3. package/dist/index.js.map +2 -2
  4. package/dist/services/accounts/admin-tools.service.d.ts +27 -0
  5. package/dist/services/accounts/admin-tools.service.js +70 -0
  6. package/dist/services/accounts/admin-tools.service.js.map +7 -0
  7. package/dist/services/accounts/connections.service.d.ts +85 -0
  8. package/dist/services/accounts/connections.service.js +150 -0
  9. package/dist/services/accounts/connections.service.js.map +2 -2
  10. package/dist/services/accounts/early-access-features.service.d.ts +59 -0
  11. package/dist/services/accounts/early-access-features.service.js +142 -0
  12. package/dist/services/accounts/early-access-features.service.js.map +2 -2
  13. package/dist/services/accounts/invites.service.d.ts +28 -0
  14. package/dist/services/accounts/invites.service.js +53 -0
  15. package/dist/services/accounts/invites.service.js.map +7 -0
  16. package/dist/services/accounts/orgs.service.d.ts +48 -0
  17. package/dist/services/accounts/orgs.service.js +153 -0
  18. package/dist/services/accounts/orgs.service.js.map +2 -2
  19. package/dist/services/accounts/orgs.v2.service.d.ts +32 -0
  20. package/dist/services/accounts/orgs.v2.service.js +158 -0
  21. package/dist/services/accounts/orgs.v2.service.js.map +7 -0
  22. package/dist/services/accounts/pdf-watermark.service.d.ts +93 -0
  23. package/dist/services/accounts/pdf-watermark.service.js +147 -0
  24. package/dist/services/accounts/pdf-watermark.service.js.map +7 -0
  25. package/dist/services/accounts/release-train.service.d.ts +25 -0
  26. package/dist/services/accounts/release-train.service.js +46 -0
  27. package/dist/services/accounts/release-train.service.js.map +7 -0
  28. package/dist/services/accounts/salesplan.service.d.ts +45 -0
  29. package/dist/services/accounts/salesplan.service.js +185 -0
  30. package/dist/services/accounts/salesplan.service.js.map +2 -2
  31. package/dist/services/accounts/token-issuer.service.d.ts +31 -0
  32. package/dist/services/accounts/token-issuer.service.js +63 -0
  33. package/dist/services/accounts/token-issuer.service.js.map +7 -0
  34. package/dist/services/accounts/users.service.d.ts +59 -0
  35. package/dist/services/accounts/users.service.js +296 -4
  36. package/dist/services/accounts/users.service.js.map +2 -2
  37. package/dist/services/console/console.admin.service.d.ts +11 -0
  38. package/dist/services/console/console.admin.service.js +37 -0
  39. package/dist/services/console/console.admin.service.js.map +2 -2
  40. package/dist/services/console/console.channel.service.d.ts +49 -0
  41. package/dist/services/console/console.channel.service.js +123 -0
  42. package/dist/services/console/console.channel.service.js.map +7 -0
  43. package/dist/services/console/console.cluster.service.d.ts +23 -11
  44. package/dist/services/console/console.cluster.service.js +36 -1
  45. package/dist/services/console/console.cluster.service.js.map +2 -2
  46. package/dist/services/console/console.cluster.v2.service.d.ts +43 -0
  47. package/dist/services/console/console.cluster.v2.service.js +219 -0
  48. package/dist/services/console/console.cluster.v2.service.js.map +7 -0
  49. package/dist/services/console/console.clusterplan.service.d.ts +14 -0
  50. package/dist/services/console/console.clusterplan.service.js +59 -0
  51. package/dist/services/console/console.clusterplan.service.js.map +2 -2
  52. package/dist/services/console/console.clusterplantype.service.d.ts +54 -0
  53. package/dist/services/console/console.clusterplantype.service.js +152 -0
  54. package/dist/services/console/console.clusterplantype.service.js.map +7 -0
  55. package/dist/services/console/console.k8scontext.service.d.ts +10 -0
  56. package/dist/services/console/console.k8scontext.service.js +41 -0
  57. package/dist/services/console/console.k8scontext.service.js.map +7 -0
  58. package/dist/services/console/console.storybook-config.service.d.ts +10 -0
  59. package/dist/services/console/console.storybook-config.service.js +40 -0
  60. package/dist/services/console/console.storybook-config.service.js.map +7 -0
  61. package/dist/services/console/generation.service.d.ts +42 -0
  62. package/dist/services/console/generation.service.js +115 -0
  63. package/dist/services/console/generation.service.js.map +2 -2
  64. package/dist/services/external/external.accounts.service.d.ts +27 -0
  65. package/dist/services/external/external.accounts.service.js +80 -0
  66. package/dist/services/external/external.accounts.service.js.map +7 -0
  67. package/dist/services/external/external.console.service.d.ts +37 -0
  68. package/dist/services/external/external.console.service.js +81 -0
  69. package/dist/services/external/external.console.service.js.map +7 -0
  70. package/dist/services/external/external.notifications.service.d.ts +78 -0
  71. package/dist/services/external/external.notifications.service.js +220 -0
  72. package/dist/services/external/external.notifications.service.js.map +7 -0
  73. package/dist/services/external/external.services.spec.d.ts +1 -0
  74. package/dist/services/helpcenter/helpcenter.service.d.ts +42 -0
  75. package/dist/services/helpcenter/helpcenter.service.js +84 -0
  76. package/dist/services/helpcenter/helpcenter.service.js.map +7 -0
  77. package/dist/services/helpcenter/helpcenter.service.spec.d.ts +1 -0
  78. package/dist/services/notifications/notifications.service.d.ts +45 -1
  79. package/dist/services/notifications/notifications.service.js +162 -0
  80. package/dist/services/notifications/notifications.service.js.map +2 -2
  81. package/dist/types/general.types.d.ts +8 -0
  82. package/dist/utils/api.d.ts +1 -1
  83. package/dist/utils/api.js +13 -2
  84. package/dist/utils/api.js.map +2 -2
  85. package/dist/utils/query.d.ts +7 -0
  86. package/dist/utils/query.js +29 -0
  87. package/dist/utils/query.js.map +7 -0
  88. package/dist/utils/sse.d.ts +51 -0
  89. package/dist/utils/sse.js +247 -0
  90. package/dist/utils/sse.js.map +7 -0
  91. package/dist/utils/sse.spec.d.ts +1 -0
  92. package/dist/utils/traceparent.d.ts +12 -0
  93. package/dist/utils/traceparent.js +16 -0
  94. package/dist/utils/traceparent.js.map +7 -0
  95. package/dist/utils/traceparent.spec.d.ts +1 -0
  96. package/package.json +2 -2
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/services/console/console.cluster.v2.service.ts"],
4
+ "sourcesContent": ["/*\n * Copyright Camunda Services GmbH and/or licensed to Camunda Services GmbH\n * under one or more contributor license agreements. Licensed under a commercial license.\n * You may not use this file except in compliance with the commercial license.\n */\n\nimport type {\n ClusterByClientV2Dto,\n ClusterDetailV2Dto,\n ClusterFacetsV2Dto,\n ClusterListItemV2Dto,\n ClusterParametersV2Dto,\n CursorPage,\n ListClustersV2Params,\n} from '@camunda/ccma-shared-types'\nimport type {\n RequestBaseParams,\n RequestBaseServiceContext,\n} from '../../types/general.types.js'\nimport { request } from '../../utils/api.js'\nimport { HttpError } from '../../utils/errors.js'\nimport { toQueryString } from '../../utils/query.js'\n\nexport interface ListClustersV2Request extends RequestBaseParams {\n params?: ListClustersV2Params\n}\n\nexport interface ListOrgClustersV2Request extends RequestBaseParams {\n params: { orgId: string } & ListClustersV2Params\n}\n\nexport interface GetClusterV2Request extends RequestBaseParams {\n params: { clusterId: string }\n}\n\nexport type GetClusterParametersV2Request = RequestBaseParams\n\n/**\n * Console-backend `/v2` read endpoints for the Control frontend.\n * Reads only \u2014 mutations stay on the existing v1 services (spec Q6).\n */\nexport class ConsoleClusterV2Service {\n public static async listClusters(\n params: ListClustersV2Request,\n ): Promise<CursorPage<ClusterListItemV2Dto>> {\n const query = toQueryString(params.params)\n const serviceContext: RequestBaseServiceContext = {\n method: {\n name: 'ConsoleClusterV2Service.listClusters',\n url: `v2/clusters${query}`,\n normalizedUrl: 'v2/clusters',\n type: 'get',\n },\n source: params.config.metrics?.source || 'unset',\n target: { name: 'console', type: 'internal' },\n }\n\n const response = await request<CursorPage<ClusterListItemV2Dto>>({\n ...params,\n base: { id: 'console' },\n url: serviceContext.method.url,\n method: serviceContext.method.type,\n metricsDetails: serviceContext,\n responseType: 'json',\n })\n\n if (!response.ok || !response.body) {\n throw new HttpError(\n `${serviceContext.method.name}: ${response.status} ${response.statusText}`,\n response.status,\n response.statusText,\n )\n }\n\n return response.body\n }\n\n public static async listOrgClusters(\n params: ListOrgClustersV2Request,\n ): Promise<CursorPage<ClusterListItemV2Dto>> {\n const { orgId, ...rest } = params.params\n const query = toQueryString(rest)\n const serviceContext: RequestBaseServiceContext = {\n method: {\n name: 'ConsoleClusterV2Service.listOrgClusters',\n url: `v2/orgs/${encodeURIComponent(orgId)}/clusters${query}`,\n normalizedUrl: 'v2/orgs/:orgId/clusters',\n type: 'get',\n },\n source: params.config.metrics?.source || 'unset',\n target: { name: 'console', type: 'internal' },\n }\n\n const response = await request<CursorPage<ClusterListItemV2Dto>>({\n ...params,\n base: { id: 'console' },\n url: serviceContext.method.url,\n method: serviceContext.method.type,\n metricsDetails: serviceContext,\n responseType: 'json',\n })\n\n if (!response.ok || !response.body) {\n throw new HttpError(\n `${serviceContext.method.name}: ${response.status} ${response.statusText}`,\n response.status,\n response.statusText,\n )\n }\n\n return response.body\n }\n\n public static async getCluster(\n params: GetClusterV2Request,\n ): Promise<ClusterDetailV2Dto> {\n const serviceContext: RequestBaseServiceContext = {\n method: {\n name: 'ConsoleClusterV2Service.getCluster',\n url: `v2/clusters/${encodeURIComponent(params.params.clusterId)}`,\n normalizedUrl: 'v2/clusters/:clusterId',\n type: 'get',\n },\n source: params.config.metrics?.source || 'unset',\n target: { name: 'console', type: 'internal' },\n }\n\n const response = await request<ClusterDetailV2Dto>({\n ...params,\n base: { id: 'console' },\n url: serviceContext.method.url,\n method: serviceContext.method.type,\n metricsDetails: serviceContext,\n responseType: 'json',\n })\n\n if (!response.ok || !response.body) {\n throw new HttpError(\n `${serviceContext.method.name}: ${response.status} ${response.statusText}`,\n response.status,\n response.statusText,\n )\n }\n\n return response.body\n }\n\n /** Aggregated distribution counts for the list page (GET /v2/clusters/facets). */\n public static async getFacets(\n params: RequestBaseParams,\n ): Promise<ClusterFacetsV2Dto> {\n const serviceContext: RequestBaseServiceContext = {\n method: {\n name: 'ConsoleClusterV2Service.getFacets',\n url: 'v2/clusters/facets',\n normalizedUrl: 'v2/clusters/facets',\n type: 'get',\n },\n source: params.config.metrics?.source || 'unset',\n target: { name: 'console', type: 'internal' },\n }\n\n const response = await request<ClusterFacetsV2Dto>({\n ...params,\n base: { id: 'console' },\n url: serviceContext.method.url,\n method: serviceContext.method.type,\n metricsDetails: serviceContext,\n responseType: 'json',\n })\n\n if (!response.ok || !response.body) {\n throw new HttpError(\n `${serviceContext.method.name}: ${response.status} ${response.statusText}`,\n response.status,\n response.statusText,\n )\n }\n\n return response.body\n }\n\n /**\n * Resolve Zeebe client-id fragments (min 6 chars) to cluster + owning org\n * (GET /v2/clusters/by-client). Backs the cross-backend org search.\n */\n public static async findByClient(\n params: { params: { q: string } } & RequestBaseParams,\n ): Promise<ClusterByClientV2Dto[]> {\n const serviceContext: RequestBaseServiceContext = {\n method: {\n name: 'ConsoleClusterV2Service.findByClient',\n url: `v2/clusters/by-client?q=${encodeURIComponent(params.params.q)}`,\n normalizedUrl: 'v2/clusters/by-client',\n type: 'get',\n },\n source: params.config.metrics?.source || 'unset',\n target: { name: 'console', type: 'internal' },\n }\n\n const response = await request<ClusterByClientV2Dto[]>({\n ...params,\n base: { id: 'console' },\n url: serviceContext.method.url,\n method: serviceContext.method.type,\n metricsDetails: serviceContext,\n responseType: 'json',\n })\n\n if (!response.ok) {\n throw new HttpError(\n `${serviceContext.method.name}: ${response.status} ${response.statusText}`,\n response.status,\n response.statusText,\n )\n }\n\n return response.body ?? []\n }\n\n /**\n * Filtered cluster CSV export (GET /v2/clusters/export). Same filter params\n * as `listClusters`; the backend walks the cursor server-side and returns\n * the whole CSV as text.\n */\n public static async exportCsv(\n params: ListClustersV2Request,\n ): Promise<string> {\n const query = toQueryString(params.params)\n const serviceContext: RequestBaseServiceContext = {\n method: {\n name: 'ConsoleClusterV2Service.exportCsv',\n url: `v2/clusters/export${query}`,\n normalizedUrl: 'v2/clusters/export',\n type: 'get',\n },\n source: params.config.metrics?.source || 'unset',\n target: { name: 'console', type: 'internal' },\n }\n\n const response = await request<string>({\n ...params,\n base: { id: 'console' },\n url: serviceContext.method.url,\n method: serviceContext.method.type,\n metricsDetails: serviceContext,\n responseType: 'text',\n })\n\n if (!response.ok || response.body === undefined) {\n throw new HttpError(\n `${serviceContext.method.name}: ${response.status} ${response.statusText}`,\n response.status,\n response.statusText,\n )\n }\n\n return response.body\n }\n\n public static async getParameters(\n params: GetClusterParametersV2Request,\n ): Promise<ClusterParametersV2Dto> {\n const serviceContext: RequestBaseServiceContext = {\n method: {\n name: 'ConsoleClusterV2Service.getParameters',\n url: 'v2/clusters/parameters',\n normalizedUrl: 'v2/clusters/parameters',\n type: 'get',\n },\n source: params.config.metrics?.source || 'unset',\n target: { name: 'console', type: 'internal' },\n }\n\n const response = await request<ClusterParametersV2Dto>({\n ...params,\n base: { id: 'console' },\n url: serviceContext.method.url,\n method: serviceContext.method.type,\n metricsDetails: serviceContext,\n responseType: 'json',\n })\n\n if (!response.ok || !response.body) {\n throw new HttpError(\n `${serviceContext.method.name}: ${response.status} ${response.statusText}`,\n response.status,\n response.statusText,\n )\n }\n\n return response.body\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -15,7 +15,21 @@ export interface UpdateMigratableFromParams extends RequestBaseParams {
15
15
  migratableFrom: string[];
16
16
  };
17
17
  }
18
+ export interface CreateClusterPlanParams extends RequestBaseParams {
19
+ body: {
20
+ name: string;
21
+ plan: unknown;
22
+ cloneMigrateableFrom?: string;
23
+ };
24
+ }
25
+ export interface DeleteClusterPlanParams extends RequestBaseParams {
26
+ params: {
27
+ uuid: string;
28
+ };
29
+ }
18
30
  export declare class ClusterPlanService {
31
+ static create(params: CreateClusterPlanParams): Promise<string>;
32
+ static delete(params: DeleteClusterPlanParams): Promise<void>;
19
33
  static updatePerformanceExpectations(params: UpdatePerformanceExpectationsParams): Promise<void>;
20
34
  static updateMigratableFrom(params: UpdateMigratableFromParams): Promise<void>;
21
35
  }
@@ -1,6 +1,65 @@
1
1
  import { request } from "../../utils/api.js";
2
2
  import { HttpError } from "../../utils/errors.js";
3
3
  class ClusterPlanService {
4
+ static async create(params) {
5
+ const serviceContext = {
6
+ method: {
7
+ name: "ClusterPlanService.create",
8
+ url: "api/plans",
9
+ normalizedUrl: "api/plans",
10
+ type: "post"
11
+ },
12
+ source: params.config.metrics?.source || "unset",
13
+ target: { name: "console", type: "internal" }
14
+ };
15
+ const response = await request({
16
+ ...params,
17
+ base: { id: "console" },
18
+ url: serviceContext.method.url,
19
+ method: serviceContext.method.type,
20
+ metricsDetails: serviceContext,
21
+ body: params.body,
22
+ responseType: "json"
23
+ });
24
+ if (!response.ok) {
25
+ throw new HttpError(
26
+ `${serviceContext.method.name}: ${response.status} ${response.statusText}`,
27
+ response.status,
28
+ response.statusText
29
+ );
30
+ }
31
+ if (!response.body) {
32
+ throw new Error(`${serviceContext.method.name}: Empty response body`);
33
+ }
34
+ return response.body;
35
+ }
36
+ static async delete(params) {
37
+ const serviceContext = {
38
+ method: {
39
+ name: "ClusterPlanService.delete",
40
+ url: `api/plans/${params.params.uuid}`,
41
+ normalizedUrl: "api/plans/:uuid",
42
+ type: "delete"
43
+ },
44
+ source: params.config.metrics?.source || "unset",
45
+ target: { name: "console", type: "internal" }
46
+ };
47
+ const response = await request({
48
+ ...params,
49
+ base: { id: "console" },
50
+ url: serviceContext.method.url,
51
+ method: serviceContext.method.type,
52
+ metricsDetails: serviceContext,
53
+ responseType: "none"
54
+ });
55
+ if (!response.ok) {
56
+ throw new HttpError(
57
+ `${serviceContext.method.name}: ${response.status} ${response.statusText}`,
58
+ response.status,
59
+ response.statusText
60
+ );
61
+ }
62
+ }
4
63
  static async updatePerformanceExpectations(params) {
5
64
  const serviceContext = {
6
65
  method: {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/services/console/console.clusterplan.service.ts"],
4
- "sourcesContent": ["/*\n * Copyright Camunda Services GmbH and/or licensed to Camunda Services GmbH\n * under one or more contributor license agreements. Licensed under a commercial license.\n * You may not use this file except in compliance with the commercial license.\n */\n\nimport type {\n RequestBaseParams,\n RequestBaseServiceContext,\n} from '../../types/general.types.js'\nimport { request } from '../../utils/api.js'\nimport { HttpError } from '../../utils/errors.js'\n\nexport interface UpdatePerformanceExpectationsParams extends RequestBaseParams {\n params: {\n planUuid: string\n }\n body: {\n performanceExpectations: string | null\n }\n}\n\nexport interface UpdateMigratableFromParams extends RequestBaseParams {\n params: {\n planUuid: string\n }\n body: {\n migratableFrom: string[]\n }\n}\n\nexport class ClusterPlanService {\n public static async updatePerformanceExpectations(\n params: UpdatePerformanceExpectationsParams,\n ): Promise<void> {\n const serviceContext: RequestBaseServiceContext = {\n method: {\n name: 'ClusterPlanService.updatePerformanceExpectations',\n url: `api/plans/${params.params.planUuid}/performance-expectations`,\n normalizedUrl: 'api/plans/:planUuid/performance-expectations',\n type: 'put',\n },\n source: params.config.metrics?.source || 'unset',\n target: { name: 'console', type: 'internal' },\n }\n\n const response = await request<void>({\n ...params,\n base: { id: 'console' },\n url: serviceContext.method.url,\n method: serviceContext.method.type,\n metricsDetails: serviceContext,\n body: params.body,\n type: 'json',\n })\n\n if (!response.ok) {\n throw new HttpError(\n `${serviceContext.method.name}: ${response.status} ${response.statusText}`,\n response.status,\n response.statusText,\n )\n }\n }\n\n public static async updateMigratableFrom(\n params: UpdateMigratableFromParams,\n ): Promise<void> {\n const serviceContext: RequestBaseServiceContext = {\n method: {\n name: 'ClusterPlanService.updateMigratableFrom',\n url: `api/plans/${params.params.planUuid}/migratable-from`,\n normalizedUrl: 'api/plans/:planUuid/migratable-from',\n type: 'put',\n },\n source: params.config.metrics?.source || 'unset',\n target: { name: 'console', type: 'internal' },\n }\n\n const response = await request<void>({\n ...params,\n base: { id: 'console' },\n url: serviceContext.method.url,\n method: serviceContext.method.type,\n metricsDetails: serviceContext,\n body: params.body,\n type: 'json',\n })\n\n if (!response.ok) {\n throw new HttpError(\n `${serviceContext.method.name}: ${response.status} ${response.statusText}`,\n response.status,\n response.statusText,\n )\n }\n }\n}\n"],
5
- "mappings": "AAUA,SAAS,eAAe;AACxB,SAAS,iBAAiB;AAoBnB,MAAM,mBAAmB;AAAA,EAC9B,aAAoB,8BAClB,QACe;AACf,UAAM,iBAA4C;AAAA,MAChD,QAAQ;AAAA,QACN,MAAM;AAAA,QACN,KAAK,aAAa,OAAO,OAAO,QAAQ;AAAA,QACxC,eAAe;AAAA,QACf,MAAM;AAAA,MACR;AAAA,MACA,QAAQ,OAAO,OAAO,SAAS,UAAU;AAAA,MACzC,QAAQ,EAAE,MAAM,WAAW,MAAM,WAAW;AAAA,IAC9C;AAEA,UAAM,WAAW,MAAM,QAAc;AAAA,MACnC,GAAG;AAAA,MACH,MAAM,EAAE,IAAI,UAAU;AAAA,MACtB,KAAK,eAAe,OAAO;AAAA,MAC3B,QAAQ,eAAe,OAAO;AAAA,MAC9B,gBAAgB;AAAA,MAChB,MAAM,OAAO;AAAA,MACb,MAAM;AAAA,IACR,CAAC;AAED,QAAI,CAAC,SAAS,IAAI;AAChB,YAAM,IAAI;AAAA,QACR,GAAG,eAAe,OAAO,IAAI,KAAK,SAAS,MAAM,IAAI,SAAS,UAAU;AAAA,QACxE,SAAS;AAAA,QACT,SAAS;AAAA,MACX;AAAA,IACF;AAAA,EACF;AAAA,EAEA,aAAoB,qBAClB,QACe;AACf,UAAM,iBAA4C;AAAA,MAChD,QAAQ;AAAA,QACN,MAAM;AAAA,QACN,KAAK,aAAa,OAAO,OAAO,QAAQ;AAAA,QACxC,eAAe;AAAA,QACf,MAAM;AAAA,MACR;AAAA,MACA,QAAQ,OAAO,OAAO,SAAS,UAAU;AAAA,MACzC,QAAQ,EAAE,MAAM,WAAW,MAAM,WAAW;AAAA,IAC9C;AAEA,UAAM,WAAW,MAAM,QAAc;AAAA,MACnC,GAAG;AAAA,MACH,MAAM,EAAE,IAAI,UAAU;AAAA,MACtB,KAAK,eAAe,OAAO;AAAA,MAC3B,QAAQ,eAAe,OAAO;AAAA,MAC9B,gBAAgB;AAAA,MAChB,MAAM,OAAO;AAAA,MACb,MAAM;AAAA,IACR,CAAC;AAED,QAAI,CAAC,SAAS,IAAI;AAChB,YAAM,IAAI;AAAA,QACR,GAAG,eAAe,OAAO,IAAI,KAAK,SAAS,MAAM,IAAI,SAAS,UAAU;AAAA,QACxE,SAAS;AAAA,QACT,SAAS;AAAA,MACX;AAAA,IACF;AAAA,EACF;AACF;",
4
+ "sourcesContent": ["/*\n * Copyright Camunda Services GmbH and/or licensed to Camunda Services GmbH\n * under one or more contributor license agreements. Licensed under a commercial license.\n * You may not use this file except in compliance with the commercial license.\n */\n\nimport type {\n RequestBaseParams,\n RequestBaseServiceContext,\n} from '../../types/general.types.js'\nimport { request } from '../../utils/api.js'\nimport { HttpError } from '../../utils/errors.js'\n\nexport interface UpdatePerformanceExpectationsParams extends RequestBaseParams {\n params: {\n planUuid: string\n }\n body: {\n performanceExpectations: string | null\n }\n}\n\nexport interface UpdateMigratableFromParams extends RequestBaseParams {\n params: {\n planUuid: string\n }\n body: {\n migratableFrom: string[]\n }\n}\n\nexport interface CreateClusterPlanParams extends RequestBaseParams {\n body: {\n name: string\n plan: unknown\n cloneMigrateableFrom?: string\n }\n}\n\nexport interface DeleteClusterPlanParams extends RequestBaseParams {\n params: {\n uuid: string\n }\n}\n\nexport class ClusterPlanService {\n public static async create(params: CreateClusterPlanParams): Promise<string> {\n const serviceContext: RequestBaseServiceContext = {\n method: {\n name: 'ClusterPlanService.create',\n url: 'api/plans',\n normalizedUrl: 'api/plans',\n type: 'post',\n },\n source: params.config.metrics?.source || 'unset',\n target: { name: 'console', type: 'internal' },\n }\n\n const response = await request<string>({\n ...params,\n base: { id: 'console' },\n url: serviceContext.method.url,\n method: serviceContext.method.type,\n metricsDetails: serviceContext,\n body: params.body,\n responseType: 'json',\n })\n\n if (!response.ok) {\n throw new HttpError(\n `${serviceContext.method.name}: ${response.status} ${response.statusText}`,\n response.status,\n response.statusText,\n )\n }\n\n if (!response.body) {\n throw new Error(`${serviceContext.method.name}: Empty response body`)\n }\n\n return response.body\n }\n\n public static async delete(params: DeleteClusterPlanParams): Promise<void> {\n const serviceContext: RequestBaseServiceContext = {\n method: {\n name: 'ClusterPlanService.delete',\n url: `api/plans/${params.params.uuid}`,\n normalizedUrl: 'api/plans/:uuid',\n type: 'delete',\n },\n source: params.config.metrics?.source || 'unset',\n target: { name: 'console', type: 'internal' },\n }\n\n const response = await request<void>({\n ...params,\n base: { id: 'console' },\n url: serviceContext.method.url,\n method: serviceContext.method.type,\n metricsDetails: serviceContext,\n responseType: 'none',\n })\n\n if (!response.ok) {\n throw new HttpError(\n `${serviceContext.method.name}: ${response.status} ${response.statusText}`,\n response.status,\n response.statusText,\n )\n }\n }\n\n public static async updatePerformanceExpectations(\n params: UpdatePerformanceExpectationsParams,\n ): Promise<void> {\n const serviceContext: RequestBaseServiceContext = {\n method: {\n name: 'ClusterPlanService.updatePerformanceExpectations',\n url: `api/plans/${params.params.planUuid}/performance-expectations`,\n normalizedUrl: 'api/plans/:planUuid/performance-expectations',\n type: 'put',\n },\n source: params.config.metrics?.source || 'unset',\n target: { name: 'console', type: 'internal' },\n }\n\n const response = await request<void>({\n ...params,\n base: { id: 'console' },\n url: serviceContext.method.url,\n method: serviceContext.method.type,\n metricsDetails: serviceContext,\n body: params.body,\n type: 'json',\n })\n\n if (!response.ok) {\n throw new HttpError(\n `${serviceContext.method.name}: ${response.status} ${response.statusText}`,\n response.status,\n response.statusText,\n )\n }\n }\n\n public static async updateMigratableFrom(\n params: UpdateMigratableFromParams,\n ): Promise<void> {\n const serviceContext: RequestBaseServiceContext = {\n method: {\n name: 'ClusterPlanService.updateMigratableFrom',\n url: `api/plans/${params.params.planUuid}/migratable-from`,\n normalizedUrl: 'api/plans/:planUuid/migratable-from',\n type: 'put',\n },\n source: params.config.metrics?.source || 'unset',\n target: { name: 'console', type: 'internal' },\n }\n\n const response = await request<void>({\n ...params,\n base: { id: 'console' },\n url: serviceContext.method.url,\n method: serviceContext.method.type,\n metricsDetails: serviceContext,\n body: params.body,\n type: 'json',\n })\n\n if (!response.ok) {\n throw new HttpError(\n `${serviceContext.method.name}: ${response.status} ${response.statusText}`,\n response.status,\n response.statusText,\n )\n }\n }\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,54 @@
1
+ import type { ClusterPlanTypeDto } from '@camunda/ccma-shared-types';
2
+ import type { RequestBaseParams } from '../../types/general.types.js';
3
+ export interface GetClusterPlanTypesParams extends RequestBaseParams {
4
+ }
5
+ export interface CreateClusterPlanTypeParams extends RequestBaseParams {
6
+ body: {
7
+ name: string;
8
+ activePlan: string;
9
+ description: string;
10
+ internal: boolean;
11
+ development: boolean;
12
+ category: string;
13
+ availabilityClass: string;
14
+ };
15
+ }
16
+ export interface UpdateClusterPlanTypeParams extends RequestBaseParams {
17
+ params: {
18
+ uuid: string;
19
+ };
20
+ body: {
21
+ name: string;
22
+ activePlan: string;
23
+ description: string;
24
+ internal: boolean;
25
+ development: boolean;
26
+ category: string;
27
+ availabilityClass: string;
28
+ };
29
+ }
30
+ export interface SetClusterPlanTypeLimitsParams extends RequestBaseParams {
31
+ params: {
32
+ uuid: string;
33
+ };
34
+ body: {
35
+ limits: {
36
+ dataRetentionOperate?: number;
37
+ dataRetentionTasklist?: number;
38
+ dataRetentionOptimize?: number;
39
+ };
40
+ };
41
+ }
42
+ export interface DeleteClusterPlanTypeParams extends RequestBaseParams {
43
+ params: {
44
+ uuid: string;
45
+ force?: boolean;
46
+ };
47
+ }
48
+ export declare class ClusterPlanTypeService {
49
+ static getAll(params: GetClusterPlanTypesParams): Promise<ClusterPlanTypeDto[]>;
50
+ static create(params: CreateClusterPlanTypeParams): Promise<ClusterPlanTypeDto>;
51
+ static update(params: UpdateClusterPlanTypeParams): Promise<void>;
52
+ static setLimits(params: SetClusterPlanTypeLimitsParams): Promise<void>;
53
+ static delete(params: DeleteClusterPlanTypeParams): Promise<void>;
54
+ }
@@ -0,0 +1,152 @@
1
+ import { request } from "../../utils/api.js";
2
+ import { HttpError } from "../../utils/errors.js";
3
+ class ClusterPlanTypeService {
4
+ static async getAll(params) {
5
+ const serviceContext = {
6
+ method: {
7
+ name: "ClusterPlanTypeService.getAll",
8
+ url: "api/plans/type",
9
+ normalizedUrl: "api/plans/type",
10
+ type: "get"
11
+ },
12
+ source: params.config.metrics?.source || "unset",
13
+ target: { name: "console", type: "internal" }
14
+ };
15
+ const response = await request({
16
+ ...params,
17
+ base: { id: "console" },
18
+ url: serviceContext.method.url,
19
+ method: serviceContext.method.type,
20
+ metricsDetails: serviceContext,
21
+ responseType: "json"
22
+ });
23
+ if (!response.ok) {
24
+ throw new HttpError(
25
+ `${serviceContext.method.name}: ${response.status} ${response.statusText}`,
26
+ response.status,
27
+ response.statusText
28
+ );
29
+ }
30
+ return response.body ?? [];
31
+ }
32
+ static async create(params) {
33
+ const serviceContext = {
34
+ method: {
35
+ name: "ClusterPlanTypeService.create",
36
+ url: "api/plans/type",
37
+ normalizedUrl: "api/plans/type",
38
+ type: "post"
39
+ },
40
+ source: params.config.metrics?.source || "unset",
41
+ target: { name: "console", type: "internal" }
42
+ };
43
+ const response = await request({
44
+ ...params,
45
+ base: { id: "console" },
46
+ url: serviceContext.method.url,
47
+ method: serviceContext.method.type,
48
+ metricsDetails: serviceContext,
49
+ body: params.body,
50
+ responseType: "json"
51
+ });
52
+ if (!response.ok) {
53
+ throw new HttpError(
54
+ `${serviceContext.method.name}: ${response.status} ${response.statusText}`,
55
+ response.status,
56
+ response.statusText
57
+ );
58
+ }
59
+ if (!response.body) {
60
+ throw new Error(`${serviceContext.method.name}: Empty response body`);
61
+ }
62
+ return response.body;
63
+ }
64
+ static async update(params) {
65
+ const serviceContext = {
66
+ method: {
67
+ name: "ClusterPlanTypeService.update",
68
+ url: `api/plans/type/${params.params.uuid}`,
69
+ normalizedUrl: "api/plans/type/:uuid",
70
+ type: "put"
71
+ },
72
+ source: params.config.metrics?.source || "unset",
73
+ target: { name: "console", type: "internal" }
74
+ };
75
+ const response = await request({
76
+ ...params,
77
+ base: { id: "console" },
78
+ url: serviceContext.method.url,
79
+ method: serviceContext.method.type,
80
+ metricsDetails: serviceContext,
81
+ body: params.body,
82
+ responseType: "none"
83
+ });
84
+ if (!response.ok) {
85
+ throw new HttpError(
86
+ `${serviceContext.method.name}: ${response.status} ${response.statusText}`,
87
+ response.status,
88
+ response.statusText
89
+ );
90
+ }
91
+ }
92
+ static async setLimits(params) {
93
+ const serviceContext = {
94
+ method: {
95
+ name: "ClusterPlanTypeService.setLimits",
96
+ url: `api/plans/type/${params.params.uuid}/limits`,
97
+ normalizedUrl: "api/plans/type/:uuid/limits",
98
+ type: "patch"
99
+ },
100
+ source: params.config.metrics?.source || "unset",
101
+ target: { name: "console", type: "internal" }
102
+ };
103
+ const response = await request({
104
+ ...params,
105
+ base: { id: "console" },
106
+ url: serviceContext.method.url,
107
+ method: serviceContext.method.type,
108
+ metricsDetails: serviceContext,
109
+ body: params.body,
110
+ responseType: "none"
111
+ });
112
+ if (!response.ok) {
113
+ throw new HttpError(
114
+ `${serviceContext.method.name}: ${response.status} ${response.statusText}`,
115
+ response.status,
116
+ response.statusText
117
+ );
118
+ }
119
+ }
120
+ static async delete(params) {
121
+ const path = `api/plans/type/${params.params.uuid}${params.params.force ? "/force" : ""}`;
122
+ const serviceContext = {
123
+ method: {
124
+ name: "ClusterPlanTypeService.delete",
125
+ url: path,
126
+ normalizedUrl: params.params.force ? "api/plans/type/:uuid/force" : "api/plans/type/:uuid",
127
+ type: "delete"
128
+ },
129
+ source: params.config.metrics?.source || "unset",
130
+ target: { name: "console", type: "internal" }
131
+ };
132
+ const response = await request({
133
+ ...params,
134
+ base: { id: "console" },
135
+ url: serviceContext.method.url,
136
+ method: serviceContext.method.type,
137
+ metricsDetails: serviceContext,
138
+ responseType: "none"
139
+ });
140
+ if (!response.ok) {
141
+ throw new HttpError(
142
+ `${serviceContext.method.name}: ${response.status} ${response.statusText}`,
143
+ response.status,
144
+ response.statusText
145
+ );
146
+ }
147
+ }
148
+ }
149
+ export {
150
+ ClusterPlanTypeService
151
+ };
152
+ //# sourceMappingURL=console.clusterplantype.service.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/services/console/console.clusterplantype.service.ts"],
4
+ "sourcesContent": ["/*\n * Copyright Camunda Services GmbH and/or licensed to Camunda Services GmbH\n * under one or more contributor license agreements. Licensed under a commercial license.\n * You may not use this file except in compliance with the commercial license.\n */\n\nimport type { ClusterPlanTypeDto } from '@camunda/ccma-shared-types'\nimport type {\n RequestBaseParams,\n RequestBaseServiceContext,\n} from '../../types/general.types.js'\nimport { request } from '../../utils/api.js'\nimport { HttpError } from '../../utils/errors.js'\n\nexport interface GetClusterPlanTypesParams extends RequestBaseParams {}\n\nexport interface CreateClusterPlanTypeParams extends RequestBaseParams {\n body: {\n name: string\n activePlan: string\n description: string\n internal: boolean\n development: boolean\n category: string\n availabilityClass: string\n }\n}\n\nexport interface UpdateClusterPlanTypeParams extends RequestBaseParams {\n params: {\n uuid: string\n }\n body: {\n name: string\n activePlan: string\n description: string\n internal: boolean\n development: boolean\n category: string\n availabilityClass: string\n }\n}\n\nexport interface SetClusterPlanTypeLimitsParams extends RequestBaseParams {\n params: {\n uuid: string\n }\n body: {\n limits: {\n dataRetentionOperate?: number\n dataRetentionTasklist?: number\n dataRetentionOptimize?: number\n }\n }\n}\n\nexport interface DeleteClusterPlanTypeParams extends RequestBaseParams {\n params: {\n uuid: string\n force?: boolean\n }\n}\n\nexport class ClusterPlanTypeService {\n public static async getAll(\n params: GetClusterPlanTypesParams,\n ): Promise<ClusterPlanTypeDto[]> {\n const serviceContext: RequestBaseServiceContext = {\n method: {\n name: 'ClusterPlanTypeService.getAll',\n url: 'api/plans/type',\n normalizedUrl: 'api/plans/type',\n type: 'get',\n },\n source: params.config.metrics?.source || 'unset',\n target: { name: 'console', type: 'internal' },\n }\n\n const response = await request<ClusterPlanTypeDto[]>({\n ...params,\n base: { id: 'console' },\n url: serviceContext.method.url,\n method: serviceContext.method.type,\n metricsDetails: serviceContext,\n responseType: 'json',\n })\n\n if (!response.ok) {\n throw new HttpError(\n `${serviceContext.method.name}: ${response.status} ${response.statusText}`,\n response.status,\n response.statusText,\n )\n }\n\n return response.body ?? []\n }\n\n public static async create(\n params: CreateClusterPlanTypeParams,\n ): Promise<ClusterPlanTypeDto> {\n const serviceContext: RequestBaseServiceContext = {\n method: {\n name: 'ClusterPlanTypeService.create',\n url: 'api/plans/type',\n normalizedUrl: 'api/plans/type',\n type: 'post',\n },\n source: params.config.metrics?.source || 'unset',\n target: { name: 'console', type: 'internal' },\n }\n\n const response = await request<ClusterPlanTypeDto>({\n ...params,\n base: { id: 'console' },\n url: serviceContext.method.url,\n method: serviceContext.method.type,\n metricsDetails: serviceContext,\n body: params.body,\n responseType: 'json',\n })\n\n if (!response.ok) {\n throw new HttpError(\n `${serviceContext.method.name}: ${response.status} ${response.statusText}`,\n response.status,\n response.statusText,\n )\n }\n\n if (!response.body) {\n throw new Error(`${serviceContext.method.name}: Empty response body`)\n }\n\n return response.body\n }\n\n public static async update(\n params: UpdateClusterPlanTypeParams,\n ): Promise<void> {\n const serviceContext: RequestBaseServiceContext = {\n method: {\n name: 'ClusterPlanTypeService.update',\n url: `api/plans/type/${params.params.uuid}`,\n normalizedUrl: 'api/plans/type/:uuid',\n type: 'put',\n },\n source: params.config.metrics?.source || 'unset',\n target: { name: 'console', type: 'internal' },\n }\n\n const response = await request<void>({\n ...params,\n base: { id: 'console' },\n url: serviceContext.method.url,\n method: serviceContext.method.type,\n metricsDetails: serviceContext,\n body: params.body,\n responseType: 'none',\n })\n\n if (!response.ok) {\n throw new HttpError(\n `${serviceContext.method.name}: ${response.status} ${response.statusText}`,\n response.status,\n response.statusText,\n )\n }\n }\n\n public static async setLimits(\n params: SetClusterPlanTypeLimitsParams,\n ): Promise<void> {\n const serviceContext: RequestBaseServiceContext = {\n method: {\n name: 'ClusterPlanTypeService.setLimits',\n url: `api/plans/type/${params.params.uuid}/limits`,\n normalizedUrl: 'api/plans/type/:uuid/limits',\n type: 'patch',\n },\n source: params.config.metrics?.source || 'unset',\n target: { name: 'console', type: 'internal' },\n }\n\n const response = await request<void>({\n ...params,\n base: { id: 'console' },\n url: serviceContext.method.url,\n method: serviceContext.method.type,\n metricsDetails: serviceContext,\n body: params.body,\n responseType: 'none',\n })\n\n if (!response.ok) {\n throw new HttpError(\n `${serviceContext.method.name}: ${response.status} ${response.statusText}`,\n response.status,\n response.statusText,\n )\n }\n }\n\n public static async delete(\n params: DeleteClusterPlanTypeParams,\n ): Promise<void> {\n const path = `api/plans/type/${params.params.uuid}${\n params.params.force ? '/force' : ''\n }`\n const serviceContext: RequestBaseServiceContext = {\n method: {\n name: 'ClusterPlanTypeService.delete',\n url: path,\n normalizedUrl: params.params.force\n ? 'api/plans/type/:uuid/force'\n : 'api/plans/type/:uuid',\n type: 'delete',\n },\n source: params.config.metrics?.source || 'unset',\n target: { name: 'console', type: 'internal' },\n }\n\n const response = await request<void>({\n ...params,\n base: { id: 'console' },\n url: serviceContext.method.url,\n method: serviceContext.method.type,\n metricsDetails: serviceContext,\n responseType: 'none',\n })\n\n if (!response.ok) {\n throw new HttpError(\n `${serviceContext.method.name}: ${response.status} ${response.statusText}`,\n response.status,\n response.statusText,\n )\n }\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -0,0 +1,10 @@
1
+ import type { K8sConfig } from '@camunda/ccma-shared-types';
2
+ import type { RequestBaseParams } from '../../types/general.types.js';
3
+ export interface GetK8sContextsParams extends RequestBaseParams {
4
+ params?: {
5
+ withClusterCounts?: boolean;
6
+ };
7
+ }
8
+ export declare class K8sContextService {
9
+ static getAll(params: GetK8sContextsParams): Promise<K8sConfig>;
10
+ }
@@ -0,0 +1,41 @@
1
+ import { request } from "../../utils/api.js";
2
+ import { HttpError } from "../../utils/errors.js";
3
+ class K8sContextService {
4
+ static async getAll(params) {
5
+ const withClusterCounts = params.params?.withClusterCounts;
6
+ const url = `api/admin/k8sContexts${withClusterCounts ? "?withClusterCounts=please" : ""}`;
7
+ const serviceContext = {
8
+ method: {
9
+ name: "K8sContextService.getAll",
10
+ url,
11
+ normalizedUrl: "api/admin/k8sContexts",
12
+ type: "get"
13
+ },
14
+ source: params.config.metrics?.source || "unset",
15
+ target: { name: "console", type: "internal" }
16
+ };
17
+ const response = await request({
18
+ ...params,
19
+ base: { id: "console" },
20
+ url: serviceContext.method.url,
21
+ method: serviceContext.method.type,
22
+ metricsDetails: serviceContext,
23
+ responseType: "json"
24
+ });
25
+ if (!response.ok) {
26
+ throw new HttpError(
27
+ `${serviceContext.method.name}: ${response.status} ${response.statusText}`,
28
+ response.status,
29
+ response.statusText
30
+ );
31
+ }
32
+ if (!response.body) {
33
+ throw new Error(`${serviceContext.method.name}: Empty response body`);
34
+ }
35
+ return response.body;
36
+ }
37
+ }
38
+ export {
39
+ K8sContextService
40
+ };
41
+ //# sourceMappingURL=console.k8scontext.service.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/services/console/console.k8scontext.service.ts"],
4
+ "sourcesContent": ["/*\n * Copyright Camunda Services GmbH and/or licensed to Camunda Services GmbH\n * under one or more contributor license agreements. Licensed under a commercial license.\n * You may not use this file except in compliance with the commercial license.\n */\n\nimport type { K8sConfig } from '@camunda/ccma-shared-types'\nimport type {\n RequestBaseParams,\n RequestBaseServiceContext,\n} from '../../types/general.types.js'\nimport { request } from '../../utils/api.js'\nimport { HttpError } from '../../utils/errors.js'\n\nexport interface GetK8sContextsParams extends RequestBaseParams {\n params?: {\n withClusterCounts?: boolean\n }\n}\n\nexport class K8sContextService {\n public static async getAll(params: GetK8sContextsParams): Promise<K8sConfig> {\n const withClusterCounts = params.params?.withClusterCounts\n const url = `api/admin/k8sContexts${\n withClusterCounts ? '?withClusterCounts=please' : ''\n }`\n const serviceContext: RequestBaseServiceContext = {\n method: {\n name: 'K8sContextService.getAll',\n url,\n normalizedUrl: 'api/admin/k8sContexts',\n type: 'get',\n },\n source: params.config.metrics?.source || 'unset',\n target: { name: 'console', type: 'internal' },\n }\n\n const response = await request<K8sConfig>({\n ...params,\n base: { id: 'console' },\n url: serviceContext.method.url,\n method: serviceContext.method.type,\n metricsDetails: serviceContext,\n responseType: 'json',\n })\n\n if (!response.ok) {\n throw new HttpError(\n `${serviceContext.method.name}: ${response.status} ${response.statusText}`,\n response.status,\n response.statusText,\n )\n }\n\n if (!response.body) {\n throw new Error(`${serviceContext.method.name}: Empty response body`)\n }\n\n return response.body\n }\n}\n"],
5
+ "mappings": "AAWA,SAAS,eAAe;AACxB,SAAS,iBAAiB;AAQnB,MAAM,kBAAkB;AAAA,EAC7B,aAAoB,OAAO,QAAkD;AAC3E,UAAM,oBAAoB,OAAO,QAAQ;AACzC,UAAM,MAAM,wBACV,oBAAoB,8BAA8B,EACpD;AACA,UAAM,iBAA4C;AAAA,MAChD,QAAQ;AAAA,QACN,MAAM;AAAA,QACN;AAAA,QACA,eAAe;AAAA,QACf,MAAM;AAAA,MACR;AAAA,MACA,QAAQ,OAAO,OAAO,SAAS,UAAU;AAAA,MACzC,QAAQ,EAAE,MAAM,WAAW,MAAM,WAAW;AAAA,IAC9C;AAEA,UAAM,WAAW,MAAM,QAAmB;AAAA,MACxC,GAAG;AAAA,MACH,MAAM,EAAE,IAAI,UAAU;AAAA,MACtB,KAAK,eAAe,OAAO;AAAA,MAC3B,QAAQ,eAAe,OAAO;AAAA,MAC9B,gBAAgB;AAAA,MAChB,cAAc;AAAA,IAChB,CAAC;AAED,QAAI,CAAC,SAAS,IAAI;AAChB,YAAM,IAAI;AAAA,QACR,GAAG,eAAe,OAAO,IAAI,KAAK,SAAS,MAAM,IAAI,SAAS,UAAU;AAAA,QACxE,SAAS;AAAA,QACT,SAAS;AAAA,MACX;AAAA,IACF;AAEA,QAAI,CAAC,SAAS,MAAM;AAClB,YAAM,IAAI,MAAM,GAAG,eAAe,OAAO,IAAI,uBAAuB;AAAA,IACtE;AAEA,WAAO,SAAS;AAAA,EAClB;AACF;",
6
+ "names": []
7
+ }
@@ -0,0 +1,10 @@
1
+ import type { StorybookConfig } from '@camunda/ccma-shared-types';
2
+ import type { RequestBaseParams } from '../../types/general.types.js';
3
+ export type GetStorybookConfigParams = RequestBaseParams;
4
+ /**
5
+ * Client for the unguarded `GET /api/storybook-config` catalog endpoint used by
6
+ * the screenshot-tooling storybooks. No auth required.
7
+ */
8
+ export declare class StorybookConfigService {
9
+ static getAll(params: GetStorybookConfigParams): Promise<StorybookConfig>;
10
+ }
@@ -0,0 +1,40 @@
1
+ import { request } from "../../utils/api.js";
2
+ import { HttpError } from "../../utils/errors.js";
3
+ class StorybookConfigService {
4
+ static async getAll(params) {
5
+ const url = "api/storybook-config";
6
+ const serviceContext = {
7
+ method: {
8
+ name: "StorybookConfigService.getAll",
9
+ url,
10
+ normalizedUrl: url,
11
+ type: "get"
12
+ },
13
+ source: params.config.metrics?.source || "unset",
14
+ target: { name: "console", type: "internal" }
15
+ };
16
+ const response = await request({
17
+ ...params,
18
+ base: { id: "console" },
19
+ url: serviceContext.method.url,
20
+ method: serviceContext.method.type,
21
+ metricsDetails: serviceContext,
22
+ responseType: "json"
23
+ });
24
+ if (!response.ok) {
25
+ throw new HttpError(
26
+ `${serviceContext.method.name}: ${response.status} ${response.statusText}`,
27
+ response.status,
28
+ response.statusText
29
+ );
30
+ }
31
+ if (!response.body) {
32
+ throw new Error(`${serviceContext.method.name}: Empty response body`);
33
+ }
34
+ return response.body;
35
+ }
36
+ }
37
+ export {
38
+ StorybookConfigService
39
+ };
40
+ //# sourceMappingURL=console.storybook-config.service.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/services/console/console.storybook-config.service.ts"],
4
+ "sourcesContent": ["/*\n * Copyright Camunda Services GmbH and/or licensed to Camunda Services GmbH\n * under one or more contributor license agreements. Licensed under a commercial license.\n * You may not use this file except in compliance with the commercial license.\n */\n\nimport type { StorybookConfig } from '@camunda/ccma-shared-types'\nimport type {\n RequestBaseParams,\n RequestBaseServiceContext,\n} from '../../types/general.types.js'\nimport { request } from '../../utils/api.js'\nimport { HttpError } from '../../utils/errors.js'\n\nexport type GetStorybookConfigParams = RequestBaseParams\n\n/**\n * Client for the unguarded `GET /api/storybook-config` catalog endpoint used by\n * the screenshot-tooling storybooks. No auth required.\n */\nexport class StorybookConfigService {\n public static async getAll(\n params: GetStorybookConfigParams,\n ): Promise<StorybookConfig> {\n const url = 'api/storybook-config'\n const serviceContext: RequestBaseServiceContext = {\n method: {\n name: 'StorybookConfigService.getAll',\n url,\n normalizedUrl: url,\n type: 'get',\n },\n source: params.config.metrics?.source || 'unset',\n target: { name: 'console', type: 'internal' },\n }\n\n const response = await request<StorybookConfig>({\n ...params,\n base: { id: 'console' },\n url: serviceContext.method.url,\n method: serviceContext.method.type,\n metricsDetails: serviceContext,\n responseType: 'json',\n })\n\n if (!response.ok) {\n throw new HttpError(\n `${serviceContext.method.name}: ${response.status} ${response.statusText}`,\n response.status,\n response.statusText,\n )\n }\n\n if (!response.body) {\n throw new Error(`${serviceContext.method.name}: Empty response body`)\n }\n\n return response.body\n }\n}\n"],
5
+ "mappings": "AAWA,SAAS,eAAe;AACxB,SAAS,iBAAiB;AAQnB,MAAM,uBAAuB;AAAA,EAClC,aAAoB,OAClB,QAC0B;AAC1B,UAAM,MAAM;AACZ,UAAM,iBAA4C;AAAA,MAChD,QAAQ;AAAA,QACN,MAAM;AAAA,QACN;AAAA,QACA,eAAe;AAAA,QACf,MAAM;AAAA,MACR;AAAA,MACA,QAAQ,OAAO,OAAO,SAAS,UAAU;AAAA,MACzC,QAAQ,EAAE,MAAM,WAAW,MAAM,WAAW;AAAA,IAC9C;AAEA,UAAM,WAAW,MAAM,QAAyB;AAAA,MAC9C,GAAG;AAAA,MACH,MAAM,EAAE,IAAI,UAAU;AAAA,MACtB,KAAK,eAAe,OAAO;AAAA,MAC3B,QAAQ,eAAe,OAAO;AAAA,MAC9B,gBAAgB;AAAA,MAChB,cAAc;AAAA,IAChB,CAAC;AAED,QAAI,CAAC,SAAS,IAAI;AAChB,YAAM,IAAI;AAAA,QACR,GAAG,eAAe,OAAO,IAAI,KAAK,SAAS,MAAM,IAAI,SAAS,UAAU;AAAA,QACxE,SAAS;AAAA,QACT,SAAS;AAAA,MACX;AAAA,IACF;AAEA,QAAI,CAAC,SAAS,MAAM;AAClB,YAAM,IAAI,MAAM,GAAG,eAAe,OAAO,IAAI,uBAAuB;AAAA,IACtE;AAEA,WAAO,SAAS;AAAA,EAClB;AACF;",
6
+ "names": []
7
+ }
@@ -1,5 +1,43 @@
1
1
  import type { GenerationDto, UpgradableGenerationsDto, ZeebeClusterVersionsDto } from '@camunda/ccma-shared-types';
2
2
  import type { RequestBaseParams } from '../../types/general.types.js';
3
+ /**
4
+ * Version payload accepted by the create/update generation endpoints. Mirrors
5
+ * `ZeebeClusterVersionsDto` but allows the optional component versions to be
6
+ * omitted; the backend normalizes blank optionals to `undefined`.
7
+ */
8
+ export type GenerationVersionsInput = Partial<ZeebeClusterVersionsDto> & Pick<ZeebeClusterVersionsDto, 'zeebe' | 'elasticSearchOss' | 'optimize'>;
9
+ export interface CreateGenerationParams extends RequestBaseParams {
10
+ body: {
11
+ name: string;
12
+ versions: GenerationVersionsInput;
13
+ upgradeableFrom?: string[];
14
+ isUnsupportedStarting?: string;
15
+ isBespoke?: boolean;
16
+ };
17
+ }
18
+ export interface UpdateGenerationParams extends RequestBaseParams {
19
+ params: {
20
+ generationUuid: string;
21
+ };
22
+ body: {
23
+ name?: string;
24
+ versions: Partial<GenerationVersionsInput>;
25
+ upgradeableFrom?: string[];
26
+ };
27
+ }
28
+ export interface DeleteGenerationParams extends RequestBaseParams {
29
+ params: {
30
+ generationUuid: string;
31
+ };
32
+ }
33
+ export interface SetGenerationBespokeParams extends RequestBaseParams {
34
+ params: {
35
+ generationUuid: string;
36
+ };
37
+ body: {
38
+ isBespoke: boolean;
39
+ };
40
+ }
3
41
  export declare class GenerationService {
4
42
  static getGeneration(params: {
5
43
  uuid: string;
@@ -131,4 +169,8 @@ export declare class GenerationService {
131
169
  bulkOperationUuid: string;
132
170
  clusterCount: number;
133
171
  } | undefined>;
172
+ static create(params: CreateGenerationParams): Promise<GenerationDto | undefined>;
173
+ static update(params: UpdateGenerationParams): Promise<void>;
174
+ static delete(params: DeleteGenerationParams): Promise<void>;
175
+ static setBespoke(params: SetGenerationBespokeParams): Promise<void>;
134
176
  }