kea-typegen 3.8.0 → 3.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/README.md +33 -0
  2. package/dist/package.json +1 -1
  3. package/dist/src/__tests__/inline.js +383 -1
  4. package/dist/src/__tests__/inline.js.map +1 -1
  5. package/dist/src/cache.d.ts +1 -0
  6. package/dist/src/cache.js +19 -0
  7. package/dist/src/cache.js.map +1 -1
  8. package/dist/src/cli/typegen.js +5 -0
  9. package/dist/src/cli/typegen.js.map +1 -1
  10. package/dist/src/print/print.js +6 -4
  11. package/dist/src/print/print.js.map +1 -1
  12. package/dist/src/types.d.ts +8 -0
  13. package/dist/src/utils.d.ts +2 -0
  14. package/dist/src/utils.js +27 -1
  15. package/dist/src/utils.js.map +1 -1
  16. package/dist/src/visit/visit.js +1 -0
  17. package/dist/src/visit/visit.js.map +1 -1
  18. package/dist/src/visit/visitConnect.js +40 -0
  19. package/dist/src/visit/visitConnect.js.map +1 -1
  20. package/dist/src/visit/visitSelectors.js +14 -1
  21. package/dist/src/visit/visitSelectors.js.map +1 -1
  22. package/dist/src/write/writeInlineLogicTypes.js +32 -9
  23. package/dist/src/write/writeInlineLogicTypes.js.map +1 -1
  24. package/dist/tsconfig.tsbuildinfo +1 -1
  25. package/package.json +1 -1
  26. package/samples-inline/counterLogic.ts +2 -1
  27. package/samples-inline/profileLogic.ts +1 -0
  28. package/samples-inline/searchLogic.ts +2 -0
  29. package/src/__tests__/inline.ts +482 -1
  30. package/src/cache.ts +19 -0
  31. package/src/cli/typegen.ts +6 -0
  32. package/src/print/print.ts +9 -7
  33. package/src/types.ts +13 -0
  34. package/src/utils.ts +43 -1
  35. package/src/visit/visit.ts +1 -0
  36. package/src/visit/visitConnect.ts +50 -0
  37. package/src/visit/visitSelectors.ts +26 -1
  38. package/src/write/writeInlineLogicTypes.ts +67 -18
