@sdk-it/core 0.19.1 → 0.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +5 -18
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -976
- package/dist/index.js.map +4 -4
- package/dist/lib/deriver.js +475 -0
- package/dist/lib/deriver.js.map +7 -0
- package/dist/lib/deriver.test.js +417 -0
- package/dist/lib/deriver.test.js.map +7 -0
- package/dist/lib/file-system.d.ts +26 -7
- package/dist/lib/file-system.d.ts.map +1 -1
- package/dist/lib/file-system.js +139 -0
- package/dist/lib/file-system.js.map +7 -0
- package/dist/lib/paths.d.ts +1 -1
- package/dist/lib/paths.js +237 -0
- package/dist/lib/paths.js.map +7 -0
- package/dist/lib/program.js +75 -0
- package/dist/lib/program.js.map +7 -0
- package/dist/lib/ref.d.ts +3 -2
- package/dist/lib/ref.d.ts.map +1 -1
- package/dist/lib/ref.js +83 -0
- package/dist/lib/ref.js.map +7 -0
- package/dist/lib/utils.d.ts +14 -0
- package/dist/lib/utils.d.ts.map +1 -0
- package/dist/lib/utils.js +41 -0
- package/dist/lib/utils.js.map +7 -0
- package/package.json +6 -1
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type ts from 'typescript';
|
|
2
|
+
import type { TypeDeriver } from './deriver';
|
|
3
|
+
import type { ResponseItem } from './paths';
|
|
4
|
+
export declare function removeDuplicates<T>(data: T[], accessor?: (item: T) => T[keyof T] | T): T[];
|
|
5
|
+
export type InferRecordValue<T> = T extends Record<string, infer U> ? U : any;
|
|
6
|
+
export declare function toLitObject<T extends Record<string, any>>(obj: T, accessor?: (value: InferRecordValue<T>) => string): string;
|
|
7
|
+
export type NaunceResponseAnalyzerFn = (handler: ts.ArrowFunction, deriver: TypeDeriver, node: ts.Node) => ResponseItem[];
|
|
8
|
+
export type NaunceResponseAnalyzer = Record<string, NaunceResponseAnalyzerFn>;
|
|
9
|
+
export type ResponseAnalyzerFn = (handler: ts.ArrowFunction, deriver: TypeDeriver) => ResponseItem[];
|
|
10
|
+
export declare function isEmpty(value: unknown): value is null | undefined | '';
|
|
11
|
+
export declare function pascalcase(value: string): string;
|
|
12
|
+
export declare function spinalcase(value: string): string;
|
|
13
|
+
export declare function snakecase(value: string): string;
|
|
14
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,wBAAgB,gBAAgB,CAAC,CAAC,EAChC,IAAI,EAAE,CAAC,EAAE,EACT,QAAQ,GAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAkB,GACrD,CAAC,EAAE,CAEL;AAED,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;AAE9E,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACvD,GAAG,EAAE,CAAC,EACN,QAAQ,GAAE,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,MAAyB,UAKpE;AAED,MAAM,MAAM,wBAAwB,GAAG,CACrC,OAAO,EAAE,EAAE,CAAC,aAAa,EACzB,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,EAAE,CAAC,IAAI,KACV,YAAY,EAAE,CAAC;AACpB,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC;AAE9E,MAAM,MAAM,kBAAkB,GAAG,CAC/B,OAAO,EAAE,EAAE,CAAC,aAAa,EACzB,OAAO,EAAE,WAAW,KACjB,YAAY,EAAE,CAAC;AAEpB,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,IAAI,GAAG,SAAS,GAAG,EAAE,CAWtE;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,UAEvC;AACD,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,UAEvC;AACD,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,UAEtC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import {
|
|
2
|
+
pascalcase as _pascalcase,
|
|
3
|
+
snakecase as _snakecase,
|
|
4
|
+
spinalcase as _spinalcase
|
|
5
|
+
} from "stringcase";
|
|
6
|
+
function removeDuplicates(data, accessor = (item) => item) {
|
|
7
|
+
return [...new Map(data.map((x) => [accessor(x), x])).values()];
|
|
8
|
+
}
|
|
9
|
+
function toLitObject(obj, accessor = (value) => value) {
|
|
10
|
+
return `{${Object.keys(obj).map((key) => `${key}: ${accessor(obj[key])}`).join(", ")}}`;
|
|
11
|
+
}
|
|
12
|
+
function isEmpty(value) {
|
|
13
|
+
if (value === null || value === void 0 || value === "") {
|
|
14
|
+
return true;
|
|
15
|
+
}
|
|
16
|
+
if (Array.isArray(value) && value.length === 0) {
|
|
17
|
+
return true;
|
|
18
|
+
}
|
|
19
|
+
if (typeof value === "object" && Object.keys(value).length === 0) {
|
|
20
|
+
return true;
|
|
21
|
+
}
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
function pascalcase(value) {
|
|
25
|
+
return _pascalcase(value.split("/").join(" "));
|
|
26
|
+
}
|
|
27
|
+
function spinalcase(value) {
|
|
28
|
+
return _spinalcase(value.split("/").join(" "));
|
|
29
|
+
}
|
|
30
|
+
function snakecase(value) {
|
|
31
|
+
return _snakecase(value.split("/").join(" "));
|
|
32
|
+
}
|
|
33
|
+
export {
|
|
34
|
+
isEmpty,
|
|
35
|
+
pascalcase,
|
|
36
|
+
removeDuplicates,
|
|
37
|
+
snakecase,
|
|
38
|
+
spinalcase,
|
|
39
|
+
toLitObject
|
|
40
|
+
};
|
|
41
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/lib/utils.ts"],
|
|
4
|
+
"sourcesContent": ["import {\n pascalcase as _pascalcase,\n snakecase as _snakecase,\n spinalcase as _spinalcase,\n} from 'stringcase';\nimport type ts from 'typescript';\n\nimport type { TypeDeriver } from './deriver';\nimport type { ResponseItem } from './paths';\n\nexport function removeDuplicates<T>(\n data: T[],\n accessor: (item: T) => T[keyof T] | T = (item) => item,\n): T[] {\n return [...new Map(data.map((x) => [accessor(x), x])).values()];\n}\n\nexport type InferRecordValue<T> = T extends Record<string, infer U> ? U : any;\n\nexport function toLitObject<T extends Record<string, any>>(\n obj: T,\n accessor: (value: InferRecordValue<T>) => string = (value) => value,\n) {\n return `{${Object.keys(obj)\n .map((key) => `${key}: ${accessor(obj[key])}`)\n .join(', ')}}`;\n}\n\nexport type NaunceResponseAnalyzerFn = (\n handler: ts.ArrowFunction,\n deriver: TypeDeriver,\n node: ts.Node,\n) => ResponseItem[];\nexport type NaunceResponseAnalyzer = Record<string, NaunceResponseAnalyzerFn>;\n\nexport type ResponseAnalyzerFn = (\n handler: ts.ArrowFunction,\n deriver: TypeDeriver,\n) => ResponseItem[];\n\nexport function isEmpty(value: unknown): value is null | undefined | '' {\n if (value === null || value === undefined || value === '') {\n return true;\n }\n if (Array.isArray(value) && value.length === 0) {\n return true;\n }\n if (typeof value === 'object' && Object.keys(value).length === 0) {\n return true;\n }\n return false;\n}\n\nexport function pascalcase(value: string) {\n return _pascalcase(value.split('/').join(' '));\n}\nexport function spinalcase(value: string) {\n return _spinalcase(value.split('/').join(' '));\n}\nexport function snakecase(value: string) {\n return _snakecase(value.split('/').join(' '));\n}\n"],
|
|
5
|
+
"mappings": "AAAA;AAAA,EACE,cAAc;AAAA,EACd,aAAa;AAAA,EACb,cAAc;AAAA,OACT;AAMA,SAAS,iBACd,MACA,WAAwC,CAAC,SAAS,MAC7C;AACL,SAAO,CAAC,GAAG,IAAI,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;AAChE;AAIO,SAAS,YACd,KACA,WAAmD,CAAC,UAAU,OAC9D;AACA,SAAO,IAAI,OAAO,KAAK,GAAG,EACvB,IAAI,CAAC,QAAQ,GAAG,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,CAAC,EAAE,EAC5C,KAAK,IAAI,CAAC;AACf;AAcO,SAAS,QAAQ,OAAgD;AACtE,MAAI,UAAU,QAAQ,UAAU,UAAa,UAAU,IAAI;AACzD,WAAO;AAAA,EACT;AACA,MAAI,MAAM,QAAQ,KAAK,KAAK,MAAM,WAAW,GAAG;AAC9C,WAAO;AAAA,EACT;AACA,MAAI,OAAO,UAAU,YAAY,OAAO,KAAK,KAAK,EAAE,WAAW,GAAG;AAChE,WAAO;AAAA,EACT;AACA,SAAO;AACT;AAEO,SAAS,WAAW,OAAe;AACxC,SAAO,YAAY,MAAM,MAAM,GAAG,EAAE,KAAK,GAAG,CAAC;AAC/C;AACO,SAAS,WAAW,OAAe;AACxC,SAAO,YAAY,MAAM,MAAM,GAAG,EAAE,KAAK,GAAG,CAAC;AAC/C;AACO,SAAS,UAAU,OAAe;AACvC,SAAO,WAAW,MAAM,MAAM,GAAG,EAAE,KAAK,GAAG,CAAC;AAC9C;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sdk-it/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.21.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.js",
|
|
@@ -14,6 +14,11 @@
|
|
|
14
14
|
"types": "./dist/index.d.ts",
|
|
15
15
|
"import": "./dist/index.js",
|
|
16
16
|
"default": "./dist/index.js"
|
|
17
|
+
},
|
|
18
|
+
"./*": {
|
|
19
|
+
"types": "./dist/lib/*",
|
|
20
|
+
"import": "./dist/lib/*",
|
|
21
|
+
"default": "./dist/lib/*"
|
|
17
22
|
}
|
|
18
23
|
},
|
|
19
24
|
"files": [
|