api 7.0.0-beta.3 → 7.0.0-beta.4

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 (35) hide show
  1. package/dist/bin.js +6 -1
  2. package/dist/bin.js.map +1 -1
  3. package/dist/codegen/codegenerator.d.ts +30 -0
  4. package/dist/codegen/codegenerator.d.ts.map +1 -1
  5. package/dist/codegen/codegenerator.js +29 -0
  6. package/dist/codegen/codegenerator.js.map +1 -1
  7. package/dist/codegen/languages/typescript/index.d.ts +2 -1
  8. package/dist/codegen/languages/typescript/index.d.ts.map +1 -1
  9. package/dist/codegen/languages/typescript/index.js +67 -57
  10. package/dist/codegen/languages/typescript/index.js.map +1 -1
  11. package/dist/commands/install.d.ts.map +1 -1
  12. package/dist/commands/install.js +18 -31
  13. package/dist/commands/install.js.map +1 -1
  14. package/dist/commands/uninstall.d.ts.map +1 -1
  15. package/dist/commands/uninstall.js +7 -10
  16. package/dist/commands/uninstall.js.map +1 -1
  17. package/dist/fetcher.d.ts +1 -1
  18. package/dist/fetcher.d.ts.map +1 -1
  19. package/dist/lib/suggestedOperations.d.ts +1 -1
  20. package/dist/lib/suggestedOperations.d.ts.map +1 -1
  21. package/dist/lib/suggestedOperations.js +7 -5
  22. package/dist/lib/suggestedOperations.js.map +1 -1
  23. package/dist/lockfileSchema.d.ts +1 -1
  24. package/dist/lockfileSchema.d.ts.map +1 -1
  25. package/dist/logger.d.ts +2 -0
  26. package/dist/logger.d.ts.map +1 -1
  27. package/dist/logger.js +5 -1
  28. package/dist/logger.js.map +1 -1
  29. package/dist/packageInfo.d.ts +1 -1
  30. package/dist/packageInfo.js +1 -1
  31. package/dist/storage.d.ts +1 -1
  32. package/dist/storage.d.ts.map +1 -1
  33. package/legacy-require-handler.cjs +29 -0
  34. package/legacy-require-handler.d.cts +2 -0
  35. package/package.json +15 -11
package/dist/bin.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import { Command } from 'commander';
2
2
  import commands from './commands/index.js';
3
+ import logger from './logger.js';
3
4
  import * as pkg from './packageInfo.js';
4
5
  (async () => {
5
6
  const program = new Command();
@@ -13,6 +14,10 @@ import * as pkg from './packageInfo.js';
13
14
  Object.entries(commands).forEach(([, cmd]) => {
14
15
  program.addCommand(cmd);
15
16
  });
16
- await program.parseAsync(process.argv);
17
+ await program.parseAsync(process.argv).catch(err => {
18
+ if (err.message)
19
+ logger(err.message, true);
20
+ process.exit(1);
21
+ });
17
22
  })();
18
23
  //# sourceMappingURL=bin.js.map
package/dist/bin.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"bin.js","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAC3C,OAAO,KAAK,GAAG,MAAM,kBAAkB,CAAC;AAExC,CAAC,KAAK,IAAI,EAAE;IACV,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAC9B,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC/B,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAErC;;;;OAIG;IACH,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,CAAoB,EAAE,EAAE;QAC9D,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,MAAM,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACzC,CAAC,CAAC,EAAE,CAAC"}
1
+ {"version":3,"file":"bin.js","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAC3C,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,KAAK,GAAG,MAAM,kBAAkB,CAAC;AAExC,CAAC,KAAK,IAAI,EAAE;IACV,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAC9B,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC/B,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAErC;;;;OAIG;IACH,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,CAAoB,EAAE,EAAE;QAC9D,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,MAAM,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;QACjD,IAAI,GAAG,CAAC,OAAO;YAAE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,EAAE,CAAC"}
@@ -2,21 +2,50 @@ import type { InstallerOptions } from './factory.js';
2
2
  import type Storage from '../storage.js';
3
3
  import type Oas from 'oas';
