@balena/abstract-sql-to-typescript 3.0.0 → 3.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.versionbot/CHANGELOG.yml +31 -1
- package/CHANGELOG.md +6 -0
- package/out/generate.js +2 -2
- package/out/generate.js.map +1 -1
- package/out/index.d.ts +2 -2
- package/package.json +2 -2
- package/src/generate.ts +2 -2
- package/src/index.ts +6 -2
|
@@ -1,3 +1,33 @@
|
|
|
1
|
+
- commits:
|
|
2
|
+
- subject: Use `[A] | []` rather than `[A?]` for singular references
|
|
3
|
+
hash: 0b9661d460138a2e93e30974bb792f2f452290b0
|
|
4
|
+
body: |
|
|
5
|
+
This is a more accurate representation because the result will never
|
|
6
|
+
contain `undefined` and will either be length of 0 or 1
|
|
7
|
+
footer:
|
|
8
|
+
Change-type: patch
|
|
9
|
+
change-type: patch
|
|
10
|
+
author: Pagan Gazzard
|
|
11
|
+
nested: []
|
|
12
|
+
- subject: Fix `Resource` typing to allow for null
|
|
13
|
+
hash: 9e1e5f606cbeb6b9e9739444291f43b80b480d3a
|
|
14
|
+
body: ""
|
|
15
|
+
footer:
|
|
16
|
+
Change-type: patch
|
|
17
|
+
change-type: patch
|
|
18
|
+
author: Pagan Gazzard
|
|
19
|
+
nested: []
|
|
20
|
+
- subject: Fix `Resource` typing for expandable properties
|
|
21
|
+
hash: 8f79d7379e132d17817b8420b01b198e2c1e7ae5
|
|
22
|
+
body: ""
|
|
23
|
+
footer:
|
|
24
|
+
Change-type: patch
|
|
25
|
+
change-type: patch
|
|
26
|
+
author: Pagan Gazzard
|
|
27
|
+
nested: []
|
|
28
|
+
version: 3.0.1
|
|
29
|
+
title: ""
|
|
30
|
+
date: 2024-05-03T16:59:02.876Z
|
|
1
31
|
- commits:
|
|
2
32
|
- subject: Export a `Resource` type which all resources should conform to
|
|
3
33
|
hash: 188ac11c28a722c202732b0ee71760e6e0c0d4e4
|
|
@@ -42,7 +72,7 @@
|
|
|
42
72
|
nested: []
|
|
43
73
|
version: 3.0.0
|
|
44
74
|
title: ""
|
|
45
|
-
date: 2024-05-02T11:
|
|
75
|
+
date: 2024-05-02T11:30:52.814Z
|
|
46
76
|
- commits:
|
|
47
77
|
- subject: Improve foreign key typings by referencing the appropriate interface
|
|
48
78
|
hash: 2be23a8ad8a051bac1c52c0ca0b99c30e8c114d1
|
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,12 @@ All notable changes to this project will be documented in this file
|
|
|
4
4
|
automatically by Versionist. DO NOT EDIT THIS FILE MANUALLY!
|
|
5
5
|
This project adheres to [Semantic Versioning](http://semver.org/).
|
|
6
6
|
|
|
7
|
+
## 3.0.1 - 2024-05-03
|
|
8
|
+
|
|
9
|
+
* Use `[A] | []` rather than `[A?]` for singular references [Pagan Gazzard]
|
|
10
|
+
* Fix `Resource` typing to allow for null [Pagan Gazzard]
|
|
11
|
+
* Fix `Resource` typing for expandable properties [Pagan Gazzard]
|
|
12
|
+
|
|
7
13
|
## 3.0.0 - 2024-05-02
|
|
8
14
|
|
|
9
15
|
* Export a `Resource` type which all resources should conform to [Pagan Gazzard]
|
package/out/generate.js
CHANGED
|
@@ -28,8 +28,8 @@ const sqlTypeToTypescriptType = (m, f, mode) => {
|
|
|
28
28
|
if (mode === 'Write') {
|
|
29
29
|
return referencedFieldType;
|
|
30
30
|
}
|
|
31
|
-
const nullable = f.required ? '' : '
|
|
32
|
-
return `{ __id: ${referencedFieldType} } | [${referencedInterface}${nullable}
|
|
31
|
+
const nullable = f.required ? '' : ' | []';
|
|
32
|
+
return `{ __id: ${referencedFieldType} } | [${referencedInterface}]${nullable}`;
|
|
33
33
|
}
|
|
34
34
|
default:
|
|
35
35
|
return `Types['${f.dataType}']['${mode}']`;
|
package/out/generate.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../src/generate.ts"],"names":[],"mappings":";;;AASA,yEAGuC;AACvC,6CAAoE;AAOpE,MAAM,WAAW,GAAG,oEAAoE,CAAC;AAEzF,MAAM,MAAM,GAAG,IAAI,yBAAW,CAC7B,IAAA,sCAAwB,EAAC,oBAAoB,EAAE,EAAE,CAAC,CAClD,CAAC;AAEF,MAAM,wBAAwB,GAAG,CAAC,CAAS,EAAU,EAAE,CACtD,CAAC;KACC,KAAK,CAAC,MAAM,CAAC;KACb,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KACjD,IAAI,CAAC,EAAE,CAAC,CAAC;AAEZ,MAAM,sBAAsB,GAAG,CAAC,SAAiB,EAAE,IAAU,EAAE,EAAE,CAChE,GAAG,wBAAwB,CAAC,SAAS,CAAC,KAAK,IAAI,IAAI,CAAC;AAErD,MAAM,uBAAuB,GAAG,CAC/B,CAAsB,EACtB,CAAmB,EACnB,IAAU,EACD,EAAE;IACX,IAAI,CAAC,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;QACrE,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAC7B,CAAC,UAAU,EAAwB,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,CAC5D,CAAC;QACF,IAAI,QAAQ,EAAE,CAAC;YACd,MAAM,CAAC,EAAE,AAAD,EAAG,GAAG,aAAa,CAAC,GAAG,QAAQ,CAAC;YACxC,OAAO,aAAa;iBAClB,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;iBAChE,IAAI,CAAC,KAAK,CAAC,CAAC;QACf,CAAC;IACF,CAAC;IAED,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC;QACpB,KAAK,aAAa,CAAC;QACnB,KAAK,YAAY,CAAC,CAAC,CAAC;YACnB,MAAM,mBAAmB,GAAG,sBAAsB,CACjD,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAW,CAAC,YAAY,CAAC,CAAC,IAAI,EACzC,IAAI,CACJ,CAAC;YACF,MAAM,mBAAmB,GAAG,GAAG,mBAAmB,KAAK,CAAC,CAAC,UAAW,CAAC,SAAS,IAAI,CAAC;YACnF,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;gBACtB,OAAO,mBAAmB,CAAC;YAC5B,CAAC;YAED,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../src/generate.ts"],"names":[],"mappings":";;;AASA,yEAGuC;AACvC,6CAAoE;AAOpE,MAAM,WAAW,GAAG,oEAAoE,CAAC;AAEzF,MAAM,MAAM,GAAG,IAAI,yBAAW,CAC7B,IAAA,sCAAwB,EAAC,oBAAoB,EAAE,EAAE,CAAC,CAClD,CAAC;AAEF,MAAM,wBAAwB,GAAG,CAAC,CAAS,EAAU,EAAE,CACtD,CAAC;KACC,KAAK,CAAC,MAAM,CAAC;KACb,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KACjD,IAAI,CAAC,EAAE,CAAC,CAAC;AAEZ,MAAM,sBAAsB,GAAG,CAAC,SAAiB,EAAE,IAAU,EAAE,EAAE,CAChE,GAAG,wBAAwB,CAAC,SAAS,CAAC,KAAK,IAAI,IAAI,CAAC;AAErD,MAAM,uBAAuB,GAAG,CAC/B,CAAsB,EACtB,CAAmB,EACnB,IAAU,EACD,EAAE;IACX,IAAI,CAAC,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;QACrE,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAC7B,CAAC,UAAU,EAAwB,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,CAC5D,CAAC;QACF,IAAI,QAAQ,EAAE,CAAC;YACd,MAAM,CAAC,EAAE,AAAD,EAAG,GAAG,aAAa,CAAC,GAAG,QAAQ,CAAC;YACxC,OAAO,aAAa;iBAClB,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;iBAChE,IAAI,CAAC,KAAK,CAAC,CAAC;QACf,CAAC;IACF,CAAC;IAED,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC;QACpB,KAAK,aAAa,CAAC;QACnB,KAAK,YAAY,CAAC,CAAC,CAAC;YACnB,MAAM,mBAAmB,GAAG,sBAAsB,CACjD,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAW,CAAC,YAAY,CAAC,CAAC,IAAI,EACzC,IAAI,CACJ,CAAC;YACF,MAAM,mBAAmB,GAAG,GAAG,mBAAmB,KAAK,CAAC,CAAC,UAAW,CAAC,SAAS,IAAI,CAAC;YACnF,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;gBACtB,OAAO,mBAAmB,CAAC;YAC5B,CAAC;YAED,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YAC3C,OAAO,WAAW,mBAAmB,SAAS,mBAAmB,IAAI,QAAQ,EAAE,CAAC;QACjF,CAAC;QACD;YACC,OAAO,UAAU,CAAC,CAAC,QAAQ,OAAO,IAAI,IAAI,CAAC;IAC7C,CAAC;AACF,CAAC,CAAC;AAEF,MAAM,sBAAsB,GAAG,CAC9B,CAAsB,EACtB,MAA0B,EAC1B,IAAU,EACC,EAAE,CACb,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;IAChB,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7C,OAAO,GAAG,IAAA,0CAAkB,EAAC,CAAC,CAAC,SAAS,CAAC,KAAK,uBAAuB,CACpE,CAAC,EACD,CAAC,EACD,IAAI,CACJ,GAAG,QAAQ,GAAG,CAAC;AACjB,CAAC,CAAC,CAAC;AAEJ,MAAM,oBAAoB,GAAG,CAC5B,CAAsB,EACtB,aAA2B,EAC3B,eAAuC,EACvC,IAAU,EACV,YAA8B,EAC9B,SAAiB,EACN,EAAE,CACb,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;IAC1C,IAAI,GAAG,KAAK,GAAG,EAAE,CAAC;QACjB,MAAM,CAAC,UAAU,EAAE,eAAe,CAAC,GAClC,aACA,CAAC,CAAC,CAAC;QACJ,IAAI,YAAY,CAAC,OAAO,KAAK,UAAU,IAAI,eAAe,IAAI,IAAI,EAAE,CAAC;YACpE,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;YACrD,IAAI,eAAe,IAAI,IAAI,EAAE,CAAC;gBAC7B,MAAM,mBAAmB,GAAG,sBAAsB,CACjD,eAAe,CAAC,IAAI,EACpB,IAAI,CACJ,CAAC;gBACF,MAAM,cAAc,GAAG;oBACtB,GAAG,SAAS,YAAY,mBAAmB,IAAI;iBAC/C,CAAC;gBACF,MAAM,OAAO,GAAG,eAAe,CAAC,IAAA,0CAAkB,EAAC,SAAS,CAAC,CAAC,CAAC;gBAC/D,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;oBACrB,cAAc,CAAC,IAAI,CAClB,GAAG,IAAA,0CAAkB,EAAC,OAAO,CAAC,YAAY,mBAAmB,IAAI,CACjE,CAAC;gBACH,CAAC;gBACD,OAAO,cAAc,CAAC;YACvB,CAAC;QACF,CAAC;QACD,OAAO,EAAE,CAAC;IACX,CAAC;IACD,OAAO,oBAAoB,CAC1B,CAAC,EACA,aAA0C,CAAC,GAAG,CAAC,EAChD,eAAe,EACf,IAAI,EACJ,YAAY,EACZ,GAAG,SAAS,KAAK,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CACzC,CAAC;AACH,CAAC,CAAC,CAAC;AAEJ,MAAM,6BAA6B,GAAG,CACrC,CAAsB,EACtB,KAAuB,EACvB,IAAU,EACC,EAAE;IACb,MAAM,aAAa,GAAG,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAC1D,IAAI,aAAa,IAAI,IAAI,EAAE,CAAC;QAC3B,OAAO,EAAE,CAAC;IACX,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QAEjD,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;YACnB,OAAO,EAAE,CAAC;QACX,CAAC;QACD,MAAM,eAAe,GAAG,MAAM,CAAC,WAAW,CACzC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC;YACxD,QAAQ;YACR,QAAQ;SACR,CAAC,CACF,CAAC;QACF,OAAO,oBAAoB,CAC1B,CAAC,EACD,aAAa,CAAC,GAAG,CAAC,EAClB,eAAe,EACf,IAAI,EACJ,KAAK,EACL,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CACtB,CAAC;IACH,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,CAAsB,EAAE,KAAuB,EAAE,EAAE;IAC5E,OAAO,MAAM,CAAA;mBACK,wBAAwB,CAAC,KAAK,CAAC,IAAI,CAAC;;IAEnD;QACD,GAAG,sBAAsB,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC;QAClD,GAAG,6BAA6B,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC;KAClD,CAAC,IAAI,CAAC,QAAQ,CAAC;;;IAGd,CAAC,GAAG,sBAAsB,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;;;CAGvE,CAAC;AACF,CAAC,CAAC;AAIK,MAAM,4BAA4B,GAAG,CAC3C,CAAsB,EACb,EAAE;IACX,OAAO,MAAM,CAAA;EACZ,WAAW;EACX,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;SACrB,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;QAClB,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC9B,OAAO,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/B,CAAC,CAAC;SACD,IAAI,CAAC,MAAM,CAAC;CACb,CAAC;AACF,CAAC,CAAC;AAZW,QAAA,4BAA4B,gCAYvC"}
|
package/out/index.d.ts
CHANGED
|
@@ -14,9 +14,9 @@ export type Resource<T extends object = object> = {
|
|
|
14
14
|
Read: {
|
|
15
15
|
[key in keyof T]: ReadTypes | {
|
|
16
16
|
__id: ReadTypes;
|
|
17
|
-
} | Resource[];
|
|
17
|
+
} | Array<Resource['Read']> | null;
|
|
18
18
|
};
|
|
19
19
|
Write: {
|
|
20
|
-
[key in keyof T]: WriteTypes;
|
|
20
|
+
[key in keyof T]: WriteTypes | null;
|
|
21
21
|
};
|
|
22
22
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@balena/abstract-sql-to-typescript",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.1",
|
|
4
4
|
"description": "A translator for abstract sql into typescript types.",
|
|
5
5
|
"main": "out/index.js",
|
|
6
6
|
"types": "out/index.d.ts",
|
|
@@ -50,6 +50,6 @@
|
|
|
50
50
|
"_": "test/**/*.ts"
|
|
51
51
|
},
|
|
52
52
|
"versionist": {
|
|
53
|
-
"publishedAt": "2024-05-
|
|
53
|
+
"publishedAt": "2024-05-03T16:59:03.119Z"
|
|
54
54
|
}
|
|
55
55
|
}
|
package/src/generate.ts
CHANGED
|
@@ -62,8 +62,8 @@ const sqlTypeToTypescriptType = (
|
|
|
62
62
|
return referencedFieldType;
|
|
63
63
|
}
|
|
64
64
|
|
|
65
|
-
const nullable = f.required ? '' : '
|
|
66
|
-
return `{ __id: ${referencedFieldType} } | [${referencedInterface}${nullable}
|
|
65
|
+
const nullable = f.required ? '' : ' | []';
|
|
66
|
+
return `{ __id: ${referencedFieldType} } | [${referencedInterface}]${nullable}`;
|
|
67
67
|
}
|
|
68
68
|
default:
|
|
69
69
|
return `Types['${f.dataType}']['${mode}']`;
|
package/src/index.ts
CHANGED
|
@@ -15,9 +15,13 @@ type WriteTypes = Types[keyof Types]['Write'];
|
|
|
15
15
|
|
|
16
16
|
export type Resource<T extends object = object> = {
|
|
17
17
|
Read: {
|
|
18
|
-
[key in keyof T]:
|
|
18
|
+
[key in keyof T]:
|
|
19
|
+
| ReadTypes
|
|
20
|
+
| { __id: ReadTypes }
|
|
21
|
+
| Array<Resource['Read']>
|
|
22
|
+
| null;
|
|
19
23
|
};
|
|
20
24
|
Write: {
|
|
21
|
-
[key in keyof T]: WriteTypes;
|
|
25
|
+
[key in keyof T]: WriteTypes | null;
|
|
22
26
|
};
|
|
23
27
|
};
|