nango 0.59.12 → 0.60.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.
- package/dist/index.js +103 -22
- package/dist/index.js.map +1 -1
- package/dist/migrations/toZeroYaml.d.ts +50 -0
- package/dist/migrations/toZeroYaml.js +969 -0
- package/dist/migrations/toZeroYaml.js.map +1 -0
- package/dist/migrations/toZeroYaml.unit.test.d.ts +1 -0
- package/dist/migrations/toZeroYaml.unit.test.js +298 -0
- package/dist/migrations/toZeroYaml.unit.test.js.map +1 -0
- package/dist/services/dryrun.service.d.ts +3 -1
- package/dist/services/dryrun.service.js +77 -23
- package/dist/services/dryrun.service.js.map +1 -1
- package/dist/services/model.service.d.ts +1 -1
- package/dist/services/model.service.js +4 -3
- package/dist/services/model.service.js.map +1 -1
- package/dist/services/model.service.unit.test.js +2 -2
- package/dist/services/model.service.unit.test.js.map +1 -1
- package/dist/services/sdk.js +2 -1
- package/dist/services/sdk.js.map +1 -1
- package/dist/services/sdk.service.unit.test.js +2 -1
- package/dist/services/sdk.service.unit.test.js.map +1 -1
- package/dist/services/verification.service.js +2 -1
- package/dist/services/verification.service.js.map +1 -1
- package/dist/tests/helpers.js +2 -2
- package/dist/tests/helpers.js.map +1 -1
- package/dist/types.d.ts +1 -0
- package/dist/utils/result.d.ts +1 -17
- package/dist/utils/result.js +4 -0
- package/dist/utils/result.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/dist/zeroYaml/compile.d.ts +36 -0
- package/dist/zeroYaml/compile.js +305 -0
- package/dist/zeroYaml/compile.js.map +1 -0
- package/dist/zeroYaml/compile.unit.cli-test.d.ts +1 -0
- package/dist/zeroYaml/compile.unit.cli-test.js +34 -0
- package/dist/zeroYaml/compile.unit.cli-test.js.map +1 -0
- package/dist/zeroYaml/constants.d.ts +17 -0
- package/dist/zeroYaml/constants.js +60 -0
- package/dist/zeroYaml/constants.js.map +1 -0
- package/dist/zeroYaml/definitions.d.ts +25 -0
- package/dist/zeroYaml/definitions.js +142 -0
- package/dist/zeroYaml/definitions.js.map +1 -0
- package/dist/zeroYaml/definitions.unit.test.d.ts +1 -0
- package/dist/zeroYaml/definitions.unit.test.js +105 -0
- package/dist/zeroYaml/definitions.unit.test.js.map +1 -0
- package/dist/zeroYaml/deploy.d.ts +7 -0
- package/dist/zeroYaml/deploy.js +426 -0
- package/dist/zeroYaml/deploy.js.map +1 -0
- package/dist/zeroYaml/dev.d.ts +4 -0
- package/dist/zeroYaml/dev.js +295 -0
- package/dist/zeroYaml/dev.js.map +1 -0
- package/dist/zeroYaml/init.d.ts +7 -0
- package/dist/zeroYaml/init.js +98 -0
- package/dist/zeroYaml/init.js.map +1 -0
- package/dist/zeroYaml/zodToNango.d.ts +3 -0
- package/dist/zeroYaml/zodToNango.js +113 -0
- package/dist/zeroYaml/zodToNango.js.map +1 -0
- package/dist/zeroYaml/zodToNango.unit.test.d.ts +1 -0
- package/dist/zeroYaml/zodToNango.unit.test.js +77 -0
- package/dist/zeroYaml/zodToNango.unit.test.js.map +1 -0
- package/example/.env.example +16 -0
- package/example/.nango/.gitkeep +0 -0
- package/example/github/actions/createIssue.ts +39 -0
- package/example/github/on-events/pre-connection-deletion.ts +9 -0
- package/example/github/syncs/fetchIssues.ts +93 -0
- package/example/index.ts +3 -0
- package/example/package.json +13 -0
- package/example/tsconfig.json +30 -0
- package/package.json +27 -24
|
@@ -0,0 +1,305 @@
|
|
|
1
|
+
import fs from 'node:fs';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import * as babel from '@babel/core';
|
|
4
|
+
import chalk from 'chalk';
|
|
5
|
+
import { build } from 'esbuild';
|
|
6
|
+
import ora from 'ora';
|
|
7
|
+
import ts from 'typescript';
|
|
8
|
+
import { generateAdditionalExports } from '../services/model.service.js';
|
|
9
|
+
import { Err, Ok } from '../utils/result.js';
|
|
10
|
+
import { printDebug } from '../utils.js';
|
|
11
|
+
import { BabelError, CompileError, customErrors, importRegex, npmPackageRegex, tsconfig, tsconfigString } from './constants.js';
|
|
12
|
+
import { buildDefinitions } from './definitions.js';
|
|
13
|
+
/**
|
|
14
|
+
* This function is used to compile the code in the integration.
|
|
15
|
+
*
|
|
16
|
+
* It will:
|
|
17
|
+
* - Typecheck the code
|
|
18
|
+
* - Compile the code to .cjs
|
|
19
|
+
* - Rebuild nango.yaml in memory
|
|
20
|
+
*/
|
|
21
|
+
export async function compileAll({ fullPath, debug }) {
|
|
22
|
+
let spinner = ora({ text: 'Typechecking' }).start();
|
|
23
|
+
try {
|
|
24
|
+
// Read the index.ts content
|
|
25
|
+
const indexContentResult = await readIndexContent(fullPath);
|
|
26
|
+
if (indexContentResult.isErr()) {
|
|
27
|
+
spinner.fail();
|
|
28
|
+
console.error(chalk.red(`Could not read index.ts`));
|
|
29
|
+
return Err('failed_to_read_index_ts');
|
|
30
|
+
}
|
|
31
|
+
const indexContent = indexContentResult.value;
|
|
32
|
+
// Get the entry points
|
|
33
|
+
const entryPoints = getEntryPoints(indexContent);
|
|
34
|
+
if (entryPoints.length === 0) {
|
|
35
|
+
spinner.fail();
|
|
36
|
+
console.error(chalk.red("No entry points found in index.ts (e.g., export * from './syncs/github/fetch.js'). Nothing to compile."));
|
|
37
|
+
return Err('no_file');
|
|
38
|
+
}
|
|
39
|
+
printDebug(`Found ${entryPoints.length} entry points in index.ts: ${entryPoints.join(', ')}`, debug);
|
|
40
|
+
// Typecheck the code
|
|
41
|
+
const typechecked = typeCheck({ fullPath, entryPoints });
|
|
42
|
+
if (typechecked.isErr()) {
|
|
43
|
+
spinner.fail();
|
|
44
|
+
return typechecked;
|
|
45
|
+
}
|
|
46
|
+
spinner.succeed();
|
|
47
|
+
// Build the entry points
|
|
48
|
+
const text = `Building ${entryPoints.length} file(s)`;
|
|
49
|
+
spinner = ora({ text }).start();
|
|
50
|
+
printDebug('Building', debug);
|
|
51
|
+
for (const entryPoint of entryPoints) {
|
|
52
|
+
const entryPointFullPath = path.join(fullPath, entryPoint);
|
|
53
|
+
spinner.text = `${text} - ${entryPoint}`;
|
|
54
|
+
printDebug(`Building ${entryPointFullPath}`, debug);
|
|
55
|
+
const buildRes = await compileOne({ entryPoint: entryPointFullPath, projectRootPath: fullPath });
|
|
56
|
+
if (buildRes.isErr()) {
|
|
57
|
+
spinner.fail(`Failed to build ${entryPoint}`);
|
|
58
|
+
console.error(chalk.red(buildRes.error.message));
|
|
59
|
+
return buildRes;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
spinner.succeed();
|
|
63
|
+
// Build and export the definitions
|
|
64
|
+
spinner = ora({ text: `Exporting definitions` }).start();
|
|
65
|
+
const rebuild = await buildDefinitions({ fullPath, debug });
|
|
66
|
+
if (rebuild.isErr()) {
|
|
67
|
+
spinner.fail(`Failed to compile definitions`);
|
|
68
|
+
console.log(chalk.red(rebuild.error.message));
|
|
69
|
+
return Err(rebuild.error);
|
|
70
|
+
}
|
|
71
|
+
generateAdditionalExports({ parsed: rebuild.value, fullPath, debug });
|
|
72
|
+
spinner.succeed();
|
|
73
|
+
}
|
|
74
|
+
catch (err) {
|
|
75
|
+
console.error(err);
|
|
76
|
+
spinner.fail();
|
|
77
|
+
return Err('failed_to_compile');
|
|
78
|
+
}
|
|
79
|
+
spinner.succeed('Compiled');
|
|
80
|
+
return Ok(true);
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Reads the content of index.ts in the given fullPath.
|
|
84
|
+
*/
|
|
85
|
+
export async function readIndexContent(fullPath) {
|
|
86
|
+
const indexTsPath = path.join(fullPath, 'index.ts');
|
|
87
|
+
try {
|
|
88
|
+
const indexContent = await fs.promises.readFile(indexTsPath, 'utf8');
|
|
89
|
+
return Ok(indexContent);
|
|
90
|
+
}
|
|
91
|
+
catch {
|
|
92
|
+
return Err('failed_to_read_index_ts');
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Extracts the entry points from the index.ts content.
|
|
97
|
+
*/
|
|
98
|
+
export function getEntryPoints(indexContent) {
|
|
99
|
+
const entryPoints = [];
|
|
100
|
+
let match;
|
|
101
|
+
while ((match = importRegex.exec(indexContent)) !== null) {
|
|
102
|
+
const fp = match.groups?.['path'];
|
|
103
|
+
if (!fp) {
|
|
104
|
+
continue;
|
|
105
|
+
}
|
|
106
|
+
entryPoints.push(fp.endsWith('.js') ? fp : `${fp}.js`);
|
|
107
|
+
}
|
|
108
|
+
return entryPoints;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Runs the typescript compiler to typecheck the code.
|
|
112
|
+
*/
|
|
113
|
+
function typeCheck({ fullPath, entryPoints }) {
|
|
114
|
+
const program = ts.createProgram({
|
|
115
|
+
rootNames: entryPoints.map((file) => path.join(fullPath, file.replace('.js', '.ts'))),
|
|
116
|
+
options: tsconfig
|
|
117
|
+
});
|
|
118
|
+
const diagnostics = ts.getPreEmitDiagnostics(program);
|
|
119
|
+
if (diagnostics.length <= 0) {
|
|
120
|
+
return Ok(true);
|
|
121
|
+
}
|
|
122
|
+
// On purpose
|
|
123
|
+
console.log('');
|
|
124
|
+
for (const diagnostic of diagnostics) {
|
|
125
|
+
const message = ts.flattenDiagnosticMessageText(diagnostic.messageText, '\n');
|
|
126
|
+
if (diagnostic.file && diagnostic.start != null) {
|
|
127
|
+
const { line, character } = diagnostic.file.getLineAndCharacterOfPosition(diagnostic.start);
|
|
128
|
+
const fileName = diagnostic.file.fileName.replace(`${fullPath}/`, '');
|
|
129
|
+
console.error(chalk.red('err'), '-', `${chalk.blue(fileName)}${chalk.yellow(`:${line + 1}:${character + 1}`)}`, `\r\n ${message}\r\n`);
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
console.error(message);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
console.error(`Found ${diagnostics.length} error${diagnostics.length > 1 ? 's' : ''}`);
|
|
136
|
+
return Err('errors');
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Bundles the entry file using esbuild and returns the bundled code as a string (in memory).
|
|
140
|
+
*/
|
|
141
|
+
export async function bundleFile({ entryPoint }) {
|
|
142
|
+
try {
|
|
143
|
+
const res = await build({
|
|
144
|
+
entryPoints: [entryPoint],
|
|
145
|
+
bundle: true,
|
|
146
|
+
sourcemap: 'inline',
|
|
147
|
+
format: 'cjs',
|
|
148
|
+
target: 'esnext',
|
|
149
|
+
platform: 'node',
|
|
150
|
+
logLevel: 'silent',
|
|
151
|
+
treeShaking: true,
|
|
152
|
+
write: false, // Output in memory
|
|
153
|
+
plugins: [
|
|
154
|
+
{
|
|
155
|
+
name: 'remove-create-wrappers',
|
|
156
|
+
setup(build) {
|
|
157
|
+
build.onLoad({ filter: /\.ts$/ }, async (args) => {
|
|
158
|
+
const source = await fs.promises.readFile(args.path, 'utf8');
|
|
159
|
+
const result = await babel.transformAsync(source, {
|
|
160
|
+
filename: args.path,
|
|
161
|
+
plugins: [removeCreateWrappersBabelPlugin],
|
|
162
|
+
parserOpts: { sourceType: 'module', plugins: ['typescript'] },
|
|
163
|
+
generatorOpts: { decoratorsBeforeExport: true }
|
|
164
|
+
});
|
|
165
|
+
return { contents: result?.code ?? source, loader: 'ts' };
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
name: 'external-npm-packages',
|
|
171
|
+
setup(buildInstance) {
|
|
172
|
+
buildInstance.onResolve({ filter: npmPackageRegex }, (args) => {
|
|
173
|
+
if (!args.path.startsWith('.') && !path.isAbsolute(args.path)) {
|
|
174
|
+
return { path: args.path, external: true };
|
|
175
|
+
}
|
|
176
|
+
return null; // let esbuild handle other paths
|
|
177
|
+
});
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
],
|
|
181
|
+
tsconfigRaw: {
|
|
182
|
+
compilerOptions: tsconfigString
|
|
183
|
+
}
|
|
184
|
+
});
|
|
185
|
+
if (res.errors.length > 0) {
|
|
186
|
+
return Err('failed_to_build');
|
|
187
|
+
}
|
|
188
|
+
const output = res.outputFiles?.[0]?.text || '';
|
|
189
|
+
return Ok(output);
|
|
190
|
+
}
|
|
191
|
+
catch (err) {
|
|
192
|
+
// We can throw our own error, so we throw one with a custom code that we get back and re-hydrate a new error
|
|
193
|
+
if (err instanceof Error && err.message.includes('nango_')) {
|
|
194
|
+
const code = /(nango_[a-z_]+)/.exec(err.message)?.[1];
|
|
195
|
+
return Err(new CompileError(code, customErrors[code]));
|
|
196
|
+
}
|
|
197
|
+
return Err(new CompileError('failed_to_build_unknown', err instanceof Error ? err.message : 'unknown_error'));
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* We use esbuild to compile the code to .cjs.
|
|
202
|
+
* node.vm only supports CJS and we also bundle all imported files in the same file.
|
|
203
|
+
*/
|
|
204
|
+
export async function compileOne({ entryPoint, projectRootPath }) {
|
|
205
|
+
const rel = path.relative(projectRootPath, entryPoint);
|
|
206
|
+
// File are compiled to build/integration-type-script-name.cjs
|
|
207
|
+
// Because it's easier to manipulate the files and it's easier in S3
|
|
208
|
+
const outfile = path.join(projectRootPath, 'build', tsToJsPath(rel));
|
|
209
|
+
// Ensure the output directory exists
|
|
210
|
+
await fs.promises.mkdir(path.dirname(outfile), { recursive: true });
|
|
211
|
+
const bundleResult = await bundleFile({ entryPoint });
|
|
212
|
+
if (bundleResult.isErr()) {
|
|
213
|
+
return Err(bundleResult.error);
|
|
214
|
+
}
|
|
215
|
+
try {
|
|
216
|
+
await fs.promises.writeFile(outfile, bundleResult.value, 'utf8');
|
|
217
|
+
}
|
|
218
|
+
catch (err) {
|
|
219
|
+
console.error(chalk.red(err));
|
|
220
|
+
return Err('failed_to_write_output');
|
|
221
|
+
}
|
|
222
|
+
return Ok(true);
|
|
223
|
+
}
|
|
224
|
+
export function tsToJsPath(filePath) {
|
|
225
|
+
return filePath.replace(/^\.\//, '').replaceAll('/', '_').replaceAll('.js', '.cjs');
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* This plugin is used to remove the create wrappers from the exports.
|
|
229
|
+
*
|
|
230
|
+
* Initially, I didn't want to remove this but because our codebase is ESM and node.vm only compiles CJS
|
|
231
|
+
* it was annoying to have to compile the code twice. And have mixed code when publishing.
|
|
232
|
+
* Since the wrapper is only used to stringly type the exports, we can remove it.
|
|
233
|
+
*/
|
|
234
|
+
function removeCreateWrappersBabelPlugin({ types: t }) {
|
|
235
|
+
const allowedExports = ['createAction', 'createSync', 'createOnEvent'];
|
|
236
|
+
return {
|
|
237
|
+
visitor: {
|
|
238
|
+
ExportDefaultDeclaration(path) {
|
|
239
|
+
if (path.node.__transformedByRemoveCreateWrappers) {
|
|
240
|
+
return;
|
|
241
|
+
}
|
|
242
|
+
const decl = path.node.declaration;
|
|
243
|
+
let calleeName = null;
|
|
244
|
+
let arg = null;
|
|
245
|
+
// Case 1: export default createAction({...})
|
|
246
|
+
if (t.isCallExpression(decl) && t.isIdentifier(decl.callee) && allowedExports.includes(decl.callee.name)) {
|
|
247
|
+
let varName = '';
|
|
248
|
+
calleeName = decl.callee.name;
|
|
249
|
+
arg = decl.arguments[0];
|
|
250
|
+
if (!t.isObjectExpression(arg)) {
|
|
251
|
+
throw new BabelError('nango_invalid_function_param');
|
|
252
|
+
}
|
|
253
|
+
if (calleeName === 'createAction')
|
|
254
|
+
varName = 'action';
|
|
255
|
+
if (calleeName === 'createSync')
|
|
256
|
+
varName = 'sync';
|
|
257
|
+
if (calleeName === 'createOnEvent')
|
|
258
|
+
varName = 'onEvent';
|
|
259
|
+
// Inject type property
|
|
260
|
+
arg.properties = [t.objectProperty(t.identifier('type'), t.stringLiteral(varName)), ...arg.properties];
|
|
261
|
+
const newValue = arg;
|
|
262
|
+
// Insert: export const <varName> = <newValue>;
|
|
263
|
+
const exportConst = t.exportNamedDeclaration(t.variableDeclaration('const', [t.variableDeclarator(t.identifier(varName), newValue)]), []);
|
|
264
|
+
// Insert: export default <varName>;
|
|
265
|
+
const exportDefault = t.exportDefaultDeclaration(t.identifier(varName));
|
|
266
|
+
exportConst.__transformedByRemoveCreateWrappers = true;
|
|
267
|
+
exportDefault.__transformedByRemoveCreateWrappers = true;
|
|
268
|
+
path.replaceWithMultiple([exportConst, exportDefault]);
|
|
269
|
+
}
|
|
270
|
+
// Case 2: export default action; (or sync/onEvent)
|
|
271
|
+
else if (t.isIdentifier(decl)) {
|
|
272
|
+
const binding = path.scope.getBinding(decl.name);
|
|
273
|
+
if (!binding || !binding.path.isVariableDeclarator()) {
|
|
274
|
+
throw new BabelError('nango_invalid_default_export');
|
|
275
|
+
}
|
|
276
|
+
const init = binding.path.node.init;
|
|
277
|
+
if (!t.isCallExpression(init) || !t.isIdentifier(init.callee) || !allowedExports.includes(init.callee.name)) {
|
|
278
|
+
throw new BabelError('nango_invalid_default_export');
|
|
279
|
+
}
|
|
280
|
+
let varName = '';
|
|
281
|
+
calleeName = init.callee.name;
|
|
282
|
+
arg = init.arguments[0];
|
|
283
|
+
if (!t.isObjectExpression(arg)) {
|
|
284
|
+
throw new BabelError('nango_invalid_function_param');
|
|
285
|
+
}
|
|
286
|
+
if (calleeName === 'createAction')
|
|
287
|
+
varName = 'action';
|
|
288
|
+
if (calleeName === 'createSync')
|
|
289
|
+
varName = 'sync';
|
|
290
|
+
if (calleeName === 'createOnEvent')
|
|
291
|
+
varName = 'onEvent';
|
|
292
|
+
// Inject type property (mutate the object literal)
|
|
293
|
+
arg.properties = [t.objectProperty(t.identifier('type'), t.stringLiteral(varName)), ...arg.properties];
|
|
294
|
+
// Replace the variable's initializer with the object literal
|
|
295
|
+
binding.path.get('init').replaceWith(arg);
|
|
296
|
+
return;
|
|
297
|
+
}
|
|
298
|
+
else {
|
|
299
|
+
throw new BabelError('nango_unsupported_export');
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
};
|
|
304
|
+
}
|
|
305
|
+
//# sourceMappingURL=compile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compile.js","sourceRoot":"","sources":["../../lib/zeroYaml/compile.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { exec as execCb } from 'node:child_process';
|
|
2
|
+
import fs from 'node:fs';
|
|
3
|
+
import path from 'node:path';
|
|
4
|
+
import { promisify } from 'node:util';
|
|
5
|
+
import { describe, expect, it } from 'vitest';
|
|
6
|
+
import { bundleFile, compileAll } from './compile.js';
|
|
7
|
+
import { copyDirectoryAndContents, fixturesPath, getTestDirectory } from '../tests/helpers.js';
|
|
8
|
+
const exec = promisify(execCb);
|
|
9
|
+
describe('bundleFile', () => {
|
|
10
|
+
it('should bundle a sync with a constant export', async () => {
|
|
11
|
+
const result = await bundleFile({ entryPoint: path.join(fixturesPath, 'zero/valid/github/syncs/fetchIssues.ts') });
|
|
12
|
+
const value = result.unwrap();
|
|
13
|
+
expect(value).toMatchSnapshot();
|
|
14
|
+
});
|
|
15
|
+
it('should bundle an action with a default export', async () => {
|
|
16
|
+
const result = await bundleFile({ entryPoint: path.join(fixturesPath, 'zero/valid/github/actions/createIssue.ts') });
|
|
17
|
+
const value = result.unwrap();
|
|
18
|
+
expect(value).toMatchSnapshot();
|
|
19
|
+
});
|
|
20
|
+
});
|
|
21
|
+
describe('compileAll', () => {
|
|
22
|
+
it('should compile a minimal integration', async () => {
|
|
23
|
+
const dir = await getTestDirectory('zero_valid');
|
|
24
|
+
console.log('compiling to ', dir);
|
|
25
|
+
await copyDirectoryAndContents(path.join(fixturesPath, 'zero/valid'), dir);
|
|
26
|
+
const pkg = { name: 'test', dependencies: { nango: `file:${path.resolve(path.join(fixturesPath, '..'))}`, zod: '3.24.2' } };
|
|
27
|
+
await fs.promises.writeFile(path.join(dir, 'package.json'), JSON.stringify(pkg, null, 2));
|
|
28
|
+
await exec('npm i', { cwd: dir });
|
|
29
|
+
const result = await compileAll({ fullPath: dir, debug: false });
|
|
30
|
+
result.unwrap();
|
|
31
|
+
expect(result.isOk()).toBe(true);
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
//# sourceMappingURL=compile.unit.cli-test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compile.unit.cli-test.js","sourceRoot":"","sources":["../../lib/zeroYaml/compile.unit.cli-test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,IAAI,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE9C,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAE/F,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;AAE/B,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IACxB,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QACzD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,wCAAwC,CAAC,EAAE,CAAC,CAAC;QACnH,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;QAC9B,MAAM,CAAC,KAAK,CAAC,CAAC,eAAe,EAAE,CAAC;IACpC,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAC3D,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,0CAA0C,CAAC,EAAE,CAAC,CAAC;QACrH,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;QAC9B,MAAM,CAAC,KAAK,CAAC,CAAC,eAAe,EAAE,CAAC;IACpC,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IACxB,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;QAClD,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,YAAY,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;QAClC,MAAM,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC,EAAE,GAAG,CAAC,CAAC;QAE3E,MAAM,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,QAAQ,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC;QAE5H,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC1F,MAAM,IAAI,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;QAClC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QACjE,MAAM,CAAC,MAAM,EAAE,CAAC;QAChB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import ts from 'typescript';
|
|
2
|
+
export declare const npmPackageRegex: RegExp;
|
|
3
|
+
export declare const importRegex: RegExp;
|
|
4
|
+
export declare const tsconfig: ts.CompilerOptions;
|
|
5
|
+
export declare const tsconfigString: Record<string, any>;
|
|
6
|
+
export type BabelErrorType = 'nango_unsupported_export' | 'nango_invalid_function_param' | 'nango_invalid_default_export' | 'nango_invalid_export_constant';
|
|
7
|
+
export declare class BabelError extends Error {
|
|
8
|
+
type: BabelErrorType;
|
|
9
|
+
constructor(type: BabelErrorType);
|
|
10
|
+
}
|
|
11
|
+
export declare const customErrors: Record<BabelErrorType, string>;
|
|
12
|
+
export declare class CompileError extends Error {
|
|
13
|
+
type: BabelErrorType | 'failed_to_build_unknown';
|
|
14
|
+
msg: string;
|
|
15
|
+
filePath?: string;
|
|
16
|
+
constructor(type: BabelErrorType | 'failed_to_build_unknown', msg: string);
|
|
17
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import ts from 'typescript';
|
|
2
|
+
export const npmPackageRegex = /^[^./\s]/;
|
|
3
|
+
export const importRegex = /^import ['"](?<path>\.\/[^'"]+)['"];/gm;
|
|
4
|
+
export const tsconfig = {
|
|
5
|
+
module: ts.ModuleKind.CommonJS,
|
|
6
|
+
target: ts.ScriptTarget.ESNext,
|
|
7
|
+
strict: true,
|
|
8
|
+
esModuleInterop: true,
|
|
9
|
+
skipLibCheck: true,
|
|
10
|
+
forceConsistentCasingInFileNames: true,
|
|
11
|
+
moduleResolution: ts.ModuleResolutionKind.NodeJs,
|
|
12
|
+
allowUnusedLabels: false,
|
|
13
|
+
allowUnreachableCode: false,
|
|
14
|
+
exactOptionalPropertyTypes: true,
|
|
15
|
+
noFallthroughCasesInSwitch: true,
|
|
16
|
+
noImplicitOverride: true,
|
|
17
|
+
noImplicitReturns: true,
|
|
18
|
+
noPropertyAccessFromIndexSignature: true,
|
|
19
|
+
noUncheckedIndexedAccess: true,
|
|
20
|
+
noUnusedLocals: true,
|
|
21
|
+
noUnusedParameters: true,
|
|
22
|
+
declaration: false,
|
|
23
|
+
sourceMap: true,
|
|
24
|
+
composite: false,
|
|
25
|
+
checkJs: false,
|
|
26
|
+
noEmit: true
|
|
27
|
+
};
|
|
28
|
+
export const tsconfigString = {
|
|
29
|
+
...tsconfig,
|
|
30
|
+
module: 'commonjs',
|
|
31
|
+
target: 'esnext',
|
|
32
|
+
importsNotUsedAsValues: 'remove',
|
|
33
|
+
jsx: 'react',
|
|
34
|
+
moduleResolution: 'node16'
|
|
35
|
+
};
|
|
36
|
+
export class BabelError extends Error {
|
|
37
|
+
type;
|
|
38
|
+
constructor(type) {
|
|
39
|
+
super(type);
|
|
40
|
+
this.type = type;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
const defaultMsg = 'Invalid default export: should be createAction(), createSync() or createOnEvent()';
|
|
44
|
+
export const customErrors = {
|
|
45
|
+
nango_unsupported_export: defaultMsg,
|
|
46
|
+
nango_invalid_function_param: 'Invalid function parameter, should be an object',
|
|
47
|
+
nango_invalid_default_export: defaultMsg,
|
|
48
|
+
nango_invalid_export_constant: defaultMsg
|
|
49
|
+
};
|
|
50
|
+
export class CompileError extends Error {
|
|
51
|
+
type;
|
|
52
|
+
msg;
|
|
53
|
+
filePath;
|
|
54
|
+
constructor(type, msg) {
|
|
55
|
+
super(msg);
|
|
56
|
+
this.type = type;
|
|
57
|
+
this.msg = msg;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../lib/zeroYaml/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,MAAM,CAAC,MAAM,eAAe,GAAG,UAAU,CAAC;AAC1C,MAAM,CAAC,MAAM,WAAW,GAAG,wCAAwC,CAAC;AAEpE,MAAM,CAAC,MAAM,QAAQ,GAAuB;IACxC,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ;IAC9B,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM;IAC9B,MAAM,EAAE,IAAI;IACZ,eAAe,EAAE,IAAI;IACrB,YAAY,EAAE,IAAI;IAClB,gCAAgC,EAAE,IAAI;IACtC,gBAAgB,EAAE,EAAE,CAAC,oBAAoB,CAAC,MAAM;IAChD,iBAAiB,EAAE,KAAK;IACxB,oBAAoB,EAAE,KAAK;IAC3B,0BAA0B,EAAE,IAAI;IAChC,0BAA0B,EAAE,IAAI;IAChC,kBAAkB,EAAE,IAAI;IACxB,iBAAiB,EAAE,IAAI;IACvB,kCAAkC,EAAE,IAAI;IACxC,wBAAwB,EAAE,IAAI;IAC9B,cAAc,EAAE,IAAI;IACpB,kBAAkB,EAAE,IAAI;IACxB,WAAW,EAAE,KAAK;IAClB,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,KAAK;IAChB,OAAO,EAAE,KAAK;IACd,MAAM,EAAE,IAAI;CACf,CAAC;AACF,MAAM,CAAC,MAAM,cAAc,GAAwB;IAC/C,GAAG,QAAQ;IACX,MAAM,EAAE,UAAU;IAClB,MAAM,EAAE,QAAQ;IAChB,sBAAsB,EAAE,QAAQ;IAChC,GAAG,EAAE,OAAO;IACZ,gBAAgB,EAAE,QAAQ;CAC7B,CAAC;AAGF,MAAM,OAAO,UAAW,SAAQ,KAAK;IACjC,IAAI,CAAC;IACL,YAAY,IAAoB;QAC5B,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;CACJ;AAED,MAAM,UAAU,GAAG,mFAAmF,CAAC;AACvG,MAAM,CAAC,MAAM,YAAY,GAAmC;IACxD,wBAAwB,EAAE,UAAU;IACpC,4BAA4B,EAAE,iDAAiD;IAC/E,4BAA4B,EAAE,UAAU;IACxC,6BAA6B,EAAE,UAAU;CAC5C,CAAC;AACF,MAAM,OAAO,YAAa,SAAQ,KAAK;IACnC,IAAI,CAA6C;IACjD,GAAG,CAAS;IACZ,QAAQ,CAAU;IAClB,YAAY,IAAgD,EAAE,GAAW;QACrE,KAAK,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACnB,CAAC;CACJ"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { CreateActionResponse, CreateSyncResponse } from '@nangohq/runner-sdk';
|
|
2
|
+
import type { ZodModel } from '@nangohq/runner-sdk/lib/types.js';
|
|
3
|
+
import type { NangoModel, NangoYamlParsed, ParsedNangoAction, ParsedNangoSync, Result } from '@nangohq/types';
|
|
4
|
+
export declare function buildDefinitions({ fullPath, debug }: {
|
|
5
|
+
fullPath: string;
|
|
6
|
+
debug: boolean;
|
|
7
|
+
}): Promise<Result<NangoYamlParsed>>;
|
|
8
|
+
export declare function buildSync({ params, integrationIdClean, basename, basenameClean }: {
|
|
9
|
+
params: CreateSyncResponse<Record<string, ZodModel>, Zod.ZodTypeAny>;
|
|
10
|
+
integrationIdClean: string;
|
|
11
|
+
basename: string;
|
|
12
|
+
basenameClean: string;
|
|
13
|
+
}): {
|
|
14
|
+
sync: ParsedNangoSync;
|
|
15
|
+
models: Map<string, NangoModel>;
|
|
16
|
+
};
|
|
17
|
+
export declare function buildAction({ params, integrationIdClean, basename, basenameClean }: {
|
|
18
|
+
params: CreateActionResponse<Zod.ZodTypeAny, Zod.ZodTypeAny, Zod.ZodTypeAny>;
|
|
19
|
+
integrationIdClean: string;
|
|
20
|
+
basename: string;
|
|
21
|
+
basenameClean: string;
|
|
22
|
+
}): {
|
|
23
|
+
action: ParsedNangoAction;
|
|
24
|
+
models: Map<string, NangoModel>;
|
|
25
|
+
};
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import path from 'node:path';
|
|
2
|
+
import { zodToNangoModelField } from './zodToNango.js';
|
|
3
|
+
import { Err, Ok } from '../utils/result.js';
|
|
4
|
+
import { printDebug } from '../utils.js';
|
|
5
|
+
import { getEntryPoints, readIndexContent, tsToJsPath } from './compile.js';
|
|
6
|
+
const allowed = ['action', 'sync', 'onEvent'];
|
|
7
|
+
export async function buildDefinitions({ fullPath, debug }) {
|
|
8
|
+
const parsed = { yamlVersion: 'v2', integrations: [], models: new Map() };
|
|
9
|
+
printDebug('Rebuilding parsed from js files', debug);
|
|
10
|
+
const indexRes = await readIndexContent(fullPath);
|
|
11
|
+
if (indexRes.isErr()) {
|
|
12
|
+
return Err(indexRes.error);
|
|
13
|
+
}
|
|
14
|
+
const matched = getEntryPoints(indexRes.value);
|
|
15
|
+
let num = 0;
|
|
16
|
+
for (const filePath of matched) {
|
|
17
|
+
num += 1;
|
|
18
|
+
const modulePath = path.join(fullPath, 'build', tsToJsPath(filePath));
|
|
19
|
+
const moduleContent = await import(modulePath);
|
|
20
|
+
if (!moduleContent.default || !moduleContent.default.default) {
|
|
21
|
+
return Err(new Error(`Script should have a default export ${modulePath}`));
|
|
22
|
+
}
|
|
23
|
+
if (!moduleContent.default.default.type || !allowed.includes(moduleContent.default.default.type)) {
|
|
24
|
+
return Err(new Error(`Script should be declared using utility function (createSync, createAction, createOnEvent) ${modulePath}`));
|
|
25
|
+
}
|
|
26
|
+
printDebug(`Parsing ${filePath}`, debug);
|
|
27
|
+
const script = moduleContent.default.default;
|
|
28
|
+
const basename = path.basename(filePath, '.js');
|
|
29
|
+
const basenameClean = basename.replaceAll(/[^a-zA-Z0-9]/g, '');
|
|
30
|
+
const split = filePath.split('/');
|
|
31
|
+
const integrationId = split[split.length - 3];
|
|
32
|
+
const integrationIdClean = integrationId.replaceAll(/[^a-zA-Z0-9]/g, '_');
|
|
33
|
+
let integration = parsed.integrations.find((v) => v.providerConfigKey === integrationId);
|
|
34
|
+
if (!integration) {
|
|
35
|
+
integration = {
|
|
36
|
+
providerConfigKey: integrationId,
|
|
37
|
+
actions: [],
|
|
38
|
+
syncs: [],
|
|
39
|
+
onEventScripts: { 'post-connection-creation': [], 'pre-connection-deletion': [] }
|
|
40
|
+
};
|
|
41
|
+
parsed.integrations.push(integration);
|
|
42
|
+
}
|
|
43
|
+
switch (script.type) {
|
|
44
|
+
case 'sync': {
|
|
45
|
+
const def = buildSync({ params: script, integrationIdClean, basename, basenameClean });
|
|
46
|
+
integration.syncs.push(def.sync);
|
|
47
|
+
def.models.forEach((v, k) => {
|
|
48
|
+
parsed.models.set(k, v);
|
|
49
|
+
});
|
|
50
|
+
break;
|
|
51
|
+
}
|
|
52
|
+
case 'action': {
|
|
53
|
+
const def = buildAction({ params: script, integrationIdClean, basename, basenameClean });
|
|
54
|
+
integration.actions.push(def.action);
|
|
55
|
+
def.models.forEach((v, k) => {
|
|
56
|
+
parsed.models.set(k, v);
|
|
57
|
+
});
|
|
58
|
+
break;
|
|
59
|
+
}
|
|
60
|
+
case 'onEvent': {
|
|
61
|
+
if (script.event === 'post-connection-creation') {
|
|
62
|
+
integration.onEventScripts['post-connection-creation'].push(basename);
|
|
63
|
+
}
|
|
64
|
+
else if (script.event === 'pre-connection-deletion') {
|
|
65
|
+
integration.onEventScripts['pre-connection-deletion'].push(basename);
|
|
66
|
+
}
|
|
67
|
+
break;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
if (num === 0) {
|
|
72
|
+
return Err(new Error('No export in index.ts'));
|
|
73
|
+
}
|
|
74
|
+
printDebug('Correctly parsed', debug);
|
|
75
|
+
return Ok(parsed);
|
|
76
|
+
}
|
|
77
|
+
export function buildSync({ params, integrationIdClean, basename, basenameClean }) {
|
|
78
|
+
const models = new Map();
|
|
79
|
+
const usedModels = new Set(Object.keys(params.models));
|
|
80
|
+
const metadata = params.metadata ? zodToNangoModelField(`SyncMetadata_${integrationIdClean}_${basenameClean}`, params.metadata) : null;
|
|
81
|
+
if (metadata) {
|
|
82
|
+
usedModels.add(metadata.name);
|
|
83
|
+
if (!Array.isArray(metadata.value)) {
|
|
84
|
+
models.set(metadata.name, { name: metadata.name, fields: [{ ...metadata, name: 'metadata' }], isAnon: true });
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
models.set(metadata.name, { name: metadata.name, fields: metadata.value });
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
const sync = {
|
|
91
|
+
type: 'sync',
|
|
92
|
+
description: params.description,
|
|
93
|
+
auto_start: params.autoStart === true,
|
|
94
|
+
endpoints: params.endpoints,
|
|
95
|
+
input: metadata?.name || null,
|
|
96
|
+
name: basename,
|
|
97
|
+
output: Object.entries(params.models).map(([name, model]) => {
|
|
98
|
+
const to = zodToNangoModelField(name, model);
|
|
99
|
+
models.set(name, { name, fields: to['value'] });
|
|
100
|
+
usedModels.add(name);
|
|
101
|
+
return name;
|
|
102
|
+
}),
|
|
103
|
+
runs: params.frequency,
|
|
104
|
+
scopes: params.scopes || [],
|
|
105
|
+
sync_type: params.syncType,
|
|
106
|
+
track_deletes: params.trackDeletes === true,
|
|
107
|
+
usedModels: Array.from(usedModels.values()),
|
|
108
|
+
version: params.version || '0.0.1',
|
|
109
|
+
webhookSubscriptions: params.webhookSubscriptions || []
|
|
110
|
+
};
|
|
111
|
+
return { sync, models };
|
|
112
|
+
}
|
|
113
|
+
export function buildAction({ params, integrationIdClean, basename, basenameClean }) {
|
|
114
|
+
const models = new Map();
|
|
115
|
+
const input = zodToNangoModelField(`ActionInput_${integrationIdClean}_${basenameClean}`, params.input);
|
|
116
|
+
if (!Array.isArray(input.value)) {
|
|
117
|
+
models.set(input.name, { name: input.name, fields: [{ ...input, name: 'input' }], isAnon: true });
|
|
118
|
+
}
|
|
119
|
+
else {
|
|
120
|
+
models.set(input.name, { name: input.name, fields: input.value });
|
|
121
|
+
}
|
|
122
|
+
const output = zodToNangoModelField(`ActionOutput_${integrationIdClean}_${basenameClean}`, params.output);
|
|
123
|
+
if (!Array.isArray(output.value)) {
|
|
124
|
+
models.set(output.name, { name: output.name, fields: [{ ...output, name: 'output' }], isAnon: true });
|
|
125
|
+
}
|
|
126
|
+
else {
|
|
127
|
+
models.set(output.name, { name: output.name, fields: output.value });
|
|
128
|
+
}
|
|
129
|
+
const action = {
|
|
130
|
+
type: 'action',
|
|
131
|
+
description: params.description,
|
|
132
|
+
endpoint: params.endpoint,
|
|
133
|
+
input: input.name,
|
|
134
|
+
name: basename,
|
|
135
|
+
output: [output.name],
|
|
136
|
+
scopes: params.scopes || [],
|
|
137
|
+
usedModels: [input.name, output.name],
|
|
138
|
+
version: params.version || '0.0.1'
|
|
139
|
+
};
|
|
140
|
+
return { action, models };
|
|
141
|
+
}
|
|
142
|
+
//# sourceMappingURL=definitions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../lib/zeroYaml/definitions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|