4
4
  export default abstract class CodeGenerator {
5
+ /** The associated API definition */
5
6
  spec: Oas;
7
+ /**
8
+ * The path to the API definion (might be a local path, a URL, or an API registry identifier)
9
+ * @example https://raw.githubusercontent.com/readmeio/oas-examples/main/3.0/json/petstore-simple.json
10
+ * @example @petstore/v1.0#n6kvf10vakpemvplx
11
+ * @example ./petstore.json
12
+ */
6
13
  specPath: string;
14
+ /**
15
+ * The user-specified identifier for the SDK,
16
+ * used as the directory name in the `.api/apis` directory
17
+ * where the SDK source code is located.
18
+ */
7
19
  identifier: string;
20
+ /** The user agent which is set for all outgoing fetch requests */
8
21
  userAgent: string;
22
+ /**
23
+ * The license associated with the SDK.
24
+ * This is extrapolated from the API definition file.
25
+ */
9
26
  spdxLicense?: string;
27
+ /**
28
+ * Contact info for the API and/or SDK author in case users need support.
29
+ * This is extrapolated from the API definition file.
30
+ */
10
31
  apiContact: {
11
32
  name?: string;
12
33
  url?: string;
13
34
  };
35
+ /**
36
+ * An object containing any downstream packages that are required
37
+ * for building/executing the SDK.
38
+ */
14
39
  requiredPackages: Record<string, {
15
40
  dependencyType: 'production' | 'development';
16
41
  reason: string;
17
42
  url?: string;
18
43
  version: string;
19
44
  }>;
45
+ /**
46
+ * An example code snippet that a user can run to get started with the SDK.
47
+ */
48
+ exampleCodeSnippet?: string | false;
20
49
  constructor(spec: Oas, specPath: string, identifier: string);
21
50
  abstract generate(): Promise<Record<string, string>>;
22
51
  abstract install(storage: Storage, opts?: InstallerOptions): Promise<void>;
@@ -29,6 +58,7 @@ export default abstract class CodeGenerator {
29
58
  */
30
59
  static uninstall(storage: Storage, opts?: InstallerOptions): Promise<void>;
31
60
  abstract compile(storage: Storage, opts?: InstallerOptions): Promise<void>;
61
+ abstract getExampleCodeSnippet(): Promise<string | false>;
32
62
  hasRequiredPackages(): boolean;
33
63
  }
34
64
  //# sourceMappingURL=codegenerator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"codegenerator.d.ts","sourceRoot":"","sources":["../../src/codegen/codegenerator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAO3B,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,aAAa;IACzC,IAAI,EAAE,GAAG,CAAC;IAEV,QAAQ,EAAE,MAAM,CAAC;IAEjB,UAAU,EAAE,MAAM,CAAC;IAEnB,SAAS,EAAE,MAAM,CAAC;IAElB,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,UAAU,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAM;IAEjD,gBAAgB,EAAG,MAAM,CACvB,MAAM,EACN;QACE,cAAc,EAAE,YAAY,GAAG,aAAa,CAAC;QAC7C,MAAM,EAAE,MAAM,CAAC;QACf,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CACF,CAAC;gBAEU,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAgE3D,QAAQ,CAAC,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEpD,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAE1E;;;;;;OAMG;WAEU,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhF,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAE1E,mBAAmB;CAGpB"}
1
+ {"version":3,"file":"codegenerator.d.ts","sourceRoot":"","sources":["../../src/codegen/codegenerator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAO3B,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,aAAa;IACzC,oCAAoC;IACpC,IAAI,EAAE,GAAG,CAAC;IAEV;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;;OAIG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB,kEAAkE;IAClE,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,UAAU,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAM;IAEjD;;;OAGG;IACH,gBAAgB,EAAG,MAAM,CACvB,MAAM,EACN;QACE,cAAc,EAAE,YAAY,GAAG,aAAa,CAAC;QAC7C,MAAM,EAAE,MAAM,CAAC;QACf,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CACF,CAAC;IAEF;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;gBAExB,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAgE3D,QAAQ,CAAC,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEpD,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAE1E;;;;;;OAMG;WAEU,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhF,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAE1E,QAAQ,CAAC,qBAAqB,IAAI,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC;IAEzD,mBAAmB;CAGpB"}
@@ -1,13 +1,42 @@
1
1
  import { findLicense } from 'license';
2
2
  import { PACKAGE_NAME, PACKAGE_VERSION } from '../packageInfo.js';
3
3
  export default class CodeGenerator {
4
+ /** The associated API definition */
4
5
  spec;
6
+ /**
7
+ * The path to the API definion (might be a local path, a URL, or an API registry identifier)
8
+ * @example https://raw.githubusercontent.com/readmeio/oas-examples/main/3.0/json/petstore-simple.json
9
+ * @example @petstore/v1.0#n6kvf10vakpemvplx
10
+ * @example ./petstore.json
11
+ */
5
12
  specPath;
13
+ /**
14
+ * The user-specified identifier for the SDK,
15
+ * used as the directory name in the `.api/apis` directory
16
+ * where the SDK source code is located.
17
+ */
6
18
  identifier;
19
+ /** The user agent which is set for all outgoing fetch requests */
7
20
  userAgent;
21
+ /**
22
+ * The license associated with the SDK.
23
+ * This is extrapolated from the API definition file.
24
+ */
8
25
  spdxLicense;
26
+ /**
27
+ * Contact info for the API and/or SDK author in case users need support.
28
+ * This is extrapolated from the API definition file.
29
+ */
9
30
  apiContact = {};
31
+ /**
32
+ * An object containing any downstream packages that are required
33
+ * for building/executing the SDK.
34
+ */
10
35
  requiredPackages;
36
+ /**
37
+ * An example code snippet that a user can run to get started with the SDK.
38
+ */
39
+ exampleCodeSnippet;
11
40
  constructor(spec, specPath, identifier) {
12
41
  this.spec = spec;
13
42
  this.specPath = specPath;
@@ -1 +1 @@
1
- {"version":3,"file":"codegenerator.js","sourceRoot":"","sources":["../../src/codegen/codegenerator.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAElE,MAAM,CAAC,OAAO,OAAgB,aAAa;IACzC,IAAI,CAAM;IAEV,QAAQ,CAAS;IAEjB,UAAU,CAAS;IAEnB,SAAS,CAAS;IAElB,WAAW,CAAU;IAErB,UAAU,GAAoC,EAAE,CAAC;IAEjD,gBAAgB,CAQd;IAEF,YAAY,IAAS,EAAE,QAAgB,EAAE,UAAkB;QACzD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAE7B,6FAA6F;QAC7F,4FAA4F;QAC5F,4CAA4C;QAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC;QACvC,IAAI,CAAC,SAAS,GAAG,GAAG,UAAU,IAAI,IAAI,CAAC,OAAO,KAAK,YAAY,IAAI,eAAe,GAAG,CAAC;QAEtF;;;;;;;;;WASG;QACH,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;YACnD,MAAM,IAAI,KAAK,CACb,yHAAyH,CAC1H,CAAC;SACH;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAA8B,CAAC;QAChE,IAAI,UAAU,EAAE,OAAO,EAAE,IAAI,IAAI,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE;YAChE,IAAI,WAAW,CAAC;YAChB,IAAI,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE;gBACnC,WAAW,GAAG,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC;aAC/C;iBAAM;gBACL,4FAA4F;gBAC5F,wFAAwF;gBACxF,0FAA0F;gBAC1F,2DAA2D;gBAC3D,WAAW,GAAG,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aAC5D;YAED,6FAA6F;YAC7F,yEAAyE;YACzE,IAAI,WAAW,CAAC,WAAW,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;gBACzC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;aAChC;SACF;QAED,IAAI,UAAU,EAAE,OAAO,EAAE;YACvB,IAAI,UAAU,CAAC,OAAO,EAAE,IAAI,IAAI,UAAU,CAAC,OAAO,EAAE,KAAK,EAAE;gBACzD,IAAI,UAAU,CAAC,OAAO,EAAE,IAAI,IAAI,UAAU,CAAC,OAAO,EAAE,KAAK,EAAE;oBACzD,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,KAAK,UAAU,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC;iBACnF;qBAAM;oBACL,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK;wBAC7C,CAAC,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,KAAK,GAAG;wBACjC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI,SAAS,CAAC;iBAC1C;aACF;YAED,IAAI,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE;gBAC3B,IAAI,CAAC,UAAU,CAAC,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC;aAC9C;SACF;IACH,CAAC;IAMD;;;;;;OAMG;IACH,6DAA6D;IAC7D,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,OAAgB,EAAE,IAAuB;QAC9D,MAAM,IAAI,SAAS,CAAC,oEAAoE,CAAC,CAAC;IAC5F,CAAC;IAID,mBAAmB;QACjB,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACrD,CAAC;CACF"}
1
+ {"version":3,"file":"codegenerator.js","sourceRoot":"","sources":["../../src/codegen/codegenerator.ts"],"names":[],"mappings":"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"}
@@ -30,6 +30,7 @@ export default class TSGenerator extends CodeGenerator {
30
30
  generate(): Promise<{
31
31
  [x: string]: string;
32
32
  }>;
33
+ getExampleCodeSnippet(): Promise<string | false>;
33
34
  /**
34
35
  * Create our main SDK source file.
35
36
  *
@@ -70,7 +71,7 @@ export default class TSGenerator extends CodeGenerator {
70
71
  * Create a placeholder `README.md` file in the repository, with information on how to use/administer the SDK.
71
72
  *
72
73
  */
73
- createREADME(): SourceFile;
74
+ createREADME(): Promise<SourceFile>;
74
75
  /**
75
76
  * Create our main schemas file. This is where all of the JSON Schema that our TypeScript typing
76
77
  * infrastructure sources its data from. Without this there are no types.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/codegen/languages/typescript/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAK3B,OAAO,KAAK,EACV,gBAAgB,EAMhB,UAAU,EACX,MAAM,UAAU,CAAC;AAWlB,OAAO,EAAmB,OAAO,EAAoD,MAAM,UAAU,CAAC;AAItG,OAAO,OAAO,MAAM,qBAAqB,CAAC;AAC1C,OAAO,aAAa,MAAM,wBAAwB,CAAC;AAiCnD,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,aAAa;;IACpD,OAAO,EAAE,OAAO,CAAC;IAEjB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE3B,GAAG,EAAG,gBAAgB,CAAC;IAEvB,OAAO,EAAE,MAAM,CACb,MAAM,EAEJ;QACE,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACpC,GAED,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAC1B,CAAC;IAEF,4BAA4B,UAAS;gBAEzB,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAuDrD,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;WAoC9D,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBpF;;;OAGG;IAEG,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IAsB3E;;;OAGG;IACG,QAAQ;;;IAsDd;;;OAGG;IACH,OAAO,CAAC,eAAe;IAgIvB;;;;;;;;;;;;;;OAcG;IACH,eAAe,CAAC,UAAU,EAAE,UAAU;IA4GtC;;;OAGG;IACH,eAAe;IAYf;;;OAGG;IACH,cAAc;IAmBd;;;OAGG;IACH,iBAAiB;IA8EjB;;;OAGG;IACH,YAAY;IAyBZ;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAgEzB;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;IAevB;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAuM/B;;;;;OAKG;IACH,OAAO,CAAC,wBAAwB;IAoChC;;;;OAIG;IACH,OAAO,CAAC,iCAAiC;IAiDzC;;;OAGG;IACH,OAAO,CAAC,gCAAgC;IAiExC;;;OAGG;IACH,OAAO,CAAC,iBAAiB;CAsB1B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/codegen/languages/typescript/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAK3B,OAAO,KAAK,EACV,gBAAgB,EAMhB,UAAU,EACX,MAAM,UAAU,CAAC;AAWlB,OAAO,EAAmB,OAAO,EAAoD,MAAM,UAAU,CAAC;AAKtG,OAAO,OAAO,MAAM,qBAAqB,CAAC;AAC1C,OAAO,aAAa,MAAM,wBAAwB,CAAC;AAiDnD,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,aAAa;;IACpD,OAAO,EAAE,OAAO,CAAC;IAEjB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE3B,GAAG,EAAG,gBAAgB,CAAC;IAEvB,OAAO,EAAE,MAAM,CACb,MAAM,EAEJ;QACE,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACpC,GAED,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAC1B,CAAC;IAEF,4BAA4B,UAAS;gBAEzB,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAiDrD,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;WA0B9D,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IASpF;;;OAGG;IAEG,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IAc3E;;;OAGG;IACG,QAAQ;;;IAsDR,qBAAqB;IAiB3B;;;OAGG;IACH,OAAO,CAAC,eAAe;IAgIvB;;;;;;;;;;;;;;OAcG;IACH,eAAe,CAAC,UAAU,EAAE,UAAU;IA4GtC;;;OAGG;IACH,eAAe;IAYf;;;OAGG;IACH,cAAc;IAmBd;;;OAGG;IACH,iBAAiB;IA+EjB;;;OAGG;IACG,YAAY;IAsClB;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAgEzB;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;IAevB;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAuM/B;;;;;OAKG;IACH,OAAO,CAAC,wBAAwB;IAoChC;;;;OAIG;IACH,OAAO,CAAC,iCAAiC;IAiDzC;;;OAGG;IACH,OAAO,CAAC,gCAAgC;IAiExC;;;OAGG;IACH,OAAO,CAAC,iBAAiB;CAsB1B"}
@@ -5,6 +5,7 @@ import { getLicense } from 'license';
5
5
  import setWith from 'lodash.setwith';
6
6
  import semver from 'semver';
7
7
  import { IndentationText, Project, QuoteKind, ScriptTarget, VariableDeclarationKind } from 'ts-morph';
8
+ import { buildCodeSnippetForOperation, getSuggestedOperation } from '../../../lib/suggestedOperations.js';
8
9
  import logger from '../../../logger.js';
9
10
  import { PACKAGE_VERSION } from '../../../packageInfo.js';
10
11
  import Storage from '../../../storage.js';
@@ -24,6 +25,19 @@ import { docblockEscape, generateTypeName, wordWrap } from './util.js';
24
25
  */
25
26
  const REF_PLACEHOLDER = '::convert::';
26
27
  const REF_PLACEHOLDER_REGEX = /"::convert::([a-zA-Z_$\\d]*)"/g;
28
+ function handleExecSuccess(res, opts = {}) {
29
+ if (opts.dryRun) {
30
+ (opts.logger ? opts.logger : logger)(res.command);
31
+ (opts.logger ? opts.logger : logger)(res.stdout);
32
+ }
33
+ }
34
+ function handleExecFailure(err, opts = {}) {
35
+ if (opts.dryRun) {
36
+ (opts.logger ? opts.logger : logger)(err.message);
37
+ return;
38
+ }
39
+ throw err;
40
+ }
27
41
  export default class TSGenerator extends CodeGenerator {
28
42
  project;
29
43
  types;
@@ -53,12 +67,6 @@ export default class TSGenerator extends CodeGenerator {
53
67
  url: 'https://tsup.egoist.dev/',
54
68
  version: '^7.2.0',
55
69
  },
56
- 'json-schema-to-ts': {
57
- dependencyType: 'production',
58
- reason: 'Required for TypeScript type handling.',
59
- url: 'https://npm.im/json-schema-to-ts',
60
- version: '^2.9.2',
61
- },
62
70
  typescript: {
63
71
  dependencyType: 'development',
64
72
  reason: 'Required for `tsup`.',
@@ -88,12 +96,7 @@ export default class TSGenerator extends CodeGenerator {
88
96
  // adding `@api/<sdk identifier>` as a dependency there so you can load it with
89
97
  // `require('@api/<sdk identifier>)`.
90
98
  return execa('npm', [...npmInstall, installDir].filter(Boolean))
91
- .then(res => {
92
- if (opts.dryRun) {
93
- (opts.logger ? opts.logger : logger)(res.command);
94
- (opts.logger ? opts.logger : logger)(res.stdout);
95
- }
96
- })
99
+ .then(res => handleExecSuccess(res, opts))
97
100
  .catch(err => {
98
101
  // If `npm install` throws this error it always happens **after** our dependencies have been
99
102
  // installed and is an annoying quirk that sometimes occurs when installing a package within
@@ -103,26 +106,15 @@ export default class TSGenerator extends CodeGenerator {
103
106
  (opts.logger ? opts.logger : logger)("npm threw an error but we're ignoring it");
104
107
  return;
105
108
  }
106
- if (opts.dryRun) {
107
- (opts.logger ? opts.logger : logger)(err.message);
108
- return;
109
- }
110
- throw err;
109
+ handleExecFailure(err, opts);
111
110
  });
112
111
  }
113
112
  static async uninstall(storage, opts = {}) {
114
113
  const pkgName = storage.getPackageName();
115
114
  const args = ['uninstall', pkgName, opts.dryRun ? '--dry-run' : ''].filter(Boolean);
116
115
  return execa('npm', args)
117
- .then(res => {
118
- if (opts.dryRun) {
119
- (opts.logger ? opts.logger : logger)(res.command);
120
- (opts.logger ? opts.logger : logger)(res.stdout);
121
- }
122
- })
123
- .catch(err => {
124
- throw err;
125
- });
116
+ .then(res => handleExecSuccess(res, opts))
117
+ .catch(err => handleExecFailure(err, opts));
126
118
  }
127
119
  /**
128
120
  * Compile the TS code we generated into JS for use in CJS and ESM environments.
@@ -131,22 +123,14 @@ export default class TSGenerator extends CodeGenerator {
131
123
  // eslint-disable-next-line class-methods-use-this
132
124
  async compile(storage, opts = {}) {
133
125
  const installDir = storage.getIdentifierStorageDir();
134
- await execa('npx', ['tsup'], {
126
+ await execa('npm', ['pkg', 'set', 'scripts.prepare=tsup'], { cwd: installDir })
127
+ .then(res => handleExecSuccess(res, opts))
128
+ .catch(err => handleExecFailure(err, opts));
129
+ await execa('npm', ['run', 'prepare'], {
135
130
  cwd: installDir,
136
131
  })
137
- .then(res => {
138
- if (opts.dryRun) {
139
- (opts.logger ? opts.logger : logger)(res.command);
140
- (opts.logger ? opts.logger : logger)(res.stdout);
141
- }
142
- })
143
- .catch(err => {
144
- if (opts.dryRun) {
145
- (opts.logger ? opts.logger : logger)(err.message);
146
- return;
147
- }
148
- throw err;
149
- });
132
+ .then(res => handleExecSuccess(res, opts))
133
+ .catch(err => handleExecFailure(err, opts));
150
134
  }
151
135
  /**
152
136
  * Generate the current OpenAPI definition into a TypeScript library.
@@ -158,7 +142,7 @@ export default class TSGenerator extends CodeGenerator {
158
142
  this.createGitIgnore();
159
143
  this.createPackageJSON();
160
144
  this.createTSConfig();
161
- this.createREADME();
145
+ await this.createREADME();
162
146
  if (Object.keys(this.schemas).length) {
163
147
  this.createSchemasFile(srcDirectory);
164
148
  this.createTypesFile(srcDirectory);
@@ -167,7 +151,7 @@ export default class TSGenerator extends CodeGenerator {
167
151
  // If we don't have any schemas then we shouldn't import a `types` file that doesn't exist.
168
152
  sdkSource
169
153
  .getImportDeclarations()
170
- .find(id => id.getText() === "import type * as types from './types';")
154
+ .find(id => id.getText() === "import type * as types from './types.js';")
171
155
  ?.remove();
172
156
  }
173
157
  // If this SDK doesn't use the `HTTPMethodRange` interface for handling `2XX` response status
@@ -201,6 +185,20 @@ export default class TSGenerator extends CodeGenerator {
201
185
  }),
202
186
  ].reduce((prev, next) => Object.assign(prev, next));
203
187
  }
188
+ async getExampleCodeSnippet() {
189
+ // if we've already built the code snippet, return it instead of re-building it!
190
+ if (typeof this.exampleCodeSnippet !== 'undefined') {
191
+ return this.exampleCodeSnippet;
192
+ }
193
+ const operation = getSuggestedOperation(this.spec);
194
+ if (!operation) {
195
+ this.exampleCodeSnippet = false;
196
+ return false;
197
+ }
198
+ const snippet = await buildCodeSnippetForOperation(this.spec, operation, { identifier: this.identifier });
199
+ this.exampleCodeSnippet = snippet;
200
+ return snippet;
201
+ }
204
202
  /**
205
203
  * Create our main SDK source file.
206
204
  *
@@ -210,7 +208,7 @@ export default class TSGenerator extends CodeGenerator {
210
208
  const sourceFile = sourceDirectory.createSourceFile('index.ts', '');
211
209
  sourceFile.addImportDeclarations([
212
210
  // This import will be automatically removed later if the SDK ends up not having any types.
213
- { defaultImport: 'type * as types', moduleSpecifier: './types' },
211
+ { defaultImport: 'type * as types', moduleSpecifier: './types.js' },
214
212
  {
215
213
  // `HTTPMethodRange` will be conditionally removed later if it ends up not being used.
216
214
  defaultImport: 'type { ConfigOptions, FetchResponse, HTTPMethodRange }',
@@ -496,28 +494,29 @@ dist/
496
494
  const pkg = {
497
495
  name: `@api/${this.identifier}`,
498
496
  version: pkgVersion.version,
499
- main: './dist/index.js',
500
- types: './dist/index.d.ts',
501
- module: './dist/index.mts',
497
+ type: 'module',
498
+ main: 'dist/index.cjs',
499
+ types: 'dist/index.d.cts',
500
+ module: 'dist/index.ts',
502
501
  exports: {
503
502
  '.': {
504
- import: './dist/index.mjs',
505
- require: './dist/index.js',
503
+ import: './dist/index.js',
504
+ require: './dist/index.cjs',
506
505
  },
507
506
  ...(hasTypes
508
507
  ? {
509
508
  './types': {
510
- import: './dist/types.d.mts',
511
- require: './dist/types.d.ts',
509
+ import: './dist/types.js',
510
+ require: './dist/types.cjs',
512
511
  },
513
512
  }
514
513
  : {}),
514
+ './package.json': './package.json',
515
515
  },
516
516
  license: this.spdxLicense ?? '',
517
517
  files: ['dist', 'openapi.json'],
518
518
  scripts: {
519
519
  lint: 'tsc --noEmit',
520
- prepare: 'tsup',
521
520
  },
522
521
  dependencies,
523
522
  devDependencies,
@@ -533,16 +532,27 @@ dist/
533
532
  * Create a placeholder `README.md` file in the repository, with information on how to use/administer the SDK.
534
533
  *
535
534
  */
536
- createREADME() {
535
+ async createREADME() {
537
536
  let createdAt = new Date().toISOString();
538
537
  const currentAPI = Storage.getLockfile().apis.find(api => api.identifier === this.identifier);
539
538
  if (currentAPI)
540
539
  createdAt = currentAPI.createdAt;
540
+ let exampleUsage = 'Add SDK setup information and usage examples here so your users get started in a jiffy! 🚀';
541
+ const exampleSnippet = await this.getExampleCodeSnippet();
542
+ if (exampleSnippet) {
543
+ exampleUsage = `
544
+ ## Example Usage 🚀
545
+
546
+ \`\`\`js
547
+ ${exampleSnippet}
548
+ \`\`\`
549
+ `.trim();
550
+ }
541
551
  const file = `# \`@api/${this.identifier}\`
542
552
 
543
553
  This SDK was autogenerated by the [\`api\` SDK generator](https://api.readme.dev), powered by [ReadMe](https://readme.com) 🦉
544
554
 
545
- Add SDK setup information and usage examples here so your users get started in a jiffy! 🚀
555
+ ${exampleUsage}
546
556
 
547
557
  <!---
548
558
 
@@ -571,7 +581,7 @@ Generated at ${createdAt}
571
581
  // for these schemas into our main `schemas.ts` file.`
572
582
  sourceFile.addImportDeclaration({
573
583
  defaultImport: schemaName,
574
- moduleSpecifier: `./schemas/${schemaName}`,
584
+ moduleSpecifier: `./schemas/${schemaName}.js`,
575
585
  });
576
586
  // Though we aren't using Prettier to make these generated SDKs look amazing we should at
577
587
  // least make the schema files we generate not look like completely unreadable garbage.
@@ -587,7 +597,7 @@ Generated at ${createdAt}
587
597
  // declaration for it.
588
598
  schemaFile.addImportDeclaration({
589
599
  defaultImport: ref,
590
- moduleSpecifier: `./${ref}`,
600
+ moduleSpecifier: `./${ref}.js`,
591
601
  });
592
602
  });
593
603
  }
@@ -623,8 +633,8 @@ Generated at ${createdAt}
623
633
  createTypesFile(sourceDirectory) {
624
634
  const sourceFile = sourceDirectory.createSourceFile('types.ts', '');
625
635
  sourceFile.addImportDeclarations([
626
- { defaultImport: 'type { FromSchema }', moduleSpecifier: 'json-schema-to-ts' },
627
- { defaultImport: '* as schemas', moduleSpecifier: './schemas' },
636
+ { defaultImport: 'type { FromSchema }', moduleSpecifier: '@readme/api-core/types' },
637
+ { defaultImport: '* as schemas', moduleSpecifier: './schemas.js' },
628
638
  ]);
629
639
  Array.from(new Map(Array.from(this.types.entries()).sort())).forEach(([typeName, typeExpression]) => {
630
640
  sourceFile.addTypeAlias({ isExported: true, name: typeName, type: typeExpression });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/codegen/languages/typescript/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/codegen/languages/typescript/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AA+E5C,QAAA,MAAM,GAAG,SAAgB,CAAC;AA4J1B,eAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAsE5C,QAAA,MAAM,GAAG,SAAgB,CAAC;AAsJ1B,eAAe,GAAG,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import chalk from 'chalk';
2
2
  import { Command, Option } from 'commander';
3
+ import { emphasize } from 'emphasize';
3
4
  import figures from 'figures';
4
5
  import Oas from 'oas';
5
6
  import ora from 'ora';
@@ -7,8 +8,7 @@ import uslug from 'uslug';
7
8
  import { SupportedLanguages, codegenFactory } from '../codegen/factory.js';
8
9
  import Fetcher from '../fetcher.js';
9
10
  import promptTerminal from '../lib/prompt.js';
10
- import { buildCodeSnippetForOperation, getSuggestedOperation } from '../lib/suggestedOperations.js';
11
- import logger from '../logger.js';
11
+ import logger, { oraOptions } from '../logger.js';
12
12
  import Storage from '../storage.js';
13
13
  async function getLanguage(options) {
14
14
  let language;
@@ -58,13 +58,6 @@ async function getIdentifier(oas, uri, options) {
58
58
  }
59
59
  return identifier;
60
60
  }
61
- async function getExampleCodeSnippet(oas, identifier) {
62
- const operation = getSuggestedOperation(oas);
63
- if (!operation) {
64
- return false;
65
- }
66
- return buildCodeSnippetForOperation(oas, operation, { identifier });
67
- }
68
61
  // @todo log logs to `.api/.logs` and have `.logs` ignored
69
62
  const cmd = new Command();
70
63
  cmd
@@ -83,7 +76,7 @@ cmd
83
76
  // @todo
84
77
  // logger(`It looks like you already have this API installed. Would you like to update it?`);
85
78
  }
86
- let spinner = ora('Fetching your API definition').start();
79
+ let spinner = ora({ text: 'Fetching your API definition', ...oraOptions() }).start();
87
80
  const storage = new Storage(uri, language);
88
81
  const oas = await storage
89
82
  .load(false)
@@ -99,20 +92,18 @@ cmd
99
92
  .catch(err => {
100
93
  // @todo cleanup installed files
101
94
  spinner.fail(spinner.text);
102
- logger(err.message, true);
103
- process.exit(1);
95
+ throw err;
104
96
  });
105
97
  const identifier = await getIdentifier(oas, uri, options);
106
98
  if (!identifier) {
107
- logger('You must tell us what you would like to identify this API as in order to install it.', true);
108
- process.exit(1);
99
+ throw new Error('You must tell us what you would like to identify this API as in order to install it.');
109
100
  }
110
101
  // Now that we've got an identifier we can save their spec and generate the directory structure
111
102
  // for their SDK.
112
103
  storage.setIdentifier(identifier);
113
104
  await storage.save(oas.api);
114
105
  // @todo look for a prettier config and if we find one ask them if we should use it
115
- spinner = ora('Generating your SDK').start();
106
+ spinner = ora({ text: 'Generating your SDK', ...oraOptions() }).start();
116
107
  const generator = codegenFactory(language, oas, '../openapi.json', identifier);
117
108
  const sdkSource = await generator
118
109
  .generate()
@@ -123,10 +114,9 @@ cmd
123
114
  .catch(err => {
124
115
  // @todo cleanup installed files
125
116
  spinner.fail(spinner.text);
126
- logger(err.message, true);
127
- process.exit(1);
117
+ throw err;
128
118
  });
129
- spinner = ora('Saving your SDK into your codebase').start();
119
+ spinner = ora({ text: 'Saving your SDK into your codebase', ...oraOptions() }).start();
130
120
  await storage
131
121
  .saveSourceFiles(sdkSource)
132
122
  .then(() => {
@@ -135,8 +125,7 @@ cmd
135
125
  .catch(err => {
136
126
  // @todo cleanup installed files
137
127
  spinner.fail(spinner.text);
138
- logger(err.message, true);
139
- process.exit(1);
128
+ throw err;
140
129
  });
141
130
  if (generator.hasRequiredPackages()) {
142
131
  logger(`${figures.warning} This generator requires some packages to be installed alongside it:`);
@@ -156,12 +145,11 @@ cmd
156
145
  }).then(({ value }) => {
157
146
  if (!value) {
158
147
  // @todo cleanup installed files
159
- logger('Installation cancelled.', true);
160
- process.exit(1);
148
+ throw new Error('Installation cancelled.');
161
149
  }
162
150
  });
163
151
  }
164
- spinner = ora('Installing required packages').start();
152
+ spinner = ora({ text: 'Installing required packages', ...oraOptions() }).start();
165
153
  try {
166
154
  await generator.install(storage);
167
155
  spinner.succeed(spinner.text);
@@ -169,11 +157,10 @@ cmd
169
157
  catch (err) {
170
158
  // @todo cleanup installed files
171
159
  spinner.fail(spinner.text);
172
- logger(err.message, true);
173
- process.exit(1);
160
+ throw err;
174
161
  }
175
162
  }
176
- spinner = ora('Compiling your SDK').start();
163
+ spinner = ora({ text: 'Compiling your SDK', ...oraOptions() }).start();
177
164
  try {
178
165
  await generator.compile(storage);
179
166
  spinner.succeed(spinner.text);
@@ -181,18 +168,18 @@ cmd
181
168
  catch (err) {
182
169
  // @todo cleanup installed files
183
170
  spinner.fail(spinner.text);
184
- logger(err.message, true);
185
- process.exit(1);
171
+ throw err;
186
172
  }
187
173
  logger('');
188
174
  logger(`🚀 All done! Your SDK is now available to use locally via the ${chalk.yellow(storage.getPackageName())} package.`);
189
- const exampleSnippet = await getExampleCodeSnippet(oas, identifier);
175
+ const exampleSnippet = await generator.getExampleCodeSnippet();
190
176
  if (exampleSnippet) {
191
177
  logger('');
192
- logger("Here's an example code snippet you can try out:");
178
+ logger(chalk.bold("👇 Here's an example code snippet you can try out 👇"));
193
179
  logger('');
194
- logger(chalk.green(exampleSnippet));
180
+ logger(emphasize.highlight(language, exampleSnippet).value);
195
181
  }
182
+ logger('');
196
183
  })
197
184
  .addHelpText('after', `
198
185
  Examples:
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"uninstall.d.ts","sourceRoot":"","sources":["../../src/commands/uninstall.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAY5C,QAAA,MAAM,GAAG,SAAgB,CAAC;AA8E1B,eAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"uninstall.d.ts","sourceRoot":"","sources":["../../src/commands/uninstall.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAY5C,QAAA,MAAM,GAAG,SAAgB,CAAC;AA0E1B,eAAe,GAAG,CAAC"}
@@ -4,7 +4,7 @@ import { Command, Option } from 'commander';
4
4
  import ora from 'ora';
5
5
  import { SupportedLanguages, uninstallerFactory } from '../codegen/factory.js';
6
6
  import promptTerminal from '../lib/prompt.js';
7
- import logger from '../logger.js';
7
+ import logger, { oraOptions } from '../logger.js';
8
8
  import Storage from '../storage.js';
9
9
  const cmd = new Command();
10
10
  cmd
@@ -18,8 +18,7 @@ cmd
18
18
  const storage = new Storage('', SupportedLanguages.JS, identifier);
19
19
  const entry = Storage.getFromLockfile(identifier);
20
20
  if (!entry) {
21
- logger(`You do not appear to have ${identifier} installed. You can run \`npx api list\` to see what SDKs are present.`, true);
22
- process.exit(1);
21
+ throw new Error(`You do not appear to have ${identifier} installed. You can run \`npx api list\` to see what SDKs are present.`);
23
22
  }
24
23
  storage.setLanguage(entry?.language);
25
24
  storage.setIdentifier(identifier);
@@ -32,11 +31,11 @@ cmd
32
31
  initial: true,
33
32
  }).then(({ value }) => {
34
33
  if (!value) {
35
- process.exit(1);
34
+ throw new Error('Uninstallation cancelled.');
36
35
  }
37
36
  });
38
37
  }
39
- let spinner = ora(`Uninstalling ${chalk.grey(identifier)}`).start();
38
+ let spinner = ora({ text: `Uninstalling ${chalk.grey(identifier)}`, ...oraOptions() }).start();
40
39
  // If we have a known package name for this then we can uninstall it from within cooresponding
41
40
  // package manager.
42
41
  const pkgName = storage.getPackageName();
@@ -48,11 +47,10 @@ cmd
48
47
  })
49
48
  .catch(err => {
50
49
  spinner.fail(spinner.text);
51
- logger(err.message, true);
52
- process.exit(1);
50
+ throw err;
53
51
  });
54
52
  }
55
- spinner = ora(`Removing ${chalk.grey(directory)}`).start();
53
+ spinner = ora({ text: `Removing ${chalk.grey(directory)}`, ...oraOptions() }).start();
56
54
  await storage
57
55
  .remove()
58
56
  .then(() => {
@@ -60,8 +58,7 @@ cmd
60
58
  })
61
59
  .catch(err => {
62
60
  spinner.fail(spinner.text);
63
- logger(err.message, true);
64
- process.exit(1);
61
+ throw err;
65
62
  });
66
63
  logger('🚀 All done!');
67
64
  })
