great 1.2.2 → 1.4.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 (117) hide show
  1. package/README.md +122 -50
  2. package/dist/clone/index.d.ts +2 -2
  3. package/dist/clone/index.js.map +1 -1
  4. package/dist/deploy/index.d.ts +2 -2
  5. package/dist/deploy/index.js.map +1 -1
  6. package/dist/explode/index.d.ts +2 -2
  7. package/dist/explode/index.js.map +1 -1
  8. package/dist/generated/operations.d.ts +30 -8
  9. package/dist/generated/schema.d.ts +138 -2
  10. package/dist/generated/schema.js +15 -0
  11. package/dist/generated/schema.js.map +1 -1
  12. package/dist/implode/index.d.ts +2 -2
  13. package/dist/implode/index.js +1 -0
  14. package/dist/implode/index.js.map +1 -1
  15. package/dist/implode/transform.d.ts +1 -0
  16. package/dist/implode/transform.js +16 -2
  17. package/dist/implode/transform.js.map +1 -1
  18. package/dist/import/index.d.ts +4 -2
  19. package/dist/import/index.js +27 -6
  20. package/dist/import/index.js.map +1 -1
  21. package/dist/include/index.d.ts +4 -2
  22. package/dist/include/index.js +129 -11
  23. package/dist/include/index.js.map +1 -1
  24. package/dist/index.js +3 -1
  25. package/dist/index.js.map +1 -1
  26. package/dist/init/index.d.ts +2 -2
  27. package/dist/init/index.js +3 -3
  28. package/dist/init/index.js.map +1 -1
  29. package/dist/integrations/create.js +1 -1
  30. package/dist/integrations/create.js.map +1 -1
  31. package/dist/integrations/index.js +6 -1
  32. package/dist/integrations/index.js.map +1 -1
  33. package/dist/integrations/list.d.ts +2 -0
  34. package/dist/integrations/list.js +30 -16
  35. package/dist/integrations/list.js.map +1 -1
  36. package/dist/migrate/index.d.ts +5 -2
  37. package/dist/migrate/index.js +102 -4
  38. package/dist/migrate/index.js.map +1 -1
  39. package/dist/pull/index.d.ts +2 -2
  40. package/dist/pull/index.js.map +1 -1
  41. package/dist/push/index.d.ts +3 -2
  42. package/dist/push/index.js +168 -73
  43. package/dist/push/index.js.map +1 -1
  44. package/dist/remove/index.d.ts +5 -0
  45. package/dist/remove/index.js +71 -0
  46. package/dist/remove/index.js.map +1 -0
  47. package/dist/rename/index.d.ts +2 -2
  48. package/dist/rename/index.js +54 -23
  49. package/dist/rename/index.js.map +1 -1
  50. package/dist/run/index.d.ts +29 -2
  51. package/dist/run/index.js.map +1 -1
  52. package/dist/status/index.d.ts +2 -2
  53. package/dist/status/index.js +1 -1
  54. package/dist/status/index.js.map +1 -1
  55. package/dist/types.d.ts +4 -0
  56. package/dist/utils/createIntegrationFromFile.d.ts +2 -2
  57. package/dist/utils/createIntegrationFromFile.js.map +1 -1
  58. package/dist/utils/detectPullConflicts.d.ts +2 -2
  59. package/dist/utils/detectPullConflicts.js +9 -14
  60. package/dist/utils/detectPullConflicts.js.map +1 -1
  61. package/dist/utils/elementFiles.d.ts +24 -5
  62. package/dist/utils/elementFiles.js +147 -8
  63. package/dist/utils/elementFiles.js.map +1 -1
  64. package/dist/utils/fetchLocal.d.ts +4 -4
  65. package/dist/utils/fetchLocal.js.map +1 -1
  66. package/dist/utils/graphqlError.js +16 -2
  67. package/dist/utils/graphqlError.js.map +1 -1
  68. package/dist/utils/greatFile.d.ts +3 -3
  69. package/dist/utils/greatFile.js.map +1 -1
  70. package/dist/utils/mergeEndpointLists.d.ts +7 -0
  71. package/dist/utils/mergeEndpointLists.js +32 -0
  72. package/dist/utils/mergeEndpointLists.js.map +1 -0
  73. package/dist/utils/promptForDetach.d.ts +6 -0
  74. package/dist/utils/promptForDetach.js +15 -0
  75. package/dist/utils/promptForDetach.js.map +1 -0
  76. package/dist/utils/promptForEndpoints.d.ts +5 -0
  77. package/dist/utils/promptForEndpoints.js +37 -0
  78. package/dist/utils/promptForEndpoints.js.map +1 -0
  79. package/dist/utils/promptForReplaceLocal.d.ts +5 -0
  80. package/dist/utils/promptForReplaceLocal.js +18 -0
  81. package/dist/utils/promptForReplaceLocal.js.map +1 -0
  82. package/dist/utils/promptForValue.d.ts +1 -0
  83. package/dist/utils/promptForValue.js +5 -3
  84. package/dist/utils/promptForValue.js.map +1 -1
  85. package/dist/utils/resolveAccount.d.ts +2 -2
  86. package/dist/utils/resolveAccount.js.map +1 -1
  87. package/dist/utils/resolveElement.d.ts +2 -0
  88. package/dist/utils/resolveElement.js +8 -0
  89. package/dist/utils/resolveElement.js.map +1 -1
  90. package/dist/utils/resolveElementIncludes.d.ts +6 -0
  91. package/dist/utils/resolveElementIncludes.js +113 -0
  92. package/dist/utils/resolveElementIncludes.js.map +1 -0
  93. package/dist/utils/saveIntegration.d.ts +2 -2
  94. package/dist/utils/saveIntegration.js +54 -30
  95. package/dist/utils/saveIntegration.js.map +1 -1
  96. package/dist/utils/serviceFile.d.ts +34 -0
  97. package/dist/utils/serviceFile.js +95 -0
  98. package/dist/utils/serviceFile.js.map +1 -0
  99. package/dist/utils/shadowMarker.d.ts +5 -0
  100. package/dist/utils/shadowMarker.js +16 -0
  101. package/dist/utils/shadowMarker.js.map +1 -0
  102. package/dist/utils/writeShadowElement.d.ts +12 -10
  103. package/dist/utils/writeShadowElement.js +98 -58
  104. package/dist/utils/writeShadowElement.js.map +1 -1
  105. package/dist/values/get.d.ts +2 -2
  106. package/dist/values/get.js.map +1 -1
  107. package/dist/values/list.d.ts +2 -2
  108. package/dist/values/list.js.map +1 -1
  109. package/dist/values/set.d.ts +2 -2
  110. package/dist/values/set.js.map +1 -1
  111. package/dist/values/unset.d.ts +2 -2
  112. package/dist/values/unset.js.map +1 -1
  113. package/package.json +16 -17
  114. package/quality.toml +4 -0
  115. package/dist/utils/resolveElementInclude.d.ts +0 -3
  116. package/dist/utils/resolveElementInclude.js +0 -27
  117. package/dist/utils/resolveElementInclude.js.map +0 -1
