kea-typegen 3.7.1 → 3.8.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/CHANGELOG.md +5 -0
- package/dist/package.json +3 -1
- package/dist/src/__tests__/inline.d.ts +1 -0
- package/dist/src/__tests__/inline.js +224 -0
- package/dist/src/__tests__/inline.js.map +1 -0
- package/dist/src/cli/typegen.js +4 -0
- package/dist/src/cli/typegen.js.map +1 -1
- package/dist/src/print/print.d.ts +6 -0
- package/dist/src/print/print.js +59 -42
- package/dist/src/print/print.js.map +1 -1
- package/dist/src/types.d.ts +1 -0
- package/dist/src/utils.d.ts +4 -0
- package/dist/src/utils.js +55 -0
- package/dist/src/utils.js.map +1 -1
- package/dist/src/visit/visit.js +6 -0
- package/dist/src/visit/visit.js.map +1 -1
- package/dist/src/write/writeInlineLogicTypes.d.ts +8 -0
- package/dist/src/write/writeInlineLogicTypes.js +236 -0
- package/dist/src/write/writeInlineLogicTypes.js.map +1 -0
- package/dist/src/write/writeTypeImports.d.ts +8 -0
- package/dist/src/write/writeTypeImports.js +3 -0
- package/dist/src/write/writeTypeImports.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -1
- package/samples/manualTypedLogic.ts +20 -0
- package/samples-inline/counterLogic.ts +36 -0
- package/samples-inline/manualLogic.ts +20 -0
- package/samples-inline/profileLogic.ts +30 -0
- package/samples-inline/searchLogic.ts +30 -0
- package/samples-inline/tsconfig.json +17 -0
- package/samples-inline/types.ts +5 -0
- package/src/__tests__/inline.ts +266 -0
- package/src/cli/typegen.ts +4 -0
- package/src/print/print.ts +102 -57
- package/src/types.ts +2 -0
- package/src/utils.ts +81 -0
- package/src/visit/visit.ts +14 -0
- package/src/write/writeInlineLogicTypes.ts +305 -0
- package/src/write/writeTypeImports.ts +4 -4
- package/tsconfig.json +1 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
## 3.8.0 - 2026-07-14
|
|
2
|
+
|
|
3
|
+
- Skip logics that are manually typed, e.g. `kea<MakeLogicType<Values, Actions>>(...)` or any other custom type in `kea<...>()`. Such logics are now left completely alone.
|
|
4
|
+
- Add a new `--inline` mode. Instead of writing `logicType.ts` files, it writes and keeps updated a `// Generated by kea-typegen` block directly above each `kea()` call: one interface per non-empty section (`logicValues`, `logicActions`, `logicProps`), tied together with `export type logicType = MakeLogicType<logicValues, logicActions, logicProps>`. Named props types are referenced directly instead of getting an interface. With `--delete`, obsolete `logicType.ts` files are removed when switching over. See `yarn samples:inline:write` / `yarn samples:inline:check` and the `samples-inline/` folder.
|
|
5
|
+
|
|
1
6
|
## 3.7.1 - 2026-06-26
|
|
2
7
|
|
|
3
8
|
Make watch mode incremental. When a watched rebuild can be proven local, regenerate only the changed or affected Kea logic files and keep the existing full-pass fallback for ambiguous changes.
|
package/dist/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "kea-typegen",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.8.0",
|
|
4
4
|
"description": "Generate type definitions for kea logic",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"start": "ts-node ./src/cli/typegen.ts",
|
|
@@ -13,6 +13,8 @@
|
|
|
13
13
|
"samples:write": "ts-node ./src/cli/typegen.ts write -r ./samples --write-paths --delete",
|
|
14
14
|
"samples:convert": "ts-node ./src/cli/typegen.ts write -r ./samples --convert-to-builders",
|
|
15
15
|
"samples:watch": "ts-node ./src/cli/typegen.ts watch -r ./samples --delete",
|
|
16
|
+
"samples:inline:check": "ts-node ./src/cli/typegen.ts check -r ./samples-inline --inline",
|
|
17
|
+
"samples:inline:write": "ts-node ./src/cli/typegen.ts write -r ./samples-inline --inline --delete",
|
|
16
18
|
"samples:write:posthog": "NODE_OPTIONS=\"--max-old-space-size=16384\" ts-node ./src/cli/typegen.ts write --show-ts-errors -c",
|
|
17
19
|
"form-plugin:build": "cd form-plugin && yarn && yarn build && cd ..",
|
|
18
20
|
"form-plugin:rebuild": "yarn form-plugin:build && rm -rf node_modules && yarn"
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const fs = require("fs");
|
|
4
|
+
const os = require("os");
|
|
5
|
+
const path = require("path");
|
|
6
|
+
const ts = require("typescript");
|
|
7
|
+
const utils_1 = require("../utils");
|
|
8
|
+
const visit_1 = require("../visit/visit");
|
|
9
|
+
const print_1 = require("../print/print");
|
|
10
|
+
describe('manually typed logics', () => {
|
|
11
|
+
test('skips logics typed with MakeLogicType', () => {
|
|
12
|
+
const logicSource = `
|
|
13
|
+
import { kea, MakeLogicType } from 'kea'
|
|
14
|
+
|
|
15
|
+
interface Values { name: string }
|
|
16
|
+
interface Actions { updateName: (name: string) => { name: string } }
|
|
17
|
+
|
|
18
|
+
const logic = kea<MakeLogicType<Values, Actions>>({
|
|
19
|
+
actions: () => ({
|
|
20
|
+
updateName: (name: string) => ({ name }),
|
|
21
|
+
}),
|
|
22
|
+
})
|
|
23
|
+
`;
|
|
24
|
+
expect((0, visit_1.visitProgram)((0, utils_1.programFromSource)(logicSource)).length).toBe(0);
|
|
25
|
+
});
|
|
26
|
+
test('skips logics typed with a custom local type, even when named like a generated one', () => {
|
|
27
|
+
const logicSource = `
|
|
28
|
+
import { kea, MakeLogicType } from 'kea'
|
|
29
|
+
|
|
30
|
+
export type logicType = MakeLogicType<{ name: string }, { updateName: (name: string) => { name: string } }>
|
|
31
|
+
|
|
32
|
+
const logic = kea<logicType>({
|
|
33
|
+
actions: () => ({
|
|
34
|
+
updateName: (name: string) => ({ name }),
|
|
35
|
+
}),
|
|
36
|
+
})
|
|
37
|
+
`;
|
|
38
|
+
expect((0, visit_1.visitProgram)((0, utils_1.programFromSource)(logicSource)).length).toBe(0);
|
|
39
|
+
});
|
|
40
|
+
test('does not skip local logic types carrying the kea-typegen marker', () => {
|
|
41
|
+
const logicSource = `
|
|
42
|
+
import { kea, MakeLogicType } from 'kea'
|
|
43
|
+
|
|
44
|
+
// Generated by kea-typegen. DO NOT EDIT THIS BLOCK MANUALLY.
|
|
45
|
+
export type logicType = MakeLogicType<{ name: string }, { updateName: (name: string) => { name: string } }>
|
|
46
|
+
|
|
47
|
+
const logic = kea<logicType>({
|
|
48
|
+
actions: () => ({
|
|
49
|
+
updateName: (name: string) => ({ name }),
|
|
50
|
+
}),
|
|
51
|
+
})
|
|
52
|
+
`;
|
|
53
|
+
const parsedLogics = (0, visit_1.visitProgram)((0, utils_1.programFromSource)(logicSource));
|
|
54
|
+
expect(parsedLogics.length).toBe(1);
|
|
55
|
+
expect(parsedLogics[0].actions.map((a) => a.name)).toEqual(['updateName']);
|
|
56
|
+
});
|
|
57
|
+
test('does not skip generated blocks where the marker sits on the values interface', () => {
|
|
58
|
+
const logicSource = `
|
|
59
|
+
import { kea, MakeLogicType } from 'kea'
|
|
60
|
+
|
|
61
|
+
// Generated by kea-typegen. DO NOT EDIT THIS BLOCK MANUALLY.
|
|
62
|
+
export interface logicValues { name: string }
|
|
63
|
+
|
|
64
|
+
export interface logicActions { updateName: (name: string) => { name: string } }
|
|
65
|
+
|
|
66
|
+
export type logicType = MakeLogicType<logicValues, logicActions>
|
|
67
|
+
|
|
68
|
+
const logic = kea<logicType>({
|
|
69
|
+
actions: () => ({
|
|
70
|
+
updateName: (name: string) => ({ name }),
|
|
71
|
+
}),
|
|
72
|
+
})
|
|
73
|
+
`;
|
|
74
|
+
const parsedLogics = (0, visit_1.visitProgram)((0, utils_1.programFromSource)(logicSource));
|
|
75
|
+
expect(parsedLogics.length).toBe(1);
|
|
76
|
+
});
|
|
77
|
+
test('does not skip logics with a generated type that does not resolve yet', () => {
|
|
78
|
+
const logicSource = `
|
|
79
|
+
import { kea } from 'kea'
|
|
80
|
+
|
|
81
|
+
const logic = kea<logicType>({
|
|
82
|
+
actions: () => ({
|
|
83
|
+
updateName: (name: string) => ({ name }),
|
|
84
|
+
}),
|
|
85
|
+
})
|
|
86
|
+
`;
|
|
87
|
+
expect((0, visit_1.visitProgram)((0, utils_1.programFromSource)(logicSource)).length).toBe(1);
|
|
88
|
+
});
|
|
89
|
+
});
|
|
90
|
+
describe('inline mode', () => {
|
|
91
|
+
const createProgram = (fileNames) => ts.createProgram(fileNames, {
|
|
92
|
+
module: ts.ModuleKind.CommonJS,
|
|
93
|
+
moduleResolution: ts.ModuleResolutionKind.NodeJs,
|
|
94
|
+
target: ts.ScriptTarget.ES2020,
|
|
95
|
+
skipLibCheck: true,
|
|
96
|
+
});
|
|
97
|
+
test('writes and updates MakeLogicType blocks above the logic', async () => {
|
|
98
|
+
var _a, _b, _c, _d;
|
|
99
|
+
const tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'kea-typegen-inline-'));
|
|
100
|
+
try {
|
|
101
|
+
const logicDir = path.join(tempDir, 'src');
|
|
102
|
+
const logicPath = path.join(logicDir, 'logic.ts');
|
|
103
|
+
const logicTypePath = path.join(logicDir, 'logicType.ts');
|
|
104
|
+
const keaDtsPath = path.join(tempDir, 'node_modules', 'kea', 'index.d.ts');
|
|
105
|
+
fs.mkdirSync(path.dirname(keaDtsPath), { recursive: true });
|
|
106
|
+
fs.mkdirSync(logicDir, { recursive: true });
|
|
107
|
+
fs.writeFileSync(keaDtsPath, [
|
|
108
|
+
'export function kea<T = any>(input: any): T',
|
|
109
|
+
'export interface MakeLogicType<V = any, A = any, P = any> {}',
|
|
110
|
+
'',
|
|
111
|
+
].join('\n'));
|
|
112
|
+
fs.writeFileSync(logicPath, [
|
|
113
|
+
"import { kea } from 'kea'",
|
|
114
|
+
'',
|
|
115
|
+
'export const logic = kea({',
|
|
116
|
+
' props: {} as { id: number },',
|
|
117
|
+
' actions: () => ({',
|
|
118
|
+
' setValue: (value: string) => ({ value }),',
|
|
119
|
+
' }),',
|
|
120
|
+
' reducers: () => ({',
|
|
121
|
+
" value: ['' as string, { setValue: (_, { value }) => value }],",
|
|
122
|
+
' }),',
|
|
123
|
+
'})',
|
|
124
|
+
'',
|
|
125
|
+
].join('\n'));
|
|
126
|
+
const appOptions = {
|
|
127
|
+
rootPath: logicDir,
|
|
128
|
+
typesPath: logicDir,
|
|
129
|
+
packageJsonPath: path.join(tempDir, 'package.json'),
|
|
130
|
+
inline: true,
|
|
131
|
+
write: true,
|
|
132
|
+
log: () => { },
|
|
133
|
+
};
|
|
134
|
+
const program = createProgram([logicPath]);
|
|
135
|
+
const parsedLogics = (0, visit_1.visitProgram)(program, appOptions);
|
|
136
|
+
expect(parsedLogics.length).toBe(1);
|
|
137
|
+
const response = await (0, print_1.printToFiles)(program, appOptions, parsedLogics);
|
|
138
|
+
expect(response.writtenFiles).toBe(1);
|
|
139
|
+
const writtenLogic = fs.readFileSync(logicPath, 'utf8');
|
|
140
|
+
expect(writtenLogic).toContain("import { MakeLogicType, kea } from 'kea'");
|
|
141
|
+
expect(writtenLogic).toContain('// Generated by kea-typegen. DO NOT EDIT THIS BLOCK MANUALLY.');
|
|
142
|
+
expect(writtenLogic).toContain('export interface logicValues {');
|
|
143
|
+
expect(writtenLogic).toContain('export interface logicActions {');
|
|
144
|
+
expect(writtenLogic).toContain('export interface logicProps {');
|
|
145
|
+
expect(writtenLogic).toContain('export type logicType = MakeLogicType<logicValues, logicActions, logicProps>');
|
|
146
|
+
expect(writtenLogic).toContain('export const logic = kea<logicType>({');
|
|
147
|
+
expect(writtenLogic).toContain('value: string');
|
|
148
|
+
expect(writtenLogic).toContain('setValue: (value: string) =>');
|
|
149
|
+
expect(fs.existsSync(logicTypePath)).toBe(false);
|
|
150
|
+
const secondProgram = createProgram([logicPath]);
|
|
151
|
+
const secondParsedLogics = (0, visit_1.visitProgram)(secondProgram, appOptions);
|
|
152
|
+
expect(secondParsedLogics.length).toBe(1);
|
|
153
|
+
const secondResponse = await (0, print_1.printToFiles)(secondProgram, appOptions, secondParsedLogics);
|
|
154
|
+
expect(secondResponse).toEqual({ filesToWrite: 0, writtenFiles: 0, filesToModify: 0 });
|
|
155
|
+
expect(fs.readFileSync(logicPath, 'utf8')).toBe(writtenLogic);
|
|
156
|
+
fs.writeFileSync(logicPath, fs
|
|
157
|
+
.readFileSync(logicPath, 'utf8')
|
|
158
|
+
.replace('setValue: (value: string) => ({ value }),', 'setValue: (value: string) => ({ value }),\n reset: true,'));
|
|
159
|
+
const thirdProgram = createProgram([logicPath]);
|
|
160
|
+
const thirdResponse = await (0, print_1.printToFiles)(thirdProgram, appOptions, (0, visit_1.visitProgram)(thirdProgram, appOptions));
|
|
161
|
+
expect(thirdResponse.writtenFiles).toBe(1);
|
|
162
|
+
const updatedLogic = fs.readFileSync(logicPath, 'utf8');
|
|
163
|
+
expect(updatedLogic).toContain('reset: ');
|
|
164
|
+
expect((_a = updatedLogic.match(/export type logicType = MakeLogicType</g)) === null || _a === void 0 ? void 0 : _a.length).toBe(1);
|
|
165
|
+
expect((_b = updatedLogic.match(/export interface logicValues \{/g)) === null || _b === void 0 ? void 0 : _b.length).toBe(1);
|
|
166
|
+
expect((_c = updatedLogic.match(/export interface logicActions \{/g)) === null || _c === void 0 ? void 0 : _c.length).toBe(1);
|
|
167
|
+
expect((_d = updatedLogic.match(/DO NOT EDIT THIS BLOCK MANUALLY/g)) === null || _d === void 0 ? void 0 : _d.length).toBe(1);
|
|
168
|
+
}
|
|
169
|
+
finally {
|
|
170
|
+
fs.rmSync(tempDir, { recursive: true, force: true });
|
|
171
|
+
}
|
|
172
|
+
});
|
|
173
|
+
test('replaces the old logicType.ts import when switching to inline mode', async () => {
|
|
174
|
+
const tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'kea-typegen-inline-migrate-'));
|
|
175
|
+
try {
|
|
176
|
+
const logicDir = path.join(tempDir, 'src');
|
|
177
|
+
const logicPath = path.join(logicDir, 'logic.ts');
|
|
178
|
+
const logicTypePath = path.join(logicDir, 'logicType.ts');
|
|
179
|
+
const keaDtsPath = path.join(tempDir, 'node_modules', 'kea', 'index.d.ts');
|
|
180
|
+
fs.mkdirSync(path.dirname(keaDtsPath), { recursive: true });
|
|
181
|
+
fs.mkdirSync(logicDir, { recursive: true });
|
|
182
|
+
fs.writeFileSync(keaDtsPath, [
|
|
183
|
+
'export function kea<T = any>(input: any): T',
|
|
184
|
+
'export interface MakeLogicType<V = any, A = any, P = any> {}',
|
|
185
|
+
'',
|
|
186
|
+
].join('\n'));
|
|
187
|
+
fs.writeFileSync(logicTypePath, 'export interface logicType {}\n');
|
|
188
|
+
fs.writeFileSync(logicPath, [
|
|
189
|
+
"import { kea } from 'kea'",
|
|
190
|
+
"import type { logicType } from './logicType'",
|
|
191
|
+
'',
|
|
192
|
+
'export const logic = kea<logicType>({',
|
|
193
|
+
' actions: () => ({',
|
|
194
|
+
' setValue: (value: string) => ({ value }),',
|
|
195
|
+
' }),',
|
|
196
|
+
'})',
|
|
197
|
+
'',
|
|
198
|
+
].join('\n'));
|
|
199
|
+
const appOptions = {
|
|
200
|
+
rootPath: logicDir,
|
|
201
|
+
typesPath: logicDir,
|
|
202
|
+
packageJsonPath: path.join(tempDir, 'package.json'),
|
|
203
|
+
inline: true,
|
|
204
|
+
write: true,
|
|
205
|
+
delete: true,
|
|
206
|
+
log: () => { },
|
|
207
|
+
};
|
|
208
|
+
const program = createProgram([logicPath]);
|
|
209
|
+
const response = await (0, print_1.printToFiles)(program, appOptions, (0, visit_1.visitProgram)(program, appOptions));
|
|
210
|
+
expect(response.writtenFiles).toBe(1);
|
|
211
|
+
const writtenLogic = fs.readFileSync(logicPath, 'utf8');
|
|
212
|
+
expect(writtenLogic).not.toContain("from './logicType'");
|
|
213
|
+
expect(writtenLogic).toContain("import { MakeLogicType, kea } from 'kea'");
|
|
214
|
+
expect(writtenLogic).toContain('export interface logicActions {');
|
|
215
|
+
expect(writtenLogic).toContain('export type logicType = MakeLogicType<{}, logicActions>');
|
|
216
|
+
expect(writtenLogic).toContain('export const logic = kea<logicType>({');
|
|
217
|
+
expect(fs.existsSync(logicTypePath)).toBe(false);
|
|
218
|
+
}
|
|
219
|
+
finally {
|
|
220
|
+
fs.rmSync(tempDir, { recursive: true, force: true });
|
|
221
|
+
}
|
|
222
|
+
});
|
|
223
|
+
});
|
|
224
|
+
//# sourceMappingURL=inline.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inline.js","sourceRoot":"","sources":["../../../src/__tests__/inline.ts"],"names":[],"mappings":"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"}
|
package/dist/src/cli/typegen.js
CHANGED
|
@@ -38,6 +38,10 @@ yargs
|
|
|
38
38
|
.option('delete', { describe: 'Delete logicType.ts files without a corresponding logic.ts', type: 'boolean' })
|
|
39
39
|
.option('add-ts-nocheck', { describe: 'Add @ts-nocheck to top of logicType.ts files', type: 'boolean' })
|
|
40
40
|
.option('convert-to-builders', { describe: 'Convert Kea 2.0 inputs to Kea 3.0 logic builders', type: 'boolean' })
|
|
41
|
+
.option('inline', {
|
|
42
|
+
describe: 'Write logic types as MakeLogicType blocks above each kea() call, instead of logicType.ts files',
|
|
43
|
+
type: 'boolean',
|
|
44
|
+
})
|
|
41
45
|
.option('import-global-types', {
|
|
42
46
|
describe: 'Add import statements in logicType.ts files for global types (e.g. @types/node)',
|
|
43
47
|
type: 'boolean',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typegen.js","sourceRoot":"","sources":["../../../src/cli/typegen.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"typegen.js","sourceRoot":"","sources":["../../../src/cli/typegen.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,12 @@ export declare function printToFiles(program: Program, appOptions: AppOptions, p
|
|
|
6
6
|
writtenFiles: number;
|
|
7
7
|
filesToModify: number;
|
|
8
8
|
}>;
|
|
9
|
+
export interface TypeImportEntry {
|
|
10
|
+
list: string[];
|
|
11
|
+
fullPath: string;
|
|
12
|
+
finalPath: string;
|
|
13
|
+
}
|
|
14
|
+
export declare function buildTypeImportEntries(typeReferencesToImportFromFiles: Record<string, Set<string>>, importIntoFile: string, nodeModulesPath: string, shouldIgnore: (absolutePath: string) => boolean): TypeImportEntry[];
|
|
9
15
|
export declare function nodeToString(node: Node): string;
|
|
10
16
|
export declare function parsedLogicToTypeString(parsedLogic: ParsedLogic, appOptions?: AppOptions): string;
|
|
11
17
|
export declare function printLogicType(parsedLogic: ParsedLogic, appOptions?: AppOptions): void;
|
package/dist/src/print/print.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.runThroughPrettier = runThroughPrettier;
|
|
4
4
|
exports.printToFiles = printToFiles;
|
|
5
|
+
exports.buildTypeImportEntries = buildTypeImportEntries;
|
|
5
6
|
exports.nodeToString = nodeToString;
|
|
6
7
|
exports.parsedLogicToTypeString = parsedLogicToTypeString;
|
|
7
8
|
exports.printLogicType = printLogicType;
|
|
@@ -29,6 +30,7 @@ const printSharedListeners_1 = require("./printSharedListeners");
|
|
|
29
30
|
const printListeners_1 = require("./printListeners");
|
|
30
31
|
const writePaths_1 = require("../write/writePaths");
|
|
31
32
|
const writeTypeImports_1 = require("../write/writeTypeImports");
|
|
33
|
+
const writeInlineLogicTypes_1 = require("../write/writeInlineLogicTypes");
|
|
32
34
|
const printInternalExtraInput_1 = require("./printInternalExtraInput");
|
|
33
35
|
const convertToBuilders_1 = require("../write/convertToBuilders");
|
|
34
36
|
const cache_1 = require("../cache");
|
|
@@ -63,7 +65,9 @@ async function printToFiles(program, appOptions, parsedLogics) {
|
|
|
63
65
|
groupedByFile[parsedLogic.fileName] = [];
|
|
64
66
|
}
|
|
65
67
|
groupedByFile[parsedLogic.fileName].push(parsedLogic);
|
|
66
|
-
|
|
68
|
+
if (!appOptions.inline) {
|
|
69
|
+
printLogicType(parsedLogic, appOptions);
|
|
70
|
+
}
|
|
67
71
|
}
|
|
68
72
|
const defaultGlobalTypePaths = appOptions.importGlobalTypes
|
|
69
73
|
? []
|
|
@@ -71,11 +75,22 @@ async function printToFiles(program, appOptions, parsedLogics) {
|
|
|
71
75
|
const ignoredImportPaths = (appOptions.ignoreImportPaths || []).map((importPath) => path.resolve(appOptions.rootPath, importPath));
|
|
72
76
|
const doNotImportFromPaths = [...defaultGlobalTypePaths, ...ignoredImportPaths];
|
|
73
77
|
const shouldIgnore = (absolutePath) => !!doNotImportFromPaths.find((badPath) => absolutePath.startsWith(badPath));
|
|
78
|
+
const nodeModulesPath = path.join(appOptions.packageJsonPath ? path.dirname(appOptions.packageJsonPath) : appOptions.rootPath, 'node_modules');
|
|
74
79
|
let writtenFiles = 0;
|
|
75
80
|
let filesToWrite = 0;
|
|
76
81
|
let filesToModify = 0;
|
|
77
82
|
for (const [fileName, parsedLogics] of Object.entries(groupedByFile)) {
|
|
78
83
|
const typeFileName = parsedLogics[0].typeFileName;
|
|
84
|
+
if (appOptions.inline) {
|
|
85
|
+
const inlineResponse = await (0, writeInlineLogicTypes_1.writeInlineLogicTypes)(program, appOptions, fileName, parsedLogics, nodeModulesPath, shouldIgnore);
|
|
86
|
+
filesToWrite += inlineResponse.filesToWrite;
|
|
87
|
+
writtenFiles += inlineResponse.writtenFiles;
|
|
88
|
+
if (appOptions.delete && fs.existsSync(typeFileName)) {
|
|
89
|
+
log(`🗑️ Deleting: ${path.relative(process.cwd(), typeFileName)}`);
|
|
90
|
+
fs.unlinkSync(typeFileName);
|
|
91
|
+
}
|
|
92
|
+
continue;
|
|
93
|
+
}
|
|
79
94
|
const logicStrings = [];
|
|
80
95
|
const requiredKeys = new Set(['Logic']);
|
|
81
96
|
for (const parsedLogic of parsedLogics) {
|
|
@@ -91,47 +106,7 @@ async function printToFiles(program, appOptions, parsedLogics) {
|
|
|
91
106
|
}
|
|
92
107
|
}
|
|
93
108
|
const output = logicStrings.join('\n\n');
|
|
94
|
-
const
|
|
95
|
-
const otherimports = Object.entries(parsedLogics[0].typeReferencesToImportFromFiles)
|
|
96
|
-
.filter(([_, list]) => list.size > 0)
|
|
97
|
-
.map(([file, list]) => {
|
|
98
|
-
let finalPath = file;
|
|
99
|
-
if (finalPath.startsWith('.')) {
|
|
100
|
-
finalPath = path.resolve(path.dirname(parsedLogics[0].typeFileName), finalPath);
|
|
101
|
-
}
|
|
102
|
-
if (finalPath.startsWith('node_modules/')) {
|
|
103
|
-
finalPath = path.resolve(path.dirname(nodeModulesPath), finalPath);
|
|
104
|
-
}
|
|
105
|
-
if (finalPath.startsWith(nodeModulesPath)) {
|
|
106
|
-
finalPath = finalPath.substring(nodeModulesPath.length + 1);
|
|
107
|
-
if (finalPath.startsWith('.pnpm/')) {
|
|
108
|
-
const regex = /\.pnpm\/[^/]+@[^\/]+\/node_modules\/(.*)/;
|
|
109
|
-
const result = finalPath.match(regex);
|
|
110
|
-
if (result && result.length > 1) {
|
|
111
|
-
finalPath = result[1];
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
if (finalPath.startsWith('@types/')) {
|
|
115
|
-
finalPath = finalPath.substring(7);
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
if (finalPath.startsWith('/')) {
|
|
119
|
-
finalPath = path.relative(path.dirname(parsedLogics[0].typeFileName), finalPath);
|
|
120
|
-
if (!finalPath.startsWith('.')) {
|
|
121
|
-
finalPath = `./${finalPath}`;
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
finalPath = finalPath.replace(/(\.d|)\.tsx?$/, '');
|
|
125
|
-
if (finalPath.split('/').length === 2 && finalPath.endsWith('/index')) {
|
|
126
|
-
finalPath = finalPath.substring(0, finalPath.length - 6);
|
|
127
|
-
}
|
|
128
|
-
return {
|
|
129
|
-
list: [...list].sort(),
|
|
130
|
-
fullPath: file,
|
|
131
|
-
finalPath,
|
|
132
|
-
};
|
|
133
|
-
})
|
|
134
|
-
.filter((entry) => !shouldIgnore(entry.fullPath))
|
|
109
|
+
const otherimports = buildTypeImportEntries(parsedLogics[0].typeReferencesToImportFromFiles, parsedLogics[0].typeFileName, nodeModulesPath, shouldIgnore)
|
|
135
110
|
.map(({ list, finalPath }) => `import type { ${list.join(', ')} } from '${finalPath}'`)
|
|
136
111
|
.join('\n');
|
|
137
112
|
const finalOutput = [
|
|
@@ -221,6 +196,48 @@ async function printToFiles(program, appOptions, parsedLogics) {
|
|
|
221
196
|
}
|
|
222
197
|
return { filesToWrite, writtenFiles, filesToModify };
|
|
223
198
|
}
|
|
199
|
+
function buildTypeImportEntries(typeReferencesToImportFromFiles, importIntoFile, nodeModulesPath, shouldIgnore) {
|
|
200
|
+
return Object.entries(typeReferencesToImportFromFiles)
|
|
201
|
+
.filter(([_, list]) => list.size > 0)
|
|
202
|
+
.map(([file, list]) => {
|
|
203
|
+
let finalPath = file;
|
|
204
|
+
if (finalPath.startsWith('.')) {
|
|
205
|
+
finalPath = path.resolve(path.dirname(importIntoFile), finalPath);
|
|
206
|
+
}
|
|
207
|
+
if (finalPath.startsWith('node_modules/')) {
|
|
208
|
+
finalPath = path.resolve(path.dirname(nodeModulesPath), finalPath);
|
|
209
|
+
}
|
|
210
|
+
if (finalPath.startsWith(nodeModulesPath)) {
|
|
211
|
+
finalPath = finalPath.substring(nodeModulesPath.length + 1);
|
|
212
|
+
if (finalPath.startsWith('.pnpm/')) {
|
|
213
|
+
const regex = /\.pnpm\/[^/]+@[^\/]+\/node_modules\/(.*)/;
|
|
214
|
+
const result = finalPath.match(regex);
|
|
215
|
+
if (result && result.length > 1) {
|
|
216
|
+
finalPath = result[1];
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
if (finalPath.startsWith('@types/')) {
|
|
220
|
+
finalPath = finalPath.substring(7);
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
if (finalPath.startsWith('/')) {
|
|
224
|
+
finalPath = path.relative(path.dirname(importIntoFile), finalPath);
|
|
225
|
+
if (!finalPath.startsWith('.')) {
|
|
226
|
+
finalPath = `./${finalPath}`;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
finalPath = finalPath.replace(/(\.d|)\.tsx?$/, '');
|
|
230
|
+
if (finalPath.split('/').length === 2 && finalPath.endsWith('/index')) {
|
|
231
|
+
finalPath = finalPath.substring(0, finalPath.length - 6);
|
|
232
|
+
}
|
|
233
|
+
return {
|
|
234
|
+
list: [...list].sort(),
|
|
235
|
+
fullPath: file,
|
|
236
|
+
finalPath,
|
|
237
|
+
};
|
|
238
|
+
})
|
|
239
|
+
.filter((entry) => !shouldIgnore(entry.fullPath));
|
|
240
|
+
}
|
|
224
241
|
function nodeToString(node) {
|
|
225
242
|
const printer = (0, typescript_1.createPrinter)({ newLine: typescript_1.NewLineKind.LineFeed });
|
|
226
243
|
const sourceFile = (0, typescript_1.createSourceFile)('logic.ts', '', typescript_1.ScriptTarget.Latest, false, typescript_1.ScriptKind.TS);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"print.js","sourceRoot":"","sources":["../../../src/print/print.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"print.js","sourceRoot":"","sources":["../../../src/print/print.ts"],"names":[],"mappings":"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"}
|
package/dist/src/types.d.ts
CHANGED
package/dist/src/utils.d.ts
CHANGED
|
@@ -4,6 +4,10 @@ export declare function logicSourceToLogicType(logicSource: string, appOptions?:
|
|
|
4
4
|
export declare function sourceToSourceFile(sourceCode: string, filename?: string): ts.SourceFile;
|
|
5
5
|
export declare function programFromSource(sourceCode: string): ts.Program;
|
|
6
6
|
export declare function isKeaCall(node: ts.Node, checker: ts.TypeChecker): boolean;
|
|
7
|
+
export declare function hasKeaTypegenMarker(node: ts.Node): boolean;
|
|
8
|
+
export declare function getInlineBlockStatements(declaration: ts.TypeAliasDeclaration | ts.InterfaceDeclaration, logicName: string): ts.Statement[];
|
|
9
|
+
export declare function isGeneratedInlineBlock(declaration: ts.TypeAliasDeclaration | ts.InterfaceDeclaration, logicName: string): boolean;
|
|
10
|
+
export declare function isManuallyTypedLogic(typeArgument: ts.TypeNode, logicTypeName: string, checker: ts.TypeChecker): boolean;
|
|
7
11
|
export declare function getTypeNodeForNode(node: ts.Node, checker: ts.TypeChecker): ts.TypeNode;
|
|
8
12
|
export declare function getAndGatherTypeNodeForDefaultValue(defaultValue: ts.Node, checker: ts.TypeChecker, parsedLogic: ParsedLogic): ts.TypeNode;
|
|
9
13
|
export declare function getParameterDeclaration(param: ts.ParameterDeclaration): ts.ParameterDeclaration;
|
package/dist/src/utils.js
CHANGED
|
@@ -5,6 +5,10 @@ exports.logicSourceToLogicType = logicSourceToLogicType;
|
|
|
5
5
|
exports.sourceToSourceFile = sourceToSourceFile;
|
|
6
6
|
exports.programFromSource = programFromSource;
|
|
7
7
|
exports.isKeaCall = isKeaCall;
|
|
8
|
+
exports.hasKeaTypegenMarker = hasKeaTypegenMarker;
|
|
9
|
+
exports.getInlineBlockStatements = getInlineBlockStatements;
|
|
10
|
+
exports.isGeneratedInlineBlock = isGeneratedInlineBlock;
|
|
11
|
+
exports.isManuallyTypedLogic = isManuallyTypedLogic;
|
|
8
12
|
exports.getTypeNodeForNode = getTypeNodeForNode;
|
|
9
13
|
exports.getAndGatherTypeNodeForDefaultValue = getAndGatherTypeNodeForDefaultValue;
|
|
10
14
|
exports.getParameterDeclaration = getParameterDeclaration;
|
|
@@ -63,6 +67,57 @@ function isKeaCall(node, checker) {
|
|
|
63
67
|
}
|
|
64
68
|
return ts.isObjectLiteralExpression(input) || ts.isArrayLiteralExpression(input);
|
|
65
69
|
}
|
|
70
|
+
function hasKeaTypegenMarker(node) {
|
|
71
|
+
var _a;
|
|
72
|
+
const sourceFile = node.getSourceFile();
|
|
73
|
+
const ranges = (_a = ts.getLeadingCommentRanges(sourceFile.text, node.pos)) !== null && _a !== void 0 ? _a : [];
|
|
74
|
+
return ranges.some(({ pos, end }) => sourceFile.text.slice(pos, end).includes('kea-typegen'));
|
|
75
|
+
}
|
|
76
|
+
const INLINE_BLOCK_SUFFIXES = ['Values', 'Actions', 'Props'];
|
|
77
|
+
function getInlineBlockStatements(declaration, logicName) {
|
|
78
|
+
const statements = declaration.getSourceFile().statements;
|
|
79
|
+
const index = statements.indexOf(declaration);
|
|
80
|
+
if (index === -1) {
|
|
81
|
+
return [declaration];
|
|
82
|
+
}
|
|
83
|
+
const generatedNames = new Set(INLINE_BLOCK_SUFFIXES.map((suffix) => `${logicName}${suffix}`));
|
|
84
|
+
const block = [declaration];
|
|
85
|
+
for (let i = index - 1; i >= 0; i--) {
|
|
86
|
+
const statement = statements[i];
|
|
87
|
+
if ((ts.isInterfaceDeclaration(statement) || ts.isTypeAliasDeclaration(statement)) &&
|
|
88
|
+
generatedNames.has(statement.name.text)) {
|
|
89
|
+
block.unshift(statement);
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
break;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
return block;
|
|
96
|
+
}
|
|
97
|
+
function isGeneratedInlineBlock(declaration, logicName) {
|
|
98
|
+
return getInlineBlockStatements(declaration, logicName).some(hasKeaTypegenMarker);
|
|
99
|
+
}
|
|
100
|
+
function isManuallyTypedLogic(typeArgument, logicTypeName, checker) {
|
|
101
|
+
var _a;
|
|
102
|
+
if (!ts.isTypeReferenceNode(typeArgument)) {
|
|
103
|
+
return true;
|
|
104
|
+
}
|
|
105
|
+
if (!ts.isIdentifier(typeArgument.typeName) || typeArgument.typeName.escapedText !== logicTypeName) {
|
|
106
|
+
return true;
|
|
107
|
+
}
|
|
108
|
+
const symbol = checker.getSymbolAtLocation(typeArgument.typeName);
|
|
109
|
+
const declaration = (_a = symbol === null || symbol === void 0 ? void 0 : symbol.getDeclarations()) === null || _a === void 0 ? void 0 : _a[0];
|
|
110
|
+
if (!declaration) {
|
|
111
|
+
return false;
|
|
112
|
+
}
|
|
113
|
+
if (ts.isImportSpecifier(declaration)) {
|
|
114
|
+
return false;
|
|
115
|
+
}
|
|
116
|
+
if (ts.isTypeAliasDeclaration(declaration) || ts.isInterfaceDeclaration(declaration)) {
|
|
117
|
+
return !isGeneratedInlineBlock(declaration, logicTypeName.replace(/Type$/, ''));
|
|
118
|
+
}
|
|
119
|
+
return true;
|
|
120
|
+
}
|
|
66
121
|
function getTypeNodeForNode(node, checker) {
|
|
67
122
|
let typeNode;
|
|
68
123
|
if (node) {
|