package/README.md CHANGED
@@ -5,3 +5,36 @@ Automatically generate types for `kea()` calls for [Kea 2.2+](https://keajs.org/
5
5
  ## Docs
6
6
 
7
7
  https://keajs.org/docs/intro/typescript
8
+
9
+ ## Inline mode
10
+
11
+ By default kea-typegen writes a `logicType.ts` file next to each logic. In inline mode it instead writes
12
+ a marked block of plain interfaces directly above the `kea()` call, tied together with kea's `MakeLogicType`:
13
+
14
+ ```ts
15
+ // Generated by kea-typegen. DO NOT EDIT THIS BLOCK MANUALLY.
16
+ export interface counterLogicValues {
17
+ counter: number
18
+ }
19
+
20
+ export interface counterLogicActions {
21
+ increment: (amount: number) => { amount: number }
22
+ }
23
+
24
+ export type counterLogicType = MakeLogicType<counterLogicValues, counterLogicActions>
25
+
26
+ export const counterLogic = kea<counterLogicType>({ ... })
27
+ ```
28
+
29
+ - `--inline` (CLI) or `"inline": true` (`.kearc`) — inline mode for every logic.
30
+ - `--inline-paths a b` (CLI) or `"inlinePaths": ["./scenes/foo"]` (`.kearc`) — inline mode only for logic
31
+ files under those paths; everything else keeps its `logicType.ts` file. Relative paths resolve against
32
+ the root path. Use this to migrate a large project directory by directory.
33
+ - A file that already carries a generated inline block stays inline even without either option, so
34
+ conversions never regress and single files can be converted with `kea-typegen write --inline -f <file>`.
35
+ - With `--delete`, the now obsolete `logicType.ts` files are removed on conversion.
36
+ - Untyped selector combiner parameters get their inferred types written into the source
37
+ (`(counter) => ...` becomes `(counter: number) => ...`), since `MakeLogicType` types them as `any`.
38
+ - Values and actions pulled in via `connect` are marked with their source logic, e.g.
39
+ `user: UserType | null // userLogic`.
40
+ - Logics manually typed with `kea<MakeLogicType<...>>()` or a custom type are left alone entirely.
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kea-typegen",
3
- "version": "3.8.0",
3
+ "version": "3.8.1",
4
4
  "description": "Generate type definitions for kea logic",
5
5
  "scripts": {
6
6
  "start": "ts-node ./src/cli/typegen.ts",
@@ -164,7 +164,7 @@ describe('inline mode', () => {
164
164
  expect((_a = updatedLogic.match(/export type logicType = MakeLogicType</g)) === null || _a === void 0 ? void 0 : _a.length).toBe(1);
165
165
  expect((_b = updatedLogic.match(/export interface logicValues \{/g)) === null || _b === void 0 ? void 0 : _b.length).toBe(1);
166
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);
167
+ expect((_d = updatedLogic.match(/DO NOT EDIT THIS BLOCK MANUALLY/g)) === null || _d === void 0 ? void 0 : _d.length).toBe(3);
168
168
  }
169
169
  finally {
170
170
  fs.rmSync(tempDir, { recursive: true, force: true });
@@ -220,5 +220,387 @@ describe('inline mode', () => {
220
220
  fs.rmSync(tempDir, { recursive: true, force: true });
221
221
  }
222
222
  });
223
+ test('leaves a reformatted but semantically identical block alone', async () => {
224
+ const tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'kea-typegen-inline-reformat-'));
225
+ try {
226
+ const logicDir = path.join(tempDir, 'src');
227
+ const logicPath = path.join(logicDir, 'logic.ts');
228
+ const keaDtsPath = path.join(tempDir, 'node_modules', 'kea', 'index.d.ts');
229
+ fs.mkdirSync(path.dirname(keaDtsPath), { recursive: true });
230
+ fs.mkdirSync(logicDir, { recursive: true });
231
+ fs.writeFileSync(keaDtsPath, [
232
+ 'export function kea<T = any>(input: any): T',
233
+ 'export interface MakeLogicType<V = any, A = any, P = any> {}',
234
+ '',
235
+ ].join('\n'));
236
+ fs.writeFileSync(logicPath, [
237
+ "import { MakeLogicType, kea } from 'kea'",
238
+ '',
239
+ 'export const logic = kea({',
240
+ ' actions: () => ({',
241
+ ' setValue: (value: string | number) => ({ value }),',
242
+ ' }),',
243
+ '})',
244
+ '',
245
+ ].join('\n'));
246
+ const appOptions = {
247
+ rootPath: logicDir,
248
+ typesPath: logicDir,
249
+ packageJsonPath: path.join(tempDir, 'package.json'),
250
+ inline: true,
251
+ write: true,
252
+ log: () => { },
253
+ };
254
+ const program = createProgram([logicPath]);
255
+ await (0, print_1.printToFiles)(program, appOptions, (0, visit_1.visitProgram)(program, appOptions));
256
+ const formatted = fs
257
+ .readFileSync(logicPath, 'utf8')
258
+ .replace(/;$/gm, '')
259
+ .replace(/value: string \| number\) =>/g, 'value:\n | string\n | number\n ) =>');
260
+ fs.writeFileSync(logicPath, formatted);
261
+ const secondProgram = createProgram([logicPath]);
262
+ const secondResponse = await (0, print_1.printToFiles)(secondProgram, appOptions, (0, visit_1.visitProgram)(secondProgram, appOptions));
263
+ expect(secondResponse).toEqual({ filesToWrite: 0, writtenFiles: 0, filesToModify: 0 });
264
+ expect(fs.readFileSync(logicPath, 'utf8')).toBe(formatted);
265
+ }
266
+ finally {
267
+ fs.rmSync(tempDir, { recursive: true, force: true });
268
+ }
269
+ });
270
+ test('keeps leading comments attached to the logic when inserting the block', async () => {
271
+ const tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'kea-typegen-inline-comments-'));
272
+ try {
273
+ const logicDir = path.join(tempDir, 'src');
274
+ const logicPath = path.join(logicDir, 'logic.ts');
275
+ const keaDtsPath = path.join(tempDir, 'node_modules', 'kea', 'index.d.ts');
276
+ fs.mkdirSync(path.dirname(keaDtsPath), { recursive: true });
277
+ fs.mkdirSync(logicDir, { recursive: true });
278
+ fs.writeFileSync(keaDtsPath, [
279
+ 'export function kea<T = any>(input: any): T',
280
+ 'export interface MakeLogicType<V = any, A = any, P = any> {}',
281
+ '',
282
+ ].join('\n'));
283
+ fs.writeFileSync(logicPath, [
284
+ "import { kea } from 'kea'",
285
+ '',
286
+ '// this comment describes the logic and must stay attached to it',
287
+ 'export const logic = kea({',
288
+ ' actions: () => ({',
289
+ ' setValue: (value: string) => ({ value }),',
290
+ ' }),',
291
+ '})',
292
+ '',
293
+ ].join('\n'));
294
+ const appOptions = {
295
+ rootPath: logicDir,
296
+ typesPath: logicDir,
297
+ packageJsonPath: path.join(tempDir, 'package.json'),
298
+ inline: true,
299
+ write: true,
300
+ log: () => { },
301
+ };
302
+ const program = createProgram([logicPath]);
303
+ const response = await (0, print_1.printToFiles)(program, appOptions, (0, visit_1.visitProgram)(program, appOptions));
304
+ expect(response.writtenFiles).toBe(1);
305
+ const writtenLogic = fs.readFileSync(logicPath, 'utf8');
306
+ expect(writtenLogic).toContain([
307
+ '// this comment describes the logic and must stay attached to it',
308
+ 'export const logic = kea<logicType>({',
309
+ ].join('\n'));
310
+ expect(writtenLogic.indexOf('DO NOT EDIT THIS BLOCK MANUALLY')).toBeLessThan(writtenLogic.indexOf('// this comment describes the logic'));
311
+ }
312
+ finally {
313
+ fs.rmSync(tempDir, { recursive: true, force: true });
314
+ }
315
+ });
316
+ test('annotates untyped selector combiner parameters', async () => {
317
+ const tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'kea-typegen-inline-selectors-'));
318
+ try {
319
+ const logicDir = path.join(tempDir, 'src');
320
+ const logicPath = path.join(logicDir, 'logic.ts');
321
+ const keaDtsPath = path.join(tempDir, 'node_modules', 'kea', 'index.d.ts');
322
+ fs.mkdirSync(path.dirname(keaDtsPath), { recursive: true });
323
+ fs.mkdirSync(logicDir, { recursive: true });
324
+ fs.writeFileSync(keaDtsPath, [
325
+ 'export function kea<T = any>(input: any): T',
326
+ 'export interface MakeLogicType<V = any, A = any, P = any> {}',
327
+ '',
328
+ ].join('\n'));
329
+ fs.writeFileSync(logicPath, [
330
+ "import { kea } from 'kea'",
331
+ '',
332
+ 'export const logic = kea({',
333
+ ' actions: () => ({',
334
+ ' setCounter: (counter: number) => ({ counter }),',
335
+ ' }),',
336
+ ' reducers: () => ({',
337
+ ' counter: [0 as number, { setCounter: (_, { counter }) => counter }],',
338
+ ' }),',
339
+ ' selectors: () => ({',
340
+ ' doubleCounter: [(s): [() => number] => [s.counter], (counter) => counter * 2],',
341
+ ' typedCounter: [(s): [() => number] => [s.counter], (counter: number) => counter * 3],',
342
+ ' }),',
343
+ '})',
344
+ '',
345
+ ].join('\n'));
346
+ const appOptions = {
347
+ rootPath: logicDir,
348
+ typesPath: logicDir,
349
+ packageJsonPath: path.join(tempDir, 'package.json'),
350
+ inline: true,
351
+ write: true,
352
+ log: () => { },
353
+ };
354
+ const program = createProgram([logicPath]);
355
+ const response = await (0, print_1.printToFiles)(program, appOptions, (0, visit_1.visitProgram)(program, appOptions));
356
+ expect(response.writtenFiles).toBe(1);
357
+ const writtenLogic = fs.readFileSync(logicPath, 'utf8');
358
+ expect(writtenLogic).toContain('(counter: number) => counter * 2');
359
+ expect(writtenLogic).toContain('(counter: number) => counter * 3');
360
+ const secondProgram = createProgram([logicPath]);
361
+ const secondResponse = await (0, print_1.printToFiles)(secondProgram, appOptions, (0, visit_1.visitProgram)(secondProgram, appOptions));
362
+ expect(secondResponse).toEqual({ filesToWrite: 0, writtenFiles: 0, filesToModify: 0 });
363
+ }
364
+ finally {
365
+ fs.rmSync(tempDir, { recursive: true, force: true });
366
+ }
367
+ });
368
+ });
369
+ describe('mixed mode with inlinePaths', () => {
370
+ const createProgram = (fileNames) => ts.createProgram(fileNames, {
371
+ module: ts.ModuleKind.CommonJS,
372
+ moduleResolution: ts.ModuleResolutionKind.NodeJs,
373
+ target: ts.ScriptTarget.ES2020,
374
+ skipLibCheck: true,
375
+ });
376
+ const writeKeaDts = (tempDir) => {
377
+ const keaDtsPath = path.join(tempDir, 'node_modules', 'kea', 'index.d.ts');
378
+ fs.mkdirSync(path.dirname(keaDtsPath), { recursive: true });
379
+ fs.writeFileSync(keaDtsPath, [
380
+ 'export function kea<T = any>(input: any): T',
381
+ 'export interface MakeLogicType<V = any, A = any, P = any> {}',
382
+ '',
383
+ ].join('\n'));
384
+ };
385
+ const simpleLogicSource = [
386
+ "import { kea } from 'kea'",
387
+ '',
388
+ 'export const logic = kea({',
389
+ ' actions: () => ({',
390
+ ' setValue: (value: string) => ({ value }),',
391
+ ' }),',
392
+ '})',
393
+ '',
394
+ ].join('\n');
395
+ test('files under inlinePaths go inline, everything else keeps logicType.ts', async () => {
396
+ const tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'kea-typegen-inline-paths-'));
397
+ try {
398
+ const rootDir = path.join(tempDir, 'src');
399
+ const inlineDir = path.join(rootDir, 'scenes', 'inlined');
400
+ const classicDir = path.join(rootDir, 'scenes', 'classic');
401
+ const inlineLogicPath = path.join(inlineDir, 'inlinedLogic.ts');
402
+ const classicLogicPath = path.join(classicDir, 'classicLogic.ts');
403
+ writeKeaDts(tempDir);
404
+ fs.mkdirSync(inlineDir, { recursive: true });
405
+ fs.mkdirSync(classicDir, { recursive: true });
406
+ fs.writeFileSync(inlineLogicPath, simpleLogicSource.replace('export const logic', 'export const inlinedLogic'));
407
+ fs.writeFileSync(classicLogicPath, simpleLogicSource.replace('export const logic', 'export const classicLogic'));
408
+ const appOptions = {
409
+ rootPath: rootDir,
410
+ typesPath: rootDir,
411
+ packageJsonPath: path.join(tempDir, 'package.json'),
412
+ inlinePaths: [path.join(rootDir, 'scenes', 'inlined')],
413
+ write: true,
414
+ delete: true,
415
+ log: () => { },
416
+ };
417
+ const program = createProgram([inlineLogicPath, classicLogicPath]);
418
+ await (0, print_1.printToFiles)(program, appOptions, (0, visit_1.visitProgram)(program, appOptions));
419
+ const writtenInlineLogic = fs.readFileSync(inlineLogicPath, 'utf8');
420
+ expect(writtenInlineLogic).toContain('// Generated by kea-typegen. DO NOT EDIT THIS BLOCK MANUALLY.');
421
+ expect(writtenInlineLogic).toContain('export type inlinedLogicType = MakeLogicType<{}, inlinedLogicActions>');
422
+ expect(fs.existsSync(path.join(inlineDir, 'inlinedLogicType.ts'))).toBe(false);
423
+ const writtenClassicLogic = fs.readFileSync(classicLogicPath, 'utf8');
424
+ expect(writtenClassicLogic).not.toContain('MakeLogicType');
425
+ expect(fs.existsSync(path.join(classicDir, 'classicLogicType.ts'))).toBe(true);
426
+ }
427
+ finally {
428
+ fs.rmSync(tempDir, { recursive: true, force: true });
429
+ }
430
+ });
431
+ test('relative inlinePaths resolve against rootPath', async () => {
432
+ const tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'kea-typegen-inline-paths-relative-'));
433
+ try {
434
+ const rootDir = path.join(tempDir, 'src');
435
+ const inlineDir = path.join(rootDir, 'scenes', 'inlined');
436
+ const inlineLogicPath = path.join(inlineDir, 'inlinedLogic.ts');
437
+ writeKeaDts(tempDir);
438
+ fs.mkdirSync(inlineDir, { recursive: true });
439
+ fs.writeFileSync(inlineLogicPath, simpleLogicSource.replace('export const logic', 'export const inlinedLogic'));
440
+ const appOptions = {
441
+ rootPath: rootDir,
442
+ typesPath: rootDir,
443
+ packageJsonPath: path.join(tempDir, 'package.json'),
444
+ inlinePaths: ['./scenes/inlined'],
445
+ write: true,
446
+ log: () => { },
447
+ };
448
+ const program = createProgram([inlineLogicPath]);
449
+ await (0, print_1.printToFiles)(program, appOptions, (0, visit_1.visitProgram)(program, appOptions));
450
+ expect(fs.readFileSync(inlineLogicPath, 'utf8')).toContain('// Generated by kea-typegen. DO NOT EDIT THIS BLOCK MANUALLY.');
451
+ expect(fs.existsSync(path.join(inlineDir, 'inlinedLogicType.ts'))).toBe(false);
452
+ }
453
+ finally {
454
+ fs.rmSync(tempDir, { recursive: true, force: true });
455
+ }
456
+ });
457
+ test('connected actions from an inline (MakeLogicType) logic land in the consuming logic type', async () => {
458
+ const tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'kea-typegen-inline-connect-'));
459
+ try {
460
+ const rootDir = path.join(tempDir, 'src');
461
+ const inlineLogicPath = path.join(rootDir, 'inlinedLogic.ts');
462
+ const consumerLogicPath = path.join(rootDir, 'consumerLogic.ts');
463
+ const keaDtsPath = path.join(tempDir, 'node_modules', 'kea', 'index.d.ts');
464
+ fs.mkdirSync(path.dirname(keaDtsPath), { recursive: true });
465
+ fs.mkdirSync(rootDir, { recursive: true });
466
+ fs.writeFileSync(keaDtsPath, [
467
+ 'export function kea<T = any>(input: any): T',
468
+ 'export type AnyFunction = (...args: any) => any',
469
+ 'export interface MakeLogicType<V = any, A = any, P = any> {',
470
+ ' actionCreators: {',
471
+ ' [K in keyof A]: A[K] extends AnyFunction',
472
+ ' ? (...args: Parameters<A[K]>) => { type: string; payload: ReturnType<A[K]> }',
473
+ ' : never',
474
+ ' }',
475
+ ' values: V',
476
+ '}',
477
+ '',
478
+ ].join('\n'));
479
+ fs.writeFileSync(inlineLogicPath, [
480
+ "import { MakeLogicType, kea } from 'kea'",
481
+ '',
482
+ '// Generated by kea-typegen. DO NOT EDIT THIS BLOCK MANUALLY.',
483
+ 'export interface inlinedLogicValues {',
484
+ ' value: string',
485
+ '}',
486
+ '',
487
+ 'export interface inlinedLogicActions {',
488
+ ' setValue: (value: string) => {',
489
+ ' value: string',
490
+ ' }',
491
+ '}',
492
+ '',
493
+ 'export type inlinedLogicType = MakeLogicType<inlinedLogicValues, inlinedLogicActions>',
494
+ '',
495
+ 'export const inlinedLogic = kea<inlinedLogicType>({',
496
+ ' actions: () => ({',
497
+ ' setValue: (value: string) => ({ value }),',
498
+ ' }),',
499
+ ' reducers: () => ({',
500
+ " value: ['' as string, { setValue: (_, { value }) => value }],",
501
+ ' }),',
502
+ '})',
503
+ '',
504
+ ].join('\n'));
505
+ fs.writeFileSync(consumerLogicPath, [
506
+ "import { kea } from 'kea'",
507
+ '',
508
+ "import { inlinedLogic } from './inlinedLogic'",
509
+ '',
510
+ 'export const consumerLogic = kea({',
511
+ ' connect: {',
512
+ " actions: [inlinedLogic, ['setValue']],",
513
+ " values: [inlinedLogic, ['value']],",
514
+ ' },',
515
+ '})',
516
+ '',
517
+ ].join('\n'));
518
+ const inlineConsumerDir = path.join(rootDir, 'inlineConsumer');
519
+ const inlineConsumerLogicPath = path.join(inlineConsumerDir, 'inlineConsumerLogic.ts');
520
+ fs.mkdirSync(inlineConsumerDir, { recursive: true });
521
+ fs.writeFileSync(inlineConsumerLogicPath, [
522
+ "import { kea } from 'kea'",
523
+ '',
524
+ "import { inlinedLogic } from '../inlinedLogic'",
525
+ '',
526
+ 'export const inlineConsumerLogic = kea({',
527
+ ' connect: {',
528
+ " actions: [inlinedLogic, ['setValue']],",
529
+ " values: [inlinedLogic, ['value']],",
530
+ ' },',
531
+ '})',
532
+ '',
533
+ ].join('\n'));
534
+ const appOptions = {
535
+ rootPath: rootDir,
536
+ typesPath: rootDir,
537
+ packageJsonPath: path.join(tempDir, 'package.json'),
538
+ inlinePaths: [inlineConsumerDir],
539
+ write: true,
540
+ log: () => { },
541
+ };
542
+ const program = createProgram([inlineLogicPath, consumerLogicPath, inlineConsumerLogicPath]);
543
+ await (0, print_1.printToFiles)(program, appOptions, (0, visit_1.visitProgram)(program, appOptions));
544
+ const consumerType = fs.readFileSync(path.join(rootDir, 'consumerLogicType.ts'), 'utf8');
545
+ expect(consumerType).toContain('setValue: (value: string) => void');
546
+ expect(consumerType).toContain('value: string');
547
+ const inlineConsumer = fs.readFileSync(inlineConsumerLogicPath, 'utf8');
548
+ expect(inlineConsumer).toMatch(/value: string.* \/\/ inlinedLogic/);
549
+ expect(inlineConsumer).toMatch(/\};? \/\/ inlinedLogic/);
550
+ const secondProgram = createProgram([inlineLogicPath, consumerLogicPath, inlineConsumerLogicPath]);
551
+ const secondResponse = await (0, print_1.printToFiles)(secondProgram, appOptions, (0, visit_1.visitProgram)(secondProgram, appOptions));
552
+ expect(secondResponse).toEqual({ filesToWrite: 0, writtenFiles: 0, filesToModify: 0 });
553
+ }
554
+ finally {
555
+ fs.rmSync(tempDir, { recursive: true, force: true });
556
+ }
557
+ });
558
+ test('files that already carry an inline block stay inline without any inline options', async () => {
559
+ var _a;
560
+ const tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'kea-typegen-inline-sticky-'));
561
+ try {
562
+ const rootDir = path.join(tempDir, 'src');
563
+ const logicPath = path.join(rootDir, 'stickyLogic.ts');
564
+ writeKeaDts(tempDir);
565
+ fs.mkdirSync(rootDir, { recursive: true });
566
+ fs.writeFileSync(logicPath, [
567
+ "import { MakeLogicType, kea } from 'kea'",
568
+ '',
569
+ '// Generated by kea-typegen. DO NOT EDIT THIS BLOCK MANUALLY.',
570
+ 'export interface stickyLogicActions {',
571
+ ' setValue: (value: string) => {',
572
+ ' value: string',
573
+ ' }',
574
+ '}',
575
+ '',
576
+ 'export type stickyLogicType = MakeLogicType<{}, stickyLogicActions>',
577
+ '',
578
+ 'export const stickyLogic = kea<stickyLogicType>({',
579
+ ' actions: () => ({',
580
+ ' setValue: (value: string) => ({ value }),',
581
+ ' setOther: (other: number) => ({ other }),',
582
+ ' }),',
583
+ '})',
584
+ '',
585
+ ].join('\n'));
586
+ const appOptions = {
587
+ rootPath: rootDir,
588
+ typesPath: rootDir,
589
+ packageJsonPath: path.join(tempDir, 'package.json'),
590
+ write: true,
591
+ log: () => { },
592
+ };
593
+ const program = createProgram([logicPath]);
594
+ const response = await (0, print_1.printToFiles)(program, appOptions, (0, visit_1.visitProgram)(program, appOptions));
595
+ expect(response.writtenFiles).toBe(1);
596
+ const writtenLogic = fs.readFileSync(logicPath, 'utf8');
597
+ expect(writtenLogic).toContain('setOther: (other: number) =>');
598
+ expect((_a = writtenLogic.match(/DO NOT EDIT THIS BLOCK MANUALLY/g)) === null || _a === void 0 ? void 0 : _a.length).toBe(1);
599
+ expect(fs.existsSync(path.join(rootDir, 'stickyLogicType.ts'))).toBe(false);
600
+ }
601
+ finally {
602
+ fs.rmSync(tempDir, { recursive: true, force: true });
603
+ }
604
+ });
223
605
  });
