prisma-kysely 1.2.1 → 1.3.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 +4 -2
- package/dist/__test__/e2e.test.js +72 -0
- package/dist/__test__/e2e.test.js.map +1 -1
- package/dist/generator.js +13 -8
- package/dist/generator.js.map +1 -1
- package/dist/helpers/generateDatabaseType.test.js +3 -0
- package/dist/helpers/generateDatabaseType.test.js.map +1 -1
- package/dist/helpers/generateFieldType.test.js +6 -0
- package/dist/helpers/generateFieldType.test.js.map +1 -1
- package/dist/helpers/generateFile.js +8 -2
- package/dist/helpers/generateFile.js.map +1 -1
- package/dist/helpers/generateFile.test.js +12 -3
- package/dist/helpers/generateFile.test.js.map +1 -1
- package/dist/helpers/generateFiles.js +42 -0
- package/dist/helpers/generateFiles.js.map +1 -0
- package/dist/helpers/generateModel.test.js +2 -0
- package/dist/helpers/generateModel.test.js.map +1 -1
- package/dist/utils/normalizeCase.test.js +2 -0
- package/dist/utils/normalizeCase.test.js.map +1 -1
- package/dist/utils/validateConfig.js +1 -0
- package/dist/utils/validateConfig.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -38,6 +38,8 @@ without losing the safety of the TypeScript type system?
|
|
|
38
38
|
// and a filename of your choice
|
|
39
39
|
output = "../src/db"
|
|
40
40
|
fileName = "types.ts"
|
|
41
|
+
// Optionally generate runtime enums to a separate file
|
|
42
|
+
enumFileName = "enums.ts"
|
|
41
43
|
}
|
|
42
44
|
```
|
|
43
45
|
|
|
@@ -76,6 +78,7 @@ hope it's just as useful for you! 😎
|
|
|
76
78
|
| :----------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
77
79
|
| `output` | The directory where generated code will be saved |
|
|
78
80
|
| `fileName` | The filename for the generated file |
|
|
81
|
+
| `enumFileName` | The filename for the generated enums. Omitting this will generate enums and files in the same file. |
|
|
79
82
|
| `camelCase` | Enable support for Kysely's camelCase plugin |
|
|
80
83
|
| `[typename]TypeOverride` | Allows you to override the resulting TypeScript type for any Prisma type. Useful when targeting a different environment than Node (e.g. WinterCG compatible runtimes that use UInt8Arrays instead of Buffers for binary types etc.) Check out the [config validator](https://github.com/valtyr/prisma-kysely/blob/main/src/utils/validateConfig.ts) for a complete list of options. |
|
|
81
84
|
|
|
@@ -114,8 +117,7 @@ Here's everything you need to do (let me know if something's missing...)
|
|
|
114
117
|
1. Fork and pull the repository
|
|
115
118
|
2. Run `yarn install` and `yarn dev` to start `tsc` in watch mode.
|
|
116
119
|
3. Make changes to the source code
|
|
117
|
-
4. Test your changes by creating `prisma/schema.prisma`, running `yarn prisma
|
|
118
|
-
generate` and checking the output in `prisma/types.ts`. The provider must be set
|
|
120
|
+
4. Test your changes by creating `prisma/schema.prisma`, running `yarn prisma generate` and checking the output in `prisma/types.ts`. The provider must be set
|
|
119
121
|
as follows to reference the dev build:
|
|
120
122
|
```prisma
|
|
121
123
|
generator kysely {
|
|
@@ -41,4 +41,76 @@ const exec = (0, util_1.promisify)(child_process_1.exec);
|
|
|
41
41
|
await exec("yarn prisma db push");
|
|
42
42
|
await exec("yarn prisma generate");
|
|
43
43
|
}, { timeout: 20000 });
|
|
44
|
+
(0, vitest_1.test)("End to end test - separate entrypoints", async () => {
|
|
45
|
+
await exec("yarn prisma init --datasource-provider mysql");
|
|
46
|
+
await promises_1.default.writeFile("./prisma/schema.prisma", `datasource db {
|
|
47
|
+
provider = "mysql"
|
|
48
|
+
url = "mysql://root:password@localhost:3306/test"
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
generator kysely {
|
|
52
|
+
provider = "node ./dist/bin.js"
|
|
53
|
+
enumFileName = "enums.ts"
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
enum TestEnum {
|
|
57
|
+
A
|
|
58
|
+
B
|
|
59
|
+
C
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
model TestUser {
|
|
63
|
+
id String @id
|
|
64
|
+
name String
|
|
65
|
+
age Int
|
|
66
|
+
rating Float
|
|
67
|
+
updatedAt DateTime
|
|
68
|
+
abc TestEnum
|
|
69
|
+
}`);
|
|
70
|
+
await exec("yarn prisma generate");
|
|
71
|
+
const typeFile = await promises_1.default.readFile("./prisma/generated/types.ts", {
|
|
72
|
+
encoding: "utf-8",
|
|
73
|
+
});
|
|
74
|
+
(0, vitest_1.expect)(typeFile).not.toContain("export const");
|
|
75
|
+
(0, vitest_1.expect)(typeFile).toContain(`import type { TestEnum } from "./enums";`);
|
|
76
|
+
const enumFile = await promises_1.default.readFile("./prisma/generated/enums.ts", {
|
|
77
|
+
encoding: "utf-8",
|
|
78
|
+
});
|
|
79
|
+
(0, vitest_1.expect)(enumFile).toEqual(`export type TestEnum = "A" | "B" | "C";
|
|
80
|
+
export const TestEnum = {
|
|
81
|
+
A: "A",
|
|
82
|
+
B: "B",
|
|
83
|
+
C: "C",
|
|
84
|
+
};
|
|
85
|
+
`);
|
|
86
|
+
}, { timeout: 20000 });
|
|
87
|
+
(0, vitest_1.test)("End to end test - separate entrypoints but no enums", async () => {
|
|
88
|
+
await exec("yarn prisma init --datasource-provider sqlite");
|
|
89
|
+
await promises_1.default.writeFile("./prisma/schema.prisma", `datasource db {
|
|
90
|
+
provider = "sqlite"
|
|
91
|
+
url = "file:./dev.db"
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
generator kysely {
|
|
95
|
+
provider = "node ./dist/bin.js"
|
|
96
|
+
enumFileName = "enums.ts"
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
model TestUser {
|
|
100
|
+
id String @id
|
|
101
|
+
name String
|
|
102
|
+
age Int
|
|
103
|
+
rating Float
|
|
104
|
+
updatedAt DateTime
|
|
105
|
+
}`);
|
|
106
|
+
await exec("yarn prisma db push");
|
|
107
|
+
await exec("yarn prisma generate");
|
|
108
|
+
const typeFile = await promises_1.default.readFile("./prisma/generated/types.ts", {
|
|
109
|
+
encoding: "utf-8",
|
|
110
|
+
});
|
|
111
|
+
(0, vitest_1.expect)(typeFile).not.toContain('from "./enums"');
|
|
112
|
+
(0, vitest_1.expect)(promises_1.default.readFile("./prisma/generated/enums.ts", {
|
|
113
|
+
encoding: "utf-8",
|
|
114
|
+
})).rejects.toThrow();
|
|
115
|
+
}, { timeout: 20000 });
|
|
44
116
|
//# sourceMappingURL=e2e.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"e2e.test.js","sourceRoot":"","sources":["../../src/__test__/e2e.test.ts"],"names":[],"mappings":";;;;;AAAA,iDAA+C;AAC/C,2DAA6B;AAC7B,+BAAiC;AACjC,
|
|
1
|
+
{"version":3,"file":"e2e.test.js","sourceRoot":"","sources":["../../src/__test__/e2e.test.ts"],"names":[],"mappings":"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"}
|
package/dist/generator.js
CHANGED
|
@@ -7,7 +7,7 @@ const generator_helper_1 = require("@prisma/generator-helper");
|
|
|
7
7
|
const path_1 = __importDefault(require("path"));
|
|
8
8
|
const constants_1 = require("./constants");
|
|
9
9
|
const generateDatabaseType_1 = require("./helpers/generateDatabaseType");
|
|
10
|
-
const
|
|
10
|
+
const generateFiles_1 = require("./helpers/generateFiles");
|
|
11
11
|
const generateImplicitManyToManyModels_1 = require("./helpers/generateImplicitManyToManyModels");
|
|
12
12
|
const generateModel_1 = require("./helpers/generateModel");
|
|
13
13
|
const sorted_1 = require("./utils/sorted");
|
|
@@ -24,7 +24,6 @@ const { version } = require("../package.json");
|
|
|
24
24
|
};
|
|
25
25
|
},
|
|
26
26
|
onGenerate: async (options) => {
|
|
27
|
-
var _a;
|
|
28
27
|
const config = (0, validateConfig_1.validateConfig)({
|
|
29
28
|
...options.generator.config,
|
|
30
29
|
databaseProvider: options.datasources[0].provider,
|
|
@@ -35,13 +34,19 @@ const { version } = require("../package.json");
|
|
|
35
34
|
const implicitManyToManyModels = (0, generateImplicitManyToManyModels_1.generateImplicitManyToManyModels)(options.dmmf.datamodel.models);
|
|
36
35
|
const models = (0, sorted_1.sorted)([...options.dmmf.datamodel.models, ...implicitManyToManyModels], (a, b) => a.name.localeCompare(b.name)).map((m) => (0, generateModel_1.generateModel)(m, config));
|
|
37
36
|
const databaseType = (0, generateDatabaseType_1.generateDatabaseType)(models.map((m) => ({ tableName: m.tableName, typeName: m.typeName })), config);
|
|
38
|
-
const
|
|
39
|
-
...enums,
|
|
40
|
-
...models.map((m) => m.definition),
|
|
37
|
+
const files = (0, generateFiles_1.generateFiles)({
|
|
41
38
|
databaseType,
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
39
|
+
modelDefinitions: models.map((m) => m.definition),
|
|
40
|
+
enumNames: options.dmmf.datamodel.enums.map((e) => e.name),
|
|
41
|
+
enums,
|
|
42
|
+
enumsOutfile: config.enumFileName,
|
|
43
|
+
typesOutfile: config.fileName,
|
|
44
|
+
});
|
|
45
|
+
await Promise.allSettled(files.map(({ filepath, content }) => {
|
|
46
|
+
var _a;
|
|
47
|
+
const writeLocation = path_1.default.join(((_a = options.generator.output) === null || _a === void 0 ? void 0 : _a.value) || "", filepath);
|
|
48
|
+
return (0, writeFileSafely_1.writeFileSafely)(writeLocation, content);
|
|
49
|
+
}));
|
|
45
50
|
},
|
|
46
51
|
});
|
|
47
52
|
//# sourceMappingURL=generator.js.map
|
package/dist/generator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":";;;;;AACA,+DAA4D;AAC5D,gDAAwB;AAExB,2CAA6C;AAC7C,yEAAsE;AACtE,
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":";;;;;AACA,+DAA4D;AAC5D,gDAAwB;AAExB,2CAA6C;AAC7C,yEAAsE;AACtE,2DAAwD;AACxD,iGAA8F;AAC9F,2DAAwD;AACxD,2CAAwC;AACxC,2DAAwD;AACxD,6DAA0D;AAE1D,iEAA8D;AAG9D,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAE/C,IAAA,mCAAgB,EAAC;IACf,UAAU;QACR,OAAO;YACL,OAAO;YACP,aAAa,EAAE,aAAa;YAC5B,UAAU,EAAE,0BAAc;SAC3B,CAAC;IACJ,CAAC;IACD,UAAU,EAAE,KAAK,EAAE,OAAyB,EAAE,EAAE;QAE9C,MAAM,MAAM,GAAG,IAAA,+BAAc,EAAC;YAC5B,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM;YAC3B,gBAAgB,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ;SAClD,CAAC,CAAC;QAGH,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;YACtE,OAAO,IAAA,mCAAgB,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAMH,MAAM,wBAAwB,GAAG,IAAA,mEAAgC,EAC/D,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAC9B,CAAC;QAGF,MAAM,MAAM,GAAG,IAAA,eAAM,EACnB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,wBAAwB,CAAC,EAC/D,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CACvC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,6BAAa,EAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QAGvC,MAAM,YAAY,GAAG,IAAA,2CAAoB,EACvC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,EACrE,MAAM,CACP,CAAC;QAGF,MAAM,KAAK,GAAG,IAAA,6BAAa,EAAC;YAC1B,YAAY;YACZ,gBAAgB,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;YACjD,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YAC1D,KAAK;YACL,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,YAAY,EAAE,MAAM,CAAC,QAAQ;SAC9B,CAAC,CAAC;QAGH,MAAM,OAAO,CAAC,UAAU,CACtB,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;;YAClC,MAAM,aAAa,GAAG,cAAI,CAAC,IAAI,CAC7B,CAAA,MAAA,OAAO,CAAC,SAAS,CAAC,MAAM,0CAAE,KAAK,KAAI,EAAE,EACrC,QAAQ,CACT,CAAC;YACF,OAAO,IAAA,iCAAe,EAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QACjD,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -11,6 +11,7 @@ const testUtils_1 = require("../utils/testUtils");
|
|
|
11
11
|
], {
|
|
12
12
|
databaseProvider: "postgresql",
|
|
13
13
|
fileName: "",
|
|
14
|
+
enumFileName: "",
|
|
14
15
|
camelCase: false,
|
|
15
16
|
});
|
|
16
17
|
const result = (0, testUtils_1.stringifyTsNode)(node);
|
|
@@ -28,6 +29,7 @@ const testUtils_1 = require("../utils/testUtils");
|
|
|
28
29
|
], {
|
|
29
30
|
databaseProvider: "postgresql",
|
|
30
31
|
fileName: "",
|
|
32
|
+
enumFileName: "",
|
|
31
33
|
camelCase: true,
|
|
32
34
|
});
|
|
33
35
|
const result = (0, testUtils_1.stringifyTsNode)(node);
|
|
@@ -45,6 +47,7 @@ const testUtils_1 = require("../utils/testUtils");
|
|
|
45
47
|
], {
|
|
46
48
|
databaseProvider: "postgresql",
|
|
47
49
|
fileName: "",
|
|
50
|
+
enumFileName: "",
|
|
48
51
|
camelCase: false,
|
|
49
52
|
});
|
|
50
53
|
const result = (0, testUtils_1.stringifyTsNode)(node);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateDatabaseType.test.js","sourceRoot":"","sources":["../../src/helpers/generateDatabaseType.test.ts"],"names":[],"mappings":";;AAAA,mCAAsC;AAEtC,iEAAsE;AACtE,kDAAoD;AAEpD,IAAA,aAAI,EAAC,uCAAuC,EAAE,GAAG,EAAE;IACjD,MAAM,IAAI,GAAG,IAAA,2CAAoB,EAC/B;QACE,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE;QAC/C,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE;QAC7C,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE;KACxC,EACD;QACE,gBAAgB,EAAE,YAAY;QAC9B,QAAQ,EAAE,EAAE;QACZ,SAAS,EAAE,KAAK;KACjB,CACF,CAAC;IACF,MAAM,MAAM,GAAG,IAAA,2BAAe,EAAC,IAAI,CAAC,CAAC;IAErC,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC;;;;GAItB,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,oCAAoC,EAAE,GAAG,EAAE;IAC9C,MAAM,IAAI,GAAG,IAAA,2CAAoB,EAC/B;QACE,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE;QAChD,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE;QAC7C,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE;KAC9C,EACD;QACE,gBAAgB,EAAE,YAAY;QAC9B,QAAQ,EAAE,EAAE;QACZ,SAAS,EAAE,IAAI;KAChB,CACF,CAAC;IACF,MAAM,MAAM,GAAG,IAAA,2BAAe,EAAC,IAAI,CAAC,CAAC;IAErC,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC;;;;GAItB,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,wDAAwD,EAAE,GAAG,EAAE;IAClE,MAAM,IAAI,GAAG,IAAA,2CAAoB,EAC/B;QACE,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE;QAC/C,EAAE,SAAS,EAAE,wBAAwB,EAAE,QAAQ,EAAE,SAAS,EAAE;QAC5D,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE;KACxC,EACD;QACE,gBAAgB,EAAE,YAAY;QAC9B,QAAQ,EAAE,EAAE;QACZ,SAAS,EAAE,KAAK;KACjB,CACF,CAAC;IACF,MAAM,MAAM,GAAG,IAAA,2BAAe,EAAC,IAAI,CAAC,CAAC;IAErC,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC;;;;GAItB,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"generateDatabaseType.test.js","sourceRoot":"","sources":["../../src/helpers/generateDatabaseType.test.ts"],"names":[],"mappings":";;AAAA,mCAAsC;AAEtC,iEAAsE;AACtE,kDAAoD;AAEpD,IAAA,aAAI,EAAC,uCAAuC,EAAE,GAAG,EAAE;IACjD,MAAM,IAAI,GAAG,IAAA,2CAAoB,EAC/B;QACE,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE;QAC/C,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE;QAC7C,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE;KACxC,EACD;QACE,gBAAgB,EAAE,YAAY;QAC9B,QAAQ,EAAE,EAAE;QACZ,YAAY,EAAE,EAAE;QAChB,SAAS,EAAE,KAAK;KACjB,CACF,CAAC;IACF,MAAM,MAAM,GAAG,IAAA,2BAAe,EAAC,IAAI,CAAC,CAAC;IAErC,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC;;;;GAItB,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,oCAAoC,EAAE,GAAG,EAAE;IAC9C,MAAM,IAAI,GAAG,IAAA,2CAAoB,EAC/B;QACE,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE;QAChD,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE;QAC7C,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE;KAC9C,EACD;QACE,gBAAgB,EAAE,YAAY;QAC9B,QAAQ,EAAE,EAAE;QACZ,YAAY,EAAE,EAAE;QAChB,SAAS,EAAE,IAAI;KAChB,CACF,CAAC;IACF,MAAM,MAAM,GAAG,IAAA,2BAAe,EAAC,IAAI,CAAC,CAAC;IAErC,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC;;;;GAItB,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,wDAAwD,EAAE,GAAG,EAAE;IAClE,MAAM,IAAI,GAAG,IAAA,2CAAoB,EAC/B;QACE,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE;QAC/C,EAAE,SAAS,EAAE,wBAAwB,EAAE,QAAQ,EAAE,SAAS,EAAE;QAC5D,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE;KACxC,EACD;QACE,gBAAgB,EAAE,YAAY;QAC9B,QAAQ,EAAE,EAAE;QACZ,YAAY,EAAE,EAAE;QAChB,SAAS,EAAE,KAAK;KACjB,CACF,CAAC;IACF,MAAM,MAAM,GAAG,IAAA,2BAAe,EAAC,IAAI,CAAC,CAAC;IAErC,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC;;;;GAItB,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -19,6 +19,7 @@ const generateFieldType_1 = require("./generateFieldType");
|
|
|
19
19
|
...overrides,
|
|
20
20
|
databaseProvider: "postgresql",
|
|
21
21
|
fileName: "types.ts",
|
|
22
|
+
enumFileName: "types.ts",
|
|
22
23
|
camelCase: false,
|
|
23
24
|
};
|
|
24
25
|
const sourceTypes = [
|
|
@@ -39,6 +40,7 @@ const generateFieldType_1 = require("./generateFieldType");
|
|
|
39
40
|
const node = (0, generateFieldType_1.generateFieldType)("String", {
|
|
40
41
|
databaseProvider: "mysql",
|
|
41
42
|
fileName: "types.ts",
|
|
43
|
+
enumFileName: "types.ts",
|
|
42
44
|
stringTypeOverride: "cheese",
|
|
43
45
|
camelCase: false,
|
|
44
46
|
});
|
|
@@ -48,16 +50,19 @@ const generateFieldType_1 = require("./generateFieldType");
|
|
|
48
50
|
const postgresBooleanType = (0, generateFieldType_1.generateFieldType)("Boolean", {
|
|
49
51
|
databaseProvider: "postgresql",
|
|
50
52
|
fileName: "types.ts",
|
|
53
|
+
enumFileName: "types.ts",
|
|
51
54
|
camelCase: false,
|
|
52
55
|
});
|
|
53
56
|
const mysqlBooleanType = (0, generateFieldType_1.generateFieldType)("Boolean", {
|
|
54
57
|
databaseProvider: "mysql",
|
|
55
58
|
fileName: "types.ts",
|
|
59
|
+
enumFileName: "types.ts",
|
|
56
60
|
camelCase: false,
|
|
57
61
|
});
|
|
58
62
|
const sqliteBooleanType = (0, generateFieldType_1.generateFieldType)("Boolean", {
|
|
59
63
|
databaseProvider: "sqlite",
|
|
60
64
|
fileName: "types.ts",
|
|
65
|
+
enumFileName: "types.ts",
|
|
61
66
|
camelCase: false,
|
|
62
67
|
});
|
|
63
68
|
(0, vitest_1.expect)(postgresBooleanType).toEqual("boolean");
|
|
@@ -68,6 +73,7 @@ const generateFieldType_1 = require("./generateFieldType");
|
|
|
68
73
|
(0, vitest_1.expect)(() => (0, generateFieldType_1.generateFieldType)("Json", {
|
|
69
74
|
databaseProvider: "sqlite",
|
|
70
75
|
fileName: "types.ts",
|
|
76
|
+
enumFileName: "types.ts",
|
|
71
77
|
camelCase: false,
|
|
72
78
|
})).toThrowError(new Error("Unsupported type Json for database sqlite"));
|
|
73
79
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateFieldType.test.js","sourceRoot":"","sources":["../../src/helpers/generateFieldType.test.ts"],"names":[],"mappings":";;AAAA,mCAAsC;AAEtC,2DAAgE;AAEhE,IAAA,aAAI,EAAC,mDAAmD,EAAE,GAAG,EAAE;IAC7D,MAAM,SAAS,GAAG;QAChB,kBAAkB,EAAE,gBAAgB;QACpC,kBAAkB,EAAE,UAAU;QAC9B,mBAAmB,EAAE,SAAS;QAC9B,iBAAiB,EAAE,MAAM;QACzB,oBAAoB,EAAE,WAAW;QACjC,mBAAmB,EAAE,OAAO;QAC5B,iBAAiB,EAAE,MAAM;QACzB,eAAe,EAAE,KAAK;QACtB,gBAAgB,EAAE,QAAQ;QAC1B,uBAAuB,EAAE,OAAO;KACjC,CAAC;IAEF,MAAM,MAAM,GAAG;QACb,GAAG,SAAS;QACZ,gBAAgB,EAAE,YAAqB;QACvC,QAAQ,EAAE,UAAU;QACpB,SAAS,EAAE,KAAK;KACjB,CAAC;IAEF,MAAM,WAAW,GAAG;QAClB,QAAQ;QACR,QAAQ;QACR,SAAS;QACT,OAAO;QACP,UAAU;QACV,SAAS;QACT,OAAO;QACP,KAAK;QACL,MAAM;QACN,aAAa;KACd,CAAC;IAEF,IAAA,eAAM,EACJ,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAA,qCAAiB,EAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAC/D,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;AACtC,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,mDAAmD,EAAE,GAAG,EAAE;IAC7D,MAAM,IAAI,GAAG,IAAA,qCAAiB,EAAC,QAAQ,EAAE;QACvC,gBAAgB,EAAE,OAAO;QACzB,QAAQ,EAAE,UAAU;QACpB,kBAAkB,EAAE,QAAQ;QAC5B,SAAS,EAAE,KAAK;KACjB,CAAC,CAAC;IAEH,IAAA,eAAM,EAAC,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,kDAAkD,EAAE,GAAG,EAAE;IAC5D,MAAM,mBAAmB,GAAG,IAAA,qCAAiB,EAAC,SAAS,EAAE;QACvD,gBAAgB,EAAE,YAAY;QAC9B,QAAQ,EAAE,UAAU;QACpB,SAAS,EAAE,KAAK;KACjB,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG,IAAA,qCAAiB,EAAC,SAAS,EAAE;QACpD,gBAAgB,EAAE,OAAO;QACzB,QAAQ,EAAE,UAAU;QACpB,SAAS,EAAE,KAAK;KACjB,CAAC,CAAC;IAEH,MAAM,iBAAiB,GAAG,IAAA,qCAAiB,EAAC,SAAS,EAAE;QACrD,gBAAgB,EAAE,QAAQ;QAC1B,QAAQ,EAAE,UAAU;QACpB,SAAS,EAAE,KAAK;KACjB,CAAC,CAAC;IAEH,IAAA,eAAM,EAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAC/C,IAAA,eAAM,EAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC3C,IAAA,eAAM,EAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AAC9C,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,yDAAyD,EAAE,GAAG,EAAE;IACnE,IAAA,eAAM,EAAC,GAAG,EAAE,CACV,IAAA,qCAAiB,EAAC,MAAM,EAAE;QACxB,gBAAgB,EAAE,QAAQ;QAC1B,QAAQ,EAAE,UAAU;QACpB,SAAS,EAAE,KAAK;KACjB,CAAC,CACH,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC,CAAC;AACzE,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"generateFieldType.test.js","sourceRoot":"","sources":["../../src/helpers/generateFieldType.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.generateFile = void 0;
|
|
7
7
|
const typescript_1 = __importDefault(require("typescript"));
|
|
8
8
|
const printer = typescript_1.default.createPrinter({ newLine: typescript_1.default.NewLineKind.LineFeed });
|
|
9
|
-
const generateFile = (statements) => {
|
|
9
|
+
const generateFile = (statements, { withEnumImport, withLeader }) => {
|
|
10
10
|
const file = typescript_1.default.factory.createSourceFile(statements, typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.EndOfFileToken), typescript_1.default.NodeFlags.None);
|
|
11
11
|
const result = printer.printFile(file);
|
|
12
12
|
const leader = `import type { ColumnType } from "kysely";
|
|
@@ -14,7 +14,13 @@ export type Generated<T> = T extends ColumnType<infer S, infer I, infer U>
|
|
|
14
14
|
? ColumnType<S, I | undefined, U>
|
|
15
15
|
: ColumnType<T, T | undefined, T>;
|
|
16
16
|
export type Timestamp = ColumnType<Date, Date | string, Date | string>;`;
|
|
17
|
-
|
|
17
|
+
if (withEnumImport) {
|
|
18
|
+
const enumImportStatement = `import type { ${withEnumImport.names.join(", ")} } from "${withEnumImport.importPath}";`;
|
|
19
|
+
return withLeader
|
|
20
|
+
? `${leader}\n\n${enumImportStatement}\n\n${result}`
|
|
21
|
+
: `${enumImportStatement}\n\n${result}`;
|
|
22
|
+
}
|
|
23
|
+
return withLeader ? `${leader}\n\n${result}` : result;
|
|
18
24
|
};
|
|
19
25
|
exports.generateFile = generateFile;
|
|
20
26
|
//# sourceMappingURL=generateFile.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateFile.js","sourceRoot":"","sources":["../../src/helpers/generateFile.ts"],"names":[],"mappings":";;;;;;AAAA,4DAA4B;AAE5B,MAAM,OAAO,GAAG,oBAAE,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,oBAAE,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"generateFile.js","sourceRoot":"","sources":["../../src/helpers/generateFile.ts"],"names":[],"mappings":";;;;;;AAAA,4DAA4B;AAE5B,MAAM,OAAO,GAAG,oBAAE,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,oBAAE,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;AAOhE,MAAM,YAAY,GAAG,CAC1B,UAAmC,EACnC,EAAE,cAAc,EAAE,UAAU,EAAW,EACvC,EAAE;IACF,MAAM,IAAI,GAAG,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CACtC,UAAU,EACV,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC,oBAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EACpD,oBAAE,CAAC,SAAS,CAAC,IAAI,CAClB,CAAC;IAEF,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAEvC,MAAM,MAAM,GAAG;;;;wEAIuD,CAAC;IAEvE,IAAI,cAAc,EAAE;QAClB,MAAM,mBAAmB,GAAG,iBAAiB,cAAc,CAAC,KAAK,CAAC,IAAI,CACpE,IAAI,CACL,YAAY,cAAc,CAAC,UAAU,IAAI,CAAC;QAE3C,OAAO,UAAU;YACf,CAAC,CAAC,GAAG,MAAM,OAAO,mBAAmB,OAAO,MAAM,EAAE;YACpD,CAAC,CAAC,GAAG,mBAAmB,OAAO,MAAM,EAAE,CAAC;KAC3C;IAED,OAAO,UAAU,CAAC,CAAC,CAAC,GAAG,MAAM,OAAO,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;AACxD,CAAC,CAAC;AA7BW,QAAA,YAAY,gBA6BvB"}
|
|
@@ -3,8 +3,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const vitest_1 = require("vitest");
|
|
4
4
|
const generateFile_1 = require("./generateFile");
|
|
5
5
|
(0, vitest_1.test)("generates a file!", () => {
|
|
6
|
-
(0,
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
const resultwithLeader = (0, generateFile_1.generateFile)([], {
|
|
7
|
+
withEnumImport: false,
|
|
8
|
+
withLeader: true,
|
|
9
|
+
});
|
|
10
|
+
(0, vitest_1.expect)(resultwithLeader).toContain('from "kysely";');
|
|
11
|
+
const resultwithEnumImport = (0, generateFile_1.generateFile)([], {
|
|
12
|
+
withEnumImport: { importPath: "./enums", names: ["Foo", "Bar"] },
|
|
13
|
+
withLeader: false,
|
|
14
|
+
});
|
|
15
|
+
console.log(resultwithEnumImport);
|
|
16
|
+
(0, vitest_1.expect)(resultwithEnumImport).toContain('import type { Foo, Bar } from "./enums";');
|
|
17
|
+
(0, vitest_1.expect)(resultwithEnumImport).not.toContain('from "kysely";');
|
|
9
18
|
});
|
|
10
19
|
//# sourceMappingURL=generateFile.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateFile.test.js","sourceRoot":"","sources":["../../src/helpers/generateFile.test.ts"],"names":[],"mappings":";;AAAA,mCAAsC;AAEtC,iDAAsD;AAEtD,IAAA,aAAI,EAAC,mBAAmB,EAAE,GAAG,EAAE;IAC7B,IAAA,
|
|
1
|
+
{"version":3,"file":"generateFile.test.js","sourceRoot":"","sources":["../../src/helpers/generateFile.test.ts"],"names":[],"mappings":";;AAAA,mCAAsC;AAEtC,iDAAsD;AAEtD,IAAA,aAAI,EAAC,mBAAmB,EAAE,GAAG,EAAE;IAC7B,MAAM,gBAAgB,GAAG,IAAA,2BAAY,EAAC,EAAE,EAAE;QACxC,cAAc,EAAE,KAAK;QACrB,UAAU,EAAE,IAAI;KACjB,CAAC,CAAC;IACH,IAAA,eAAM,EAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IAErD,MAAM,oBAAoB,GAAG,IAAA,2BAAY,EAAC,EAAE,EAAE;QAC5C,cAAc,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE;QAChE,UAAU,EAAE,KAAK;KAClB,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAClC,IAAA,eAAM,EAAC,oBAAoB,CAAC,CAAC,SAAS,CACpC,0CAA0C,CAC3C,CAAC;IACF,IAAA,eAAM,EAAC,oBAAoB,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;AAC/D,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
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.generateFiles = void 0;
|
|
7
|
+
const path_1 = __importDefault(require("path"));
|
|
8
|
+
const generateFile_1 = require("./generateFile");
|
|
9
|
+
function generateFiles(opts) {
|
|
10
|
+
if (opts.enumsOutfile === opts.typesOutfile || opts.enums.length === 0) {
|
|
11
|
+
const typesFileWithEnums = {
|
|
12
|
+
filepath: opts.typesOutfile,
|
|
13
|
+
content: (0, generateFile_1.generateFile)([...opts.enums, ...opts.modelDefinitions, opts.databaseType], {
|
|
14
|
+
withEnumImport: false,
|
|
15
|
+
withLeader: true,
|
|
16
|
+
}),
|
|
17
|
+
};
|
|
18
|
+
return [typesFileWithEnums];
|
|
19
|
+
}
|
|
20
|
+
const typesFileWithoutEnums = {
|
|
21
|
+
filepath: opts.typesOutfile,
|
|
22
|
+
content: (0, generateFile_1.generateFile)([...opts.modelDefinitions, opts.databaseType], {
|
|
23
|
+
withEnumImport: {
|
|
24
|
+
importPath: `./${path_1.default.parse(opts.enumsOutfile).name}`,
|
|
25
|
+
names: opts.enumNames,
|
|
26
|
+
},
|
|
27
|
+
withLeader: true,
|
|
28
|
+
}),
|
|
29
|
+
};
|
|
30
|
+
if (opts.enums.length === 0)
|
|
31
|
+
return [typesFileWithoutEnums];
|
|
32
|
+
const enumFile = {
|
|
33
|
+
filepath: opts.enumsOutfile,
|
|
34
|
+
content: (0, generateFile_1.generateFile)(opts.enums, {
|
|
35
|
+
withEnumImport: false,
|
|
36
|
+
withLeader: false,
|
|
37
|
+
}),
|
|
38
|
+
};
|
|
39
|
+
return [typesFileWithoutEnums, enumFile];
|
|
40
|
+
}
|
|
41
|
+
exports.generateFiles = generateFiles;
|
|
42
|
+
//# sourceMappingURL=generateFiles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generateFiles.js","sourceRoot":"","sources":["../../src/helpers/generateFiles.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AAGxB,iDAAsD;AAItD,SAAgB,aAAa,CAAC,IAO7B;IAEC,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QACtE,MAAM,kBAAkB,GAAS;YAC/B,QAAQ,EAAE,IAAI,CAAC,YAAY;YAC3B,OAAO,EAAE,IAAA,2BAAY,EACnB,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,EAC5D;gBACE,cAAc,EAAE,KAAK;gBACrB,UAAU,EAAE,IAAI;aACjB,CACF;SACF,CAAC;QAEF,OAAO,CAAC,kBAAkB,CAAC,CAAC;KAC7B;IAED,MAAM,qBAAqB,GAAS;QAClC,QAAQ,EAAE,IAAI,CAAC,YAAY;QAC3B,OAAO,EAAE,IAAA,2BAAY,EAAC,CAAC,GAAG,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,EAAE;YACnE,cAAc,EAAE;gBACd,UAAU,EAAE,KAAK,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE;gBACrD,KAAK,EAAE,IAAI,CAAC,SAAS;aACtB;YACD,UAAU,EAAE,IAAI;SACjB,CAAC;KACH,CAAC;IAEF,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAE5D,MAAM,QAAQ,GAAS;QACrB,QAAQ,EAAE,IAAI,CAAC,YAAY;QAC3B,OAAO,EAAE,IAAA,2BAAY,EAAC,IAAI,CAAC,KAAK,EAAE;YAChC,cAAc,EAAE,KAAK;YACrB,UAAU,EAAE,KAAK;SAClB,CAAC;KACH,CAAC;IAEF,OAAO,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;AAC3C,CAAC;AA9CD,sCA8CC"}
|
|
@@ -89,6 +89,7 @@ const testUtils_1 = require("../utils/testUtils");
|
|
|
89
89
|
}, {
|
|
90
90
|
databaseProvider: "sqlite",
|
|
91
91
|
fileName: "",
|
|
92
|
+
enumFileName: "",
|
|
92
93
|
camelCase: false,
|
|
93
94
|
});
|
|
94
95
|
(0, vitest_1.expect)(model.tableName).toEqual("User");
|
|
@@ -138,6 +139,7 @@ const testUtils_1 = require("../utils/testUtils");
|
|
|
138
139
|
}, {
|
|
139
140
|
databaseProvider: "sqlite",
|
|
140
141
|
fileName: "",
|
|
142
|
+
enumFileName: "",
|
|
141
143
|
camelCase: true,
|
|
142
144
|
});
|
|
143
145
|
(0, vitest_1.expect)(model.tableName).toEqual("User");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateModel.test.js","sourceRoot":"","sources":["../../src/helpers/generateModel.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"generateModel.test.js","sourceRoot":"","sources":["../../src/helpers/generateModel.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ const normalizeCase_1 = require("./normalizeCase");
|
|
|
8
8
|
camelCase: true,
|
|
9
9
|
databaseProvider: "postgresql",
|
|
10
10
|
fileName: "",
|
|
11
|
+
enumFileName: "",
|
|
11
12
|
});
|
|
12
13
|
(0, vitest_1.expect)(newName).toEqual("userId");
|
|
13
14
|
});
|
|
@@ -17,6 +18,7 @@ const normalizeCase_1 = require("./normalizeCase");
|
|
|
17
18
|
camelCase: false,
|
|
18
19
|
databaseProvider: "postgresql",
|
|
19
20
|
fileName: "",
|
|
21
|
+
enumFileName: "",
|
|
20
22
|
});
|
|
21
23
|
(0, vitest_1.expect)(newName).toEqual("user_id");
|
|
22
24
|
});
|
|
@@ -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;
|
|
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;KACjB,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;KACjB,CAAC,CAAC;IAEH,IAAA,eAAM,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AACrC,CAAC,CAAC,CAAC"}
|
|
@@ -15,6 +15,7 @@ exports.configValidator = zod_1.default
|
|
|
15
15
|
zod_1.default.literal("sqlite"),
|
|
16
16
|
]),
|
|
17
17
|
fileName: zod_1.default.string().optional().default("types.ts"),
|
|
18
|
+
enumFileName: zod_1.default.string().optional().default("types.ts"),
|
|
18
19
|
stringTypeOverride: zod_1.default.string().optional(),
|
|
19
20
|
booleanTypeOverride: zod_1.default.string().optional(),
|
|
20
21
|
intTypeOverride: zod_1.default.string().optional(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validateConfig.js","sourceRoot":"","sources":["../../src/utils/validateConfig.ts"],"names":[],"mappings":";;;;;;AAAA,iDAA2C;AAC3C,8CAAoB;AAEP,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;KACpB,CAAC;IAGF,QAAQ,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"validateConfig.js","sourceRoot":"","sources":["../../src/utils/validateConfig.ts"],"names":[],"mappings":";;;;;;AAAA,iDAA2C;AAC3C,8CAAoB;AAEP,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;KACpB,CAAC;IAGF,QAAQ,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC;IACnD,YAAY,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC;IAGvD,kBAAkB,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzC,mBAAmB,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC1C,eAAe,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACtC,kBAAkB,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzC,iBAAiB,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACxC,mBAAmB,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC1C,oBAAoB,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3C,gBAAgB,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACvC,iBAAiB,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACxC,uBAAuB,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAG9C,SAAS,EAAE,aAAC;SACT,KAAK,CAAC,CAAC,aAAC,CAAC,OAAO,EAAE,EAAE,aAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,aAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;SAC3D,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE;QACjB,IAAI,OAAO,GAAG,KAAK,SAAS;YAAE,OAAO,GAAG,CAAC;QACzC,OAAO,GAAG,KAAK,MAAM,CAAC;IACxB,CAAC,CAAC;SACD,OAAO,CAAC,KAAK,CAAC;CAClB,CAAC;KACD,MAAM,EAAE,CAAC;AAIL,MAAM,cAAc,GAAG,CAAC,MAAe,EAAE,EAAE;IAChD,MAAM,MAAM,GAAG,uBAAe,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IACjD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;QACnB,kBAAM,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAC7C,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,WAAW,CAAC,CAAC,OAAO,CACxD,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YACf,kBAAM,CAAC,KAAK,CAAC,GAAG,GAAG,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC9C,CAAC,CACF,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACjE,kBAAM,CAAC,KAAK,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACjB;IACD,OAAO,MAAM,CAAC,IAAI,CAAC;AACrB,CAAC,CAAC;AAfW,QAAA,cAAc,kBAezB"}
|