prisma-kysely 1.7.1 → 2.0.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/README.md +15 -9
- package/dist/__test__/e2e.test.js +346 -43
- package/dist/__test__/e2e.test.js.map +1 -1
- package/dist/dialectTests/common.js +4 -4
- package/dist/dialectTests/common.js.map +1 -1
- package/dist/dialectTests/sqlite.js +27 -5
- package/dist/dialectTests/sqlite.js.map +1 -1
- package/dist/generator.js +37 -11
- package/dist/generator.js.map +1 -1
- package/dist/helpers/generateDatabaseType.js +1 -1
- package/dist/helpers/generateDatabaseType.js.map +1 -1
- package/dist/helpers/generateDatabaseType.test.js +36 -0
- package/dist/helpers/generateDatabaseType.test.js.map +1 -1
- package/dist/helpers/generateEnumType.js +8 -3
- package/dist/helpers/generateEnumType.js.map +1 -1
- package/dist/helpers/generateEnumType.test.js +18 -8
- package/dist/helpers/generateEnumType.test.js.map +1 -1
- package/dist/helpers/generateField.js.map +1 -1
- package/dist/helpers/generateFieldType.js +15 -1
- package/dist/helpers/generateFieldType.js.map +1 -1
- package/dist/helpers/generateFieldType.test.js +24 -0
- package/dist/helpers/generateFieldType.test.js.map +1 -1
- package/dist/helpers/generateFile.js.map +1 -1
- package/dist/helpers/generateFile.test.js +0 -1
- package/dist/helpers/generateFile.test.js.map +1 -1
- package/dist/helpers/generateFiles.js +55 -7
- package/dist/helpers/generateFiles.js.map +1 -1
- package/dist/helpers/generateImplicitManyToManyModels.js +13 -12
- package/dist/helpers/generateImplicitManyToManyModels.js.map +1 -1
- package/dist/helpers/generateImplicitManyToManyModels.test.js +347 -0
- package/dist/helpers/generateImplicitManyToManyModels.test.js.map +1 -1
- package/dist/helpers/generateModel.js +6 -2
- package/dist/helpers/generateModel.js.map +1 -1
- package/dist/helpers/generateModel.test.js +18 -2
- package/dist/helpers/generateModel.test.js.map +1 -1
- package/dist/helpers/generateStringLiteralUnion.test.js +2 -6
- package/dist/helpers/generateStringLiteralUnion.test.js.map +1 -1
- package/dist/helpers/generateTypeOverrideFromDocumentation.js.map +1 -1
- package/dist/helpers/generatedEnumType.test.js +19 -9
- package/dist/helpers/generatedEnumType.test.js.map +1 -1
- package/dist/helpers/multiSchemaHelpers.js +55 -16
- package/dist/helpers/multiSchemaHelpers.js.map +1 -1
- package/dist/helpers/multiSchemaHelpers.test.js +36 -2
- package/dist/helpers/multiSchemaHelpers.test.js.map +1 -1
- package/dist/utils/formatFile.js +18 -8
- package/dist/utils/formatFile.js.map +1 -1
- package/dist/utils/normalizeCase.js +2 -2
- package/dist/utils/normalizeCase.js.map +1 -1
- package/dist/utils/normalizeCase.test.js +8 -0
- package/dist/utils/normalizeCase.test.js.map +1 -1
- package/dist/utils/testUtils.js +17 -7
- package/dist/utils/testUtils.js.map +1 -1
- package/dist/utils/validateConfig.js +9 -0
- package/dist/utils/validateConfig.js.map +1 -1
- package/dist/utils/validateConfig.test.js.map +1 -1
- package/dist/utils/{camelCase.js → words.js} +7 -4
- package/dist/utils/words.js.map +1 -0
- package/package.json +54 -48
- package/dist/helpers/generateTypedAliasDeclaration.js +0 -12
- package/dist/helpers/generateTypedAliasDeclaration.js.map +0 -1
- package/dist/helpers/generateTypedAliasDeclaration.test.js +0 -15
- package/dist/helpers/generateTypedAliasDeclaration.test.js.map +0 -1
- package/dist/utils/camelCase.js.map +0 -1
|
@@ -15,19 +15,29 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
25
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
36
|
const typescript_1 = __importStar(require("typescript"));
|
|
27
37
|
const vitest_1 = require("vitest");
|
|
28
38
|
const generateEnumType_1 = require("./generateEnumType");
|
|
29
39
|
(0, vitest_1.test)("it generates the enum type", () => {
|
|
30
|
-
const
|
|
40
|
+
const { objectDeclaration, typeDeclaration } = (0, generateEnumType_1.generateEnumType)("Name", [
|
|
31
41
|
{ name: "FOO", dbName: "FOO" },
|
|
32
42
|
{ name: "BAR", dbName: "BAR" },
|
|
33
43
|
]);
|
|
@@ -40,7 +50,7 @@ const generateEnumType_1 = require("./generateEnumType");
|
|
|
40
50
|
export type Name = (typeof Name)[keyof typeof Name];\n`);
|
|
41
51
|
});
|
|
42
52
|
(0, vitest_1.test)("it generates the enum type when using Prisma's @map()", () => {
|
|
43
|
-
const
|
|
53
|
+
const { objectDeclaration, typeDeclaration } = (0, generateEnumType_1.generateEnumType)("Name", [
|
|
44
54
|
{ name: "FOO", dbName: "foo" },
|
|
45
55
|
{ name: "BAR", dbName: "bar" },
|
|
46
56
|
]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generatedEnumType.test.js","sourceRoot":"","sources":["../../src/helpers/generatedEnumType.test.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"generatedEnumType.test.js","sourceRoot":"","sources":["../../src/helpers/generatedEnumType.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yDAA+C;AAC/C,mCAAsC;AAEtC,yDAAsD;AAEtD,IAAA,aAAI,EAAC,4BAA4B,EAAE,GAAG,EAAE;IACtC,MAAM,EAAE,iBAAiB,EAAE,eAAe,EAAE,GAAG,IAAA,mCAAgB,EAAC,MAAM,EAAE;QACtE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE;QAC9B,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE;KAC/B,CAAE,CAAC;IAEJ,MAAM,OAAO,GAAG,IAAA,0BAAa,GAAE,CAAC;IAEhC,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAC9B,oBAAE,CAAC,UAAU,CAAC,SAAS,EACvB,oBAAE,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAC,EAChE,oBAAE,CAAC,gBAAgB,CAAC,EAAE,EAAE,EAAE,EAAE,oBAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CACpD,CAAC;IAEF,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC;;;;uDAI8B,CAAC,CAAC;AACzD,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,uDAAuD,EAAE,GAAG,EAAE;IACjE,MAAM,EAAE,iBAAiB,EAAE,eAAe,EAAE,GAAG,IAAA,mCAAgB,EAAC,MAAM,EAAE;QACtE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE;QAC9B,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE;KAC/B,CAAE,CAAC;IAEJ,MAAM,OAAO,GAAG,IAAA,0BAAa,GAAE,CAAC;IAEhC,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAC9B,oBAAE,CAAC,UAAU,CAAC,SAAS,EACvB,oBAAE,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAC,EAChE,oBAAE,CAAC,gBAAgB,CAAC,EAAE,EAAE,EAAE,EAAE,oBAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CACpD,CAAC;IAEF,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC;;;;uDAI8B,CAAC,CAAC;AACzD,CAAC,CAAC,CAAC"}
|
|
@@ -1,27 +1,66 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
6
|
exports.convertToMultiSchemaModels = void 0;
|
|
7
|
+
exports.parseMultiSchemaMap = parseMultiSchemaMap;
|
|
4
8
|
const prisma_ast_1 = require("@mrleebo/prisma-ast");
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
.
|
|
10
|
-
var _a;
|
|
11
|
-
const schemaProperty = model.properties.find((prop) => prop.type === "attribute" && prop.name === "schema");
|
|
12
|
-
const schemaName = (_a = schemaProperty === null || schemaProperty === void 0 ? void 0 : schemaProperty.args) === null || _a === void 0 ? void 0 : _a[0].value;
|
|
13
|
-
if (typeof schemaName !== "string") {
|
|
14
|
-
return [model.name, ""];
|
|
15
|
-
}
|
|
16
|
-
return [model.name, schemaName.replace(/"/g, "")];
|
|
17
|
-
}));
|
|
18
|
-
return models.map((model) => {
|
|
19
|
-
const schemaName = multiSchemaMap.get(model.typeName);
|
|
9
|
+
const typescript_1 = __importDefault(require("typescript"));
|
|
10
|
+
const words_1 = require("../utils/words");
|
|
11
|
+
const convertToMultiSchemaModels = ({ defaultSchema, filterBySchema, groupBySchema, models, multiSchemaMap, }) => {
|
|
12
|
+
return models.flatMap((model) => {
|
|
13
|
+
const schemaName = multiSchemaMap === null || multiSchemaMap === void 0 ? void 0 : multiSchemaMap.get(model.typeName);
|
|
20
14
|
if (!schemaName) {
|
|
21
15
|
return model;
|
|
22
16
|
}
|
|
23
|
-
|
|
17
|
+
if (filterBySchema && !filterBySchema.has(schemaName)) {
|
|
18
|
+
return [];
|
|
19
|
+
}
|
|
20
|
+
if (schemaName === defaultSchema) {
|
|
21
|
+
return model;
|
|
22
|
+
}
|
|
23
|
+
return [
|
|
24
|
+
{
|
|
25
|
+
...model,
|
|
26
|
+
typeName: groupBySchema
|
|
27
|
+
? `${(0, words_1.capitalize)(schemaName)}.${model.typeName}`
|
|
28
|
+
: model.typeName,
|
|
29
|
+
tableName: model.tableName
|
|
30
|
+
? `${schemaName}.${model.tableName}`
|
|
31
|
+
: undefined,
|
|
32
|
+
schema: groupBySchema ? schemaName : undefined,
|
|
33
|
+
},
|
|
34
|
+
];
|
|
24
35
|
});
|
|
25
36
|
};
|
|
26
37
|
exports.convertToMultiSchemaModels = convertToMultiSchemaModels;
|
|
38
|
+
const isIdentifierText = typescript_1.default.isIdentifierText;
|
|
39
|
+
function parseMultiSchemaMap(dataModelStr) {
|
|
40
|
+
var _a;
|
|
41
|
+
const parsedSchema = (0, prisma_ast_1.getSchema)(dataModelStr);
|
|
42
|
+
const multiSchemaMap = new Map();
|
|
43
|
+
for (const block of parsedSchema.list) {
|
|
44
|
+
if (block.type !== "model" &&
|
|
45
|
+
block.type !== "view" &&
|
|
46
|
+
block.type !== "type" &&
|
|
47
|
+
block.type !== "enum") {
|
|
48
|
+
continue;
|
|
49
|
+
}
|
|
50
|
+
const properties = block.type === "enum" ? block.enumerators : block.properties;
|
|
51
|
+
const schemaProperty = properties.find((prop) => prop.type === "attribute" && prop.name === "schema");
|
|
52
|
+
const schemaName = (_a = schemaProperty === null || schemaProperty === void 0 ? void 0 : schemaProperty.args) === null || _a === void 0 ? void 0 : _a[0].value;
|
|
53
|
+
if (typeof schemaName !== "string") {
|
|
54
|
+
multiSchemaMap.set(block.name, "");
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
const schema = JSON.parse(schemaName).toString();
|
|
58
|
+
if (isIdentifierText && !isIdentifierText(schema)) {
|
|
59
|
+
throw new Error(`Cannot generate identifier for schema "${schema}" in model "${block.name}" because it is not a valid Identifier, please disable \`groupBySchema\` or rename it.`);
|
|
60
|
+
}
|
|
61
|
+
multiSchemaMap.set(block.name, schema);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return multiSchemaMap;
|
|
65
|
+
}
|
|
27
66
|
//# sourceMappingURL=multiSchemaHelpers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multiSchemaHelpers.js","sourceRoot":"","sources":["../../src/helpers/multiSchemaHelpers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"multiSchemaHelpers.js","sourceRoot":"","sources":["../../src/helpers/multiSchemaHelpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,16 +27,50 @@ model Eagle {
|
|
|
27
27
|
|
|
28
28
|
@@map("eagles")
|
|
29
29
|
@@schema("birds")
|
|
30
|
-
}
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
model Fish {
|
|
33
|
+
id Int @id
|
|
34
|
+
name String
|
|
35
|
+
|
|
36
|
+
@@map("fish")
|
|
37
|
+
@@schema("public")
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
`;
|
|
31
41
|
(0, vitest_1.test)("returns a list of models with schemas appended to the table name", () => {
|
|
32
42
|
const initialModels = [
|
|
33
43
|
{ typeName: "Elephant", tableName: "elephants" },
|
|
34
44
|
{ typeName: "Eagle", tableName: "eagles" },
|
|
45
|
+
{ typeName: "Fish", tableName: "fish" },
|
|
35
46
|
];
|
|
36
|
-
const result = (0, multiSchemaHelpers_1.convertToMultiSchemaModels)(
|
|
47
|
+
const result = (0, multiSchemaHelpers_1.convertToMultiSchemaModels)({
|
|
48
|
+
models: initialModels,
|
|
49
|
+
groupBySchema: false,
|
|
50
|
+
defaultSchema: "public",
|
|
51
|
+
filterBySchema: null,
|
|
52
|
+
multiSchemaMap: (0, multiSchemaHelpers_1.parseMultiSchemaMap)(testDataModel),
|
|
53
|
+
});
|
|
37
54
|
(0, vitest_1.expect)(result).toEqual([
|
|
38
55
|
{ typeName: "Elephant", tableName: "mammals.elephants" },
|
|
39
56
|
{ typeName: "Eagle", tableName: "birds.eagles" },
|
|
57
|
+
{ typeName: "Fish", tableName: "fish" },
|
|
58
|
+
]);
|
|
59
|
+
});
|
|
60
|
+
(0, vitest_1.test)("returns a list of models with schemas appended to the table name filtered by schema", () => {
|
|
61
|
+
const initialModels = [
|
|
62
|
+
{ typeName: "Elephant", tableName: "elephants" },
|
|
63
|
+
{ typeName: "Eagle", tableName: "eagles" },
|
|
64
|
+
];
|
|
65
|
+
const result = (0, multiSchemaHelpers_1.convertToMultiSchemaModels)({
|
|
66
|
+
models: initialModels,
|
|
67
|
+
groupBySchema: false,
|
|
68
|
+
defaultSchema: "public",
|
|
69
|
+
filterBySchema: new Set(["mammals"]),
|
|
70
|
+
multiSchemaMap: (0, multiSchemaHelpers_1.parseMultiSchemaMap)(testDataModel),
|
|
71
|
+
});
|
|
72
|
+
(0, vitest_1.expect)(result).toEqual([
|
|
73
|
+
{ typeName: "Elephant", tableName: "mammals.elephants" },
|
|
40
74
|
]);
|
|
41
75
|
});
|
|
42
76
|
//# sourceMappingURL=multiSchemaHelpers.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multiSchemaHelpers.test.js","sourceRoot":"","sources":["../../src/helpers/multiSchemaHelpers.test.ts"],"names":[],"mappings":";;AAAA,mCAAsC;AAEtC,
|
|
1
|
+
{"version":3,"file":"multiSchemaHelpers.test.js","sourceRoot":"","sources":["../../src/helpers/multiSchemaHelpers.test.ts"],"names":[],"mappings":";;AAAA,mCAAsC;AAEtC,6DAG8B;AAE9B,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmCrB,CAAC;AAEF,IAAA,aAAI,EAAC,kEAAkE,EAAE,GAAG,EAAE;IAC5E,MAAM,aAAa,GAAG;QACpB,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE;QAChD,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE;QAC1C,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE;KACxC,CAAC;IAEF,MAAM,MAAM,GAAG,IAAA,+CAA0B,EAAC;QACxC,MAAM,EAAE,aAAa;QACrB,aAAa,EAAE,KAAK;QACpB,aAAa,EAAE,QAAQ;QACvB,cAAc,EAAE,IAAI;QACpB,cAAc,EAAE,IAAA,wCAAmB,EAAC,aAAa,CAAC;KACnD,CAAC,CAAC;IAEH,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC;QACrB,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,mBAAmB,EAAE;QACxD,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE;QAChD,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE;KACxC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,qFAAqF,EAAE,GAAG,EAAE;IAC/F,MAAM,aAAa,GAAG;QACpB,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE;QAChD,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE;KAC3C,CAAC;IAEF,MAAM,MAAM,GAAG,IAAA,+CAA0B,EAAC;QACxC,MAAM,EAAE,aAAa;QACrB,aAAa,EAAE,KAAK;QACpB,aAAa,EAAE,QAAQ;QACvB,cAAc,EAAE,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC;QACpC,cAAc,EAAE,IAAA,wCAAmB,EAAC,aAAa,CAAC;KACnD,CAAC,CAAC;IAEH,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC;QACrB,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,mBAAmB,EAAE;KACzD,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
package/dist/utils/formatFile.js
CHANGED
|
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
25
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
36
|
exports.formatFile = void 0;
|
|
27
37
|
const formatFile = async (content) => {
|
|
@@ -36,7 +46,7 @@ const formatFile = async (content) => {
|
|
|
36
46
|
});
|
|
37
47
|
return formatted;
|
|
38
48
|
}
|
|
39
|
-
catch (
|
|
49
|
+
catch (_a) { }
|
|
40
50
|
return content;
|
|
41
51
|
};
|
|
42
52
|
exports.formatFile = formatFile;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatFile.js","sourceRoot":"","sources":["../../src/utils/formatFile.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"formatFile.js","sourceRoot":"","sources":["../../src/utils/formatFile.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAO,MAAM,UAAU,GAAG,KAAK,EAAE,OAAe,EAAE,EAAE;IAIlD,IAAI,CAAC;QACH,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,wDAAa,UAAU,GAAC,CAAC;QAEvD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAC3D,IAAI,CAAC,MAAM;YAAE,OAAO,OAAO,CAAC;QAE5B,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE;YACzC,GAAG,MAAM;YACT,MAAM,EAAE,YAAY;SACrB,CAAC,CAAC;QAEH,OAAO,SAAS,CAAC;IACnB,CAAC;IAAC,WAAM,CAAC,CAAA,CAAC;IAEV,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAnBW,QAAA,UAAU,cAmBrB"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.normalizeCase = void 0;
|
|
4
|
-
const
|
|
5
|
-
const snakeToCamel = (0,
|
|
4
|
+
const words_1 = require("./words");
|
|
5
|
+
const snakeToCamel = (0, words_1.createCamelCaseMapper)();
|
|
6
6
|
const normalizeCase = (name, config) => {
|
|
7
7
|
if (!config.camelCase)
|
|
8
8
|
return name;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normalizeCase.js","sourceRoot":"","sources":["../../src/utils/normalizeCase.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"normalizeCase.js","sourceRoot":"","sources":["../../src/utils/normalizeCase.ts"],"names":[],"mappings":";;;AACA,mCAAsD;AAEtD,MAAM,YAAY,GAAG,IAAA,6BAAqB,GAAE,CAAC;AAEtC,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,MAAc,EAAE,EAAE;IAC5D,IAAI,CAAC,MAAM,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IACnC,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC,CAAC;AAHW,QAAA,aAAa,iBAGxB"}
|
|
@@ -10,6 +10,10 @@ const normalizeCase_1 = require("./normalizeCase");
|
|
|
10
10
|
fileName: "",
|
|
11
11
|
enumFileName: "",
|
|
12
12
|
readOnlyIds: false,
|
|
13
|
+
groupBySchema: false,
|
|
14
|
+
defaultSchema: "public",
|
|
15
|
+
dbTypeName: "DB",
|
|
16
|
+
importExtension: "",
|
|
13
17
|
});
|
|
14
18
|
(0, vitest_1.expect)(newName).toEqual("userId");
|
|
15
19
|
});
|
|
@@ -21,6 +25,10 @@ const normalizeCase_1 = require("./normalizeCase");
|
|
|
21
25
|
fileName: "",
|
|
22
26
|
enumFileName: "",
|
|
23
27
|
readOnlyIds: false,
|
|
28
|
+
groupBySchema: false,
|
|
29
|
+
defaultSchema: "public",
|
|
30
|
+
dbTypeName: "DB",
|
|
31
|
+
importExtension: "",
|
|
24
32
|
});
|
|
25
33
|
(0, vitest_1.expect)(newName).toEqual("user_id");
|
|
26
34
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normalizeCase.test.js","sourceRoot":"","sources":["../../src/utils/normalizeCase.test.ts"],"names":[],"mappings":";;AAAA,mCAAsC;AAEtC,mDAAsD;AAEtD,IAAA,aAAI,EAAC,uDAAuD,EAAE,GAAG,EAAE;IACjE,MAAM,YAAY,GAAG,SAAS,CAAC;IAC/B,MAAM,OAAO,GAAG,IAAA,6BAAa,EAAC,YAAY,EAAE;QAC1C,SAAS,EAAE,IAAI;QACf,gBAAgB,EAAE,YAAY;QAC9B,QAAQ,EAAE,EAAE;QACZ,YAAY,EAAE,EAAE;QAChB,WAAW,EAAE,KAAK;
|
|
1
|
+
{"version":3,"file":"normalizeCase.test.js","sourceRoot":"","sources":["../../src/utils/normalizeCase.test.ts"],"names":[],"mappings":";;AAAA,mCAAsC;AAEtC,mDAAsD;AAEtD,IAAA,aAAI,EAAC,uDAAuD,EAAE,GAAG,EAAE;IACjE,MAAM,YAAY,GAAG,SAAS,CAAC;IAC/B,MAAM,OAAO,GAAG,IAAA,6BAAa,EAAC,YAAY,EAAE;QAC1C,SAAS,EAAE,IAAI;QACf,gBAAgB,EAAE,YAAY;QAC9B,QAAQ,EAAE,EAAE;QACZ,YAAY,EAAE,EAAE;QAChB,WAAW,EAAE,KAAK;QAClB,aAAa,EAAE,KAAK;QACpB,aAAa,EAAE,QAAQ;QACvB,UAAU,EAAE,IAAI;QAChB,eAAe,EAAE,EAAE;KACpB,CAAC,CAAC;IAEH,IAAA,eAAM,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AACpC,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,iEAAiE,EAAE,GAAG,EAAE;IAC3E,MAAM,YAAY,GAAG,SAAS,CAAC;IAC/B,MAAM,OAAO,GAAG,IAAA,6BAAa,EAAC,YAAY,EAAE;QAC1C,SAAS,EAAE,KAAK;QAChB,gBAAgB,EAAE,YAAY;QAC9B,QAAQ,EAAE,EAAE;QACZ,YAAY,EAAE,EAAE;QAChB,WAAW,EAAE,KAAK;QAClB,aAAa,EAAE,KAAK;QACpB,aAAa,EAAE,QAAQ;QACvB,UAAU,EAAE,IAAI;QAChB,eAAe,EAAE,EAAE;KACpB,CAAC,CAAC;IAEH,IAAA,eAAM,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AACrC,CAAC,CAAC,CAAC"}
|
package/dist/utils/testUtils.js
CHANGED
|
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
25
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
36
|
exports.stringifyTsNode = void 0;
|
|
27
37
|
const typescript_1 = __importStar(require("typescript"));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testUtils.js","sourceRoot":"","sources":["../../src/utils/testUtils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"testUtils.js","sourceRoot":"","sources":["../../src/utils/testUtils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yDAA+C;AAExC,MAAM,eAAe,GAAG,CAAC,IAAa,EAAE,EAAE;IAC/C,OAAO,IAAA,0BAAa,GAAE,CAAC,SAAS,CAC9B,oBAAE,CAAC,QAAQ,CAAC,WAAW,EACvB,IAAI,EACJ,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CACzB,EAAE,EACF,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC,oBAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EACpD,oBAAE,CAAC,SAAS,CAAC,IAAI,CAClB,CACF,CAAC;AACJ,CAAC,CAAC;AAVW,QAAA,eAAe,mBAU1B"}
|
|
@@ -20,8 +20,10 @@ exports.configValidator = zod_1.default
|
|
|
20
20
|
zod_1.default.literal("cockroachdb"),
|
|
21
21
|
zod_1.default.literal("mysql"),
|
|
22
22
|
zod_1.default.literal("sqlite"),
|
|
23
|
+
zod_1.default.literal("sqlserver"),
|
|
23
24
|
]),
|
|
24
25
|
fileName: zod_1.default.string().optional().default("types.ts"),
|
|
26
|
+
importExtension: zod_1.default.string().default(""),
|
|
25
27
|
enumFileName: zod_1.default.string().optional(),
|
|
26
28
|
stringTypeOverride: zod_1.default.string().optional(),
|
|
27
29
|
booleanTypeOverride: zod_1.default.string().optional(),
|
|
@@ -33,14 +35,21 @@ exports.configValidator = zod_1.default
|
|
|
33
35
|
jsonTypeOverride: zod_1.default.string().optional(),
|
|
34
36
|
bytesTypeOverride: zod_1.default.string().optional(),
|
|
35
37
|
unsupportedTypeOverride: zod_1.default.string().optional(),
|
|
38
|
+
dbTypeName: zod_1.default.string().default("DB"),
|
|
36
39
|
camelCase: booleanStringLiteral.default(false),
|
|
37
40
|
readOnlyIds: booleanStringLiteral.default(false),
|
|
41
|
+
groupBySchema: booleanStringLiteral.default(false),
|
|
42
|
+
defaultSchema: zod_1.default.string().default("public"),
|
|
43
|
+
filterBySchema: zod_1.default.array(zod_1.default.string()).optional(),
|
|
38
44
|
})
|
|
39
45
|
.strict()
|
|
40
46
|
.transform((config) => {
|
|
41
47
|
if (!config.enumFileName) {
|
|
42
48
|
config.enumFileName = config.fileName;
|
|
43
49
|
}
|
|
50
|
+
if (config.groupBySchema && config.enumFileName !== config.fileName) {
|
|
51
|
+
throw new Error("groupBySchema is not compatible with enumFileName");
|
|
52
|
+
}
|
|
44
53
|
return config;
|
|
45
54
|
});
|
|
46
55
|
const validateConfig = (config) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validateConfig.js","sourceRoot":"","sources":["../../src/utils/validateConfig.ts"],"names":[],"mappings":";;;;;;AAAA,iDAA2C;AAC3C,8CAAoB;AAEpB,MAAM,oBAAoB,GAAG,aAAC;KAC3B,KAAK,CAAC,CAAC,aAAC,CAAC,OAAO,EAAE,EAAE,aAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,aAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;KAC3D,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE;IACjB,IAAI,OAAO,GAAG,KAAK,SAAS;QAAE,OAAO,GAAG,CAAC;IACzC,OAAO,GAAG,KAAK,MAAM,CAAC;AACxB,CAAC,CAAC,CAAC;AAEQ,QAAA,eAAe,GAAG,aAAC;KAC7B,MAAM,CAAC;IAEN,gBAAgB,EAAE,aAAC,CAAC,KAAK,CAAC;QACxB,aAAC,CAAC,OAAO,CAAC,YAAY,CAAC;QACvB,aAAC,CAAC,OAAO,CAAC,aAAa,CAAC;QACxB,aAAC,CAAC,OAAO,CAAC,OAAO,CAAC;QAClB,aAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"validateConfig.js","sourceRoot":"","sources":["../../src/utils/validateConfig.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validateConfig.test.js","sourceRoot":"","sources":["../../src/utils/validateConfig.test.ts"],"names":[],"mappings":";;AAAA,mCAAqD;AAErD,qDAAkD;AAElD,IAAA,kBAAS,EAAC,GAAG,EAAE;IACb,WAAE,CAAC,aAAa,EAAE,CAAC;AACrB,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,6DAA6D,EAAE,GAAG,EAAE;IACvE,MAAM,gBAAgB,GAAG,WAAE,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"validateConfig.test.js","sourceRoot":"","sources":["../../src/utils/validateConfig.test.ts"],"names":[],"mappings":";;AAAA,mCAAqD;AAErD,qDAAkD;AAElD,IAAA,kBAAS,EAAC,GAAG,EAAE;IACb,WAAE,CAAC,aAAa,EAAE,CAAC;AACrB,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,6DAA6D,EAAE,GAAG,EAAE;IACvE,MAAM,gBAAgB,GAAG,WAAE,CAAC,EAAE,EAAuB,CAAC;IACtD,MAAM,oBAAoB,GAAG,WAAE,CAAC,EAAE,EAAwB,CAAC;IAE3D,OAAO,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAChC,OAAO,CAAC,KAAK,GAAG,oBAAoB,CAAC;IAErC,IAAA,+BAAc,EAAC;QACb,gBAAgB,EAAE,UAAU;QAC5B,SAAS,EAAE,OAAO;KACnB,CAAC,CAAC;IAEH,IAAA,eAAM,EAAC,gBAAgB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC5C,IAAA,eAAM,EAAC,oBAAoB,CAAC,CAAC,gBAAgB,EAAE,CAAC;AAClD,CAAC,CAAC,CAAC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.createSnakeCaseMapper = createSnakeCaseMapper;
|
|
4
|
+
exports.createCamelCaseMapper = createCamelCaseMapper;
|
|
5
|
+
exports.capitalize = capitalize;
|
|
4
6
|
function createSnakeCaseMapper({ upperCase = false, underscoreBeforeDigits = false, underscoreBetweenUppercaseLetters = false, } = {}) {
|
|
5
7
|
return memoize((str) => {
|
|
6
8
|
if (str.length === 0) {
|
|
@@ -41,7 +43,6 @@ function createSnakeCaseMapper({ upperCase = false, underscoreBeforeDigits = fal
|
|
|
41
43
|
}
|
|
42
44
|
});
|
|
43
45
|
}
|
|
44
|
-
exports.createSnakeCaseMapper = createSnakeCaseMapper;
|
|
45
46
|
function createCamelCaseMapper({ upperCase = false, } = {}) {
|
|
46
47
|
return memoize((str) => {
|
|
47
48
|
if (str.length === 0) {
|
|
@@ -66,7 +67,6 @@ function createCamelCaseMapper({ upperCase = false, } = {}) {
|
|
|
66
67
|
return out;
|
|
67
68
|
});
|
|
68
69
|
}
|
|
69
|
-
exports.createCamelCaseMapper = createCamelCaseMapper;
|
|
70
70
|
function isAllUpperCaseSnakeCase(str) {
|
|
71
71
|
for (let i = 1, l = str.length; i < l; ++i) {
|
|
72
72
|
const char = str[i];
|
|
@@ -90,4 +90,7 @@ function memoize(func) {
|
|
|
90
90
|
return mapped;
|
|
91
91
|
};
|
|
92
92
|
}
|
|
93
|
-
|
|
93
|
+
function capitalize(str) {
|
|
94
|
+
return str.charAt(0).toUpperCase() + str.slice(1);
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=words.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"words.js","sourceRoot":"","sources":["../../src/utils/words.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,67 +1,73 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "prisma-kysely",
|
|
3
|
+
"version": "2.0.0",
|
|
3
4
|
"description": "Generate Kysely database types from a Prisma schema",
|
|
4
5
|
"repository": {
|
|
5
|
-
"url": "https://github.com/valtyr/prisma-kysely"
|
|
6
|
+
"url": "git+https://github.com/valtyr/prisma-kysely.git"
|
|
6
7
|
},
|
|
7
|
-
"version": "1.7.1",
|
|
8
|
-
"main": "dist/generator.js",
|
|
9
|
-
"files": [
|
|
10
|
-
"dist"
|
|
11
|
-
],
|
|
12
8
|
"license": "MIT",
|
|
9
|
+
"author": {
|
|
10
|
+
"name": "Valtyr Orn Kjartansson",
|
|
11
|
+
"url": "http://valtyr.is"
|
|
12
|
+
},
|
|
13
|
+
"contributors": [
|
|
14
|
+
{
|
|
15
|
+
"name": "Alistair Smith",
|
|
16
|
+
"url": "https://alistair.sh"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"name": "Arthur Fiorette",
|
|
20
|
+
"url": "https://arthur.place"
|
|
21
|
+
}
|
|
22
|
+
],
|
|
23
|
+
"main": "dist/generator.js",
|
|
13
24
|
"bin": {
|
|
14
25
|
"prisma-kysely": "dist/bin.js"
|
|
15
26
|
},
|
|
27
|
+
"files": [
|
|
28
|
+
"dist"
|
|
29
|
+
],
|
|
16
30
|
"scripts": {
|
|
17
|
-
"start": "node dist/bin.js",
|
|
18
|
-
"dev": "tspc --watch",
|
|
19
31
|
"build": "tspc",
|
|
20
|
-
"
|
|
21
|
-
"
|
|
22
|
-
"fix": "prettier --write \"**/*.{ts,tsx,md}\"",
|
|
32
|
+
"dev": "tspc --watch",
|
|
33
|
+
"fix": "prettier --write .",
|
|
23
34
|
"lint": "eslint ./src",
|
|
24
|
-
"
|
|
35
|
+
"prepack": "yarn build",
|
|
25
36
|
"release": "yarn build && yarn changeset publish",
|
|
26
|
-
"
|
|
37
|
+
"start": "node dist/bin.js",
|
|
38
|
+
"test": "yarn build && vitest --passWithNoTests --coverage",
|
|
39
|
+
"typecheck": "tspc --noemit"
|
|
27
40
|
},
|
|
28
41
|
"dependencies": {
|
|
29
|
-
"@mrleebo/prisma-ast": "^0.
|
|
30
|
-
"@prisma/generator-helper": "
|
|
31
|
-
"@prisma/internals": "
|
|
32
|
-
"typescript": "^5.
|
|
33
|
-
"zod": "^
|
|
42
|
+
"@mrleebo/prisma-ast": "^0.13.0",
|
|
43
|
+
"@prisma/generator-helper": "6.15.0",
|
|
44
|
+
"@prisma/internals": "6.15.0",
|
|
45
|
+
"typescript": "^5.9.2",
|
|
46
|
+
"zod": "^4.1.5"
|
|
34
47
|
},
|
|
35
48
|
"devDependencies": {
|
|
36
|
-
"@changesets/cli": "^2.
|
|
37
|
-
"@trivago/prettier-plugin-sort-imports": "^
|
|
38
|
-
"@types/
|
|
39
|
-
"@types/
|
|
40
|
-
"@types/
|
|
41
|
-
"@
|
|
42
|
-
"@typescript-eslint/
|
|
43
|
-
"@typescript-eslint/
|
|
44
|
-
"@vitest/coverage-v8": "^
|
|
45
|
-
"
|
|
46
|
-
"
|
|
47
|
-
"
|
|
48
|
-
"
|
|
49
|
-
"
|
|
50
|
-
"
|
|
51
|
-
"
|
|
52
|
-
"
|
|
53
|
-
"
|
|
54
|
-
"
|
|
55
|
-
|
|
49
|
+
"@changesets/cli": "^2.29.6",
|
|
50
|
+
"@trivago/prettier-plugin-sort-imports": "^5.2.2",
|
|
51
|
+
"@types/node": "24.3.0",
|
|
52
|
+
"@types/pg": "^8.15.5",
|
|
53
|
+
"@types/prettier": "3.0.0",
|
|
54
|
+
"@typescript-eslint/eslint-plugin": "^8.41.0",
|
|
55
|
+
"@typescript-eslint/parser": "^8.41.0",
|
|
56
|
+
"@typescript-eslint/typescript-estree": "^8.41.0",
|
|
57
|
+
"@vitest/coverage-v8": "^3.2.4",
|
|
58
|
+
"eslint": "^9.34.0",
|
|
59
|
+
"kysely": "^0.28.2",
|
|
60
|
+
"mysql2": "^3.14.1",
|
|
61
|
+
"pg": "^8.16.2",
|
|
62
|
+
"prettier": "^3.6.2",
|
|
63
|
+
"prisma": "6.15.0",
|
|
64
|
+
"ts-patch": "^3.3.0",
|
|
65
|
+
"typescript-transform-paths": "^3.5.5",
|
|
66
|
+
"vite-tsconfig-paths": "^5.1.4",
|
|
67
|
+
"vitest": "^3.2.4"
|
|
68
|
+
},
|
|
69
|
+
"peerDependencies": {
|
|
70
|
+
"prisma": "~6.15"
|
|
56
71
|
},
|
|
57
|
-
"
|
|
58
|
-
"importOrder": [
|
|
59
|
-
"^\\./env$",
|
|
60
|
-
"<THIRD_PARTY_MODULES>",
|
|
61
|
-
"^~/.*$",
|
|
62
|
-
"^[./]"
|
|
63
|
-
],
|
|
64
|
-
"importOrderSeparation": true,
|
|
65
|
-
"importOrderSortSpecifiers": true
|
|
66
|
-
}
|
|
72
|
+
"packageManager": "yarn@1.22.22"
|
|
67
73
|
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.generateTypedAliasDeclaration = void 0;
|
|
7
|
-
const typescript_1 = __importDefault(require("typescript"));
|
|
8
|
-
const generateTypedAliasDeclaration = (name, type) => {
|
|
9
|
-
return typescript_1.default.factory.createTypeAliasDeclaration([typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.ExportKeyword)], typescript_1.default.factory.createIdentifier(name), undefined, type);
|
|
10
|
-
};
|
|
11
|
-
exports.generateTypedAliasDeclaration = generateTypedAliasDeclaration;
|
|
12
|
-
//# sourceMappingURL=generateTypedAliasDeclaration.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generateTypedAliasDeclaration.js","sourceRoot":"","sources":["../../src/helpers/generateTypedAliasDeclaration.ts"],"names":[],"mappings":";;;;;;AAAA,4DAA4B;AAErB,MAAM,6BAA6B,GAAG,CAC3C,IAAY,EACZ,IAAiB,EACjB,EAAE;IACF,OAAO,oBAAE,CAAC,OAAO,CAAC,0BAA0B,CAC1C,CAAC,oBAAE,CAAC,OAAO,CAAC,cAAc,CAAC,oBAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,EACxD,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,EACjC,SAAS,EACT,IAAI,CACL,CAAC;AACJ,CAAC,CAAC;AAVW,QAAA,6BAA6B,iCAUxC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const typescript_1 = __importDefault(require("typescript"));
|
|
7
|
-
const vitest_1 = require("vitest");
|
|
8
|
-
const generateTypedAliasDeclaration_1 = require("./generateTypedAliasDeclaration");
|
|
9
|
-
const testUtils_1 = require("../utils/testUtils");
|
|
10
|
-
(0, vitest_1.test)("it creates and exports a type alias :D", () => {
|
|
11
|
-
const node = (0, generateTypedAliasDeclaration_1.generateTypedAliasDeclaration)("typeOne", typescript_1.default.factory.createLiteralTypeNode(typescript_1.default.factory.createNull()));
|
|
12
|
-
const result = (0, testUtils_1.stringifyTsNode)(node);
|
|
13
|
-
(0, vitest_1.expect)(result).toEqual(`export type typeOne = null;`);
|
|
14
|
-
});
|
|
15
|
-
//# sourceMappingURL=generateTypedAliasDeclaration.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generateTypedAliasDeclaration.test.js","sourceRoot":"","sources":["../../src/helpers/generateTypedAliasDeclaration.test.ts"],"names":[],"mappings":";;;;;AAAA,4DAA4B;AAC5B,mCAAsC;AAEtC,mFAAwF;AACxF,kDAAoD;AAEpD,IAAA,aAAI,EAAC,wCAAwC,EAAE,GAAG,EAAE;IAClD,MAAM,IAAI,GAAG,IAAA,6DAA6B,EACxC,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAAC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAC1D,CAAC;IACF,MAAM,MAAM,GAAG,IAAA,2BAAe,EAAC,IAAI,CAAC,CAAC;IAErC,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;AACxD,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"camelCase.js","sourceRoot":"","sources":["../../src/utils/camelCase.ts"],"names":[],"mappings":"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"}
|