224
606
  //# sourceMappingURL=inline.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"inline.js","sourceRoot":"","sources":["../../../src/__tests__/inline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inline.js","sourceRoot":"","sources":["../../../src/__tests__/inline.ts"],"names":[],"mappings":"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"}
@@ -3,3 +3,4 @@ import { Program } from 'typescript';
3
3
  export declare function cachePath(appOptions: AppOptions, fileName: string): string;
4
4
  export declare function restoreCachedTypes(program: Program, appOptions: AppOptions, log: (msg: string) => void): boolean;
5
5
  export declare function cacheWrittenFile(fileName: string, appOptions: AppOptions): void;
6
+ export declare function deleteCachedFile(fileName: string, appOptions: AppOptions): void;
package/dist/src/cache.js CHANGED
@@ -3,19 +3,29 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.cachePath = cachePath;
4
4
  exports.restoreCachedTypes = restoreCachedTypes;
5
5
  exports.cacheWrittenFile = cacheWrittenFile;
6
+ exports.deleteCachedFile = deleteCachedFile;
6
7
  const fs = require("fs");
7
8
  const path = require("path");
8
9
  const visit_1 = require("./visit/visit");
10
+ const utils_1 = require("./utils");
9
11
  function cachePath(appOptions, fileName) {
10
12
  return path.join(process.cwd(), '.typegen', path.relative(process.cwd(), fileName));
11
13
  }
