nango 0.40.1 → 0.40.2

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 (51) hide show
  1. package/dist/cli.d.ts +3 -3
  2. package/dist/cli.js +49 -93
  3. package/dist/cli.js.map +1 -1
  4. package/dist/constants.d.ts +0 -1
  5. package/dist/constants.js +0 -1
  6. package/dist/constants.js.map +1 -1
  7. package/dist/index.js +15 -10
  8. package/dist/index.js.map +1 -1
  9. package/dist/services/compile.service.d.ts +5 -6
  10. package/dist/services/compile.service.js +40 -51
  11. package/dist/services/compile.service.js.map +1 -1
  12. package/dist/services/compile.service.unit.test.js +3 -3
  13. package/dist/services/compile.service.unit.test.js.map +1 -1
  14. package/dist/services/config.service.d.ts +16 -7
  15. package/dist/services/config.service.js +84 -54
  16. package/dist/services/config.service.js.map +1 -1
  17. package/dist/services/config.service.unit.test.d.ts +1 -0
  18. package/dist/services/config.service.unit.test.js +147 -0
  19. package/dist/services/config.service.unit.test.js.map +1 -0
  20. package/dist/services/deploy.service.d.ts +3 -3
  21. package/dist/services/deploy.service.js +76 -66
  22. package/dist/services/deploy.service.js.map +1 -1
  23. package/dist/services/dryrun.service.js +10 -10
  24. package/dist/services/dryrun.service.js.map +1 -1
  25. package/dist/services/migration.service.js +23 -26
  26. package/dist/services/migration.service.js.map +1 -1
  27. package/dist/services/model.service.d.ts +38 -11
  28. package/dist/services/model.service.js +129 -174
  29. package/dist/services/model.service.js.map +1 -1
  30. package/dist/services/model.service.unit.test.d.ts +1 -0
  31. package/dist/services/model.service.unit.test.js +138 -0
  32. package/dist/services/model.service.unit.test.js.map +1 -0
  33. package/dist/services/parser.service.d.ts +1 -2
  34. package/dist/services/parser.service.js +3 -4
  35. package/dist/services/parser.service.js.map +1 -1
  36. package/dist/services/verification.service.d.ts +1 -1
  37. package/dist/services/verification.service.js +11 -11
  38. package/dist/services/verification.service.js.map +1 -1
  39. package/dist/sync.unit.cli-test.js +65 -143
  40. package/dist/sync.unit.cli-test.js.map +1 -1
  41. package/dist/templates/action.ejs +2 -47
  42. package/dist/templates/sync.ejs +1 -4
  43. package/dist/utils/layoutMode.d.ts +7 -0
  44. package/dist/utils/layoutMode.js +41 -0
  45. package/dist/utils/layoutMode.js.map +1 -0
  46. package/dist/utils.d.ts +0 -3
  47. package/dist/utils.js +4 -127
  48. package/dist/utils.js.map +1 -1
  49. package/lib/nango.yaml.schema.v2.json +183 -178
  50. package/package.json +7 -6
  51. package/dist/nango-sync.d.ts +0 -299
@@ -2,8 +2,8 @@ import fs from 'fs';
2
2
  import chalk from 'chalk';
3
3
  import promptly from 'promptly';
4
4
  import path from 'path';
5
- import { nangoConfigFile } from '@nangohq/shared';
6
- import configService from './config.service.js';
5
+ import { nangoConfigFile } from '@nangohq/nango-yaml';
6
+ import { load } from './config.service.js';
7
7
  import { compileAllFiles, listFilesToCompile } from './compile.service.js';
8
8
  import { printDebug } from '../utils.js';
9
9
  import { NANGO_INTEGRATIONS_NAME } from '../constants.js';
@@ -30,7 +30,7 @@ class VerificationService {
30
30
  printDebug(`Running init, generate, and tsc to create ${nangoConfigFile} file, generate the integration files and then compile them.`);
31
31
  }
32
32
  init({ absolutePath: fullPath, debug });
33
- await generate({ fullPath, debug });
33
+ generate({ fullPath, debug });
34
34
  await compileAllFiles({ fullPath, debug });
35
35
  }
36
36
  else {
@@ -59,7 +59,7 @@ class VerificationService {
59
59
  printDebug(`Creating the dist directory and generating the default integration files.`);
60
60
  }
61
61
  fs.mkdirSync(distDir);
62
- await generate({ fullPath, debug });
62
+ generate({ fullPath, debug });
63
63
  await compileAllFiles({ fullPath, debug });
64
64
  }
