@stepzen/transpiler 0.58.0-experimental.a42e35b → 0.58.0-experimental.a56f2f6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +3 -3
- package/lib/actions/configure.d.ts +0 -12
- package/lib/actions/configure.d.ts.map +0 -1
- package/lib/actions/configure.js +0 -131
- package/lib/actions/configure.js.map +0 -1
- package/lib/actions/lint.d.ts +0 -5
- package/lib/actions/lint.d.ts.map +0 -1
- package/lib/actions/lint.js +0 -38
- package/lib/actions/lint.js.map +0 -1
- package/lib/actions/merge.d.ts +0 -16
- package/lib/actions/merge.d.ts.map +0 -1
- package/lib/actions/merge.js +0 -193
- package/lib/actions/merge.js.map +0 -1
- package/lib/actions/print.d.ts +0 -4
- package/lib/actions/print.d.ts.map +0 -1
- package/lib/actions/print.js +0 -9
- package/lib/actions/print.js.map +0 -1
- package/lib/actions/stitch.d.ts +0 -3
- package/lib/actions/stitch.d.ts.map +0 -1
- package/lib/actions/stitch.js +0 -111
- package/lib/actions/stitch.js.map +0 -1
- package/lib/actions/transpile.d.ts +0 -17
- package/lib/actions/transpile.d.ts.map +0 -1
- package/lib/actions/transpile.js +0 -68
- package/lib/actions/transpile.js.map +0 -1
- package/lib/actions/validate.d.ts +0 -5
- package/lib/actions/validate.d.ts.map +0 -1
- package/lib/actions/validate.js +0 -39
- package/lib/actions/validate.js.map +0 -1
- package/lib/index.d.ts +0 -8
- package/lib/index.d.ts.map +0 -1
- package/lib/index.js +0 -9
- package/lib/index.js.map +0 -1
- package/lib/mutations/config/envvars.d.ts +0 -3
- package/lib/mutations/config/envvars.d.ts.map +0 -1
- package/lib/mutations/config/envvars.js +0 -54
- package/lib/mutations/config/envvars.js.map +0 -1
- package/lib/mutations/config/index.d.ts +0 -3
- package/lib/mutations/config/index.d.ts.map +0 -1
- package/lib/mutations/config/index.js +0 -4
- package/lib/mutations/config/index.js.map +0 -1
- package/lib/utils/constants.d.ts +0 -4
- package/lib/utils/constants.d.ts.map +0 -1
- package/lib/utils/constants.js +0 -17
- package/lib/utils/constants.js.map +0 -1
- package/lib/utils/copy-workspace-content.d.ts +0 -15
- package/lib/utils/copy-workspace-content.d.ts.map +0 -1
- package/lib/utils/copy-workspace-content.js +0 -41
- package/lib/utils/copy-workspace-content.js.map +0 -1
- package/lib/utils/dedupe-query-and-mutation-types.d.ts +0 -3
- package/lib/utils/dedupe-query-and-mutation-types.d.ts.map +0 -1
- package/lib/utils/dedupe-query-and-mutation-types.js +0 -67
- package/lib/utils/dedupe-query-and-mutation-types.js.map +0 -1
- package/lib/utils/ensure-query-and-mutation-types.d.ts +0 -4
- package/lib/utils/ensure-query-and-mutation-types.d.ts.map +0 -1
- package/lib/utils/ensure-query-and-mutation-types.js +0 -48
- package/lib/utils/ensure-query-and-mutation-types.js.map +0 -1
- package/lib/utils/graphql-helpers.d.ts +0 -5
- package/lib/utils/graphql-helpers.d.ts.map +0 -1
- package/lib/utils/graphql-helpers.js +0 -3
- package/lib/utils/graphql-helpers.js.map +0 -1
- package/lib/utils/merge-helpers.d.ts +0 -13
- package/lib/utils/merge-helpers.d.ts.map +0 -1
- package/lib/utils/merge-helpers.js +0 -183
- package/lib/utils/merge-helpers.js.map +0 -1
- package/lib/utils/rmtemp.d.ts +0 -11
- package/lib/utils/rmtemp.d.ts.map +0 -1
- package/lib/utils/rmtemp.js +0 -39
- package/lib/utils/rmtemp.js.map +0 -1
- package/lib/utils/set-files-in-sdl.d.ts +0 -6
- package/lib/utils/set-files-in-sdl.d.ts.map +0 -1
- package/lib/utils/set-files-in-sdl.js +0 -121
- package/lib/utils/set-files-in-sdl.js.map +0 -1
- package/lib/utils/strip-empty-queries-and-mutations.d.ts +0 -4
- package/lib/utils/strip-empty-queries-and-mutations.d.ts.map +0 -1
- package/lib/utils/strip-empty-queries-and-mutations.js +0 -43
- package/lib/utils/strip-empty-queries-and-mutations.js.map +0 -1
- package/lib/validators/config-exists/index.d.ts +0 -4
- package/lib/validators/config-exists/index.d.ts.map +0 -1
- package/lib/validators/config-exists/index.js +0 -45
- package/lib/validators/config-exists/index.js.map +0 -1
- package/lib/validators/index.d.ts +0 -3
- package/lib/validators/index.d.ts.map +0 -1
- package/lib/validators/index.js +0 -4
- package/lib/validators/index.js.map +0 -1
|
@@ -1,183 +0,0 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2020, 2025
|
|
2
|
-
import debug from 'debug';
|
|
3
|
-
import { BREAK, Kind, visit } from 'graphql';
|
|
4
|
-
import { buildSchema } from 'graphql/utilities/index.js';
|
|
5
|
-
import fetch from '@stepzen/fetch';
|
|
6
|
-
import fsx from 'fs-extra';
|
|
7
|
-
import { globSync } from 'glob';
|
|
8
|
-
import os from 'node:os';
|
|
9
|
-
import path from 'node:path';
|
|
10
|
-
import { replace } from 'lodash-es';
|
|
11
|
-
import { cloneDeep } from '../utils/graphql-helpers.js';
|
|
12
|
-
import { STEPZEN_SERVER_URL } from './constants.js';
|
|
13
|
-
import configure from '../actions/configure.js';
|
|
14
|
-
import transpile from '../actions/transpile.js';
|
|
15
|
-
import { rmtemp } from './rmtemp.js';
|
|
16
|
-
export const dedupeTempFolder = (dirpath) => {
|
|
17
|
-
do {
|
|
18
|
-
dirpath = replace(dirpath, os.tmpdir(), '');
|
|
19
|
-
} while (dirpath.includes(os.tmpdir()));
|
|
20
|
-
dirpath = path.join(os.tmpdir(), dirpath);
|
|
21
|
-
return dirpath;
|
|
22
|
-
};
|
|
23
|
-
export const findNextAvailableSubfolder = (folder, name) => {
|
|
24
|
-
let subfolder = name;
|
|
25
|
-
let counter = 1;
|
|
26
|
-
while (fsx.existsSync(path.join(folder, subfolder))) {
|
|
27
|
-
const suffix = `${counter++}`.padStart(2, '0');
|
|
28
|
-
subfolder = `${name}-${suffix}`;
|
|
29
|
-
}
|
|
30
|
-
return subfolder;
|
|
31
|
-
};
|
|
32
|
-
const isQueryMutationSubscription = (ancestors) => {
|
|
33
|
-
if (Array.isArray(ancestors[ancestors.length - 1])) {
|
|
34
|
-
return false;
|
|
35
|
-
}
|
|
36
|
-
const ancestor = ancestors[ancestors.length - 1];
|
|
37
|
-
return (ancestor.kind === Kind.OBJECT_TYPE_DEFINITION &&
|
|
38
|
-
['Query', 'Mutation', 'Subscription'].includes(ancestor.name.value));
|
|
39
|
-
};
|
|
40
|
-
export const findQueryMutationInSchema = (name, files) => {
|
|
41
|
-
for (const file of files) {
|
|
42
|
-
let found = false;
|
|
43
|
-
visit(file.ast, {
|
|
44
|
-
FieldDefinition(node, _key, _parent, _path, ancestors) {
|
|
45
|
-
if (isQueryMutationSubscription(ancestors) &&
|
|
46
|
-
node.name.value === name) {
|
|
47
|
-
found = true;
|
|
48
|
-
return BREAK;
|
|
49
|
-
}
|
|
50
|
-
},
|
|
51
|
-
});
|
|
52
|
-
if (found)
|
|
53
|
-
return true;
|
|
54
|
-
}
|
|
55
|
-
return false;
|
|
56
|
-
};
|
|
57
|
-
export const findTypeInSchema = (name, files) => {
|
|
58
|
-
for (const file of files) {
|
|
59
|
-
let found = false;
|
|
60
|
-
visit(file.ast, {
|
|
61
|
-
ObjectTypeDefinition(node) {
|
|
62
|
-
if (node.name.value === name) {
|
|
63
|
-
found = true;
|
|
64
|
-
return BREAK;
|
|
65
|
-
}
|
|
66
|
-
},
|
|
67
|
-
});
|
|
68
|
-
if (found)
|
|
69
|
-
return true;
|
|
70
|
-
}
|
|
71
|
-
return false;
|
|
72
|
-
};
|
|
73
|
-
export const getConfiguration = async (directories, silent = false, answers = {}) => {
|
|
74
|
-
const tmp = path.join(os.tmpdir(), `stepzen-tmp-config-${Date.now()}`);
|
|
75
|
-
fsx.ensureDirSync(tmp);
|
|
76
|
-
try {
|
|
77
|
-
for (const directory of directories) {
|
|
78
|
-
const configs = [
|
|
79
|
-
...globSync('**/config.yaml', { cwd: directory }),
|
|
80
|
-
...globSync('**/stepzen.config.json', { cwd: directory }),
|
|
81
|
-
];
|
|
82
|
-
for (const config of configs) {
|
|
83
|
-
const configFolder = path.join(directory, config);
|
|
84
|
-
let writeFolder = path.join(tmp, directory, config);
|
|
85
|
-
writeFolder = dedupeTempFolder(writeFolder);
|
|
86
|
-
const content = fsx.readFileSync(configFolder, 'utf8');
|
|
87
|
-
fsx.ensureFileSync(writeFolder);
|
|
88
|
-
fsx.writeFileSync(writeFolder, content, { mode: 0o600 });
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
const configuration = await configure(tmp, silent, answers);
|
|
92
|
-
return configuration;
|
|
93
|
-
}
|
|
94
|
-
finally {
|
|
95
|
-
rmtemp(tmp);
|
|
96
|
-
}
|
|
97
|
-
};
|
|
98
|
-
export const getExtensions = async () => {
|
|
99
|
-
const baseurl = STEPZEN_SERVER_URL.replace('{account}', 'stepzen');
|
|
100
|
-
const url = `${baseurl}/directives.graphql`;
|
|
101
|
-
const startedAt = new Date().getTime();
|
|
102
|
-
debug('stepzen:extensions')(`[transpiler] fetching StepZen extensions from ${url}`);
|
|
103
|
-
const response = await fetch(url);
|
|
104
|
-
const text = await response.text();
|
|
105
|
-
const doneAt = new Date().getTime();
|
|
106
|
-
debug('stepzen:extensions')(`[transpiler] fetched extensions (${text.length} bytes, ${doneAt - startedAt} ms)`);
|
|
107
|
-
return text;
|
|
108
|
-
};
|
|
109
|
-
export const getSchema = async (directory, extensions) => {
|
|
110
|
-
const transpiled = await transpile(directory);
|
|
111
|
-
return buildSchema(`${extensions}${os.EOL}${transpiled.schema}`);
|
|
112
|
-
};
|
|
113
|
-
export const mergeQueryMutationIntoSchema = (type, files) => {
|
|
114
|
-
files = files.map((file) => {
|
|
115
|
-
return {
|
|
116
|
-
...file,
|
|
117
|
-
ast: visit(file.ast, {
|
|
118
|
-
FieldDefinition(node, _key, _parent, _path, ancestors) {
|
|
119
|
-
if (isQueryMutationSubscription(ancestors) &&
|
|
120
|
-
node.name.value === type.name.value) {
|
|
121
|
-
const directives = cloneDeep(type.directives);
|
|
122
|
-
const mutated = cloneDeep(node);
|
|
123
|
-
mutated.directives = directives;
|
|
124
|
-
return mutated;
|
|
125
|
-
}
|
|
126
|
-
},
|
|
127
|
-
}),
|
|
128
|
-
};
|
|
129
|
-
});
|
|
130
|
-
return files;
|
|
131
|
-
};
|
|
132
|
-
export const mergeTypeIntoSchema = (type, files) => {
|
|
133
|
-
files = files.map((file) => {
|
|
134
|
-
return {
|
|
135
|
-
...file,
|
|
136
|
-
ast: visit(file.ast, {
|
|
137
|
-
ObjectTypeDefinition(node) {
|
|
138
|
-
if (node.name.value === type.name.value) {
|
|
139
|
-
const directives = cloneDeep(type.directives);
|
|
140
|
-
const fields = cloneDeep(type.fields);
|
|
141
|
-
const mutated = cloneDeep(node);
|
|
142
|
-
mutated.directives = directives;
|
|
143
|
-
mutated.fields = fields;
|
|
144
|
-
return mutated;
|
|
145
|
-
}
|
|
146
|
-
},
|
|
147
|
-
}),
|
|
148
|
-
};
|
|
149
|
-
});
|
|
150
|
-
return files;
|
|
151
|
-
};
|
|
152
|
-
export const removeQueryMutationFromSchema = (name, files) => {
|
|
153
|
-
files = files.map((file) => {
|
|
154
|
-
return {
|
|
155
|
-
...file,
|
|
156
|
-
ast: visit(file.ast, {
|
|
157
|
-
FieldDefinition(node, _key, _parent, _path, ancestors) {
|
|
158
|
-
if (isQueryMutationSubscription(ancestors) &&
|
|
159
|
-
node.name.value === name) {
|
|
160
|
-
return null;
|
|
161
|
-
}
|
|
162
|
-
},
|
|
163
|
-
}),
|
|
164
|
-
};
|
|
165
|
-
});
|
|
166
|
-
return files;
|
|
167
|
-
};
|
|
168
|
-
export const removeTypeFromSchema = (name, files) => {
|
|
169
|
-
files = files.map((file) => {
|
|
170
|
-
return {
|
|
171
|
-
...file,
|
|
172
|
-
ast: visit(file.ast, {
|
|
173
|
-
ObjectTypeDefinition(node) {
|
|
174
|
-
if (node.name.value === name) {
|
|
175
|
-
return null;
|
|
176
|
-
}
|
|
177
|
-
},
|
|
178
|
-
}),
|
|
179
|
-
};
|
|
180
|
-
});
|
|
181
|
-
return files;
|
|
182
|
-
};
|
|
183
|
-
//# sourceMappingURL=merge-helpers.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"merge-helpers.js","sourceRoot":"","sources":["../../src/utils/merge-helpers.ts"],"names":[],"mappings":"AAAA,iCAAiC;AAEjC,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAU,KAAK,EAAiB,IAAI,EAAE,KAAK,EAAC,MAAM,SAAS,CAAA;AAClE,OAAO,EAAC,WAAW,EAAC,MAAM,4BAA4B,CAAA;AACtD,OAAO,KAAK,MAAM,gBAAgB,CAAA;AAClC,OAAO,GAAG,MAAM,UAAU,CAAA;AAC1B,OAAO,EAAC,QAAQ,EAAC,MAAM,MAAM,CAAA;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAA;AAEjC,OAAO,EAAC,SAAS,EAAC,MAAM,6BAA6B,CAAA;AACrD,OAAO,EAAC,kBAAkB,EAAC,MAAM,gBAAgB,CAAA;AAEjD,OAAO,SAAS,MAAM,yBAAyB,CAAA;AAC/C,OAAO,SAAS,MAAM,yBAAyB,CAAA;AAC/C,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAA;AAElC,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAAe,EAAE,EAAE;IAClD,GAAG,CAAC;QACF,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAA;IAC7C,CAAC,QAAQ,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAC;IAEvC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,OAAO,CAAC,CAAA;IAEzC,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,MAAc,EAAE,IAAY,EAAE,EAAE;IACzE,IAAI,SAAS,GAAG,IAAI,CAAA;IACpB,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,OAAO,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC;QACpD,MAAM,MAAM,GAAG,GAAG,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;QAC9C,SAAS,GAAG,GAAG,IAAI,IAAI,MAAM,EAAE,CAAA;IACjC,CAAC;IAED,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAED,MAAM,2BAA2B,GAAG,CAClC,SAAoD,EACpD,EAAE;IACF,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACnD,OAAO,KAAK,CAAA;IACd,CAAC;IAED,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAY,CAAA;IAC3D,OAAO,CACL,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC,sBAAsB;QAC7C,CAAC,OAAO,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CACpE,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,IAAY,EACZ,KAAU,EACD,EAAE;IACX,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,KAAK,GAAG,KAAK,CAAA;QACjB,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE;YACd,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS;gBACnD,IACE,2BAA2B,CAAC,SAAS,CAAC;oBACtC,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,EACxB,CAAC;oBACD,KAAK,GAAG,IAAI,CAAA;oBACZ,OAAO,KAAK,CAAA;gBACd,CAAC;YACH,CAAC;SACF,CAAC,CAAA;QACF,IAAI,KAAK;YAAE,OAAO,IAAI,CAAA;IACxB,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAE,KAAU,EAAW,EAAE;IACpE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,KAAK,GAAG,KAAK,CAAA;QACjB,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE;YACd,oBAAoB,CAAC,IAAI;gBACvB,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;oBAC7B,KAAK,GAAG,IAAI,CAAA;oBACZ,OAAO,KAAK,CAAA;gBACd,CAAC;YACH,CAAC;SACF,CAAC,CAAA;QACF,IAAI,KAAK;YAAE,OAAO,IAAI,CAAA;IACxB,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACnC,WAAqB,EACrB,SAAkB,KAAK,EACvB,UAAe,EAAE,EACyB,EAAE;IAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,sBAAsB,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;IACtE,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;IAEtB,IAAI,CAAC;QACH,KAAK,MAAM,SAAS,IAAI,WAAW,EAAE,CAAC;YACpC,MAAM,OAAO,GAAG;gBACd,GAAG,QAAQ,CAAC,gBAAgB,EAAE,EAAC,GAAG,EAAE,SAAS,EAAC,CAAC;gBAC/C,GAAG,QAAQ,CAAC,wBAAwB,EAAE,EAAC,GAAG,EAAE,SAAS,EAAC,CAAC;aACxD,CAAA;YAED,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;gBAEjD,IAAI,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;gBACnD,WAAW,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAA;gBAE3C,MAAM,OAAO,GAAG,GAAG,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;gBAEtD,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC,CAAA;gBAC/B,GAAG,CAAC,aAAa,CAAC,WAAW,EAAE,OAAO,EAAE,EAAC,IAAI,EAAE,KAAK,EAAC,CAAC,CAAA;YACxD,CAAC;QACH,CAAC;QAED,MAAM,aAAa,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;QAC3D,OAAO,aAAa,CAAA;IACtB,CAAC;YAAS,CAAC;QACT,MAAM,CAAC,GAAG,CAAC,CAAA;IACb,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,IAAqB,EAAE;IACvD,MAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;IAClE,MAAM,GAAG,GAAG,GAAG,OAAO,qBAAqB,CAAA;IAE3C,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAA;IACtC,KAAK,CAAC,oBAAoB,CAAC,CACzB,iDAAiD,GAAG,EAAE,CACvD,CAAA;IAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAA;IACjC,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;IAElC,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAA;IACnC,KAAK,CAAC,oBAAoB,CAAC,CACzB,oCAAoC,IAAI,CAAC,MAAM,WAC7C,MAAM,GAAG,SACX,MAAM,CACP,CAAA;IAED,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,EAC5B,SAAiB,EACjB,UAAkB,EACM,EAAE;IAC1B,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC,CAAA;IAC7C,OAAO,WAAW,CAAC,GAAG,UAAU,GAAG,EAAE,CAAC,GAAG,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,CAAA;AAClE,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,IAAS,EAAE,KAAU,EAAE,EAAE;IACpE,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE;QAC9B,OAAO;YACL,GAAG,IAAI;YACP,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE;gBACnB,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS;oBACnD,IACE,2BAA2B,CAAC,SAAS,CAAC;wBACtC,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,EACnC,CAAC;wBACD,MAAM,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;wBAC7C,MAAM,OAAO,GAAQ,SAAS,CAAC,IAAI,CAAC,CAAA;wBACpC,OAAO,CAAC,UAAU,GAAG,UAAU,CAAA;wBAC/B,OAAO,OAAO,CAAA;oBAChB,CAAC;gBACH,CAAC;aACF,CAAC;SACH,CAAA;IACH,CAAC,CAAC,CAAA;IACF,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,IAAS,EAAE,KAAU,EAAE,EAAE;IAC3D,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE;QAC9B,OAAO;YACL,GAAG,IAAI;YACP,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE;gBACnB,oBAAoB,CAAC,IAAI;oBACvB,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;wBACxC,MAAM,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;wBAC7C,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;wBACrC,MAAM,OAAO,GAAQ,SAAS,CAAC,IAAI,CAAC,CAAA;wBACpC,OAAO,CAAC,UAAU,GAAG,UAAU,CAAA;wBAC/B,OAAO,CAAC,MAAM,GAAG,MAAM,CAAA;wBACvB,OAAO,OAAO,CAAA;oBAChB,CAAC;gBACH,CAAC;aACF,CAAC;SACH,CAAA;IACH,CAAC,CAAC,CAAA;IACF,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,IAAY,EAAE,KAAU,EAAE,EAAE;IACxE,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE;QAC9B,OAAO;YACL,GAAG,IAAI;YACP,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE;gBACnB,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS;oBACnD,IACE,2BAA2B,CAAC,SAAS,CAAC;wBACtC,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,EACxB,CAAC;wBACD,OAAO,IAAI,CAAA;oBACb,CAAC;gBACH,CAAC;aACF,CAAC;SACH,CAAA;IACH,CAAC,CAAC,CAAA;IACF,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,IAAY,EAAE,KAAU,EAAE,EAAE;IAC/D,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE;QAC9B,OAAO;YACL,GAAG,IAAI;YACP,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE;gBACnB,oBAAoB,CAAC,IAAI;oBACvB,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;wBAC7B,OAAO,IAAI,CAAA;oBACb,CAAC;gBACH,CAAC;aACF,CAAC;SACH,CAAA;IACH,CAAC,CAAC,CAAA;IACF,OAAO,KAAK,CAAA;AACd,CAAC,CAAA"}
|
package/lib/utils/rmtemp.d.ts
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Verify that the given path is indeed inside the tmp folder,
|
|
3
|
-
* and delete it recursively suppressing any errors.
|
|
4
|
-
*
|
|
5
|
-
* If the given path is not inside the tmp folder, do nothing.
|
|
6
|
-
*
|
|
7
|
-
* @param {*} fileOrDirPath path to a temp file or folder to delete
|
|
8
|
-
*/
|
|
9
|
-
export declare const rmtemp: (fileOrDirPath?: string) => void;
|
|
10
|
-
export default rmtemp;
|
|
11
|
-
//# sourceMappingURL=rmtemp.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rmtemp.d.ts","sourceRoot":"","sources":["../../src/utils/rmtemp.ts"],"names":[],"mappings":"AAYA;;;;;;;GAOG;AACH,eAAO,MAAM,MAAM,GAAI,gBAAgB,MAAM,SAyB5C,CAAA;AAED,eAAe,MAAM,CAAA"}
|
package/lib/utils/rmtemp.js
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2020, 2025
|
|
2
|
-
import fs from 'node:fs';
|
|
3
|
-
import path from 'node:path';
|
|
4
|
-
import os from 'node:os';
|
|
5
|
-
import debug from 'debug';
|
|
6
|
-
// ----------------------------------------------------------------------------
|
|
7
|
-
// THIS ENTIRE FILE IS COPIED FROM packages/cli/src/shared/rmtemp.ts
|
|
8
|
-
// (because there is no effective way to share util classes between packages yet)
|
|
9
|
-
// ----------------------------------------------------------------------------
|
|
10
|
-
/**
|
|
11
|
-
* Verify that the given path is indeed inside the tmp folder,
|
|
12
|
-
* and delete it recursively suppressing any errors.
|
|
13
|
-
*
|
|
14
|
-
* If the given path is not inside the tmp folder, do nothing.
|
|
15
|
-
*
|
|
16
|
-
* @param {*} fileOrDirPath path to a temp file or folder to delete
|
|
17
|
-
*/
|
|
18
|
-
export const rmtemp = (fileOrDirPath) => {
|
|
19
|
-
if (!fileOrDirPath) {
|
|
20
|
-
return;
|
|
21
|
-
}
|
|
22
|
-
// https://stackoverflow.com/a/45242825
|
|
23
|
-
const relative = path.relative(os.tmpdir(), fileOrDirPath);
|
|
24
|
-
const isInTemp = relative && !relative.startsWith('..') && !path.isAbsolute(relative);
|
|
25
|
-
if (isInTemp) {
|
|
26
|
-
try {
|
|
27
|
-
fs.rmSync(fileOrDirPath, { recursive: true, force: true });
|
|
28
|
-
}
|
|
29
|
-
catch (error) {
|
|
30
|
-
// ignore errors
|
|
31
|
-
debug('stepzen:rmtemp')(`WARN: caught an exception while deleting ${fileOrDirPath}: `, error);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
else {
|
|
35
|
-
debug('stepzen:rmtemp')(`WARN: got a temp path ${fileOrDirPath} out of the TMP folder -- ignoring`);
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
export default rmtemp;
|
|
39
|
-
//# sourceMappingURL=rmtemp.js.map
|
package/lib/utils/rmtemp.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rmtemp.js","sourceRoot":"","sources":["../../src/utils/rmtemp.ts"],"names":[],"mappings":"AAAA,iCAAiC;AAEjC,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,+EAA+E;AAC/E,yEAAyE;AACzE,iFAAiF;AACjF,+EAA+E;AAE/E;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,aAAsB,EAAE,EAAE;IAC/C,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAM;IACR,CAAC;IAED,uCAAuC;IACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,aAAa,CAAC,CAAA;IAC1D,MAAM,QAAQ,GACZ,QAAQ,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;IAEtE,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,CAAC;YACH,EAAE,CAAC,MAAM,CAAC,aAAa,EAAE,EAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAC,CAAC,CAAA;QAC1D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,gBAAgB;YAChB,KAAK,CAAC,gBAAgB,CAAC,CACrB,4CAA4C,aAAa,IAAI,EAC7D,KAAK,CACN,CAAA;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,gBAAgB,CAAC,CACrB,yBAAyB,aAAa,oCAAoC,CAC3E,CAAA;IACH,CAAC;AACH,CAAC,CAAA;AAED,eAAe,MAAM,CAAA"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { ConstDirectiveNode, DirectiveNode, SchemaDefinitionNode } from 'graphql';
|
|
2
|
-
export declare const createOrUpdateSdlDirective: (importedGraphQLFiles: readonly string[], allGraphQLFiles: readonly string[], origSdlDirective?: DirectiveNode | ConstDirectiveNode) => ConstDirectiveNode;
|
|
3
|
-
export declare const createSchemaElement: (importedGraphQLFiles: readonly string[], allGraphQLFiles: readonly string[]) => SchemaDefinitionNode;
|
|
4
|
-
declare const _default: (source: string, importedGraphQLFiles: readonly string[]) => void;
|
|
5
|
-
export default _default;
|
|
6
|
-
//# sourceMappingURL=set-files-in-sdl.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"set-files-in-sdl.d.ts","sourceRoot":"","sources":["../../src/utils/set-files-in-sdl.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,kBAAkB,EAClB,aAAa,EAIb,oBAAoB,EAIrB,MAAM,SAAS,CAAA;AAUhB,eAAO,MAAM,0BAA0B,GACrC,sBAAsB,SAAS,MAAM,EAAE,EACvC,iBAAiB,SAAS,MAAM,EAAE,EAClC,mBAAmB,aAAa,GAAG,kBAAkB,KACpD,kBA2DF,CAAA;AAED,eAAO,MAAM,mBAAmB,GAC9B,sBAAsB,SAAS,MAAM,EAAE,EACvC,iBAAiB,SAAS,MAAM,EAAE,KACjC,oBAsBF,CAAA;yBAEe,QAAQ,MAAM,EAAE,sBAAsB,SAAS,MAAM,EAAE;AAAvE,wBAmDC"}
|
|
@@ -1,121 +0,0 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2020, 2025
|
|
2
|
-
import fs from 'node:fs';
|
|
3
|
-
import { Kind, parse, OperationTypeNode, visit, } from 'graphql';
|
|
4
|
-
import path from 'node:path';
|
|
5
|
-
import { cloneDeep } from './graphql-helpers.js';
|
|
6
|
-
import print from '../actions/print.js';
|
|
7
|
-
import { ALL_GRAPHQL_FILES } from './constants.js';
|
|
8
|
-
import { getAllGraphQLFiles } from './copy-workspace-content.js';
|
|
9
|
-
const normalizePathSep = (pathlike) => pathlike.replace(/\\/g, '/');
|
|
10
|
-
export const createOrUpdateSdlDirective = (importedGraphQLFiles, allGraphQLFiles, origSdlDirective) => {
|
|
11
|
-
let sdlDirective;
|
|
12
|
-
if (origSdlDirective) {
|
|
13
|
-
sdlDirective = cloneDeep(origSdlDirective);
|
|
14
|
-
}
|
|
15
|
-
else {
|
|
16
|
-
sdlDirective = {
|
|
17
|
-
kind: Kind.DIRECTIVE,
|
|
18
|
-
name: {
|
|
19
|
-
kind: Kind.NAME,
|
|
20
|
-
value: 'sdl',
|
|
21
|
-
},
|
|
22
|
-
arguments: [
|
|
23
|
-
{
|
|
24
|
-
kind: Kind.ARGUMENT,
|
|
25
|
-
name: {
|
|
26
|
-
kind: Kind.NAME,
|
|
27
|
-
value: 'files',
|
|
28
|
-
},
|
|
29
|
-
value: {
|
|
30
|
-
kind: Kind.LIST,
|
|
31
|
-
values: [
|
|
32
|
-
{
|
|
33
|
-
kind: Kind.STRING,
|
|
34
|
-
value: ALL_GRAPHQL_FILES,
|
|
35
|
-
},
|
|
36
|
-
],
|
|
37
|
-
},
|
|
38
|
-
},
|
|
39
|
-
],
|
|
40
|
-
};
|
|
41
|
-
}
|
|
42
|
-
sdlDirective.arguments = sdlDirective.arguments?.map(arg => {
|
|
43
|
-
if (arg.name.value === 'files') {
|
|
44
|
-
const filesValueNodes = arg.value;
|
|
45
|
-
const fileset = new Set([
|
|
46
|
-
...filesValueNodes.values.map(value => value.value),
|
|
47
|
-
...importedGraphQLFiles,
|
|
48
|
-
// Make sure paths in the `@sdl()` directive use the `/` separator
|
|
49
|
-
// even on Windows.
|
|
50
|
-
].map(normalizePathSep));
|
|
51
|
-
if (fileset.has(ALL_GRAPHQL_FILES)) {
|
|
52
|
-
fileset.delete(ALL_GRAPHQL_FILES);
|
|
53
|
-
allGraphQLFiles.forEach(file => fileset.add(normalizePathSep(file)));
|
|
54
|
-
}
|
|
55
|
-
// Sort files alphabetically for consistent ordering across glob versions
|
|
56
|
-
filesValueNodes.values = [...fileset].sort().map(file => ({
|
|
57
|
-
kind: Kind.STRING,
|
|
58
|
-
value: file,
|
|
59
|
-
}));
|
|
60
|
-
}
|
|
61
|
-
return arg;
|
|
62
|
-
});
|
|
63
|
-
return sdlDirective;
|
|
64
|
-
};
|
|
65
|
-
export const createSchemaElement = (importedGraphQLFiles, allGraphQLFiles) => {
|
|
66
|
-
const schemaElement = {
|
|
67
|
-
kind: Kind.SCHEMA_DEFINITION,
|
|
68
|
-
directives: [
|
|
69
|
-
createOrUpdateSdlDirective(importedGraphQLFiles, allGraphQLFiles),
|
|
70
|
-
],
|
|
71
|
-
operationTypes: [
|
|
72
|
-
{
|
|
73
|
-
kind: Kind.OPERATION_TYPE_DEFINITION,
|
|
74
|
-
operation: OperationTypeNode.QUERY,
|
|
75
|
-
type: {
|
|
76
|
-
kind: Kind.NAMED_TYPE,
|
|
77
|
-
name: {
|
|
78
|
-
kind: Kind.NAME,
|
|
79
|
-
value: 'Query',
|
|
80
|
-
},
|
|
81
|
-
},
|
|
82
|
-
},
|
|
83
|
-
],
|
|
84
|
-
};
|
|
85
|
-
return schemaElement;
|
|
86
|
-
};
|
|
87
|
-
export default (source, importedGraphQLFiles) => {
|
|
88
|
-
const allGraphQLFiles = getAllGraphQLFiles(source);
|
|
89
|
-
const output = path.join(source, 'index.graphql');
|
|
90
|
-
const index = fs.readFileSync(output, 'utf8');
|
|
91
|
-
let hasSchemaElement;
|
|
92
|
-
let ast = parse(index);
|
|
93
|
-
ast = visit(ast, {
|
|
94
|
-
SchemaDefinition(node) {
|
|
95
|
-
hasSchemaElement = true;
|
|
96
|
-
const mutated = cloneDeep(node);
|
|
97
|
-
const idx = mutated.directives?.findIndex(directive => directive.name.value === 'sdl');
|
|
98
|
-
if (mutated.directives && idx !== undefined && idx > -1) {
|
|
99
|
-
;
|
|
100
|
-
mutated.directives[idx] =
|
|
101
|
-
createOrUpdateSdlDirective(importedGraphQLFiles, allGraphQLFiles, mutated.directives[idx]);
|
|
102
|
-
}
|
|
103
|
-
else {
|
|
104
|
-
mutated.directives = mutated.directives || [];
|
|
105
|
-
mutated.directives.push(createOrUpdateSdlDirective(importedGraphQLFiles, allGraphQLFiles));
|
|
106
|
-
}
|
|
107
|
-
return mutated;
|
|
108
|
-
},
|
|
109
|
-
});
|
|
110
|
-
if (!hasSchemaElement) {
|
|
111
|
-
ast = visit(ast, {
|
|
112
|
-
Document(node) {
|
|
113
|
-
const mutated = cloneDeep(node);
|
|
114
|
-
mutated.definitions.push(createSchemaElement(importedGraphQLFiles, allGraphQLFiles));
|
|
115
|
-
return mutated;
|
|
116
|
-
},
|
|
117
|
-
});
|
|
118
|
-
}
|
|
119
|
-
fs.writeFileSync(output, print(ast));
|
|
120
|
-
};
|
|
121
|
-
//# sourceMappingURL=set-files-in-sdl.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"set-files-in-sdl.js","sourceRoot":"","sources":["../../src/utils/set-files-in-sdl.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"strip-empty-queries-and-mutations.d.ts","sourceRoot":"","sources":["../../src/utils/strip-empty-queries-and-mutations.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,YAAY,EAAQ,MAAM,SAAS,CAAA;yBAI3B,KAAK,YAAY,KAAG,YAAY;AAAhD,wBAsCC"}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2020, 2025
|
|
2
|
-
import { visit } from 'graphql';
|
|
3
|
-
import { cloneDeep } from './graphql-helpers.js';
|
|
4
|
-
export default (ast) => {
|
|
5
|
-
// Loop through the AST and nuke `__query` and `__mutation` stubs
|
|
6
|
-
ast = visit(ast, {
|
|
7
|
-
ObjectTypeDefinition: {
|
|
8
|
-
enter(node) {
|
|
9
|
-
if (node.name.kind === 'Name' && node.name.value === 'Query') {
|
|
10
|
-
const mutated = cloneDeep(node);
|
|
11
|
-
mutated.fields = mutated.fields.filter((field) => {
|
|
12
|
-
return field.name.value !== '__query';
|
|
13
|
-
});
|
|
14
|
-
return mutated;
|
|
15
|
-
}
|
|
16
|
-
if (node.name.kind === 'Name' && node.name.value === 'Mutation') {
|
|
17
|
-
const mutated = cloneDeep(node);
|
|
18
|
-
mutated.fields = mutated.fields.filter((field) => {
|
|
19
|
-
return field.name.value !== '__mutated';
|
|
20
|
-
});
|
|
21
|
-
return mutated;
|
|
22
|
-
}
|
|
23
|
-
},
|
|
24
|
-
},
|
|
25
|
-
});
|
|
26
|
-
// Strip empty Queries and Mutations definitions
|
|
27
|
-
ast = visit(ast, {
|
|
28
|
-
ObjectTypeDefinition: {
|
|
29
|
-
enter(node) {
|
|
30
|
-
if (node.name.kind === 'Name' && node.name.value === 'Query') {
|
|
31
|
-
if (node.fields?.length === 0)
|
|
32
|
-
return null;
|
|
33
|
-
}
|
|
34
|
-
if (node.name.kind === 'Name' && node.name.value === 'Mutation') {
|
|
35
|
-
if (node.fields?.length === 0)
|
|
36
|
-
return null;
|
|
37
|
-
}
|
|
38
|
-
},
|
|
39
|
-
},
|
|
40
|
-
});
|
|
41
|
-
return ast;
|
|
42
|
-
};
|
|
43
|
-
//# sourceMappingURL=strip-empty-queries-and-mutations.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"strip-empty-queries-and-mutations.js","sourceRoot":"","sources":["../../src/utils/strip-empty-queries-and-mutations.ts"],"names":[],"mappings":"AAAA,iCAAiC;AAEjC,OAAO,EAAe,KAAK,EAAC,MAAM,SAAS,CAAA;AAE3C,OAAO,EAAC,SAAS,EAAC,MAAM,sBAAsB,CAAA;AAE9C,eAAe,CAAC,GAAiB,EAAgB,EAAE;IACjD,iEAAiE;IACjE,GAAG,GAAG,KAAK,CAAC,GAAG,EAAE;QACf,oBAAoB,EAAE;YACpB,KAAK,CAAC,IAAI;gBACR,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;oBAC7D,MAAM,OAAO,GAAQ,SAAS,CAAC,IAAI,CAAC,CAAA;oBACpC,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAU,EAAE,EAAE;wBACpD,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAAA;oBACvC,CAAC,CAAC,CAAA;oBACF,OAAO,OAAO,CAAA;gBAChB,CAAC;gBACD,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;oBAChE,MAAM,OAAO,GAAQ,SAAS,CAAC,IAAI,CAAC,CAAA;oBACpC,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAU,EAAE,EAAE;wBACpD,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,WAAW,CAAA;oBACzC,CAAC,CAAC,CAAA;oBACF,OAAO,OAAO,CAAA;gBAChB,CAAC;YACH,CAAC;SACF;KACF,CAAC,CAAA;IAEF,gDAAgD;IAChD,GAAG,GAAG,KAAK,CAAC,GAAG,EAAE;QACf,oBAAoB,EAAE;YACpB,KAAK,CAAC,IAAI;gBACR,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;oBAC7D,IAAI,IAAI,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC;wBAAE,OAAO,IAAI,CAAA;gBAC5C,CAAC;gBACD,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;oBAChE,IAAI,IAAI,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC;wBAAE,OAAO,IAAI,CAAA;gBAC5C,CAAC;YACH,CAAC;SACF;KACF,CAAC,CAAA;IAEF,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/validators/config-exists/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,YAAY,EAAQ,MAAM,SAAS,CAAA;yBAc3B,KAAK,YAAY,EAAE,QAAQ,MAAM;AAAjD,wBAuCC"}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2020, 2025
|
|
2
|
-
import { visit } from 'graphql';
|
|
3
|
-
import { filter, uniq } from 'lodash-es';
|
|
4
|
-
import fs from 'node:fs';
|
|
5
|
-
import path from 'node:path';
|
|
6
|
-
import yaml from 'yaml';
|
|
7
|
-
const STEPZEN_DEFAULTS = [
|
|
8
|
-
'fedex_default',
|
|
9
|
-
'holidayapi_default',
|
|
10
|
-
'ipapi_default',
|
|
11
|
-
'owm_default',
|
|
12
|
-
'ups_default',
|
|
13
|
-
];
|
|
14
|
-
export default (ast, source) => {
|
|
15
|
-
let configs = [];
|
|
16
|
-
visit(ast, {
|
|
17
|
-
Argument(node) {
|
|
18
|
-
const name = node.name?.value;
|
|
19
|
-
const value = node.value?.value;
|
|
20
|
-
if (name === 'configuration') {
|
|
21
|
-
configs = configs.concat(value);
|
|
22
|
-
}
|
|
23
|
-
},
|
|
24
|
-
});
|
|
25
|
-
configs = uniq(configs);
|
|
26
|
-
configs = filter(configs, config => !STEPZEN_DEFAULTS.includes(config));
|
|
27
|
-
if (configs.length > 0) {
|
|
28
|
-
const sourceConfig = path.join(source, 'config.yaml');
|
|
29
|
-
if (!fs.existsSync(sourceConfig)) {
|
|
30
|
-
throw new Error('No config.yaml found');
|
|
31
|
-
}
|
|
32
|
-
const content = fs.readFileSync(sourceConfig, 'utf8');
|
|
33
|
-
const asYaml = yaml.parse(content);
|
|
34
|
-
for (const config of configs) {
|
|
35
|
-
const found = asYaml?.configurationset?.find((c) => {
|
|
36
|
-
return c?.configuration?.name === config;
|
|
37
|
-
});
|
|
38
|
-
if (!found) {
|
|
39
|
-
throw new Error(`Could not find configuration item for "${config}"`);
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
return true;
|
|
44
|
-
};
|
|
45
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/validators/config-exists/index.ts"],"names":[],"mappings":"AAAA,iCAAiC;AAEjC,OAAO,EAAe,KAAK,EAAC,MAAM,SAAS,CAAA;AAC3C,OAAO,EAAC,MAAM,EAAE,IAAI,EAAC,MAAM,WAAW,CAAA;AACtC,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,IAAI,MAAM,MAAM,CAAA;AAEvB,MAAM,gBAAgB,GAAG;IACvB,eAAe;IACf,oBAAoB;IACpB,eAAe;IACf,aAAa;IACb,aAAa;CACd,CAAA;AAED,eAAe,CAAC,GAAiB,EAAE,MAAc,EAAE,EAAE;IACnD,IAAI,OAAO,GAAQ,EAAE,CAAA;IAErB,KAAK,CAAC,GAAG,EAAE;QACT,QAAQ,CAAC,IAAS;YAChB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,CAAA;YAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,KAAK,CAAA;YAE/B,IAAI,IAAI,KAAK,eAAe,EAAE,CAAC;gBAC7B,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACjC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;IAEF,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,CAAA;IACvB,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAA;IAEvE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;QAErD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;QACzC,CAAC;QAED,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;QACrD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAElC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,KAAK,GAAG,MAAM,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE;gBACtD,OAAO,CAAC,EAAE,aAAa,EAAE,IAAI,KAAK,MAAM,CAAA;YAC1C,CAAC,CAAC,CAAA;YAEF,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,0CAA0C,MAAM,GAAG,CAAC,CAAA;YACtE,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/validators/index.ts"],"names":[],"mappings":";AAIA,wBAA6B"}
|
package/lib/validators/index.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/validators/index.ts"],"names":[],"mappings":"AAAA,iCAAiC;AAEjC,OAAO,YAAY,MAAM,0BAA0B,CAAA;AAEnD,eAAe,CAAC,YAAY,CAAC,CAAA"}
|