ajsc 1.0.6 → 1.0.7

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.
@@ -22,14 +22,15 @@ export class TypescriptProcedureConverter extends TypescriptBaseConverter {
22
22
  const dataCode = this.generateObjectType(this.ir.data.irNode, {
23
23
  getReferencedType: this.getReferencedType.bind(this),
24
24
  });
25
+ // use 'type' instead of 'interface' for the generated types because we can get `{} & {}` or `Record<string,string>`
25
26
  this.code = `export namespace ${scopeName} {
26
27
  ${this.refTypes
27
28
  .map(([sig, name, { code }]) => `export type ${name} = ${code}`)
28
29
  .join("\n")}
29
30
 
30
- export interface Args ${argsCode}
31
+ export type Args = ${argsCode}
31
32
 
32
- export interface Data ${dataCode}
33
+ export type Data = ${dataCode}
33
34
  }`;
34
35
  }
35
36
  getUniqueRefTypeName(signature, nodePath) {
@@ -1 +1 @@
1
- {"version":3,"file":"TypescriptProcedureConverter.js","sourceRoot":"","sources":["../src/TypescriptProcedureConverter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TypescriptProcedureConverter.js","sourceRoot":"","sources":["../src/TypescriptProcedureConverter.ts"],"names":[],"mappings":"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"}
@@ -7,9 +7,9 @@ describe("TypescriptProceduresPlugin", () => {
7
7
  data: {},
8
8
  });
9
9
  expect(converter.code.replace(/\s/g, "")).toMatch(`export namespace MyScope {
10
- export interface Args { [key:string]: unknown }
10
+ export type Args = { [key:string]: unknown }
11
11
 
12
- export interface Data { [key:string]: unknown }
12
+ export type Data = { [key:string]: unknown }
13
13
  }`.replace(/\s/g, ""));
14
14
  });
15
15
  it("complex json-schema", () => {
@@ -952,9 +952,9 @@ export type StripeMetadata = { activeUsersUsageSubscriptionItemIds: Array<string
952
952
  export type Card = { brand: string; exp_month: number; exp_year: number; last4: number; }
953
953
  export type Contact = { email: string; name: string; phone: string; }
954
954
 
955
- export interface Args { pagination?: Pagination; organizations: Array<OrganizationItem>; }
955
+ export type Args = { pagination?: Pagination; organizations: Array<OrganizationItem>; }
956
956
 
957
- export interface Data { pagination?: Pagination; organizations: Array<OrganizationItem>; }
957
+ export type Data = { pagination?: Pagination; organizations: Array<OrganizationItem>; }
958
958
  }`.replace(/\s/g, ""));
959
959
  });
960
960
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ajsc",
3
- "version": "1.0.6",
3
+ "version": "1.0.7",
4
4
  "description": "Another Json-Schema Converter",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -42,14 +42,15 @@ export class TypescriptProcedureConverter extends TypescriptBaseConverter {
42
42
  getReferencedType: this.getReferencedType.bind(this),
43
43
  });
44
44
 
45
+ // use 'type' instead of 'interface' for the generated types because we can get `{} & {}` or `Record<string,string>`
45
46
  this.code = `export namespace ${scopeName} {
46
47
  ${this.refTypes
47
48
  .map(([sig, name, { code }]) => `export type ${name} = ${code}`)
48
49
  .join("\n")}
49
50
 
50
- export interface Args ${argsCode}
51
+ export type Args = ${argsCode}
51
52
 
52
- export interface Data ${dataCode}
53
+ export type Data = ${dataCode}
53
54
  }`;
54
55
  }
55
56
 
@@ -11,9 +11,9 @@ describe("TypescriptProceduresPlugin", () => {
11
11
 
12
12
  expect(converter.code.replace(/\s/g, "")).toMatch(
13
13
  `export namespace MyScope {
14
- export interface Args { [key:string]: unknown }
14
+ export type Args = { [key:string]: unknown }
15
15
 
16
- export interface Data { [key:string]: unknown }
16
+ export type Data = { [key:string]: unknown }
17
17
  }`.replace(/\s/g, ""),
18
18
  );
19
19
  });
@@ -960,9 +960,9 @@ export type StripeMetadata = { activeUsersUsageSubscriptionItemIds: Array<string
960
960
  export type Card = { brand: string; exp_month: number; exp_year: number; last4: number; }
961
961
  export type Contact = { email: string; name: string; phone: string; }
962
962
 
963
- export interface Args { pagination?: Pagination; organizations: Array<OrganizationItem>; }
963
+ export type Args = { pagination?: Pagination; organizations: Array<OrganizationItem>; }
964
964
 
965
- export interface Data { pagination?: Pagination; organizations: Array<OrganizationItem>; }
965
+ export type Data = { pagination?: Pagination; organizations: Array<OrganizationItem>; }
966
966
  }`.replace(/\s/g, ""),
967
967
  );
968
968
  });