@@ -1,13 +1,32 @@
1
- import fs from 'node:fs';
2
1
  import { ElementType } from '../generated/schema.js';
2
+ import type { GreatFile } from './greatFile.js';
3
+ import type { GreatFs } from '../types.js';
4
+ export interface ReadElementFile {
5
+ key: string;
6
+ filePath: string;
7
+ data: Record<string, unknown>;
8
+ }
9
+ export interface LocalElementFile extends ReadElementFile {
10
+ folder: string;
11
+ }
3
12
  export declare const elementTypeToFolder: Record<ElementType, string | undefined>;
4
13
  export declare const folderToElementType: Record<string, ElementType>;
5
14
  export declare const ELEMENT_FOLDERS: readonly string[];
15
+ export declare const VIRTUAL_FOLDERS: readonly string[];
16
+ export declare const isVirtualFolder: (folder: string) => boolean;
17
+ export declare const fileFolder: (folder: string) => string;
6
18
  export declare const JSON_EXTENSIONS: readonly [".jsonc", ".json"];
7
19
  export declare function elementKeyFromFileName(fileName: string): string | undefined;
8
- export interface ReadElementFile {
20
+ export interface ElementTarget {
21
+ folder: string;
9
22
  key: string;
10
- filePath: string;
11
- data: Record<string, unknown>;
12
23
  }
13
- export declare function readElementFolder(folder: string, root: string | undefined, fsImpl: typeof fs): ReadElementFile[];
24
+ export declare function parseElementTarget(target: string): ElementTarget | undefined;
25
+ export declare function findElementFile(root: string | undefined, folder: string, key: string, fsImpl: GreatFs): string | undefined;
26
+ export declare function hasElementFile(root: string | undefined, folder: string, key: string, fsImpl: GreatFs): boolean;
27
+ export declare const elementFilePath: (root: string | undefined, folder: string, key: string, fsImpl: GreatFs) => string;
28
+ export declare const readEndpointListKeys: (root: string | undefined, key: string, fsImpl: GreatFs) => string[];
29
+ export declare function readElementFolder(folder: string, root: string | undefined, fsImpl: GreatFs): ReadElementFile[];
30
+ export declare function readWorkspaceElements(root: string | undefined, fsImpl: GreatFs): LocalElementFile[];
31
+ export declare function writeElementFile(root: string | undefined, folder: string, key: string, data: Record<string, unknown>, great: GreatFile, fsImpl?: GreatFs, knownPath?: string): string;
32
+ export declare function removeElementFile(root: string | undefined, folder: string, key: string, great: GreatFile, fsImpl?: GreatFs): void;
@@ -1,9 +1,15 @@
1
+ import fs from 'node:fs';
1
2
  import path from 'node:path';
2
3
  import parseJson from './parseJson.js';
3
4
  import { ElementType } from '../generated/schema.js';
5
+ import { ENDPOINT_LISTS_FOLDER, ENDPOINTS_FOLDER, SERVICES_FOLDER, isServiceFileFolder, mergeServiceFile, readServiceFileParts, splitServiceFile, } from './serviceFile.js';
6
+ import { getElementRecord } from './greatFile.js';
7
+ import { SHADOW_MARKER, shadowMarkerFor, stripShadowMarker, } from './shadowMarker.js';
4
8
  export const elementTypeToFolder = {
5
9
  [ElementType.Schema]: 'schemas',
6
- [ElementType.Service]: 'services',
10
+ [ElementType.Service]: SERVICES_FOLDER,
11
+ [ElementType.Endpoint]: ENDPOINTS_FOLDER,
12
+ [ElementType.EndpointList]: ENDPOINT_LISTS_FOLDER,
7
13
  [ElementType.Auth]: 'auths',
8
14
  [ElementType.Mutation]: 'mutations',
9
15
  [ElementType.Dictionary]: 'dictionaries',
@@ -15,7 +21,9 @@ export const elementTypeToFolder = {
15
21
  };
16
22
  export const folderToElementType = {
17
23
  schemas: ElementType.Schema,
18
- services: ElementType.Service,
24
+ [SERVICES_FOLDER]: ElementType.Service,
25
+ [ENDPOINTS_FOLDER]: ElementType.Endpoint,
26
+ [ENDPOINT_LISTS_FOLDER]: ElementType.EndpointList,
19
27
  auths: ElementType.Auth,
20
28
  mutations: ElementType.Mutation,
21
29
  dictionaries: ElementType.Dictionary,
@@ -26,7 +34,8 @@ export const folderToElementType = {
26
34
  };
27
35
  export const ELEMENT_FOLDERS = [
28
36
  'schemas',
29
- 'services',
37
+ SERVICES_FOLDER,
38
+ ENDPOINTS_FOLDER,
30
39
  'auths',
31
40
  'mutations',
32
41
  'dictionaries',
@@ -35,19 +44,50 @@ export const ELEMENT_FOLDERS = [
35
44
  'flows',
36
45
  'retryRules',
37
46
  ];
47
+ export const VIRTUAL_FOLDERS = [ENDPOINT_LISTS_FOLDER];
48
+ export const isVirtualFolder = (folder) => VIRTUAL_FOLDERS.includes(folder);
49
+ export const fileFolder = (folder) => folder === ENDPOINT_LISTS_FOLDER ? SERVICES_FOLDER : folder;
38
50
  export const JSON_EXTENSIONS = ['.jsonc', '.json'];
39
51
  export function elementKeyFromFileName(fileName) {
40
52
  const ext = JSON_EXTENSIONS.find((e) => fileName.endsWith(e));
41
53
  return ext ? fileName.slice(0, -ext.length) : undefined;
42
54
  }
55
+ export function parseElementTarget(target) {
56
+ const [folder, key, ...extra] = target.split('/');
57
+ return folder && key && extra.length === 0 ? { folder, key } : undefined;
58
+ }
59
+ const folderPath = (root, folder) => root ? path.join(root, folder) : folder;
60
+ export function findElementFile(root, folder, key, fsImpl) {
61
+ for (const ext of JSON_EXTENSIONS) {
62
+ const filePath = path.join(folderPath(root, fileFolder(folder)), `${key}${ext}`);
63
+ if (fsImpl.existsSync(filePath)) {
64
+ return filePath;
65
+ }
66
+ }
67
+ return undefined;
68
+ }
69
+ export function hasElementFile(root, folder, key, fsImpl) {
70
+ const filePath = findElementFile(root, folder, key, fsImpl);
71
+ if (!filePath) {
72
+ return false;
73
+ }
74
+ if (isServiceFileFolder(folder)) {
75
+ const parts = readServiceFileParts(filePath, fsImpl);
76
+ return Boolean(folder === SERVICES_FOLDER ? parts.service : parts.list);
77
+ }
78
+ return true;
79
+ }
80
+ export const elementFilePath = (root, folder, key, fsImpl) => findElementFile(root, folder, key, fsImpl) ??
81
+ path.join(folderPath(root, fileFolder(folder)), `${key}.json`);
82
+ export const readEndpointListKeys = (root, key, fsImpl) => readServiceFileParts(elementFilePath(root, ENDPOINT_LISTS_FOLDER, key, fsImpl), fsImpl).list?.endpoints ?? [];
43
83
  export function readElementFolder(folder, root, fsImpl) {
44
- const folderPath = root ? path.join(root, folder) : folder;
45
- if (!fsImpl.existsSync(folderPath)) {
84
+ const dirPath = folderPath(root, folder);
85
+ if (!fsImpl.existsSync(dirPath)) {
46
86
  return [];
47
87
  }
48
88
  const seenKeys = new Map();
49
89
  const elements = [];
50
- for (const file of fsImpl.readdirSync(folderPath)) {
90
+ for (const file of fsImpl.readdirSync(dirPath)) {
51
91
  const fileName = String(file);
52
92
  const key = elementKeyFromFileName(fileName);
53
93
  if (!key) {
@@ -58,7 +98,7 @@ export function readElementFolder(folder, root, fsImpl) {
58
98
  throw new Error(`Duplicate element key "${key}" in ${folder}/: found both ${existingFile} and ${fileName}`);
59
99
  }
60
100
  seenKeys.set(key, fileName);
61
- const filePath = path.join(folderPath, fileName);
101
+ const filePath = path.join(dirPath, fileName);
62
102
  try {
63
103
  const content = fsImpl.readFileSync(filePath, 'utf8');
64
104
  elements.push({
@@ -68,9 +108,108 @@ export function readElementFolder(folder, root, fsImpl) {
68
108
  });
69
109
  }
70
110
  catch (error) {
71
- throw new Error(`Failed to read or parse ${filePath}: ${error}`);
111
+ throw new Error(`Failed to read or parse ${filePath}: ${error}`, {
112
+ cause: error,
113
+ });
72
114
  }
73
115
  }
74
116
  return elements;
75
117
  }
118
+ function splitServiceElements(file) {
119
+ const parts = splitServiceFile(file.data, file.filePath);
120
+ return {
121
+ ...(parts.service
122
+ ? {
123
+ service: {
124
+ folder: SERVICES_FOLDER,
125
+ key: file.key,
126
+ filePath: file.filePath,
127
+ data: parts.service,
128
+ },
129
+ }
130
+ : {}),
131
+ ...(parts.list
132
+ ? {
133
+ list: {
134
+ folder: ENDPOINT_LISTS_FOLDER,
135
+ key: file.key,
136
+ filePath: file.filePath,
137
+ data: { ...parts.list },
138
+ },
139
+ }
140
+ : {}),
141
+ };
142
+ }
143
+ function rejectEndpointListFiles(root, fsImpl) {
144
+ const files = readElementFolder(ENDPOINT_LISTS_FOLDER, root, fsImpl);
145
+ if (files.length > 0) {
146
+ throw new Error(`Endpoint lists are kept in their service file as \`endpoints\`, not in ${ENDPOINT_LISTS_FOLDER}/. Move the endpoint keys in ${files[0].filePath} to the service file and delete the ${ENDPOINT_LISTS_FOLDER} folder`);
147
+ }
148
+ }
149
+ export function readWorkspaceElements(root, fsImpl) {
150
+ rejectEndpointListFiles(root, fsImpl);
151
+ const elements = [];
152
+ const lists = [];
153
+ for (const folder of ELEMENT_FOLDERS) {
154
+ for (const file of readElementFolder(folder, root, fsImpl)) {
155
+ if (folder === SERVICES_FOLDER) {
156
+ const { service, list } = splitServiceElements(file);
157
+ if (service) {
158
+ elements.push(service);
159
+ }
160
+ if (list) {
161
+ lists.push(list);
162
+ }
163
+ }
164
+ else {
165
+ elements.push({ folder, ...file, data: stripShadowMarker(file.data) });
166
+ }
167
+ }
168
+ }
169
+ return [...elements, ...lists];
170
+ }
171
+ const isShadowRecord = (great, folder, key) => Boolean(getElementRecord(great, folder, key)?.source);
172
+ function buildServiceFile(folder, key, data, great, filePath, fsImpl) {
173
+ const existing = readServiceFileParts(filePath, fsImpl);
174
+ const service = folder === SERVICES_FOLDER ? data : existing.service;
175
+ const list = folder === ENDPOINT_LISTS_FOLDER
176
+ ? { endpoints: data.endpoints }
177
+ : existing.list;
178
+ const marker = shadowMarkerFor(Boolean(service) && isShadowRecord(great, SERVICES_FOLDER, key), Boolean(list) && isShadowRecord(great, ENDPOINT_LISTS_FOLDER, key));
179
+ return mergeServiceFile({ service, list }, marker);
180
+ }
181
+ export function writeElementFile(root, folder, key, data, great, fsImpl = fs, knownPath) {
182
+ const filePath = knownPath ?? elementFilePath(root, folder, key, fsImpl);
183
+ const content = isServiceFileFolder(folder)
184
+ ? buildServiceFile(folder, key, data, great, filePath, fsImpl)
185
+ : {
186
+ ...(isShadowRecord(great, folder, key)
187
+ ? { [SHADOW_MARKER]: true }
188
+ : {}),
189
+ ...data,
190
+ };
191
+ const dirPath = folderPath(root, fileFolder(folder));
192
+ if (!fsImpl.existsSync(dirPath)) {
193
+ fsImpl.mkdirSync(dirPath, { recursive: true });
194
+ }
195
+ fsImpl.writeFileSync(filePath, JSON.stringify(content, undefined, 2));
196
+ return filePath;
197
+ }
198
+ export function removeElementFile(root, folder, key, great, fsImpl = fs) {
199
+ const filePath = findElementFile(root, folder, key, fsImpl);
200
+ if (!filePath) {
201
+ return;
202
+ }
203
+ const service = folder === ENDPOINT_LISTS_FOLDER
204
+ ? readServiceFileParts(filePath, fsImpl).service
205
+ : undefined;
206
+ if (service) {
207
+ const marker = shadowMarkerFor(isShadowRecord(great, SERVICES_FOLDER, key), false);
208
+ const content = mergeServiceFile({ service }, marker);
209
+ fsImpl.writeFileSync(filePath, JSON.stringify(content, undefined, 2));
210
+ }
211
+ else {
212
+ fsImpl.unlinkSync(filePath);
213
+ }
214
+ }
76
215
  //# sourceMappingURL=elementFiles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"elementFiles.js","sourceRoot":"","sources":["../../src/utils/elementFiles.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"elementFiles.js","sourceRoot":"","sources":["../../src/utils/elementFiles.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import fs from 'node:fs';
1
+ import type { GreatFs } from '../types.js';
2
2
  export declare function currentIntegrationKey(): string;
3
- export declare function fetchIntegrationId(fsImpl?: typeof fs): string | undefined;
4
- export declare function fetchAccountFromFolder(fsImpl?: typeof fs): string | undefined;
5
- export declare function fetchIntegrationFromFile(fsImpl?: typeof fs): Record<string, unknown> | undefined;
3
+ export declare function fetchIntegrationId(fsImpl?: GreatFs): string | undefined;
4
+ export declare function fetchAccountFromFolder(fsImpl?: GreatFs): string | undefined;
5
+ export declare function fetchIntegrationFromFile(fsImpl?: GreatFs): Record<string, unknown> | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"fetchLocal.js","sourceRoot":"","sources":["../../src/utils/fetchLocal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAIhE,MAAM,UAAU,qBAAqB;IACnC,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAA;AACrC,CAAC;AAKD,MAAM,UAAU,kBAAkB,CAAC,MAAM,GAAG,EAAE;IAC5C,OAAO,gBAAgB,CAAC,aAAa,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAA;AAC3D,CAAC;AAKD,MAAM,UAAU,sBAAsB,CAAC,MAAM,GAAG,EAAE;IAChD,MAAM,EAAE,OAAO,EAAE,GAAG,aAAa,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IACpD,OAAO,OAAO,EAAE,EAAE,IAAI,OAAO,EAAE,GAAG,CAAA;AACpC,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,MAAM,GAAG,EAAE;IAEX,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAA;QAC/D,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC5B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"fetchLocal.js","sourceRoot":"","sources":["../../src/utils/fetchLocal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAKhE,MAAM,UAAU,qBAAqB;IACnC,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAA;AACrC,CAAC;AAKD,MAAM,UAAU,kBAAkB,CAAC,SAAkB,EAAE;IACrD,OAAO,gBAAgB,CAAC,aAAa,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAA;AAC3D,CAAC;AAKD,MAAM,UAAU,sBAAsB,CAAC,SAAkB,EAAE;IACzD,MAAM,EAAE,OAAO,EAAE,GAAG,aAAa,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IACpD,OAAO,OAAO,EAAE,EAAE,IAAI,OAAO,EAAE,GAAG,CAAA;AACpC,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,SAAkB,EAAE;IAEpB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAA;QAC/D,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC5B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC"}
@@ -6,16 +6,30 @@ export function isNotFoundError(error) {
6
6
  }
7
7
  return error?.message?.includes('NOT_FOUND');
8
8
  }
9
+ const UNAVAILABLE_STATUSES = [502, 503, 504];
10
+ function isHttpErrorStatus(status) {
11
+ return typeof status === 'number' && (status < 200 || status >= 300);
12
+ }
13
+ function getHttpErrorMessage(status) {
14
+ if (UNAVAILABLE_STATUSES.includes(status)) {
15
+ return `The API is not responding correctly (HTTP ${status}). It may be temporarily unavailable – please try again in a moment.`;
16
+ }
17
+ return `The API returned an unexpected response (HTTP ${status}).`;
18
+ }
9
19
  export function getGraphQLErrorMessage(error) {
10
20
  if (typeof error === 'string')
11
21
  return error;
12
- const errors = error.response?.errors;
13
- const messages = errors
22
+ const response = error.response;
23
+ const messages = response?.errors
14
24
  ?.map((err) => err.message)
15
25
  .filter((message) => Boolean(message));
16
26
  if (messages?.length) {
17
27
  return messages.join('\n');
18
28
  }
29
+ const status = response?.status;
30
+ if (isHttpErrorStatus(status)) {
31
+ return getHttpErrorMessage(status);
32
+ }
19
33
  return error.message;
20
34
  }
21
35
  export function handleGraphQLError(error, log) {
@@ -1 +1 @@
1
- {"version":3,"file":"graphqlError.js","sourceRoot":"","sources":["../../src/utils/graphqlError.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAezB,MAAM,UAAU,eAAe,CAAC,KAAY;IAE1C,MAAM,iBAAiB,GAAG,KAAkC,CAAA;IAE5D,IAAI,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QACvC,OAAO,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAC3C,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,KAAK,WAAW,CAC9C,CAAA;IACH,CAAC;IAGD,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAA;AAC9C,CAAC;AAUD,MAAM,UAAU,sBAAsB,CAAC,KAAqB;IAC1D,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAE3C,MAAM,MAAM,GAAI,KAAmC,CAAC,QAAQ,EAAE,MAAM,CAAA;IACpE,MAAM,QAAQ,GAAG,MAAM;QACrB,EAAE,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC;SAC1B,MAAM,CAAC,CAAC,OAAO,EAAqB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAA;IAC3D,IAAI,QAAQ,EAAE,MAAM,EAAE,CAAC;QACrB,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC5B,CAAC;IAED,OAAO,KAAK,CAAC,OAAO,CAAA;AACtB,CAAC;AAKD,MAAM,UAAU,kBAAkB,CAChC,KAAiC,EACjC,GAA8B;IAE9B,IAAI,CAAC,KAAK;QAAE,OAAM;IAElB,MAAM,OAAO,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAA;IAC7C,MAAM,WAAW,GACf,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAC;QAC3C,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC;QACrC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA;IAClC,IAAI,WAAW,EAAE,CAAC;QAChB,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,sBAAsB,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAA;QAClE,OAAM;IACR,CAAC;IAGD,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAA;AACzB,CAAC"}
1
+ {"version":3,"file":"graphqlError.js","sourceRoot":"","sources":["../../src/utils/graphqlError.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAgBzB,MAAM,UAAU,eAAe,CAAC,KAAY;IAE1C,MAAM,iBAAiB,GAAG,KAAkC,CAAA;IAE5D,IAAI,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QACvC,OAAO,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAC3C,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,KAAK,WAAW,CAC9C,CAAA;IACH,CAAC;IAGD,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAA;AAC9C,CAAC;AAID,MAAM,oBAAoB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;AAE5C,SAAS,iBAAiB,CAAC,MAAe;IACxC,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,MAAM,GAAG,GAAG,IAAI,MAAM,IAAI,GAAG,CAAC,CAAA;AACtE,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAc;IACzC,IAAI,oBAAoB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1C,OAAO,6CAA6C,MAAM,sEAAsE,CAAA;IAClI,CAAC;IACD,OAAO,iDAAiD,MAAM,IAAI,CAAA;AACpE,CAAC;AAYD,MAAM,UAAU,sBAAsB,CAAC,KAAqB;IAC1D,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAE3C,MAAM,QAAQ,GAAI,KAAmC,CAAC,QAAQ,CAAA;IAC9D,MAAM,QAAQ,GAAG,QAAQ,EAAE,MAAM;QAC/B,EAAE,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC;SAC1B,MAAM,CAAC,CAAC,OAAO,EAAqB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAA;IAC3D,IAAI,QAAQ,EAAE,MAAM,EAAE,CAAC;QACrB,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC5B,CAAC;IAED,MAAM,MAAM,GAAG,QAAQ,EAAE,MAAM,CAAA;IAC/B,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9B,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAA;IACpC,CAAC;IAED,OAAO,KAAK,CAAC,OAAO,CAAA;AACtB,CAAC;AAKD,MAAM,UAAU,kBAAkB,CAChC,KAAiC,EACjC,GAA8B;IAE9B,IAAI,CAAC,KAAK;QAAE,OAAM;IAElB,MAAM,OAAO,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAA;IAC7C,MAAM,WAAW,GACf,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAC;QAC3C,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC;QACrC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA;IAClC,IAAI,WAAW,EAAE,CAAC;QAChB,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,sBAAsB,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAA;QAClE,OAAM;IACR,CAAC;IAGD,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAA;AACzB,CAAC"}
@@ -1,4 +1,4 @@
1
- import fs from 'node:fs';
1
+ import type { GreatFs } from '../types.js';
2
2
  export interface GreatElementSource {
3
3
  id: string;
4
4
  timestamp?: string;
@@ -26,8 +26,8 @@ export interface GreatFile {
26
26
  elements: Record<string, GreatElementRecord>;
27
27
  }
28
28
  export declare const emptyGreatFile: () => GreatFile;
29
- export declare function readGreatFile(root?: string, fsImpl?: typeof fs): GreatFile;
30
- export declare function writeGreatFile(great: GreatFile, root?: string, fsImpl?: typeof fs): void;
29
+ export declare function readGreatFile(root?: string, fsImpl?: GreatFs): GreatFile;
30
+ export declare function writeGreatFile(great: GreatFile, root?: string, fsImpl?: GreatFs): void;
31
31
  export declare const getIntegrationId: (great: GreatFile) => string | undefined;
32
32
  export declare function getElementRecord(great: GreatFile, folder: string, key: string): GreatElementRecord | undefined;
33
33
  export declare function setElementRecord(great: GreatFile, folder: string, key: string, record: GreatElementRecord): void;
@@ -1 +1 @@
1
- {"version":3,"file":"greatFile.js","sourceRoot":"","sources":["../../src/utils/greatFile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"greatFile.js","sourceRoot":"","sources":["../../src/utils/greatFile.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export interface EndpointListMerge {
2
+ merged: string[];
3
+ }
4
+ export interface EndpointListConflict {
5
+ conflict: [string, string];
6
+ }
7
+ export default function mergeEndpointLists(a: string[], b: string[]): EndpointListMerge | EndpointListConflict;
@@ -0,0 +1,32 @@
1
+ const dedupe = (keys) => [...new Set(keys)];
2
+ function drainTo(keys, anchor) {
3
+ const taken = [];
4
+ for (let next = keys.next(); !next.done; next = keys.next()) {
5
+ if (next.value === anchor) {
6
+ break;
7
+ }
8
+ taken.push(next.value);
9
+ }
10
+ return taken;
11
+ }
12
+ export default function mergeEndpointLists(a, b) {
13
+ const aList = dedupe(a);
14
+ const bList = dedupe(b);
15
+ const aSet = new Set(aList);
16
+ const bSet = new Set(bList);
17
+ const aRest = aList.values();
18
+ const bRest = bList.values();
19
+ const merged = [];
20
+ for (const anchor of aList.filter((key) => bSet.has(key))) {
21
+ const fromA = drainTo(aRest, anchor);
22
+ const fromB = drainTo(bRest, anchor);
23
+ const misplaced = fromB.find((key) => aSet.has(key));
24
+ if (misplaced) {
25
+ return { conflict: [anchor, misplaced] };
26
+ }
27
+ merged.push(...fromA, ...fromB, anchor);
28
+ }
29
+ merged.push(...aRest, ...bRest);
30
+ return { merged };
31
+ }
32
+ //# sourceMappingURL=mergeEndpointLists.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mergeEndpointLists.js","sourceRoot":"","sources":["../../src/utils/mergeEndpointLists.ts"],"names":[],"mappings":"AAQA,MAAM,MAAM,GAAG,CAAC,IAAc,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAA;AAMrD,SAAS,OAAO,CAAC,IAAsB,EAAE,MAAc;IACrD,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,KAAK,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;QAC5D,IAAI,IAAI,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;YAC1B,MAAK;QACP,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACxB,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAcD,MAAM,CAAC,OAAO,UAAU,kBAAkB,CACxC,CAAW,EACX,CAAW;IAEX,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;IACvB,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;IACvB,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAA;IAC3B,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAA;IAC3B,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,CAAA;IAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,CAAA;IAE5B,MAAM,MAAM,GAAa,EAAE,CAAA;IAC3B,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QAC1D,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QACpC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QACpC,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;QACpD,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,CAAA;QAC1C,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,EAAE,GAAG,KAAK,EAAE,MAAM,CAAC,CAAA;IACzC,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,EAAE,GAAG,KAAK,CAAC,CAAA;IAC/B,OAAO,EAAE,MAAM,EAAE,CAAA;AACnB,CAAC"}
@@ -0,0 +1,6 @@
1
+ interface ShadowElement {
2
+ folder: string;
3
+ key: string;
4
+ }
5
+ export declare function promptForDetach(element: ShadowElement, log: (message: string) => void): Promise<boolean>;
6
+ export {};
@@ -0,0 +1,15 @@
1
+ import { confirm } from '@inquirer/prompts';
2
+ import chalk from 'chalk';
3
+ export async function promptForDetach(element, log) {
4
+ log(chalk.yellow(`${element.folder}/${element.key} is a shadow element, but its content has been changed locally.`));
5
+ try {
6
+ return await confirm({
7
+ message: 'Make it a local element with your changes? (No restores the file from its source)',
8
+ default: true,
9
+ });
10
+ }
11
+ catch {
12
+ throw new Error('User cancelled');
13
+ }
14
+ }
15
+ //# sourceMappingURL=promptForDetach.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promptForDetach.js","sourceRoot":"","sources":["../../src/utils/promptForDetach.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,MAAM,OAAO,CAAA;AAWzB,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,OAAsB,EACtB,GAA8B;IAE9B,GAAG,CACD,KAAK,CAAC,MAAM,CACV,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,iEAAiE,CAClG,CACF,CAAA;IACD,IAAI,CAAC;QACH,OAAO,MAAM,OAAO,CAAC;YACnB,OAAO,EACL,mFAAmF;YACrF,OAAO,EAAE,IAAI;SACd,CAAC,CAAA;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAA;IACnC,CAAC;AACH,CAAC"}
@@ -0,0 +1,5 @@
1
+ export interface EndpointChoice {
2
+ key: string;
3
+ name: string;
4
+ }
5
+ export default function promptForEndpoints(serviceKey: string, endpoints: readonly EndpointChoice[], log: (message: string) => void, hasShadowList?: boolean): Promise<string[]>;
@@ -0,0 +1,37 @@
1
+ import { checkbox, confirm } from '@inquirer/prompts';
2
+ import chalk from 'chalk';
3
+ async function selectEndpoints(endpoints) {
4
+ return checkbox({
5
+ message: 'Endpoints to include',
6
+ choices: endpoints.map(({ key, name }) => ({
7
+ name: `${name} (${key})`,
8
+ value: key,
9
+ checked: true,
10
+ })),
11
+ });
12
+ }
13
+ async function confirmLocalList(log, hasShadowList) {
14
+ const replaces = hasShadowList
15
+ ? ' It replaces the shadow endpoint list you have now.'
16
+ : '';
17
+ log(chalk.yellow(`Leaving out endpoints means you make your own, local endpoint list, and won't follow changes to it.${replaces}`));
18
+ return confirm({
19
+ message: 'Make the endpoint list a local element with only the selected endpoints?',
20
+ default: false,
21
+ });
22
+ }
23
+ export default async function promptForEndpoints(serviceKey, endpoints, log, hasShadowList = false) {
24
+ log(`Service ${serviceKey} has an endpoint list with ${endpoints.length} endpoint(s). Select the ones to include with it.`);
25
+ try {
26
+ let selected;
27
+ do {
28
+ selected = await selectEndpoints(endpoints);
29
+ } while (selected.length < endpoints.length &&
30
+ !(await confirmLocalList(log, hasShadowList)));
31
+ return selected;
32
+ }
33
+ catch {
34
+ throw new Error('User cancelled');
35
+ }
36
+ }
37
+ //# sourceMappingURL=promptForEndpoints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promptForEndpoints.js","sourceRoot":"","sources":["../../src/utils/promptForEndpoints.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,KAAK,MAAM,OAAO,CAAA;AAOzB,KAAK,UAAU,eAAe,CAC5B,SAAoC;IAEpC,OAAO,QAAQ,CAAC;QACd,OAAO,EAAE,sBAAsB;QAC/B,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YACzC,IAAI,EAAE,GAAG,IAAI,KAAK,GAAG,GAAG;YACxB,KAAK,EAAE,GAAG;YACV,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;KACJ,CAAC,CAAA;AACJ,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC7B,GAA8B,EAC9B,aAAsB;IAEtB,MAAM,QAAQ,GAAG,aAAa;QAC5B,CAAC,CAAC,qDAAqD;QACvD,CAAC,CAAC,EAAE,CAAA;IACN,GAAG,CACD,KAAK,CAAC,MAAM,CACV,sGAAsG,QAAQ,EAAE,CACjH,CACF,CAAA;IACD,OAAO,OAAO,CAAC;QACb,OAAO,EACL,0EAA0E;QAC5E,OAAO,EAAE,KAAK;KACf,CAAC,CAAA;AACJ,CAAC;AAQD,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,kBAAkB,CAC9C,UAAkB,EAClB,SAAoC,EACpC,GAA8B,EAC9B,aAAa,GAAG,KAAK;IAErB,GAAG,CACD,WAAW,UAAU,8BAA8B,SAAS,CAAC,MAAM,mDAAmD,CACvH,CAAA;IACD,IAAI,CAAC;QACH,IAAI,QAAkB,CAAA;QACtB,GAAG,CAAC;YACF,QAAQ,GAAG,MAAM,eAAe,CAAC,SAAS,CAAC,CAAA;QAC7C,CAAC,QACC,QAAQ,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM;YAClC,CAAC,CAAC,MAAM,gBAAgB,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,EAC9C;QACD,OAAO,QAAQ,CAAA;IACjB,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAA;IACnC,CAAC;AACH,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { ElementTarget } from './elementFiles.js';
2
+ export interface ReplacedElement extends ElementTarget {
3
+ droppedKeys?: string[];
4
+ }
5
+ export default function promptForReplaceLocal(replaced: readonly ReplacedElement[], log: (message: string) => void): Promise<boolean>;
@@ -0,0 +1,18 @@
1
+ import { confirm } from '@inquirer/prompts';
2
+ import chalk from 'chalk';
3
+ const describeReplaced = ({ folder, key, droppedKeys }) => droppedKeys
4
+ ? ` ${folder}/${key} (leaves out ${droppedKeys.join(', ')})`
5
+ : ` ${folder}/${key}`;
6
+ export default async function promptForReplaceLocal(replaced, log) {
7
+ log(chalk.yellow('These local elements will be replaced, and any changes to them that have not been pushed will be lost:'));
8
+ for (const element of replaced) {
9
+ log(describeReplaced(element));
10
+ }
11
+ try {
12
+ return await confirm({ message: 'Replace them?', default: false });
13
+ }
14
+ catch {
15
+ throw new Error('User cancelled');
16
+ }
17
+ }
18
+ //# sourceMappingURL=promptForReplaceLocal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promptForReplaceLocal.js","sourceRoot":"","sources":["../../src/utils/promptForReplaceLocal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,MAAM,OAAO,CAAA;AASzB,MAAM,gBAAgB,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAmB,EAAE,EAAE,CACzE,WAAW;IACT,CAAC,CAAC,KAAK,MAAM,IAAI,GAAG,gBAAgB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;IAC7D,CAAC,CAAC,KAAK,MAAM,IAAI,GAAG,EAAE,CAAA;AAK1B,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,qBAAqB,CACjD,QAAoC,EACpC,GAA8B;IAE9B,GAAG,CACD,KAAK,CAAC,MAAM,CACV,wGAAwG,CACzG,CACF,CAAA;IACD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,GAAG,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAA;IAChC,CAAC;IACD,IAAI,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;IACpE,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAA;IACnC,CAAC;AACH,CAAC"}
@@ -5,5 +5,6 @@ interface LocalElement {
5
5
  data: Record<string, unknown>;
6
6
  remoteId?: string;
7
7
  }
8
+ export declare const findElementsToSet: (elements: LocalElement[]) => LocalElement[];
8
9
  export declare function promptForValueSetting(elements: LocalElement[], log: (message: string) => void): Promise<boolean>;
9
10
  export {};
@@ -1,12 +1,14 @@
1
1
  import { confirm } from '@inquirer/prompts';
2
2
  import chalk from 'chalk';
3
+ export const findElementsToSet = (elements) => elements.filter((element) => element.folder === 'values' &&
4
+ (element.data.value !== undefined || element.data.ref !== undefined));
3
5
  export async function promptForValueSetting(elements, log) {
4
- const valueElementsWithValue = elements.filter((element) => element.folder === 'values' && element.data.value !== undefined);
5
- if (valueElementsWithValue.length === 0) {
6
+ const elementsToSet = findElementsToSet(elements);
7
+ if (elementsToSet.length === 0) {
6
8
  return false;
7
9
  }
8
10
  log(chalk.white('The following value elements have values set:'));
9
- for (const element of valueElementsWithValue) {
11
+ for (const element of elementsToSet) {
10
12
  log(chalk.white(` - ${element.key}`));
11
13
  }
12
14
  log('');
@@ -1 +1 @@
1
- {"version":3,"file":"promptForValue.js","sourceRoot":"","sources":["../../src/utils/promptForValue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,MAAM,OAAO,CAAA;AAczB,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,QAAwB,EACxB,GAA8B;IAG9B,MAAM,sBAAsB,GAAG,QAAQ,CAAC,MAAM,CAC5C,CAAC,OAAO,EAAE,EAAE,CACV,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAClE,CAAA;IAGD,IAAI,sBAAsB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxC,OAAO,KAAK,CAAA;IACd,CAAC;IAGD,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC,CAAA;IACjE,KAAK,MAAM,OAAO,IAAI,sBAAsB,EAAE,CAAC;QAC7C,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;IACxC,CAAC;IACD,GAAG,CAAC,EAAE,CAAC,CAAA;IAGP,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC;YAC9B,OAAO,EAAE,sDAAsD;YAC/D,OAAO,EAAE,IAAI;SACd,CAAC,CAAA;QACF,OAAO,SAAS,CAAA;IAClB,CAAC;IAAC,MAAM,CAAC;QAEP,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAA;IACnC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"promptForValue.js","sourceRoot":"","sources":["../../src/utils/promptForValue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,MAAM,OAAO,CAAA;AAczB,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,QAAwB,EAAkB,EAAE,CAC5E,QAAQ,CAAC,MAAM,CACb,CAAC,OAAO,EAAE,EAAE,CACV,OAAO,CAAC,MAAM,KAAK,QAAQ;IAC3B,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC,CACvE,CAAA;AAOH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,QAAwB,EACxB,GAA8B;IAE9B,MAAM,aAAa,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAA;IAGjD,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO,KAAK,CAAA;IACd,CAAC;IAGD,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC,CAAA;IACjE,KAAK,MAAM,OAAO,IAAI,aAAa,EAAE,CAAC;QACpC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;IACxC,CAAC;IACD,GAAG,CAAC,EAAE,CAAC,CAAA;IAGP,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC;YAC9B,OAAO,EAAE,sDAAsD;YAC/D,OAAO,EAAE,IAAI;SACd,CAAC,CAAA;QACF,OAAO,SAAS,CAAA;IAClB,CAAC;IAAC,MAAM,CAAC;QAEP,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAA;IACnC,CAAC;AACH,CAAC"}
@@ -1,7 +1,7 @@
1
- import fs from 'node:fs';
2
1
  import Conf from 'conf';
3
2
  import { type ConfigSchema } from './config.js';
4
3
  import { type GraphQLRequestClient } from './graphqlClient.js';
4
+ import type { GreatFs } from '../types.js';
5
5
  export interface AccountResult {
6
6
  account?: {
7
7
  id: string;
@@ -17,4 +17,4 @@ export interface ResolveAccountResult {
17
17
  }
18
18
  export declare function resolveAccountId(options: {
19
19
  account?: string;
20
- }, apiToken: string, client: GraphQLRequestClient, config?: Conf<ConfigSchema>, fsImpl?: typeof fs): Promise<ResolveAccountResult>;
20
+ }, apiToken: string, client: GraphQLRequestClient, config?: Conf<ConfigSchema>, fsImpl?: GreatFs): Promise<ResolveAccountResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"resolveAccount.js","sourceRoot":"","sources":["../../src/utils/resolveAccount.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolveAccount.js","sourceRoot":"","sources":["../../src/utils/resolveAccount.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AAExB,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AACjC,OAAO,EAAE,cAAc,EAAqB,MAAM,aAAa,CAAA;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAA;AACxD,OAAO,EACL,mBAAmB,GAEpB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAOnD,MAAM,wBAAwB,GAAG,GAAG,CAAA;;;;;;;;CAQnC,CAAA;AAED,MAAM,yBAAyB,GAAG,GAAG,CAAA;;;;;;;;CAQpC,CAAA;AAWD,KAAK,UAAU,YAAY,CACzB,SAAiB,EACjB,QAAiB,EACjB,MAA6B,EAC7B,OAAgB;IAEhB,MAAM,aAAa,GAAG,MAAM,IAAI,mBAAmB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;IAEtE,IAAI,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,OAAO,CAC1C,wBAAwB,EACxB,EAAE,EAAE,EAAE,SAAS,EAAE,CAClB,CAAA;QAGD,IAAI,QAAQ,CAAC,KAAK,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACvD,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAA;QAClC,CAAC;QAED,IAAI,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC;YAC3B,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,CAAA;QAC3C,CAAC;QAGD,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,OAAO,CAC3C,yBAAyB,EACzB,EAAE,GAAG,EAAE,SAAS,EAAE,CACnB,CAAA;QAGD,IAAI,SAAS,CAAC,KAAK,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YACzD,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,CAAA;QACnC,CAAC;QAED,IAAI,SAAS,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC;YACjC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;QACjD,CAAC;QAGD,OAAO;YACL,KAAK,EAAE,YAAY,SAAS,aAAa;SAC1C,CAAA;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SACjE,CAAA;IACH,CAAC;AACH,CAAC;AAQD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAA6B,EAC7B,QAAgB,EAChB,MAA4B,EAC5B,MAA2B,EAC3B,SAAkB,EAAE;IAGpB,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;QACrB,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;QACpE,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAA;QAChC,CAAC;QACD,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAA;IAC1D,CAAC;IAMD,MAAM,aAAa,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAA;IACpD,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,aAAa,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;QAClE,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAA;QAChC,CAAC;QACD,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAA;IAC5D,CAAC;IAGD,MAAM,cAAc,GAAG,cAAc,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IACxD,IAAI,cAAc,EAAE,CAAC;QACnB,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,cAAc,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;QACnE,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,IAAI,MAAM,CAAC,KAAK,YAAY,KAAK,EAAE,CAAC;gBAClC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAA;YAChC,CAAC;YACD,OAAO;gBACL,KAAK,EAAE,oBAAoB,cAAc,oGAAoG;aAC9I,CAAA;QACH,CAAC;QACD,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAA;IAC5D,CAAC;IAGD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAA;AACjC,CAAC"}
@@ -1,5 +1,7 @@
1
1
  import { ElementType } from '../generated/schema.js';
2
2
  import type { GraphQLRequestClient } from './graphqlClient.js';
3
+ import type { ElementByIdQuery } from '../generated/operations.js';
4
+ export declare function fetchElementById(client: GraphQLRequestClient, id: string, log: (message: string) => void): Promise<ElementByIdQuery['element'] | undefined>;
3
5
  export interface ResolveElementOptions {
4
6
  identifier: string;
5
7
  type: ElementType;
@@ -32,6 +32,14 @@ const ElementByKeyQueryDocument = gql `
32
32
  }
33
33
  }
34
34
  `;
35
+ export async function fetchElementById(client, id, log) {
36
+ const result = await client.request(ElementByIdQueryDocument, { id });
37
+ if (result.error) {
38
+ handleGraphQLError(result.error, log);
39
+ return undefined;
40
+ }
41
+ return result.data?.element ?? undefined;
42
+ }
35
43
  export async function resolveElement(options) {
36
44
  const { identifier, type, integrationIdentifier, accountId, apiToken, client, log, } = options;
37
45
  const idResult = await client.request(ElementByIdQueryDocument, { id: identifier });