@@ -1 +1 @@
1
- {"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../src/commands/uninstall.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,MAAM,MAAM,cAAc,CAAC;AAClC,OAAO,OAAO,MAAM,eAAe,CAAC;AAMpC,MAAM,GAAG,GAAG,IAAI,OAAO,EAAE,CAAC;AAC1B,GAAG;KACA,IAAI,CAAC,WAAW,CAAC;KACjB,WAAW,CAAC,qCAAqC,CAAC;KAClD,QAAQ,CAAC,cAAc,EAAE,sBAAsB,CAAC;KAChD,SAAS,CAAC,IAAI,MAAM,CAAC,WAAW,EAAE,mDAAmD,CAAC,CAAC;KACvF,MAAM,CAAC,KAAK,EAAE,UAAkB,EAAE,OAAgB,EAAE,EAAE;IACrD,+FAA+F;IAC/F,qCAAqC;IACrC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,EAAE,EAAE,kBAAkB,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;IAEnE,MAAM,KAAK,GAAG,OAAO,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;IAClD,IAAI,CAAC,KAAK,EAAE;QACV,MAAM,CACJ,6BAA6B,UAAU,wEAAwE,EAC/G,IAAI,CACL,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACjB;IAED,OAAO,CAAC,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACrC,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IAElC,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAAC;IAClF,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE;QAChB,MAAM,cAAc,CAAC;YACnB,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,sCAAsC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,0BAA0B,KAAK,CAAC,MAAM,CAC3G,SAAS,CACV,iEAAiE;YAClE,OAAO,EAAE,IAAI;SACd,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;YACpB,IAAI,CAAC,KAAK,EAAE;gBACV,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACjB;QACH,CAAC,CAAC,CAAC;KACJ;IAED,IAAI,OAAO,GAAG,GAAG,CAAC,gBAAgB,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;IAEpE,8FAA8F;IAC9F,mBAAmB;IACnB,MAAM,OAAO,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IACzC,IAAI,OAAO,EAAE;QACX,MAAM,QAAQ,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;QAC1C,MAAM,kBAAkB,CAAC,QAAQ,EAAE,OAAO,CAAC;aACxC,IAAI,CAAC,GAAG,EAAE;YACT,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,CAAC,EAAE;YACX,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC3B,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC1B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;KACN;IAED,OAAO,GAAG,GAAG,CAAC,YAAY,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;IAC3D,MAAM,OAAO;SACV,MAAM,EAAE;SACR,IAAI,CAAC,GAAG,EAAE;QACT,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC,CAAC;SACD,KAAK,CAAC,GAAG,CAAC,EAAE;QACX,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3B,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC1B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEL,MAAM,CAAC,cAAc,CAAC,CAAC;AACzB,CAAC,CAAC;KACD,WAAW,CACV,OAAO,EACP;;+BAE2B,CAC5B,CAAC;AAEJ,eAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../src/commands/uninstall.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,OAAO,MAAM,eAAe,CAAC;AAMpC,MAAM,GAAG,GAAG,IAAI,OAAO,EAAE,CAAC;AAC1B,GAAG;KACA,IAAI,CAAC,WAAW,CAAC;KACjB,WAAW,CAAC,qCAAqC,CAAC;KAClD,QAAQ,CAAC,cAAc,EAAE,sBAAsB,CAAC;KAChD,SAAS,CAAC,IAAI,MAAM,CAAC,WAAW,EAAE,mDAAmD,CAAC,CAAC;KACvF,MAAM,CAAC,KAAK,EAAE,UAAkB,EAAE,OAAgB,EAAE,EAAE;IACrD,+FAA+F;IAC/F,qCAAqC;IACrC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,EAAE,EAAE,kBAAkB,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;IAEnE,MAAM,KAAK,GAAG,OAAO,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;IAClD,IAAI,CAAC,KAAK,EAAE;QACV,MAAM,IAAI,KAAK,CACb,6BAA6B,UAAU,wEAAwE,CAChH,CAAC;KACH;IAED,OAAO,CAAC,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACrC,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IAElC,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAAC;IAClF,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE;QAChB,MAAM,cAAc,CAAC;YACnB,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,sCAAsC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,0BAA0B,KAAK,CAAC,MAAM,CAC3G,SAAS,CACV,iEAAiE;YAClE,OAAO,EAAE,IAAI;SACd,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;YACpB,IAAI,CAAC,KAAK,EAAE;gBACV,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;aAC9C;QACH,CAAC,CAAC,CAAC;KACJ;IAED,IAAI,OAAO,GAAG,GAAG,CAAC,EAAE,IAAI,EAAE,gBAAgB,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;IAE/F,8FAA8F;IAC9F,mBAAmB;IACnB,MAAM,OAAO,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IACzC,IAAI,OAAO,EAAE;QACX,MAAM,QAAQ,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;QAC1C,MAAM,kBAAkB,CAAC,QAAQ,EAAE,OAAO,CAAC;aACxC,IAAI,CAAC,GAAG,EAAE;YACT,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,CAAC,EAAE;YACX,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC3B,MAAM,GAAG,CAAC;QACZ,CAAC,CAAC,CAAC;KACN;IAED,OAAO,GAAG,GAAG,CAAC,EAAE,IAAI,EAAE,YAAY,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;IACtF,MAAM,OAAO;SACV,MAAM,EAAE;SACR,IAAI,CAAC,GAAG,EAAE;QACT,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC,CAAC;SACD,KAAK,CAAC,GAAG,CAAC,EAAE;QACX,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3B,MAAM,GAAG,CAAC;IACZ,CAAC,CAAC,CAAC;IAEL,MAAM,CAAC,cAAc,CAAC,CAAC;AACzB,CAAC,CAAC;KACD,WAAW,CACV,OAAO,EACP;;+BAE2B,CAC5B,CAAC;AAEJ,eAAe,GAAG,CAAC"}
package/dist/fetcher.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { OASDocument } from 'oas/rmoas.types';
1
+ import type { OASDocument } from 'oas/types';
2
2
  export default class Fetcher {
3
3
  uri: string | OASDocument;
4
4
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"fetcher.d.ts","sourceRoot":"","sources":["../src/fetcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAQnD,MAAM,CAAC,OAAO,OAAO,OAAO;IAC1B,GAAG,EAAE,MAAM,GAAG,WAAW,CAAC;IAE1B;;;;;OAKG;IACH,MAAM,CAAC,iBAAiB,SAA0E;gBAEtF,GAAG,EAAE,MAAM,GAAG,WAAW;IAsBrC,MAAM,CAAC,iBAAiB,CAAC,GAAG,EAAE,MAAM;IAIpC,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,MAAM;IAIlC;;OAEG;IACH,MAAM,CAAC,gCAAgC,CAAC,GAAG,EAAE,MAAM;IAS7C,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAwBV,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM;IAiBzB,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM;IAmB1B,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,WAAW;CAuBlC"}
1
+ {"version":3,"file":"fetcher.d.ts","sourceRoot":"","sources":["../src/fetcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAQ7C,MAAM,CAAC,OAAO,OAAO,OAAO;IAC1B,GAAG,EAAE,MAAM,GAAG,WAAW,CAAC;IAE1B;;;;;OAKG;IACH,MAAM,CAAC,iBAAiB,SAA0E;gBAEtF,GAAG,EAAE,MAAM,GAAG,WAAW;IAsBrC,MAAM,CAAC,iBAAiB,CAAC,GAAG,EAAE,MAAM;IAIpC,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,MAAM;IAIlC;;OAEG;IACH,MAAM,CAAC,gCAAgC,CAAC,GAAG,EAAE,MAAM;IAS7C,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAwBV,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM;IAiBzB,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM;IAmB1B,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,WAAW;CAuBlC"}
@@ -1,5 +1,5 @@
1
1
  import type Oas from 'oas';
2
- import type Operation from 'oas/operation';
2
+ import type { Operation } from 'oas/operation';
3
3
  /**
4
4
  * Return a list of suggested and "good first issue" types of endpoints that we can build a post-SDK
5
5
  * code generation code snippet around to demo the power of `api`.
@@ -1 +1 @@
1
- {"version":3,"file":"suggestedOperations.d.ts","sourceRoot":"","sources":["../../src/lib/suggestedOperations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAC3B,OAAO,KAAK,SAAS,MAAM,eAAe,CAAC;AAM3C;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,GAAG,qBAgC7C;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,4BAA4B,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,2BAyD9G"}
1
+ {"version":3,"file":"suggestedOperations.d.ts","sourceRoot":"","sources":["../../src/lib/suggestedOperations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAC3B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAM/C;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,GAAG,qBAgC7C;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,4BAA4B,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,2BA2D9G"}
@@ -1,5 +1,5 @@
1
1
  import APICore from '@readme/api-core';
2
- import client from 'httpsnippet-client-api';
2
+ import apiSnippetPlugin from 'httpsnippet-client-api';
3
3
  import { Webhook } from 'oas/operation';
4
4
  /**
5
5
  * Return a list of suggested and "good first issue" types of endpoints that we can build a post-SDK
@@ -82,7 +82,7 @@ export async function buildCodeSnippetForOperation(oas, operation, opts) {
82
82
  if (!har) {
83
83
  return false;
84
84
  }
85
- const snippet = client.convert({
85
+ const snippet = apiSnippetPlugin.client.convert({
86
86
  ...har,
87
87
  cookiesObj: har.cookies.reduce((acc, { name, value }) => ({ ...acc, [name]: value }), {}),
88
88
  fullUrl: har.url,
@@ -97,9 +97,11 @@ export async function buildCodeSnippetForOperation(oas, operation, opts) {
97
97
  allHeaders: {},
98
98
  uriObj: {},
99
99
  }, {
100
- apiDefinition: oas.getDefinition(),
101
- apiDefinitionUri: opts.identifier,
102
- identifier: opts.identifier,
100
+ api: {
101
+ definition: oas.getDefinition(),
102
+ identifier: opts.identifier,
103
+ registryURI: opts.identifier,
104
+ },
103
105
  });
104
106
  return snippet;
105
107
  }
@@ -1 +1 @@
1
- {"version":3,"file":"suggestedOperations.js","sourceRoot":"","sources":["../../src/lib/suggestedOperations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"suggestedOperations.js","sourceRoot":"","sources":["../../src/lib/suggestedOperations.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { FromSchema } from 'json-schema-to-ts';
1
+ import type { FromSchema } from '@readme/api-core/types';
2
2
  declare const lockfileApiSchema: {
3
3
  readonly type: "object";
4
4
  readonly required: readonly ["createdAt", "identifier", "installerVersion", "integrity"];
@@ -1 +1 @@
1
- {"version":3,"file":"lockfileSchema.d.ts","sourceRoot":"","sources":["../src/lockfileSchema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAIpD,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsDb,CAAC;AAEX,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsBjB,CAAC;AAEX,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AACzD,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
1
+ {"version":3,"file":"lockfileSchema.d.ts","sourceRoot":"","sources":["../src/lockfileSchema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAIzD,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsDb,CAAC;AAEX,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsBjB,CAAC;AAEX,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AACzD,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
package/dist/logger.d.ts CHANGED
@@ -1,2 +1,4 @@
1
+ import type { Options as OraOptions } from 'ora';
1
2
  export default function logger(log: string, error?: boolean): void;
3
+ export declare function oraOptions(): OraOptions;
2
4
  //# sourceMappingURL=logger.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,QAM1D"}
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,KAAK,CAAC;AAIjD,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,QAM1D;AAED,wBAAgB,UAAU,eAKzB"}
package/dist/logger.js CHANGED
@@ -1,4 +1,3 @@
1
- /* eslint-disable no-console */
2
1
  import chalk from 'chalk';
3
2
  export default function logger(log, error) {
4
3
  if (error) {
@@ -8,4 +7,9 @@ export default function logger(log, error) {
8
7
  console.log(log);
9
8
  }
10
9
  }
10
+ export function oraOptions() {
11
+ // Disables spinner in tests so it doesn't pollute test output
12
+ const opts = { isSilent: process.env.NODE_ENV === 'test' };
13
+ return opts;
14
+ }
11
15
  //# sourceMappingURL=logger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAC/B,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,GAAW,EAAE,KAAe;IACzD,IAAI,KAAK,EAAE;QACT,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;KAC/B;SAAM;QACL,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;KAClB;AACH,CAAC"}
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,GAAW,EAAE,KAAe;IACzD,IAAI,KAAK,EAAE;QACT,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;KAC/B;SAAM;QACL,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;KAClB;AACH,CAAC;AAED,MAAM,UAAU,UAAU;IACxB,8DAA8D;IAC9D,MAAM,IAAI,GAAe,EAAE,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;IAEvE,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -1,3 +1,3 @@
1
1
  export declare const PACKAGE_NAME = "api";
2
- export declare const PACKAGE_VERSION = "7.0.0-beta.3";
2
+ export declare const PACKAGE_VERSION = "7.0.0-beta.4";
3
3
  //# sourceMappingURL=packageInfo.d.ts.map
@@ -1,4 +1,4 @@
1
1
  // This file is automatically updated by the build script.
2
2
  export const PACKAGE_NAME = 'api';
3
- export const PACKAGE_VERSION = '7.0.0-beta.3';
3
+ export const PACKAGE_VERSION = '7.0.0-beta.4';
4
4
  //# sourceMappingURL=packageInfo.js.map
package/dist/storage.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import type { SupportedLanguage } from './codegen/factory.js';
2
2
  import type { Lockfile } from './lockfileSchema.js';
3
- import type { OASDocument } from 'oas/rmoas.types';
3
+ import type { OASDocument } from 'oas/types';
4
4
  import Fetcher from './fetcher.js';
5
5
  export default class Storage {
6
6
  static dir: string;
@@ -1 +1 @@
1
- {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../src/storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAe,MAAM,qBAAqB,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAUnD,OAAO,OAAO,MAAM,cAAc,CAAC;AAGnC,MAAM,CAAC,OAAO,OAAO,OAAO;IAC1B,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC;IAEnB,MAAM,CAAC,QAAQ,EAAE,KAAK,GAAG,QAAQ,CAAC;IAElC,OAAO,EAAE,OAAO,CAAC;IAEjB;;;;;;;OAOG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAqB;IAErC;;;;OAIG;IACH,UAAU,EAAG,MAAM,CAAC;gBAER,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,iBAAiB,EAAE,UAAU,CAAC,EAAE,MAAM;IAa7E,MAAM,CAAC,eAAe;IAItB,MAAM,CAAC,UAAU;IAIjB,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,MAAM;IAgBjC;;;;;;OAMG;WACU,KAAK;IAkBlB,MAAM,CAAC,kBAAkB,IAAI,QAAQ;IASrC,MAAM,CAAC,qBAAqB,CAAC,UAAU,EAAE,WAAW;IAQpD,MAAM,CAAC,WAAW;;;;;;;;;;;;;IAelB,MAAM,CAAC,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,sBAAsB,CAAC,EAAE,OAAO;IAkB7E,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;IAyBpE,WAAW,CAAC,QAAQ,CAAC,EAAE,iBAAiB;IAWxC,aAAa,CAAC,UAAU,EAAE,MAAM;IAIhC;;OAEG;IACH,YAAY;IAIZ;;;OAGG;IACH,eAAe;;;;;;;;;;IAKf;;;OAGG;IACH,MAAM,CAAC,eAAe,CAAC,UAAU,EAAE,MAAM;;;;;;;;;;IAKzC,cAAc;IAQd,cAAc;IASd,uBAAuB;IAQvB,oBAAoB;IAIpB,gBAAgB;IAMhB,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IA4BvC,IAAI,CAAC,UAAU,GAAE,OAAc;IAUrC;;;;;;OAMG;IACH,IAAI,CAAC,IAAI,EAAE,WAAW;IAgDtB;;;OAGG;IACG,MAAM;CAkBb"}
1
+ {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../src/storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAe,MAAM,qBAAqB,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAU7C,OAAO,OAAO,MAAM,cAAc,CAAC;AAGnC,MAAM,CAAC,OAAO,OAAO,OAAO;IAC1B,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC;IAEnB,MAAM,CAAC,QAAQ,EAAE,KAAK,GAAG,QAAQ,CAAC;IAElC,OAAO,EAAE,OAAO,CAAC;IAEjB;;;;;;;OAOG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAqB;IAErC;;;;OAIG;IACH,UAAU,EAAG,MAAM,CAAC;gBAER,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,iBAAiB,EAAE,UAAU,CAAC,EAAE,MAAM;IAa7E,MAAM,CAAC,eAAe;IAItB,MAAM,CAAC,UAAU;IAIjB,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,MAAM;IAgBjC;;;;;;OAMG;WACU,KAAK;IAkBlB,MAAM,CAAC,kBAAkB,IAAI,QAAQ;IASrC,MAAM,CAAC,qBAAqB,CAAC,UAAU,EAAE,WAAW;IAQpD,MAAM,CAAC,WAAW;;;;;;;;;;;;;IAelB,MAAM,CAAC,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,sBAAsB,CAAC,EAAE,OAAO;IAkB7E,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;IAyBpE,WAAW,CAAC,QAAQ,CAAC,EAAE,iBAAiB;IAWxC,aAAa,CAAC,UAAU,EAAE,MAAM;IAIhC;;OAEG;IACH,YAAY;IAIZ;;;OAGG;IACH,eAAe;;;;;;;;;;IAKf;;;OAGG;IACH,MAAM,CAAC,eAAe,CAAC,UAAU,EAAE,MAAM;;;;;;;;;;IAKzC,cAAc;IAQd,cAAc;IASd,uBAAuB;IAQvB,oBAAoB;IAIpB,gBAAgB;IAMhB,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IA4BvC,IAAI,CAAC,UAAU,GAAE,OAAc;IAUrC;;;;;;OAMG;IACH,IAAI,CAAC,IAAI,EAAE,WAAW;IAgDtB;;;OAGG;IACG,MAAM;CAkBb"}
@@ -0,0 +1,29 @@
1
+ // @ts-check
2
+ /* eslint-disable import/no-commonjs */
3
+
4
+ /**
5
+ * In `api` v6, this package was a JS library used JavaScript Proxies to dynamically generate SDKs at runtime.
6
+ * This functionality has been sunset in `api` v7 to focus on its CLI, which builds strongly-typed SDKs.
7
+ * This file is here to throw errors for users that attempt to use the legacy library.
8
+ *
9
+ *
10
+ * @param {unknown} input
11
+ */
12
+ module.exports = function legacyHandler(input) {
13
+ let identifier = 'https://raw.githubusercontent.com/OAI/OpenAPI-Specification/main/examples/v3.0/petstore.json';
14
+
15
+ if (typeof input === 'string') {
16
+ identifier = input;
17
+ }
18
+
19
+ throw new Error(`Oops! You're attempting to use a legacy usage pattern that no longer exists.
20
+
21
+ You can read more about this in our docs: TKTK
22
+
23
+ \`api\` can now generate strongly-typed SDKs that work in pretty much every JS runtime!
24
+
25
+ Try running this command to get started:
26
+
27
+ npx api@latest install ${identifier}
28
+ `);
29
+ };
@@ -0,0 +1,2 @@
1
+ declare function _exports(input: unknown): never;
2
+ export = _exports;
package/package.json CHANGED
@@ -1,22 +1,25 @@
1
1
  {
2
2
  "name": "api",
3
- "version": "7.0.0-beta.3",
3
+ "version": "7.0.0-beta.4",
4
4
  "description": "Magical SDK generation from an OpenAPI definition 🪄",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "api": "bin/api.js"
8
8
  },
9
+ "main": "legacy-require-handler.cjs",
9
10
  "scripts": {
10
11
  "attw": "attw --pack --format table-flipped",
11
12
  "build": "tsc",
12
- "build:versionedfiles": "NODE_OPTIONS=--no-warnings node --loader ts-node/esm bin/buildVersionedFiles.ts",
13
+ "build:legacy-handler": "tsc legacy-require-handler.cjs --checkJs --declaration --emitDeclarationOnly",
14
+ "build:versioned-files": "NODE_OPTIONS=--no-warnings node --loader ts-node/esm bin/buildVersionedFiles.ts",
13
15
  "debug:bin": "NODE_OPTIONS=--no-warnings node --loader ts-node/esm src/bin.ts",
14
16
  "lint:types": "tsc --noEmit",
15
- "prebuild": "rm -rf dist/ && npm run build:versionedfiles",
17
+ "prebuild": "rm -rf dist/ && npm run build:versioned-files",
18
+ "postbuild": "npm run build:legacy-handler",
16
19
  "prepack": "npm run build",
17
20
  "test": "vitest run --coverage",
18
21
  "test:smoke": "vitest --config=vitest-smoketest.config.ts",
19
- "version": "npm run build:versionedfiles && git add schema.json src/packageInfo.ts"
22
+ "version": "npm run build:versioned-files && git add schema.json src/packageInfo.ts"
20
23
  },
21
24
  "repository": {
22
25
  "type": "git",
@@ -34,6 +37,7 @@
34
37
  },
35
38
  "files": [
36
39
  "dist",
40
+ "legacy-require-handler.**",
37
41
  "schema.json"
38
42
  ],
39
43
  "keywords": [
@@ -43,21 +47,21 @@
43
47
  "swagger"
44
48
  ],
45
49
  "dependencies": {
46
- "@readme/api-core": "^7.0.0-beta.3",
50
+ "@readme/api-core": "^7.0.0-beta.4",
47
51
  "@readme/openapi-parser": "^2.4.0",
48
52
  "chalk": "^5.3.0",
49
53
  "commander": "^11.1.0",
54
+ "emphasize": "^6.0.0",
50
55
  "execa": "^8.0.1",
51
- "figures": "^5.0.0",
52
- "httpsnippet-client-api": "^7.0.0-beta.3",
56
+ "figures": "^6.0.1",
57
+ "httpsnippet-client-api": "^7.0.0-beta.4",
53
58
  "js-yaml": "^4.1.0",
54
- "json-schema-to-ts": "^2.9.2",
55
59
  "license": "^1.0.3",
56
60
  "lodash.camelcase": "^4.3.0",
57
61
  "lodash.deburr": "^4.1.0",
58
62
  "lodash.setwith": "^4.3.2",
59
63
  "lodash.startcase": "^4.4.0",
60
- "oas": "^23.0.0",
64
+ "oas": "^24.0.0",
61
65
  "ora": "^7.0.1",
62
66
  "prompts": "^2.4.2",
63
67
  "semver": "^7.3.8",
@@ -67,7 +71,7 @@
67
71
  "validate-npm-package-name": "^5.0.0"
68
72
  },
69
73
  "devDependencies": {
70
- "@api/test-utils": "^7.0.0-beta.3",
74
+ "@api/test-utils": "^7.0.0-beta.4",
71
75
  "@readme/oas-examples": "^5.12.0",
72
76
  "@types/js-yaml": "^4.0.7",
73
77
  "@types/lodash.camelcase": "^4.3.7",
@@ -92,5 +96,5 @@
92
96
  "vitest": "^0.34.5"
93
97
  },
94
98
  "prettier": "@readme/eslint-config/prettier",
95
- "gitHead": "9dbc86caab9ae4b49e7d0dac52ab6c25f5f46170"
99
+ "gitHead": "17f994aef85a15a64b1a8010d944c65dba85470e"
96
100
  }