12
14
  function restoreCachedTypes(program, appOptions, log) {
15
+ var _a;
13
16
  if (!appOptions.useCache) {
14
17
  return false;
15
18
  }
16
19
  const parsedLogics = (0, visit_1.visitProgram)(program, appOptions);
20
+ const parsedLogicsByFile = {};
21
+ for (const pl of parsedLogics) {
22
+ parsedLogicsByFile[pl.fileName] = [...((_a = parsedLogicsByFile[pl.fileName]) !== null && _a !== void 0 ? _a : []), pl];
23
+ }
17
24
  let restored = false;
18
25
  for (const pl of parsedLogics) {
26
+ if ((0, utils_1.isInlineFile)(appOptions, program.getSourceFile(pl.fileName), parsedLogicsByFile[pl.fileName])) {
27
+ continue;
28
+ }
19
29
  if (!fs.existsSync(pl.typeFileName)) {
20
30
  const from = cachePath(appOptions, pl.typeFileName);
21
31
  if (fs.existsSync(from)) {
@@ -36,4 +46,13 @@ function cacheWrittenFile(fileName, appOptions) {
36
46
  fs.mkdirSync(path.dirname(dest), { recursive: true });
37
47
  fs.copyFileSync(fileName, dest);
38
48
  }
49
+ function deleteCachedFile(fileName, appOptions) {
50
+ if (!appOptions.useCache) {
51
+ return;
52
+ }
53
+ const dest = cachePath(appOptions, fileName);
54
+ if (fs.existsSync(dest)) {
55
+ fs.unlinkSync(dest);
56
+ }
57
+ }
39
58
  //# sourceMappingURL=cache.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../src/cache.ts"],"names":[],"mappings":";;AAMA,8BAEC;AAED,gDAkBC;AAED,4CAOC;AArCD,yBAAwB;AACxB,6BAA4B;AAG5B,yCAA4C;AAE5C,SAAgB,SAAS,CAAC,UAAsB,EAAE,QAAgB;IAC9D,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAA;AACvF,CAAC;AAED,SAAgB,kBAAkB,CAAC,OAAgB,EAAE,UAAsB,EAAE,GAA0B;IACnG,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QACvB,OAAO,KAAK,CAAA;IAChB,CAAC;IACD,MAAM,YAAY,GAAG,IAAA,oBAAY,EAAC,OAAO,EAAE,UAAU,CAAC,CAAA;IACtD,IAAI,QAAQ,GAAG,KAAK,CAAA;IACpB,KAAK,MAAM,EAAE,IAAI,YAAY,EAAE,CAAC;QAC5B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,GAAG,SAAS,CAAC,UAAU,EAAE,EAAE,CAAC,YAAY,CAAC,CAAA;YACnD,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtB,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;gBAChE,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,CAAA;gBACtC,GAAG,CAAC,2BAA2B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC,CAAA;gBAC/E,QAAQ,GAAG,IAAI,CAAA;YACnB,CAAC;QACL,CAAC;IACL,CAAC;IACD,OAAO,QAAQ,CAAA;AACnB,CAAC;AAED,SAAgB,gBAAgB,CAAC,QAAgB,EAAE,UAAsB;IACrE,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QACvB,OAAM;IACV,CAAC;IACD,MAAM,IAAI,GAAG,SAAS,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;IAC5C,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IACrD,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;AACnC,CAAC"}
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../src/cache.ts"],"names":[],"mappings":"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"}
@@ -41,6 +41,11 @@ yargs
41
41
  .option('inline', {
42
42
  describe: 'Write logic types as MakeLogicType blocks above each kea() call, instead of logicType.ts files',
43
43
  type: 'boolean',
44
+ })
45
+ .option('inline-paths', {
46
+ describe: 'Like --inline, but only for logic files under these paths (relative to --root). ' +
47
+ 'Everything else keeps its logicType.ts file.',
48
+ type: 'array',
44
49
  })
45
50
  .option('import-global-types', {
46
51
  describe: 'Add import statements in logicType.ts files for global types (e.g. @types/node)',
@@ -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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"}