65
65
  }
@@ -81,16 +81,16 @@ class VerificationService {
81
81
  }
82
82
  }
83
83
  }
84
- async filesMatchConfig({ fullPath }) {
85
- const { success, error, response: config } = await configService.load(fullPath);
86
- if (!success || !config) {
84
+ filesMatchConfig({ fullPath }) {
85
+ const { success, error, response: parsed } = load(fullPath);
86
+ if (!success || !parsed) {
87
87
  console.log(chalk.red(error?.message));
88
- throw new Error('Failed to load config');
88
+ return false;
89
89
  }
90
- const syncNames = config.map((provider) => provider.syncs.map((sync) => sync.name)).flat();
91
- const actionNames = config.map((provider) => provider.actions.map((action) => action.name)).flat();
90
+ const syncNames = parsed.integrations.map((provider) => provider.syncs.map((sync) => sync.name)).flat();
91
+ const actionNames = parsed.integrations.map((provider) => provider.actions.map((action) => action.name)).flat();
92
92
  const flows = [...syncNames, ...actionNames].filter((name) => name);
93
- const tsFiles = listFilesToCompile({ fullPath, config });
93
+ const tsFiles = listFilesToCompile({ fullPath, parsed });
94
94
  const tsFileNames = tsFiles.filter((file) => !file.inputPath.includes('models.ts')).map((file) => file.baseName);
95
95
  const missingSyncsAndActions = flows.filter((syncOrActionName) => !tsFileNames.includes(syncOrActionName));
96
96
  if (missingSyncsAndActions.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"verification.service.js","sourceRoot":"","sources":["../../lib/services/verification.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verification.service.js","sourceRoot":"","sources":["../../lib/services/verification.service.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,15 @@
1
- import { expect, describe, it, beforeAll } from 'vitest';
2
- import path from 'path';
1
+ import { expect, describe, it, afterEach, vi } from 'vitest';
2
+ import path from 'node:path';
3
3
  import fs from 'fs';
4
4
  import yaml from 'js-yaml';
5
- import { SyncConfigType } from '@nangohq/shared';
5
+ import stripAnsi from 'strip-ansi';
6
6
  import { init, generate } from './cli.js';
7
7
  import { exampleSyncName } from './constants.js';
8
- import configService from './services/config.service.js';
9
8
  import { compileAllFiles, compileSingleFile, getFileToCompile } from './services/compile.service.js';
10
9
  import { getNangoRootPath } from './utils.js';
11
10
  import parserService from './services/parser.service.js';
12
11
  import { copyDirectoryAndContents } from './tests/helpers.js';
12
+ import { load } from './services/config.service.js';
13
13
  function getTestDirectory(name) {
14
14
  const dir = `/tmp/${name}/nango-integrations/`;
15
15
  fs.mkdirSync(dir, { recursive: true });
@@ -18,33 +18,33 @@ function getTestDirectory(name) {
18
18
  }
19
19
  describe('generate function tests', () => {
20
20
  const fixturesPath = './packages/cli/fixtures';
21
- beforeAll(async () => {
22
- if (!fs.existsSync('./packages/cli/dist/nango-sync.d.ts')) {
23
- await fs.promises.writeFile('./packages/cli/dist/nango-sync.d.ts', '', 'utf8');
24
- }
21
+ // Not the best but until we have a logger it will work
22
+ const consoleMock = vi.spyOn(console, 'log').mockImplementation(() => undefined);
23
+ afterEach(() => {
24
+ consoleMock.mockReset();
25
25
  });
26
26
  it('should init the expected files in the nango-integrations directory', async () => {
27
27
  const dir = getTestDirectory('init');
28
- await init({ absolutePath: path.resolve(dir, '..'), debug: false });
28
+ init({ absolutePath: path.resolve(dir, '..'), debug: false });
29
29
  expect(fs.existsSync(`${dir}/demo-github-integration/syncs/${exampleSyncName}.ts`)).toBe(true);
30
30
  expect(fs.existsSync(`${dir}/.env`)).toBe(true);
31
31
  expect(fs.existsSync(`${dir}/nango.yaml`)).toBe(true);
32
32
  });
33
33
  it('should not overwrite existing integration files', async () => {
34
34
  const dir = getTestDirectory('overwrite');
35
- await init({ absolutePath: dir, debug: false });
35
+ init({ absolutePath: dir, debug: false });
36
36
  await fs.promises.writeFile(`${dir}/${exampleSyncName}.ts`, 'dummy fake content', 'utf8');
37
37
  const dummyContent = 'This is dummy content. Do not overwrite!';
38
38
  const exampleFilePath = path.join(dir, `${exampleSyncName}.ts`);
39
39
  await fs.promises.writeFile(exampleFilePath, dummyContent, 'utf8');
40
- await init({ absolutePath: dir });
40
+ init({ absolutePath: dir });
41
41
  expect(fs.existsSync(exampleFilePath)).toBe(true);
42
42
  const fileContentAfterInit = await fs.promises.readFile(exampleFilePath, 'utf8');
43
43
  expect(fileContentAfterInit).toBe(dummyContent);
44
44
  });
45
45
  it('should generate a different sync correctly', async () => {
46
46
  const dir = getTestDirectory('generate');
47
- await init({ absolutePath: dir });
47
+ init({ absolutePath: dir });
48
48
  const data = {
49
49
  integrations: {
50
50
  'demo-github-integration': {
@@ -73,12 +73,12 @@ describe('generate function tests', () => {
73
73
  };
74
74
  const yamlData = yaml.dump(data);
75
75
  await fs.promises.writeFile(`${dir}/nango.yaml`, yamlData, 'utf8');
76
- await generate({ debug: false, fullPath: dir });
77
- expect(fs.existsSync(`${dir}/some-other-sync.ts`)).toBe(true);
76
+ generate({ debug: true, fullPath: dir });
77
+ expect(fs.existsSync(`${dir}/demo-github-integration/syncs/some-other-sync.ts`)).toBe(true);
78
78
  });
79
79
  it('should support a single model return in v1 format', async () => {
80
80
  const dir = getTestDirectory('single-model-v1');
81
- await init({ absolutePath: dir });
81
+ init({ absolutePath: dir });
82
82
  const data = {
83
83
  integrations: {
84
84
  'demo-github-integration': {
@@ -107,12 +107,12 @@ describe('generate function tests', () => {
107
107
  };
108
108
  const yamlData = yaml.dump(data);
109
109
  await fs.promises.writeFile(`${dir}/nango.yaml`, yamlData, 'utf8');
110
- await generate({ debug: false, fullPath: dir });
111
- expect(fs.existsSync(`${dir}/single-model-return.ts`)).toBe(true);
110
+ generate({ debug: false, fullPath: dir });
111
+ expect(fs.existsSync(`${dir}/demo-github-integration/syncs/single-model-return.ts`)).toBe(true);
112
112
  });
113
113
  it('should support a single model return in v2 format', async () => {
114
114
  const dir = getTestDirectory('single-model-v2');
115
- await init({ absolutePath: dir });
115
+ init({ absolutePath: dir });
116
116
  const data = {
117
117
  integrations: {
118
118
  'demo-github-integration': {
@@ -143,12 +143,12 @@ describe('generate function tests', () => {
143
143
  };
144
144
  const yamlData = yaml.dump(data);
145
145
  await fs.promises.writeFile(`${dir}/nango.yaml`, yamlData, 'utf8');
146
- await generate({ debug: false, fullPath: dir });
146
+ generate({ debug: false, fullPath: dir });
147
147
  expect(fs.existsSync(`${dir}/demo-github-integration/syncs/single-model-return.ts`)).toBe(true);
148
148
  });
149
149
  it('should not create a file if endpoint is missing from a v2 config', async () => {
150
150
  const dir = getTestDirectory('endpoint-missing-v2');
151
- await init({ absolutePath: dir });
151
+ init({ absolutePath: dir });
152
152
  const data = {
153
153
  integrations: {
154
154
  'demo-github-integration': {
@@ -183,7 +183,7 @@ describe('generate function tests', () => {
183
183
  });
184
184
  it('should generate missing from a v2 config', async () => {
185
185
  const dir = getTestDirectory('v2-incremental-compile');
186
- await init({ absolutePath: dir });
186
+ init({ absolutePath: dir });
187
187
  const data = {
188
188
  integrations: {
189
189
  'demo-github-integration': {
@@ -214,12 +214,12 @@ describe('generate function tests', () => {
214
214
  };
215
215
  const yamlData = yaml.dump(data);
216
216
  await fs.promises.writeFile(`${dir}/nango.yaml`, yamlData, 'utf8');
217
- await generate({ debug: false, fullPath: dir });
217
+ generate({ debug: false, fullPath: dir });
218
218
  expect(fs.existsSync(`${dir}/demo-github-integration/syncs/single-model-issue-output.ts`)).toBe(true);
219
219
  });
220
220
  it('should throw an error if a model is missing an id that is actively used', async () => {
221
221
  const dir = getTestDirectory('missing-id');
222
- await init({ absolutePath: dir });
222
+ init({ absolutePath: dir });
223
223
  const data = {
224
224
  integrations: {
225
225
  'demo-github-integration': {
@@ -247,11 +247,19 @@ describe('generate function tests', () => {
247
247
  };
248
248
  const yamlData = yaml.dump(data);
249
249
  await fs.promises.writeFile(`${dir}/nango.yaml`, yamlData, 'utf8');
250
- await expect(generate({ debug: false, fullPath: dir })).rejects.toThrow(`Model "GithubIssue" doesn't have an id field. This is required to be able to uniquely identify the data record.`);
250
+ const acc = [];
251
+ consoleMock.mockImplementation((m) => acc.push(stripAnsi(m)));
252
+ generate({ debug: false, fullPath: dir });
253
+ expect(acc).toStrictEqual([
254
+ 'demo-github-integration > syncs > single-model-return > [output]',
255
+ ' error Model "GithubIssue" doesn\'t have an id field. This is required to be able to uniquely identify the data record [model_missing_id]',
256
+ '',
257
+ 'Your nango.yaml contains some errors'
258
+ ]);
251
259
  });
252
260
  it('should allow models to end with an "s"', async () => {
253
261
  const dir = getTestDirectory('model-with-an-s');
254
- await init({ absolutePath: dir });
262
+ init({ absolutePath: dir });
255
263
  const data = {
256
264
  integrations: {
257
265
  'demo-github-integration': {
@@ -280,13 +288,13 @@ describe('generate function tests', () => {
280
288
  };
281
289
  const yamlData = yaml.dump(data);
282
290
  await fs.promises.writeFile(`${dir}/nango.yaml`, yamlData, 'utf8');
283
- await generate({ debug: false, fullPath: dir });
291
+ generate({ debug: false, fullPath: dir });
284
292
  const modelsFile = await fs.promises.readFile(`${dir}/models.ts`, 'utf8');
285
293
  expect(modelsFile).toContain('export interface GithubIssues');
286
294
  });
287
295
  it('should not throw an error if a model is missing an id for an action', async () => {
288
296
  const dir = getTestDirectory('missing-id-action');
289
- await init({ absolutePath: dir });
297
+ init({ absolutePath: dir });
290
298
  const data = {
291
299
  integrations: {
292
300
  'demo-github-integration': {
@@ -313,11 +321,11 @@ describe('generate function tests', () => {
313
321
  };
314
322
  const yamlData = yaml.dump(data);
315
323
  await fs.promises.writeFile(`${dir}/nango.yaml`, yamlData, 'utf8');
316
- await generate({ debug: false, fullPath: dir });
324
+ generate({ debug: false, fullPath: dir });
317
325
  });
318
326
  it('should allow javascript primitives as a return type with no model', async () => {
319
327
  const dir = getTestDirectory('model-returns-primitives');
320
- await init({ absolutePath: dir });
328
+ init({ absolutePath: dir });
321
329
  const data = {
322
330
  integrations: {
323
331
  'demo-github-integration': {
@@ -334,11 +342,11 @@ describe('generate function tests', () => {
334
342
  };
335
343
  const yamlData = yaml.dump(data);
336
344
  await fs.promises.writeFile(`${dir}/nango.yaml`, yamlData, 'utf8');
337
- await generate({ debug: false, fullPath: dir });
345
+ generate({ debug: false, fullPath: dir });
338
346
  });
339
347
  it('should catch non javascript primitives in the config', async () => {
340
348
  const dir = getTestDirectory('model-returns-invalid-primitives');
341
- await init({ absolutePath: dir });
349
+ init({ absolutePath: dir });
342
350
  const data = {
343
351
  integrations: {
344
352
  'demo-github-integration': {
@@ -355,131 +363,51 @@ describe('generate function tests', () => {
355
363
  };
356
364
  const yamlData = yaml.dump(data);
357
365
  await fs.promises.writeFile(`${dir}/nango.yaml`, yamlData, 'utf8');
358
- expect(await generate({ debug: false, fullPath: dir })).toBeUndefined();
366
+ expect(generate({ debug: false, fullPath: dir })).toBeUndefined();
359
367
  });
360
368
  it('should not complain of try catch not being awaited', () => {
361
- const awaiting = parserService.callsAreUsedCorrectly(`${fixturesPath}/sync.ts`, SyncConfigType.SYNC, ['GithubIssue']);
369
+ const awaiting = parserService.callsAreUsedCorrectly(`${fixturesPath}/sync.ts`, 'sync', ['GithubIssue']);
362
370
  expect(awaiting).toBe(true);
363
371
  });
364
372
  it('should complain when a return statement is used', () => {
365
- const noReturnUsed = parserService.callsAreUsedCorrectly(`${fixturesPath}/return-sync.ts`, SyncConfigType.SYNC, ['GithubIssue']);
373
+ const noReturnUsed = parserService.callsAreUsedCorrectly(`${fixturesPath}/return-sync.ts`, 'sync', ['GithubIssue']);
366
374
  expect(noReturnUsed).toBe(false);
367
375
  });
368
376
  it('should not complain when a return statement is used but does not return anything', () => {
369
- const noReturnUsed = parserService.callsAreUsedCorrectly(`${fixturesPath}/void-return-sync.ts`, SyncConfigType.SYNC, ['GithubIssue']);
377
+ const noReturnUsed = parserService.callsAreUsedCorrectly(`${fixturesPath}/void-return-sync.ts`, 'sync', ['GithubIssue']);
370
378
  expect(noReturnUsed).toBe(true);
371
379
  });
372
380
  it('should not complain when a return statement is used in a nested function', () => {
373
- const noReturnUsed = parserService.callsAreUsedCorrectly(`${fixturesPath}/nested-return-sync.ts`, SyncConfigType.SYNC, ['GreenhouseEeoc']);
381
+ const noReturnUsed = parserService.callsAreUsedCorrectly(`${fixturesPath}/nested-return-sync.ts`, 'sync', ['GreenhouseEeoc']);
374
382
  expect(noReturnUsed).toBe(true);
375
383
  });
376
384
  it('should complain of a non try catch not being awaited', () => {
377
- const awaiting = parserService.callsAreUsedCorrectly(`${fixturesPath}/failing-sync.ts`, SyncConfigType.SYNC, ['GithubIssue']);
385
+ const awaiting = parserService.callsAreUsedCorrectly(`${fixturesPath}/failing-sync.ts`, 'sync', ['GithubIssue']);
378
386
  expect(awaiting).toBe(false);
379
387
  });
380
388
  it('should not complain about a correct model', () => {
381
- const usedCorrectly = parserService.callsAreUsedCorrectly(`${fixturesPath}/bad-model.ts`, SyncConfigType.SYNC, ['SomeBadModel']);
389
+ const usedCorrectly = parserService.callsAreUsedCorrectly(`${fixturesPath}/bad-model.ts`, 'sync', ['SomeBadModel']);
382
390
  expect(usedCorrectly).toBe(true);
383
391
  });
384
392
  it('should not complain about awaiting when it is returned for an action', () => {
385
- const awaiting = parserService.callsAreUsedCorrectly(`${fixturesPath}/no-async-return.ts`, SyncConfigType.ACTION, ['SomeModel']);
393
+ const awaiting = parserService.callsAreUsedCorrectly(`${fixturesPath}/no-async-return.ts`, 'action', ['SomeModel']);
386
394
  expect(awaiting).toBe(true);
387
395
  });
388
396
  it('should complain about an incorrect model', () => {
389
- const awaiting = parserService.callsAreUsedCorrectly(`${fixturesPath}/bad-model.ts`, SyncConfigType.SYNC, ['GithubIssue']);
397
+ const awaiting = parserService.callsAreUsedCorrectly(`${fixturesPath}/bad-model.ts`, 'sync', ['GithubIssue']);
390
398
  expect(awaiting).toBe(false);
391
399
  });
392
400
  it('should complain if retryOn is used without retries', () => {
393
- const usedCorrectly = parserService.callsAreUsedCorrectly(`${fixturesPath}/retry-on-bad.ts`, SyncConfigType.SYNC, ['GithubIssue']);
401
+ const usedCorrectly = parserService.callsAreUsedCorrectly(`${fixturesPath}/retry-on-bad.ts`, 'sync', ['GithubIssue']);
394
402
  expect(usedCorrectly).toBe(false);
395
403
  });
396
404
  it('should not complain if retryOn is used with retries', () => {
397
- const usedCorrectly = parserService.callsAreUsedCorrectly(`${fixturesPath}/retry-on-good.ts`, SyncConfigType.SYNC, ['GithubIssue']);
405
+ const usedCorrectly = parserService.callsAreUsedCorrectly(`${fixturesPath}/retry-on-good.ts`, 'sync', ['GithubIssue']);
398
406
  expect(usedCorrectly).toBe(false);
399
407
  });
400
- it('should parse a nango.yaml file that is version 1 as expected', async () => {
401
- const { response: config } = await configService.load(path.resolve(__dirname, `../fixtures/nango-yaml/v1/valid`));
402
- expect(config).toBeDefined();
403
- expect(config).toMatchSnapshot();
404
- });
405
- it('v1 - should complain about commas at the end of declared types', async () => {
406
- const dir = getTestDirectory('v1-no-commas');
407
- await init({ absolutePath: dir });
408
- await fs.promises.copyFile(`${fixturesPath}/nango-yaml/v1/no-commas/nango.yaml`, `${dir}/nango.yaml`);
409
- await expect(generate({ debug: false, fullPath: dir })).rejects.toThrow(`Field "integer," in the model GithubIssue ends with a comma or semicolon which is not allowed.`);
410
- });
411
- it('v1 - should complain about semi colons at the end of declared types', async () => {
412
- const dir = getTestDirectory('v1-no-semi-colons');
413
- await init({ absolutePath: dir });
414
- await fs.promises.copyFile(`${fixturesPath}/nango-yaml/v1/no-semi-colons/nango.yaml`, `${dir}/nango.yaml`);
415
- await expect(generate({ debug: false, fullPath: dir })).rejects.toThrow(`Field "integer;" in the model GithubIssue ends with a comma or semicolon which is not allowed.`);
416
- });
417
- it('should parse a nango.yaml file that is version 2 as expected', async () => {
418
- const { response: config } = await configService.load(path.resolve(__dirname, `../fixtures/nango-yaml/v2/valid`));
419
- expect(config).toBeDefined();
420
- expect(config).toMatchSnapshot();
421
- });
422
- it('should throw a validation error on a nango.yaml file that is not formatted correctly -- missing endpoint', async () => {
423
- const { response: config, error } = await configService.load(path.resolve(__dirname, `../fixtures/nango-yaml/v2/invalid.1`));
424
- expect(config).toBeNull();
425
- expect(error).toBeDefined();
426
- expect(error?.message).toMatchSnapshot();
427
- });
428
- it('should throw a validation error on a nango.yaml file that is not formatted correctly -- webhook subscriptions are not allowed in an action', async () => {
429
- const { response: config, error } = await configService.load(path.resolve(__dirname, `../fixtures/nango-yaml/v2/invalid.2`));
430
- expect(config).toBeNull();
431
- expect(error).toBeDefined();
432
- expect(error?.message).toEqual('Problem validating the nango.yaml file.');
433
- });
434
- it('should correctly interpret a string union literal type', async () => {
435
- const dir = getTestDirectory('validation-string-union');
436
- await init({ absolutePath: dir });
437
- await fs.promises.copyFile(`${fixturesPath}/nango-yaml/v2/string-literal/nango.yaml`, `${dir}/nango.yaml`);
438
- await expect(generate({ debug: false, fullPath: dir })).resolves.toBeUndefined();
439
- const modelsFile = await fs.promises.readFile(`${dir}/models.ts`, 'utf8');
440
- expect(modelsFile).toContain(`gender: 'male' | 'female';`);
441
- });
442
- it('should correctly interpret a union literal type with a string and a primitive', async () => {
443
- const dir = getTestDirectory('validation-string-primitve');
444
- await init({ absolutePath: dir });
445
- await fs.promises.copyFile(`${fixturesPath}/nango-yaml/v2/mixed-literal/nango.yaml`, `${dir}/nango.yaml`);
446
- await expect(generate({ debug: false, fullPath: dir })).resolves.toBeUndefined();
447
- const modelsFile = await fs.promises.readFile(`${dir}/models.ts`, 'utf8');
448
- expect(modelsFile).toContain(`gender: 'male' | null;`);
449
- });
450
- it('should correctly interpret a union literal type with a string and a model', async () => {
451
- const dir = getTestDirectory('validation-string-model');
452
- await init({ absolutePath: dir });
453
- await fs.promises.copyFile(`${fixturesPath}/nango-yaml/v2/mixed-literal-model/nango.yaml`, `${dir}/nango.yaml`);
454
- await expect(generate({ debug: false, fullPath: dir })).resolves.toBeUndefined();
455
- const modelsFile = await fs.promises.readFile(`${dir}/models.ts`, 'utf8');
456
- expect(modelsFile).toContain(`gender: 'male' | Other`);
457
- expect(modelsFile).toContain(`user: User | Account`);
458
- });
459
- it('should correctly interpret a union types, array types, and record types', async () => {
460
- const dir = getTestDirectory('validation-array-records');
461
- await init({ absolutePath: dir });
462
- await fs.promises.copyFile(`${fixturesPath}/nango-yaml/v2/mixed-types/nango.yaml`, `${dir}/nango.yaml`);
463
- await expect(generate({ debug: false, fullPath: dir })).resolves.toBeUndefined();
464
- const modelsFile = await fs.promises.readFile(`${dir}/models.ts`, 'utf8');
465
- expect(modelsFile).toContain(`record: Record<string, string>;`);
466
- expect(modelsFile).toContain(`und: string | null | undefined;`);
467
- expect(modelsFile).toContain(`def: 'male' | string | null | undefined;`);
468
- expect(modelsFile).toContain(`reference: Other[];`);
469
- expect(modelsFile).toContain(`nullableDate: Date | null;`);
470
- });
471
- it('should correctly interpret a union type with an array model', async () => {
472
- const dir = getTestDirectory('validation-array-model');
473
- await init({ absolutePath: dir });
474
- await fs.promises.copyFile(`${fixturesPath}/nango-yaml/v2/model-array-types/nango.yaml`, `${dir}/nango.yaml`);
475
- await expect(generate({ debug: false, fullPath: dir })).resolves.toBeUndefined();
476
- const modelsFile = await fs.promises.readFile(`${dir}/models.ts`, 'utf8');
477
- expect(modelsFile).not.toContain(`'Other[]' | null | undefined;`);
478
- expect(modelsFile).toContain(`Other[] | null | undefined;`);
479
- });
480
408
  it('should be able to compile files in nested directories', async () => {
481
409
  const dir = getTestDirectory('nested');
482
- await init({ absolutePath: dir });
410
+ init({ absolutePath: dir });
483
411
  await copyDirectoryAndContents(`${fixturesPath}/nango-yaml/v2/nested-integrations/hubspot`, `${dir}/hubspot`);
484
412
  await copyDirectoryAndContents(`${fixturesPath}/nango-yaml/v2/nested-integrations/github`, `${dir}/github`);
485
413
  await fs.promises.copyFile(`${fixturesPath}/nango-yaml/v2/nested-integrations/nango.yaml`, `${dir}/nango.yaml`);
@@ -492,7 +420,7 @@ describe('generate function tests', () => {
492
420
  });
493
421
  it('should be backwards compatible with the single directory for integration files', async () => {
494
422
  const dir = getTestDirectory('old-directory');
495
- await init({ absolutePath: dir });
423
+ init({ absolutePath: dir });
496
424
  await copyDirectoryAndContents(`${fixturesPath}/nango-yaml/v2/non-nested-integrations`, dir);
497
425
  const success = await compileAllFiles({ fullPath: dir, debug: false });
498
426
  expect(fs.existsSync(path.join(dir, 'models.ts'))).toBe(true);
@@ -502,7 +430,7 @@ describe('generate function tests', () => {
502
430
  });
503
431
  it('should be able to compile and run imported files', async () => {
504
432
  const dir = getTestDirectory('relative-imports');
505
- await init({ absolutePath: dir });
433
+ init({ absolutePath: dir });
506
434
  await copyDirectoryAndContents(`${fixturesPath}/nango-yaml/v2/relative-imports/github`, `${dir}/github`);
507
435
  await fs.promises.copyFile(`${fixturesPath}/nango-yaml/v2/relative-imports/nango.yaml`, `${dir}/nango.yaml`);
508
436
  const success = await compileAllFiles({ fullPath: dir, debug: false });
@@ -514,19 +442,17 @@ describe('generate function tests', () => {
514
442
  it('should compile helper functions and throw an error if there is a complication error with an imported file', async () => {
515
443
  const name = 'relative-imports-with-error';
516
444
  const dir = getTestDirectory('relative-imports-with-error');
517
- await init({ absolutePath: dir });
445
+ init({ absolutePath: dir });
518
446
  await copyDirectoryAndContents(`${fixturesPath}/nango-yaml/v2/${name}/github`, `${dir}/github`);
519
447
  await fs.promises.copyFile(`${fixturesPath}/nango-yaml/v2/${name}/nango.yaml`, `${dir}/nango.yaml`);
520
448
  const tsconfig = fs.readFileSync(`${getNangoRootPath()}/tsconfig.dev.json`, 'utf8');
521
- const { response: config } = await configService.load(path.resolve(`${fixturesPath}/nango-yaml/v2/${name}`));
522
- expect(config).not.toBeNull();
523
- const modelNames = configService.getModelNames(config);
449
+ const { response: parsed } = load(path.resolve(`${fixturesPath}/nango-yaml/v2/${name}`));
450
+ expect(parsed).not.toBeNull();
524
451
  const result = await compileSingleFile({
525
452
  fullPath: dir,
526
453
  file: getFileToCompile({ fullPath: dir, filePath: path.join(dir, './github/actions/gh-issues.ts') }),
527
454
  tsconfig,
528
- config: config,
529
- modelNames,
455
+ parsed: parsed,
530
456
  debug: false
531
457
  });
532
458
  expect(result).toBe(false);
@@ -534,19 +460,17 @@ describe('generate function tests', () => {
534
460
  it('should complain if a nango call is used incorrectly in a nested file', async () => {
535
461
  const name = 'relative-imports-with-nango-misuse';
536
462
  const dir = getTestDirectory('relative-imports-with-nango-misuse');
537
- await init({ absolutePath: dir });
463
+ init({ absolutePath: dir });
538
464
  await copyDirectoryAndContents(`${fixturesPath}/nango-yaml/v2/${name}/github`, `${dir}/github`);
539
465
  await fs.promises.copyFile(`${fixturesPath}/nango-yaml/v2/${name}/nango.yaml`, `${dir}/nango.yaml`);
540
466
  const tsconfig = fs.readFileSync(`${getNangoRootPath()}/tsconfig.dev.json`, 'utf8');
541
- const { response: config } = await configService.load(path.resolve(`${fixturesPath}/nango-yaml/v2/${name}`));
542
- expect(config).not.toBeNull();
543
- const modelNames = configService.getModelNames(config);
467
+ const { response: parsed } = load(path.resolve(`${fixturesPath}/nango-yaml/v2/${name}`));
468
+ expect(parsed).not.toBeNull();
544
469
  const result = await compileSingleFile({
545
470
  fullPath: dir,
546
471
  file: getFileToCompile({ fullPath: dir, filePath: path.join(dir, './github/actions/gh-issues.ts') }),
547
472
  tsconfig,
548
- config: config,
549
- modelNames,
473
+ parsed: parsed,
550
474
  debug: false
551
475
  });
552
476
  expect(result).toBe(false);
@@ -554,20 +478,18 @@ describe('generate function tests', () => {
554
478
  it('should not allow imports higher than the current directory', async () => {
555
479
  const name = 'relative-imports-with-higher-import';
556
480
  const dir = getTestDirectory('relative-imports-with-higher-import');
557
- await init({ absolutePath: dir });
481
+ init({ absolutePath: dir });
558
482
  await copyDirectoryAndContents(`${fixturesPath}/nango-yaml/v2/${name}/github`, `${dir}/github`);
559
483
  await fs.promises.copyFile(`${fixturesPath}/nango-yaml/v2/${name}/nango.yaml`, `${dir}/nango.yaml`);
560
484
  await fs.promises.copyFile(`${fixturesPath}/nango-yaml/v2/${name}/github/actions/welcomer.ts`, `${dir}/welcomer.ts`);
561
485
  const tsconfig = fs.readFileSync(`${getNangoRootPath()}/tsconfig.dev.json`, 'utf8');
562
- const { response: config } = await configService.load(path.resolve(`${fixturesPath}/nango-yaml/v2/${name}`));
563
- expect(config).not.toBeNull();
564
- const modelNames = configService.getModelNames(config);
486
+ const { response: parsed } = load(path.resolve(`${fixturesPath}/nango-yaml/v2/${name}`));
487
+ expect(parsed).not.toBeNull();
565
488
  const result = await compileSingleFile({
566
489
  fullPath: dir,
567
490
  file: getFileToCompile({ fullPath: dir, filePath: path.join(dir, './github/actions/gh-issues.ts') }),
568
491
  tsconfig,
569
- config: config,
570
- modelNames,
492
+ parsed: parsed,
571
493
  debug: false
572
494
  });
573
495
  expect(result).toBe(false);
@@ -1 +1 @@
1
- {"version":3,"file":"sync.unit.cli-test.js","sourceRoot":"","sources":["../lib/sync.unit.cli-test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync.unit.cli-test.js","sourceRoot":"","sources":["../lib/sync.unit.cli-test.ts"],"names":[],"mappings":"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"}