kea-typegen 1.2.2 → 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/CHANGELOG.md CHANGED
@@ -1,82 +1,111 @@
1
+ ## 1.3.0 - 2021-11-08
2
+
3
+ - Write paths into logics with `--write-paths`. Can be configured in `.kearc` with `writePaths: true`
4
+
1
5
  ## 1.2.2 - 2021-10-14
2
- - Loaders: Make the `payload` parameter on the `Success` action optional.
6
+
7
+ - Loaders: Make the `payload` parameter on the `Success` action optional.
3
8
 
4
9
  ## 1.2.1 - 2021-10-14
5
- - Improve `kea-loaders` 0.5.0 support
10
+
11
+ - Improve `kea-loaders` 0.5.0 support
6
12
 
7
13
  ## 1.2.0 - 2021-10-14
8
- - Support `kea-loaders` 0.5.0, add `payload` to the success action and `errorObject` to the failure action.
14
+
15
+ - Support `kea-loaders` 0.5.0, add `payload` to the success action and `errorObject` to the failure action.
9
16
 
10
17
  ## 1.1.6 - 2021-10-07
11
- - Support reducers with actions like `[otherLogic().actionTypes.bla]`
18
+
19
+ - Support reducers with actions like `[otherLogic().actionTypes.bla]`
12
20
 
13
21
  ## 1.1.5 - 2021-07-14
14
- - [Fix bug](https://github.com/keajs/kea-typegen/issues/28) with string constant types in action properties when connected with `connect`.
22
+
23
+ - [Fix bug](https://github.com/keajs/kea-typegen/issues/28) with string constant types in action properties when connected with `connect`.
15
24
 
16
25
  ## 1.1.4 - 2021-07-13
17
- - Support declaring `props: {} as SomeInterface`
26
+
27
+ - Support declaring `props: {} as SomeInterface`
18
28
 
19
29
  ## 1.1.3 - 2021-07-13
20
- - Bugfixes
30
+
31
+ - Bugfixes
21
32
 
22
33
  ## 1.1.2 - 2021-07-12
23
- - Export types and `runTypeGen` function
34
+
35
+ - Export types and `runTypeGen` function
24
36
 
25
37
  ## 1.1.1 - 2021-07-12
26
- - Fix main field in package.json
38
+
39
+ - Fix main field in package.json
27
40
 
28
41
  ## 1.1.0 - 2021-07-12
29
- - Experimental support for typegen plugins
42
+
43
+ - Experimental support for typegen plugins
30
44
 
31
45
  ## 1.0.4 - 2021-06-27
32
- - Fix regression
46
+
47
+ - Fix regression
33
48
 
34
49
  ## 1.0.3 - 2021-06-27
35
- - Fix regression
50
+
51
+ - Fix regression
36
52
 
37
53
  ## 1.0.2 - 2021-06-27
38
- - Use explicitly specified function return types if present for actions and selectors (vs detection via compiler api).
39
- - This helps with namespaced types like `This.That`, as the namespace information is lost in detected types.
54
+
55
+ - Use explicitly specified function return types if present for actions and selectors (vs detection via compiler api).
56
+ - This helps with namespaced types like `This.That`, as the namespace information is lost in detected types.
40
57
 
41
58
  ## 1.0.1 - 2021-06-27
42
- - Republish as 1.0.0 on npm is actually 0.7.2
43
- - Only import `A` when encountering complex types like `A.B`
59
+
60
+ - Republish as 1.0.0 on npm is actually 0.7.2
61
+ - Only import `A` when encountering complex types like `A.B`
44
62
 
45
63
  ## 1.0.0 - 2021-06-26
46
- - Support auto-importing referenced types into logic types
64
+
65
+ - Support auto-importing referenced types into logic types
47
66
 
48
67
  ## 0.7.2 - 2021-05-30
49
- - Support actions that return payloads with over 16 properties (fix ".. 4 more .." in the generated type).
68
+
69
+ - Support actions that return payloads with over 16 properties (fix ".. 4 more .." in the generated type).
50
70
 
51
71
  ## 0.7.1 - 2021-04-30
52
- - Improve error display, condense logs
72
+
73
+ - Improve error display, condense logs
53
74
 
54
75
  ## 0.7.0 - 2021-04-26
55
- - Fix various bugs from last version.
56
- - Run with `--no-import` to skip automatically adding imports to logic types.
76
+
77
+ - Fix various bugs from last version.
78
+ - Run with `--no-import` to skip automatically adding imports to logic types.
57
79
 
58
80
  ## 0.6.2 - 2021-04-25
59
- - Automatically add `import { logicType } from './logicType'` statements
60
- - Automatically add the type to `kea<logicType>()`
61
- - 0.6.0 and 0.6.1 had some bugs, don't use.
81
+
82
+ - Automatically add `import { logicType } from './logicType'` statements
83
+ - Automatically add the type to `kea<logicType>()`
84
+ - 0.6.0 and 0.6.1 had some bugs, don't use.
62
85
 
63
86
  ## 0.5.4 - 2021-03-30
64
- - Support reducers with selectors as defaults
87
+
88
+ - Support reducers with selectors as defaults
65
89
 
66
90
  ## 0.5.3 - 2021-02-23
67
- - Fix type bug with selectors
68
- - Skip first comment line in generated types when comparing for overwrites
69
- - Update deps
91
+
92
+ - Fix type bug with selectors
93
+ - Skip first comment line in generated types when comparing for overwrites
94
+ - Update deps
70
95
 
71
96
  ## 0.5.2 - 2021-02-23
72
- - Update and clean up copy
97
+
98
+ - Update and clean up copy
73
99
 
74
100
  ## 0.5.1 - 2021-01-22
75
- - Fix `kea-typegen write` recursive updates
101
+
102
+ - Fix `kea-typegen write` recursive updates
76
103
 
77
104
  ## 0.5.0 - 2021-01-22
78
- - Fix "Record<...>" style shortened types in selectors
79
- - Add names to selectors
105
+
106
+ - Fix "Record<...>" style shortened types in selectors
107
+ - Add names to selectors
80
108
 
81
109
  ## 0.4.0 - 2020-12-29
82
- - Fixed support for TypeScript 4.1
110
+
111
+ - Fixed support for TypeScript 4.1
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kea-typegen",
3
- "version": "1.2.2",
3
+ "version": "1.3.0",
4
4
  "description": "Generate type definitions for kea logic",
5
5
  "scripts": {
6
6
  "start": "ts-node ./src/cli/typegen.ts",
@@ -11,6 +11,7 @@
11
11
  "test": "jest",
12
12
  "samples:check": "ts-node ./src/cli/typegen.ts check -c ./samples/tsconfig.json",
13
13
  "samples:write": "ts-node ./src/cli/typegen.ts write -c ./samples/tsconfig.json",
14
+ "samples:write:paths": "ts-node ./src/cli/typegen.ts write -c ./samples/tsconfig.json --write-paths",
14
15
  "samples:watch": "ts-node ./src/cli/typegen.ts watch -c ./samples/tsconfig.json",
15
16
  "samples:write:posthog": "ts-node ./src/cli/typegen.ts write -c ../../PostHog/posthog/tsconfig.json",
16
17
  "form-plugin:build": "cd form-plugin && yarn build && cd ..",
@@ -30,6 +30,7 @@ yargs
30
30
  })
31
31
  .option('quiet', { alias: 'q', describe: 'Write nothing to stdout', type: 'boolean' })
32
32
  .option('no-import', { describe: 'Do not automatically import generated types in logic files', type: 'boolean' })
33
+ .option('write-paths', { describe: 'Write paths into logic files that have none', type: 'boolean' })
33
34
  .option('verbose', { describe: 'Slightly more verbose output log', type: 'boolean' })
34
35
  .demandCommand()
35
36
  .help()
@@ -43,6 +44,7 @@ function parsedToAppOptions(parsedOptions) {
43
44
  quiet: parsedOptions.quiet,
44
45
  verbose: parsedOptions.verbose,
45
46
  noImport: parsedOptions.noImport,
47
+ writePaths: parsedOptions.writePaths,
46
48
  log: parsedOptions.quiet ? () => null : console.log.bind(console),
47
49
  };
48
50
  return appOptions;
@@ -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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"}
@@ -4,7 +4,7 @@ export declare function runThroughPrettier(sourceText: string, filePath: string)
4
4
  export declare function printToFiles(program: ts.Program, appOptions: AppOptions, parsedLogics: ParsedLogic[]): {
5
5
  filesToWrite: number;
6
6
  writtenFiles: number;
7
- importsToModify: number;
7
+ filesToModify: number;
8
8
  };
9
9
  export declare function nodeToString(node: ts.Node): string;
10
10
  export declare function parsedLogicToTypeString(parsedLogic: ParsedLogic, appOptions?: AppOptions): string;
@@ -24,7 +24,7 @@ const printReducerOptions_1 = require("./printReducerOptions");
24
24
  const printEvents_1 = require("./printEvents");
25
25
  const printSharedListeners_1 = require("./printSharedListeners");
26
26
  const printListeners_1 = require("./printListeners");
27
- const writeLogicTypeImports_1 = require("../import/writeLogicTypeImports");
27
+ const write_1 = require("../write/write");
28
28
  const printInternalExtraInput_1 = require("./printInternalExtraInput");
29
29
  function runThroughPrettier(sourceText, filePath) {
30
30
  const options = prettier.resolveConfig.sync(filePath);
@@ -55,7 +55,7 @@ function printToFiles(program, appOptions, parsedLogics) {
55
55
  }
56
56
  let writtenFiles = 0;
57
57
  let filesToWrite = 0;
58
- let importsToModify = 0;
58
+ let filesToModify = 0;
59
59
  Object.entries(groupedByFile).forEach(([fileName, parsedLogics]) => {
60
60
  var _a;
61
61
  const typeFileName = parsedLogics[0].typeFileName;
@@ -112,29 +112,41 @@ function printToFiles(program, appOptions, parsedLogics) {
112
112
  log(`🤷 Unchanged: ${path.relative(process.cwd(), typeFileName)}`);
113
113
  }
114
114
  }
115
- const logicsNeedingImports = parsedLogics.filter((pl) => (pl.logicTypeImported === false ||
115
+ const parsedLogicNeedsTypeImport = (pl) => (pl.logicTypeImported === false ||
116
116
  pl.logicTypeArguments.join(', ') !== [...pl.typeReferencesInLogicInput].sort().join(', ')) &&
117
- pl.fileName.match(/\.tsx?$/));
117
+ pl.fileName.match(/\.tsx?$/);
118
+ const logicsNeedingImports = parsedLogics.filter(parsedLogicNeedsTypeImport);
118
119
  if (logicsNeedingImports.length > 0) {
119
120
  if (appOptions.write && !appOptions.noImport) {
120
- writeLogicTypeImports_1.writeLogicTypeImports(appOptions, program, fileName, logicsNeedingImports, parsedLogics);
121
- importsToModify = logicsNeedingImports.length;
121
+ write_1.writeTypeImports(appOptions, program, fileName, logicsNeedingImports, parsedLogics);
122
+ filesToModify += logicsNeedingImports.length;
122
123
  }
123
124
  else {
124
125
  log(`❌ Will not write ${logicsNeedingImports.length} logic type import${logicsNeedingImports.length === 1 ? '' : 's'}`);
125
126
  }
126
127
  }
128
+ const parsedLogicNeedsPath = appOptions.writePaths ? (pl) => !pl.hasPathInLogic : () => false;
129
+ const logicsNeedingPaths = parsedLogics.filter(parsedLogicNeedsPath);
130
+ if (logicsNeedingPaths.length > 0) {
131
+ if (appOptions.write && !appOptions.noImport) {
132
+ write_1.writePaths(appOptions, program, fileName, logicsNeedingPaths);
133
+ filesToModify += logicsNeedingPaths.length;
134
+ }
135
+ else {
136
+ log(`❌ Will not write ${logicsNeedingPaths.length} logic path${logicsNeedingPaths.length === 1 ? '' : 's'}`);
137
+ }
138
+ }
127
139
  });
128
- if (writtenFiles === 0 && importsToModify === 0) {
140
+ if (writtenFiles === 0 && filesToModify === 0) {
129
141
  if (appOptions.write) {
130
142
  log(`💚 ${parsedLogics.length} logic type${parsedLogics.length === 1 ? '' : 's'} up to date!`);
131
143
  log('');
132
144
  }
133
- else if (filesToWrite > 0 || importsToModify > 0) {
134
- log(`🚨 Run "kea-typegen write" to save ${filesToWrite + importsToModify} file${filesToWrite === 1 ? '' : 's'} to disk`);
145
+ else if (filesToWrite > 0 || filesToModify > 0) {
146
+ log(`🚨 Run "kea-typegen write" to save ${filesToWrite + filesToModify} file${filesToWrite === 1 ? '' : 's'} to disk`);
135
147
  }
136
148
  }
137
- return { filesToWrite, writtenFiles, importsToModify };
149
+ return { filesToWrite, writtenFiles, filesToModify };
138
150
  }
139
151
  exports.printToFiles = printToFiles;
140
152
  function nodeToString(node) {
@@ -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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"}
@@ -79,7 +79,7 @@ function runTypeGen(appOptions) {
79
79
  log(`🗒️ ${parsedLogics.length} logic${parsedLogics.length === 1 ? '' : 's'} found!`);
80
80
  }
81
81
  const response = print_1.printToFiles(program, appOptions, parsedLogics);
82
- if (!appOptions.write && !appOptions.watch && (response.filesToWrite > 0 || response.importsToModify > 0)) {
82
+ if (!appOptions.write && !appOptions.watch && (response.filesToWrite > 0 || response.filesToModify > 0)) {
83
83
  process.exit(1);
84
84
  }
85
85
  return response;
@@ -88,8 +88,8 @@ function runTypeGen(appOptions) {
88
88
  if (appOptions.write) {
89
89
  let round = 0;
90
90
  while ((round += 1)) {
91
- const { writtenFiles, importsToModify } = goThroughAllTheFiles(program, appOptions);
92
- if (writtenFiles === 0 && importsToModify === 0) {
91
+ const { writtenFiles, filesToModify } = goThroughAllTheFiles(program, appOptions);
92
+ if (writtenFiles === 0 && filesToModify === 0) {
93
93
  log(`👋 Finished writing files! Exiting.`);
94
94
  process.exit(0);
95
95
  }
@@ -1 +1 @@
1
- {"version":3,"file":"typegen.js","sourceRoot":"","sources":["../../src/typegen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typegen.js","sourceRoot":"","sources":["../../src/typegen.ts"],"names":[],"mappings":"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"}
@@ -32,6 +32,8 @@ export interface ParsedLogic {
32
32
  logicTypeImported: boolean;
33
33
  path: string[];
34
34
  pathString: string;
35
+ hasPathInLogic: boolean;
36
+ hasKeyInLogic: boolean;
35
37
  logicTypeArguments: string[];
36
38
  constants: string[];
37
39
  events: Record<string, boolean>;
@@ -62,6 +64,7 @@ export interface AppOptions {
62
64
  quiet?: boolean;
63
65
  verbose?: boolean;
64
66
  noImport?: boolean;
67
+ writePaths?: boolean;
65
68
  log: (message: string) => void;
66
69
  }
67
70
  export interface VisitKeaPropertyArguments {
@@ -175,9 +175,11 @@ function visitKeaCalls(checker, parsedLogics, sourceFile, appOptions, pluginModu
175
175
  propsType: undefined,
176
176
  path: pathString.split('.'),
177
177
  pathString: pathString,
178
+ hasKeyInLogic: false,
179
+ hasPathInLogic: false,
178
180
  typeReferencesToImportFromFiles: {},
179
181
  typeReferencesInLogicInput: new Set(),
180
- extraInput: {}
182
+ extraInput: {},
181
183
  };
182
184
  const input = node.parent.arguments[0];
183
185
  for (const inputProperty of input.properties) {
@@ -189,6 +191,12 @@ function visitKeaCalls(checker, parsedLogics, sourceFile, appOptions, pluginModu
189
191
  continue;
190
192
  }
191
193
  const name = symbol.getName();
194
+ if (name === 'path') {
195
+ parsedLogic.hasPathInLogic = true;
196
+ }
197
+ if (name === 'key') {
198
+ parsedLogic.hasKeyInLogic = true;
199
+ }
192
200
  let type = checker.getTypeOfSymbolAtLocation(symbol, symbol.valueDeclaration);
193
201
  let typeNode = type ? checker.typeToTypeNode(type, undefined, undefined) : null;
194
202
  if (typeNode && ts.isFunctionTypeNode(typeNode)) {
@@ -1 +1 @@
1
- {"version":3,"file":"visit.js","sourceRoot":"","sources":["../../../src/visit/visit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"visit.js","sourceRoot":"","sources":["../../../src/visit/visit.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { AppOptions, ParsedLogic } from '../types';
2
+ import * as ts from 'typescript';
3
+ export declare function writeTypeImports(appOptions: AppOptions, program: ts.Program, filename: string, parsedLogics: ParsedLogic[], allParsedLogics: ParsedLogic[]): void;
4
+ export declare function writePaths(appOptions: AppOptions, program: ts.Program, filename: string, parsedLogics: ParsedLogic[]): void;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.writeLogicTypeImports = void 0;
3
+ exports.writePaths = exports.writeTypeImports = void 0;
4
4
  const ts = require("typescript");
5
5
  const utils_1 = require("../utils");
6
6
  const fs = require("fs");
@@ -27,7 +27,7 @@ function addBackNewlines(oldText, newText) {
27
27
  }
28
28
  return diff.applyPatch(oldText, patch);
29
29
  }
30
- function writeLogicTypeImports(appOptions, program, filename, parsedLogics, allParsedLogics) {
30
+ function writeTypeImports(appOptions, program, filename, parsedLogics, allParsedLogics) {
31
31
  const { log } = appOptions;
32
32
  const sourceFile = program.getSourceFile(filename);
33
33
  const checker = program.getTypeChecker();
@@ -50,7 +50,9 @@ function writeLogicTypeImports(appOptions, program, filename, parsedLogics, allP
50
50
  const { logicTypeName, typeReferencesInLogicInput } = parsedLogicMapByNode.get(node.expression);
51
51
  return ts.createCall(node.expression, [
52
52
  ts.createTypeReferenceNode(ts.createIdentifier(logicTypeName), typeReferencesInLogicInput.size > 0
53
- ? [...typeReferencesInLogicInput.values()].sort().map((type) => ts.createTypeReferenceNode(ts.createIdentifier(type), undefined))
53
+ ? [...typeReferencesInLogicInput.values()]
54
+ .sort()
55
+ .map((type) => ts.createTypeReferenceNode(ts.createIdentifier(type), undefined))
54
56
  : undefined),
55
57
  ], node.arguments);
56
58
  }
@@ -98,6 +100,50 @@ function writeLogicTypeImports(appOptions, program, filename, parsedLogics, allP
98
100
  return ts.visitNode(rootNode, visit);
99
101
  };
100
102
  };
103
+ writeFile(sourceFile, transformer, filename);
104
+ log(`🔥 Import added: ${path.relative(process.cwd(), filename)}`);
105
+ }
106
+ exports.writeTypeImports = writeTypeImports;
107
+ function writePaths(appOptions, program, filename, parsedLogics) {
108
+ const { log } = appOptions;
109
+ const sourceFile = program.getSourceFile(filename);
110
+ const checker = program.getTypeChecker();
111
+ const parsedLogicMapByNode = new Map();
112
+ for (const parsedLogic of parsedLogics) {
113
+ parsedLogicMapByNode.set(parsedLogic.node, parsedLogic);
114
+ }
115
+ const transformer = (context) => {
116
+ return (rootNode) => {
117
+ function visit(node) {
118
+ node = ts.visitEachChild(node, visit, context);
119
+ if (ts.isCallExpression(node) &&
120
+ utils_1.isKeaCall(node.expression, checker) &&
121
+ parsedLogicMapByNode.has(node.expression)) {
122
+ const { path, hasKeyInLogic } = parsedLogicMapByNode.get(node.expression);
123
+ return ts.createCall(node.expression, node.typeArguments, node.arguments.map((argument, i) => i === 0 && ts.isObjectLiteralExpression(argument)
124
+ ? ts.createObjectLiteral([
125
+ hasKeyInLogic
126
+ ? ts.createPropertyAssignment(ts.createIdentifier('path'), ts.createArrowFunction(undefined, undefined, [
127
+ ts.createParameter(undefined, undefined, undefined, ts.createIdentifier('key'), undefined, undefined, undefined),
128
+ ], undefined, ts.createToken(ts.SyntaxKind.EqualsGreaterThanToken), ts.createArrayLiteral([
129
+ ...path.map((str) => ts.createStringLiteral(str)),
130
+ ts.createIdentifier('key'),
131
+ ], false)))
132
+ : ts.createPropertyAssignment(ts.createIdentifier('path'), ts.createArrayLiteral(path.map((str) => ts.createStringLiteral(str)), false)),
133
+ ...argument.properties,
134
+ ], true)
135
+ : argument));
136
+ }
137
+ return node;
138
+ }
139
+ return ts.visitNode(rootNode, visit);
140
+ };
141
+ };
142
+ writeFile(sourceFile, transformer, filename);
143
+ log(`🔥 Path added: ${path.relative(process.cwd(), filename)}`);
144
+ }
145
+ exports.writePaths = writePaths;
146
+ function writeFile(sourceFile, transformer, filename) {
101
147
  const printer = ts.createPrinter();
102
148
  const result = ts.transform(sourceFile, [transformer]);
103
149
  const transformedSourceFile = result.transformed[0];
@@ -107,7 +153,5 @@ function writeLogicTypeImports(appOptions, program, filename, parsedLogics, allP
107
153
  const oldText = sourceFile.getText();
108
154
  const newestText = addBackNewlines(oldText, newText);
109
155
  fs.writeFileSync(filename, newestText);
110
- log(`🔥 Import added: ${path.relative(process.cwd(), filename)}`);
111
156
  }
112
- exports.writeLogicTypeImports = writeLogicTypeImports;
113
- //# sourceMappingURL=writeLogicTypeImports.js.map
157
+ //# sourceMappingURL=write.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"write.js","sourceRoot":"","sources":["../../../src/write/write.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"program":{"fileNames":["../node_modules/typescript/lib/lib.es6.d.ts","../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.dom.iterable.d.ts","../node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../node_modules/typescript/lib/lib.scripthost.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/typescript.d.ts","../node_modules/@wessberg/ts-clone-node/dist/esm/index.d.ts","../src/types.ts","../node_modules/@types/prettier/index.d.ts","../src/print/printactions.ts","../src/print/printreducers.ts","../src/print/printreducer.ts","../src/print/printselector.ts","../src/print/printselectors.ts","../src/print/printvalues.ts","../src/print/printinternalselectortypes.ts","../src/print/printactionkeys.ts","../src/print/printactiontypes.ts","../src/print/printinternalreduceractions.ts","../src/print/printactioncreators.ts","../src/print/printprops.ts","../src/print/printkey.ts","../src/print/printdefaults.ts","../src/print/printconstants.ts","../src/print/printreduceroptions.ts","../src/print/printevents.ts","../src/print/printsharedlisteners.ts","../src/print/printlisteners.ts","../src/import/writelogictypeimports.ts","../src/print/printinternalextrainput.ts","../src/print/print.ts","../src/utils.ts","../src/visit/visitactions.ts","../src/visit/visitreducers.ts","../src/visit/visitselectors.ts","../src/visit/visitloaders.ts","../src/visit/visitconnect.ts","../src/visit/visitwindowvalues.ts","../src/visit/visitprops.ts","../src/visit/visitkey.ts","../src/visit/visitpath.ts","../src/visit/visitlisteners.ts","../src/visit/visitconstants.ts","../src/visit/visitevents.ts","../src/visit/visitdefaults.ts","../src/visit/visitsharedlisteners.ts","../src/visit/visit.ts","../package.json","../src/typegen.ts","../src/index.ts","../src/__tests__/utils.ts","../src/__tests__/e2e/actions.ts","../src/__tests__/e2e/connect.ts","../src/__tests__/e2e/loaders.ts","../src/__tests__/e2e/reducers.ts","../src/__tests__/e2e/selectors.ts","../node_modules/@types/yargs-parser/index.d.ts","../node_modules/@types/yargs/index.d.ts","../src/cli/typegen.ts","../src/visit/__tests__/visit.ts","../node_modules/@types/jest/node_modules/jest-diff/build/cleanupsemantic.d.ts","../node_modules/@types/jest/node_modules/jest-diff/build/types.d.ts","../node_modules/@types/jest/node_modules/jest-diff/build/difflines.d.ts","../node_modules/@types/jest/node_modules/jest-diff/build/printdiffs.d.ts","../node_modules/@types/jest/node_modules/jest-diff/build/index.d.ts","../node_modules/@types/jest/node_modules/pretty-format/build/types.d.ts","../node_modules/@types/jest/node_modules/pretty-format/build/index.d.ts","../node_modules/@types/jest/index.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/ts3.4/base.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/ts3.6/base.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/base.d.ts","../node_modules/@types/node/index.d.ts"],"fileInfos":["721cec59c3fef87aaf480047d821fb758b3ec9482c4129a54631e6e25e432a31",{"version":"ac3a8c4040e183ce38da69d23b96939112457d1936198e6542672b7963cf0fce","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06",{"version":"1dad4fe1561d99dfd6709127608b99a76e5c2643626c800434f99c48038567ee","affectsGlobalScope":true},{"version":"a8fe23ae87c3e9d2877032cafeb290f2ebe0c51e216d175a0408b10915ebe9f0","affectsGlobalScope":true},{"version":"7fac8cb5fc820bc2a59ae11ef1c5b38d3832c6d0dfaec5acdb5569137d09a481","affectsGlobalScope":true},{"version":"097a57355ded99c68e6df1b738990448e0bf170e606707df5a7c0481ff2427cd","affectsGlobalScope":true},{"version":"cce43d02223f8049864f8568bed322c39424013275cd3bcc3f51492d8b546cb3","affectsGlobalScope":true},{"version":"43fb1d932e4966a39a41b464a12a81899d9ae5f2c829063f5571b6b87e6d2f9c","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"8dff1b4c2df638fcd976cbb0e636f23ab5968e836cd45084cc31d47d1ab19c49","affectsGlobalScope":true},{"version":"2bb4b3927299434052b37851a47bf5c39764f2ba88a888a107b32262e9292b7c","affectsGlobalScope":true},{"version":"810627a82ac06fb5166da5ada4159c4ec11978dfbb0805fe804c86406dab8357","affectsGlobalScope":true},{"version":"62d80405c46c3f4c527ee657ae9d43fda65a0bf582292429aea1e69144a522a6","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"8f4c9f651c8294a2eb1cbd12581fe25bfb901ab1d474bb93cd38c7e2f4be7a30","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"12a310447c5d23c7d0d5ca2af606e3bd08afda69100166730ab92c62999ebb9d","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"df9c8a72ca8b0ed62f5470b41208a0587f0f73f0a7db28e5a1272cf92537518e","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"60761e6ea886034af0f294f025a7199360ce4e2c8ba4ec6408bc049cf9b89799","affectsGlobalScope":true},{"version":"506b80b9951c9381dc5f11897b31fca5e2a65731d96ddefa19687fbc26b23c6e","affectsGlobalScope":true},"ed5fee0e35e114dd0d653ba36143496529de7e46e944e2c0d5b9db89d00e4321","e2dc8b431b672ccec6da32acb17475cc7d5a3ad121667ef5723231b39808ab11","0081aca8186ad57da98e87d0a32f9eb01f191e328ed04c00f95a2e0947a54f95","74940ccce687ffb55f99053deb278496e43ffd51020f6e81a8be80545f6bd7ec","33fe41008050cc7e2d3ed2538155e4c3cb3e91727b9b852198641bdc809a5af1","db15abc2a4549f742b718c8670d859ad05738053b3d2fea84e9ea3627c5221de","a1a184a1b052f2be57d134ceabfa5a986a536010c8b08c93403b0e767ec34f1f","1bdc19666537135d612efc7520861ffb724b8391c57a7f8352cdf1bb74a01846","f6e498fdd819dd8cc448225398dc38a41d28e84c4f3756408858ae0f50b04a63","2b28b79ca45abe6aff158603318c64640a7a8017a3a9ef9b97e57ef6da77ee78","0dc5a95d29380c1cdfba5128dbbd3c07c2053c64e02b872d2b52c110153d81e2","86af93a431854bd45262fa010ac3e7ad6340079e0afd0d16c69331d4e3a24977","760169ba6b3ff15885d64ef531f650a0127e8bcb661a2c6c77d4aa21049cb3d7","cc98ca4e9e7dd8aec29a59c230c9dc81ebc59d65d9e3aacd76a767374b5f9fba","e0f95ef2756ab5acde2ceae78722f13923dc72f9ab201769ee7e5d3a084659fc","c528508108c4fda2d1b89be6607a688e819a0f612d0b4cadec26726c44e1c1cd","b002adaf3e463bb97d56a0126e2a2d6463a1c5b4db49edff44d62afac2b74f4f","80f346cfe5f8286999295c4d800d412190fd11aaa78234b23d0033bf2a1800cf","f5af16b22faeffb50c2205688d71bd5f4360131f2524207d6117f19c22b93664","5aca9bf39c2dcbae8697ae2c46c6082ac1ad57fec479e82c7d55044cfc997d44","63bce4c5fd564c859bc79e4f99b0e5e4f2435c8d2a1be79334fe2398f75f7060","1404de95c538b7d664285b53c0aa94c4c4a160f7f034ca4390c0595ea3ae0c04","e153f696b3fb405b8c966a3fa83a58a577623e542542742f81140b0d6a75e440","ca8f22d91a00e6177e736c81227ca57b200f17dccc947611a7a66bffbe684265","c7355a474f3303e8c7840fb81a69a777b50374426721b7f8cdc4fb99b4bfe7ed","2b754f6ca71795d76d6cd87e5c5bab9b42a202340fcd0edcdcb39720f2cd21f7","cd50cca527daa3e1510a30308e2c58a55d5a9bdd5a1cd915f664e718d5947f72","d1403d771e0726c59c1078d292dd867776c5a8a01537e8f758520a65881ef54d","c5a19f5c339c7bc77852a9c5144deef6b1ee6f5375659c3f84f6aa3dff49eb0c","3b6160d403138e7b8fdb2a139a66133d43c0950556d53823179a7b0a2024666e","e1d01faf76608615df071619d81a942cd1a387d073784ed315bb1af743423846","af9d1a6c0f14931bf1a050bc12deb052b24b4a1c2680366734fec9b5ff431850","7eac38bc715b44db042e3d3fe8dd1d550d6bb3b15b5d715cb7586d7e6c53c3e7","575583a244d92d5438d054aa4fd14c2e6added5314873f789abc52ce7bb50397","a5b6d895f1477958701942aa740640e2194f306331b71235b4ddec190a3f7448","0ea0720994ba3c0658f98bf4956b5471d3f38d0c2f90e2a14c5c4e08578a5fb1","fc4c6f16f628f93b2fd173d4deaf81ba93eb9a17ad982f75cdfa1dbd4936a944","e6337d77773d763c79a1e8ba90ed6dccbd8b3b0736c78f87076a2d98d32979f4","21ed8d6fa955375cf35f391bc11eda531012e179337fcf3db52a3676cd56cb8b","9d64a0bc2440331a0dcb2d763a298fe42e2cfdf4f1bfc02436e10c373d457ca6","9da010705130cedacb3f862d4b8d871b29d8b898a9ce4cc8892a3f40ea7a50e8","c49b9831cba9dd41cb98279a42fd0a0e4662175ba7e4fe8a70bb406ec7228b1e",{"version":"396564e6b3522bcdcb75d693157d71acc55e41bc74871983e92faf181f1cf2af","affectsGlobalScope":true},"377e77249dfb48fb5df7fbd2fcfcb3ab853559f76d4176581c7f8be447c854ad","4329bab0bad8f11adbb7e69f68e7540130331907b257c6584192775ac5fcba19","b5900406724fd4b3fdae7b7a89781d799d386fe40d67f535b3d3d20376bc22c3","a425af7d90db91e6b2851ef4649a24fa6f5881411e9388d4410b1a6e3fde2e7f","3d6c1f1cf2cf416ca87cac68585d3c358a0ba406e14873edcb707a6b4be6dec8","0560d3dd801f1b496258932510f77a2df19c0e04812aa52e26b8ac14bd5ed2ac","ff975b363ac892f0508fbd187b765e49ab8c70ca093ee5b19b927b84137d34b7","4b093729b0d64f046a98d1b0d79ce9cb361ea8a32a87b86fe475eefabadad101","fdfbe321c556c39a2ecf791d537b999591d0849e971dd938d88f460fea0186f6","1db6491f25ced62f23f06d1f3700a790df0971726acb33669bbf4a8de2f769a9","54cfb610f64db43120b28bb720d5906a54e6bec3e53cd5c33e744d4eb4fb04d8","83251e0cbcb139e6f861efda493a9eab0f0ba617d3aa275bf9558ec2f37ad678","d8aab31ba8e618cc3eea10b0945de81cb93b7e8150a013a482332263b9305322","69da61a7b5093dac77fa3bec8be95dcf9a74c95a0e9161edb98bb24e30e439d2","561eca7a381b96d6ccac6e4061e6d2ae53f5bc44203f3fd9f5b26864c32ae6e9","62ea38627e3ebab429f7616812a9394d327c2bc271003dfba985de9b4137369f","b4439890c168d646357928431100daac5cbdee1d345a34e6bf6eca9f3abe22bc","5d72971a459517c44c1379dab9ed248e87a61ba0a1e0f25c9d67e1e640cd9a09","02d734976af36f4273d930bea88b3e62adf6b078cf120c1c63d49aa8d8427c5c",{"version":"71f30fba971582dc744373cbc8b06c1eb64dc24a6ccbc9b457f94fb68c67cb4e","affectsGlobalScope":true},{"version":"e9a43c3ee6fb8376bb9a4d318a660412c6abcfe5161c106e801e5431b41b7476","affectsGlobalScope":true},"7698983d080f951eaf53ff81e5c7bd61abc02e4a1a21266f1bd79ea85c0dc641","5726b5ce952dc5beaeb08d5f64236632501568a54a390363d2339ba1dc5393b1","89a3409a743c2a408d02bd68255a61d8416225b76c2c66d8e2e74dad3e00bc5d","714637d594e1a38a075091fe464ca91c6abc0b154784b4287f6883200e28ccef",{"version":"23edba5f47d3409810c563fe8034ae2c59e718e1ef8570f4152ccdde1915a096","affectsGlobalScope":true},"0e9c55f894ca2d9cf63b5b0d43a8cec1772dd560233fd16275bc7a485eb82f83","64813a6beff756b9e3f3c06d1b648d55e7c90af2b55c64d13a69d6c7f573643d","5f0a09de75bd965c21dc6d73671ba88830272f9ed62897bb0aa9754b369b1eed","2b34e7fcba9e1f24e7f54ba5c8be5a8895b0b8b444ccf6548e04acdee0899317",{"version":"06d2be99c3dd2ff52114d02ee443ba486ab482423df1941d3c97d6a92e924d70","affectsGlobalScope":true},{"version":"bfd4f140c07091b5e8a963c89e6fa3f44b6cfcbc11471b465cf63e2d020ad0eb","affectsGlobalScope":true},"a106a0bea088b70879ac88ff606dc253c0cc474ea05ad3a282b8bfb1091ae576","c98ce957db9eebd75f53edda3f6893e05ab2d2283b5667b18e31bcdb6427ed10","1f08bd8305d4a789a68f71ab622156dfff993aa51a2aa58b9ccf166cc6f9fcf7","4c260129d649d69f0608cd123e7016e61364b553a5ca2de9b66b0398594959cf","1978992206803f5761e99e893d93b25abc818c5fe619674fdf2ae02b29f641ba","05fbe81f09fc455a2c343d2458d2b3c600c90b92b22926be765ee79326be9466","8e7d6dae9e19bbe47600dcfd4418db85b30ae7351474ea0aad5e628f9845d340","f20ea392f7f27feb7a90e5a24319a4e365b07bf83c39a547711fe7ff9df68657","32542c4660ecda892a333a533feedba31738ee538ef6a78eb73af647137bc3fc","0ecacea5047d1a7d350e7049dbd22f26435be5e8736a81a56afec5b3264db1ca","ffcb4ebde21f83370ed402583888b28651d2eb7f05bfec9482eb46d82adedd7f",{"version":"06c004006016a51c4d1855527a523562c329dc44c473931c65f10373281f730e","affectsGlobalScope":true},"a7b43c69f9602d198825e403ee34e5d64f83c48b391b2897e8c0e6f72bca35f8","f4a3fc4efc6944e7b7bd4ccfa45e0df68b6359808e6cf9d061f04fd964a7b2d3","73cad675aead7a2c05cf934e7e700c61d84b2037ac1d576c3f751199b25331da","8c3137ba3583ec18484429ec1c8eff89efdc42730542f157b38b102fdccc0c71","d84300d886b45a198c346158e4ff7ae361cc7bc1c3deab44afb3db7de56b5d25","94ca7beec4e274d32362b54e0133152f7b4be9487db7b005070c03880b6363aa","2d713cbcbd5bcc38d91546eaeea7bb1c8686dc4a2995a28556d957b1b9de11d9","bbf21f210782db4193359010a4710786add43e3b50aa42fc0d371f45b4e4d8d3","0b7733d83619ac4e3963e2a9f7c75dc1e9af6850cb2354c9554977813092c10a","3ce933f0c3955f67f67eb7d6b5c83c2c54a18472c1d6f2bb651e51dd40c84837","631e96db896d645f7132c488ad34a16d71fd2be9f44696f8c98289ee1c8cbfa9","2c77230d381cba81eb6f87cda2fbfff6c0427c6546c2e2590110effff37c58f7","da86ee9a2f09a4583db1d5e37815894967e1f694ad9f3c25e84e0e4d40411e14","66679e8ffbf1fddef1796c60757e54e6e6551dd9823f75ef2f80176473bdaaff","ddc086b1adac44e2fccf55422da1e90fa970e659d77f99712422a421564b4877","515ef1d99036ff0dafa5bf738e02222edea94e0d97a0aa0ff277ac5e96b57977","d44028ae0127eb3e9fcfa5f55a8b81d64775ce15aca1020fe25c511bbb055834",{"version":"2708349d5a11a5c2e5f3a0765259ebe7ee00cdcc8161cb9990cb4910328442a1","affectsGlobalScope":true},"780058f4a804c8bdcdd2f60e7af64b2bc57d149c1586ee3db732a84d659a50bf","ad1ae5ae98eceb9af99061e83e867b9897d267aebc8f3b938c9424deabadf4bb","19d580a3b42ad5caeaee266ae958260e23f2df0549ee201c886c8bd7a4f01d4e","e61a21e9418f279bc480394a94d1581b2dee73747adcbdef999b6737e34d721b","9c4c395e927045b324877acdc4bfb95f128f36bc9f073266a2f0342495075a4f"],"options":{"declaration":true,"emitDecoratorMetadata":true,"experimentalDecorators":true,"module":1,"outDir":"./","removeComments":true,"sourceMap":true,"target":2},"fileIdsList":[[92,94],[88,89],[88,89,90,91],[93],[140],[97],[139,140],[98],[99,107,108,115,124],[99,100,107,115],[131],[102,103,108,116],[103,124],[104,105,107,115],[105],[106,107],[107],[107,108,109,124,130],[108,109],[110,115,124,130],[107,108,110,111,115,124,127,130],[110,112,127,130],[141],[107,113],[114,130],[105,107,115,124],[116],[117],[97,118],[129],[120],[121],[107,122],[122,123,131,133],[107,124],[125],[126],[115,127],[128],[96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135],[136,137,138],[115,129],[121,130],[124,132],[133],[138],[107,109,124,130,133,134],[124,135],[84],[33],[59],[33,59],[33,35,76,85,108,117],[33,35,58,59,108,117],[35,76],[33,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,108,117],[33,35,59],[33,35],[33,35,58,74,75,117],[33,34],[33,34,35,58,74,117],[59,74],[33,34,35,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,117],[33,34,35,59]],"referencedMap":[[95,1],[90,2],[92,3],[91,2],[94,4],[140,5],[97,6],[141,7],[98,8],[99,9],[100,10],[101,11],[102,12],[103,13],[104,14],[105,15],[106,16],[107,17],[108,18],[109,19],[110,20],[111,21],[112,22],[142,23],[113,24],[114,25],[115,26],[116,27],[117,28],[118,29],[119,30],[120,31],[121,32],[122,33],[123,34],[124,35],[125,36],[126,37],[127,38],[128,39],[136,40],[139,41],[129,42],[130,43],[131,11],[132,44],[133,45],[138,46],[134,47],[135,48],[85,49],[34,50],[79,51],[80,51],[81,51],[82,51],[83,51],[78,52],[86,53],[56,54],[77,55],[58,56],[47,57],[44,57],[37,57],[45,57],[51,58],[50,57],[53,58],[57,58],[46,58],[43,58],[49,58],[55,58],[48,58],[39,57],[52,57],[38,57],[40,57],[41,57],[54,58],[42,57],[76,59],[35,60],[59,61],[87,62],[74,63],[60,64],[64,64],[70,58],[72,57],[71,58],[67,64],[69,57],[63,57],[68,58],[66,57],[61,64],[62,64],[73,64],[65,57]],"exportedModulesMap":[[95,1],[90,2],[92,3],[91,2],[94,4],[140,5],[97,6],[141,7],[98,8],[99,9],[100,10],[101,11],[102,12],[103,13],[104,14],[105,15],[106,16],[107,17],[108,18],[109,19],[110,20],[111,21],[112,22],[142,23],[113,24],[114,25],[115,26],[116,27],[117,28],[118,29],[119,30],[120,31],[121,32],[122,33],[123,34],[124,35],[125,36],[126,37],[127,38],[128,39],[136,40],[139,41],[129,42],[130,43],[131,11],[132,44],[133,45],[138,46],[134,47],[135,48],[85,49],[34,50],[79,51],[80,51],[81,51],[82,51],[83,51],[78,52],[86,53],[56,54],[77,55],[58,56],[47,57],[44,57],[37,57],[45,57],[51,58],[50,57],[53,58],[57,58],[46,58],[43,58],[49,58],[55,58],[48,58],[39,57],[52,57],[38,57],[40,57],[41,57],[54,58],[42,57],[76,59],[35,60],[59,61],[87,62],[74,63],[60,64],[64,64],[70,58],[72,57],[71,58],[67,64],[69,57],[63,57],[68,58],[66,57],[61,64],[62,64],[73,64],[65,57]],"semanticDiagnosticsPerFile":[95,88,90,92,91,89,94,93,140,97,141,98,99,100,101,102,103,104,105,106,107,108,109,96,137,110,111,112,142,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,136,139,129,130,131,132,133,138,134,135,36,84,85,34,7,8,12,11,3,13,14,15,16,17,18,19,20,4,5,24,21,22,23,25,26,27,6,28,29,30,31,2,1,32,10,9,33,75,79,80,81,82,83,78,86,56,77,58,47,44,37,45,51,50,53,57,46,43,49,55,48,39,52,38,40,41,54,42,76,35,59,87,74,60,64,70,72,71,67,69,63,68,66,61,62,73,65]},"version":"4.3.4"}
1
+ {"program":{"fileNames":["../node_modules/typescript/lib/lib.es6.d.ts","../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.dom.iterable.d.ts","../node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../node_modules/typescript/lib/lib.scripthost.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/typescript.d.ts","../node_modules/@wessberg/ts-clone-node/dist/esm/index.d.ts","../src/types.ts","../node_modules/@types/prettier/index.d.ts","../src/print/printactions.ts","../src/print/printreducers.ts","../src/print/printreducer.ts","../src/print/printselector.ts","../src/print/printselectors.ts","../src/print/printvalues.ts","../src/print/printinternalselectortypes.ts","../src/print/printactionkeys.ts","../src/print/printactiontypes.ts","../src/print/printinternalreduceractions.ts","../src/print/printactioncreators.ts","../src/print/printprops.ts","../src/print/printkey.ts","../src/print/printdefaults.ts","../src/print/printconstants.ts","../src/print/printreduceroptions.ts","../src/print/printevents.ts","../src/print/printsharedlisteners.ts","../src/print/printlisteners.ts","../src/write/write.ts","../src/print/printinternalextrainput.ts","../src/print/print.ts","../src/utils.ts","../src/visit/visitactions.ts","../src/visit/visitreducers.ts","../src/visit/visitselectors.ts","../src/visit/visitloaders.ts","../src/visit/visitconnect.ts","../src/visit/visitwindowvalues.ts","../src/visit/visitprops.ts","../src/visit/visitkey.ts","../src/visit/visitpath.ts","../src/visit/visitlisteners.ts","../src/visit/visitconstants.ts","../src/visit/visitevents.ts","../src/visit/visitdefaults.ts","../src/visit/visitsharedlisteners.ts","../src/visit/visit.ts","../package.json","../src/typegen.ts","../src/index.ts","../src/__tests__/utils.ts","../src/__tests__/e2e/actions.ts","../src/__tests__/e2e/connect.ts","../src/__tests__/e2e/loaders.ts","../src/__tests__/e2e/reducers.ts","../src/__tests__/e2e/selectors.ts","../node_modules/@types/yargs-parser/index.d.ts","../node_modules/@types/yargs/index.d.ts","../src/cli/typegen.ts","../src/visit/__tests__/visit.ts","../node_modules/@types/jest/node_modules/jest-diff/build/cleanupsemantic.d.ts","../node_modules/@types/jest/node_modules/jest-diff/build/types.d.ts","../node_modules/@types/jest/node_modules/jest-diff/build/difflines.d.ts","../node_modules/@types/jest/node_modules/jest-diff/build/printdiffs.d.ts","../node_modules/@types/jest/node_modules/jest-diff/build/index.d.ts","../node_modules/@types/jest/node_modules/pretty-format/build/types.d.ts","../node_modules/@types/jest/node_modules/pretty-format/build/index.d.ts","../node_modules/@types/jest/index.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/ts3.4/base.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/ts3.6/base.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/base.d.ts","../node_modules/@types/node/index.d.ts"],"fileInfos":["721cec59c3fef87aaf480047d821fb758b3ec9482c4129a54631e6e25e432a31",{"version":"ac3a8c4040e183ce38da69d23b96939112457d1936198e6542672b7963cf0fce","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06",{"version":"1dad4fe1561d99dfd6709127608b99a76e5c2643626c800434f99c48038567ee","affectsGlobalScope":true},{"version":"a8fe23ae87c3e9d2877032cafeb290f2ebe0c51e216d175a0408b10915ebe9f0","affectsGlobalScope":true},{"version":"7fac8cb5fc820bc2a59ae11ef1c5b38d3832c6d0dfaec5acdb5569137d09a481","affectsGlobalScope":true},{"version":"097a57355ded99c68e6df1b738990448e0bf170e606707df5a7c0481ff2427cd","affectsGlobalScope":true},{"version":"cce43d02223f8049864f8568bed322c39424013275cd3bcc3f51492d8b546cb3","affectsGlobalScope":true},{"version":"43fb1d932e4966a39a41b464a12a81899d9ae5f2c829063f5571b6b87e6d2f9c","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"8dff1b4c2df638fcd976cbb0e636f23ab5968e836cd45084cc31d47d1ab19c49","affectsGlobalScope":true},{"version":"2bb4b3927299434052b37851a47bf5c39764f2ba88a888a107b32262e9292b7c","affectsGlobalScope":true},{"version":"810627a82ac06fb5166da5ada4159c4ec11978dfbb0805fe804c86406dab8357","affectsGlobalScope":true},{"version":"62d80405c46c3f4c527ee657ae9d43fda65a0bf582292429aea1e69144a522a6","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"8f4c9f651c8294a2eb1cbd12581fe25bfb901ab1d474bb93cd38c7e2f4be7a30","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"12a310447c5d23c7d0d5ca2af606e3bd08afda69100166730ab92c62999ebb9d","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"df9c8a72ca8b0ed62f5470b41208a0587f0f73f0a7db28e5a1272cf92537518e","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"60761e6ea886034af0f294f025a7199360ce4e2c8ba4ec6408bc049cf9b89799","affectsGlobalScope":true},{"version":"506b80b9951c9381dc5f11897b31fca5e2a65731d96ddefa19687fbc26b23c6e","affectsGlobalScope":true},"ed5fee0e35e114dd0d653ba36143496529de7e46e944e2c0d5b9db89d00e4321","e2dc8b431b672ccec6da32acb17475cc7d5a3ad121667ef5723231b39808ab11","9ad911d63527dec6f84dd6abb24dd2a839fc44d69e1702c8b2471e98bb982837","74940ccce687ffb55f99053deb278496e43ffd51020f6e81a8be80545f6bd7ec","33fe41008050cc7e2d3ed2538155e4c3cb3e91727b9b852198641bdc809a5af1","db15abc2a4549f742b718c8670d859ad05738053b3d2fea84e9ea3627c5221de","a1a184a1b052f2be57d134ceabfa5a986a536010c8b08c93403b0e767ec34f1f","1bdc19666537135d612efc7520861ffb724b8391c57a7f8352cdf1bb74a01846","f6e498fdd819dd8cc448225398dc38a41d28e84c4f3756408858ae0f50b04a63","2b28b79ca45abe6aff158603318c64640a7a8017a3a9ef9b97e57ef6da77ee78","0dc5a95d29380c1cdfba5128dbbd3c07c2053c64e02b872d2b52c110153d81e2","86af93a431854bd45262fa010ac3e7ad6340079e0afd0d16c69331d4e3a24977","760169ba6b3ff15885d64ef531f650a0127e8bcb661a2c6c77d4aa21049cb3d7","cc98ca4e9e7dd8aec29a59c230c9dc81ebc59d65d9e3aacd76a767374b5f9fba","e0f95ef2756ab5acde2ceae78722f13923dc72f9ab201769ee7e5d3a084659fc","c528508108c4fda2d1b89be6607a688e819a0f612d0b4cadec26726c44e1c1cd","b002adaf3e463bb97d56a0126e2a2d6463a1c5b4db49edff44d62afac2b74f4f","80f346cfe5f8286999295c4d800d412190fd11aaa78234b23d0033bf2a1800cf","f5af16b22faeffb50c2205688d71bd5f4360131f2524207d6117f19c22b93664","5aca9bf39c2dcbae8697ae2c46c6082ac1ad57fec479e82c7d55044cfc997d44","63bce4c5fd564c859bc79e4f99b0e5e4f2435c8d2a1be79334fe2398f75f7060","1404de95c538b7d664285b53c0aa94c4c4a160f7f034ca4390c0595ea3ae0c04","e153f696b3fb405b8c966a3fa83a58a577623e542542742f81140b0d6a75e440","43e6a66bac25f59ff702891a18dd6cc163ccbe125cfd053057d4f692e2eb8947","c7355a474f3303e8c7840fb81a69a777b50374426721b7f8cdc4fb99b4bfe7ed","d4456aa18564130d8eaf5bd92b2f85267d844cf2b6c40a0b36d1cca0b3038b70","cd50cca527daa3e1510a30308e2c58a55d5a9bdd5a1cd915f664e718d5947f72","d1403d771e0726c59c1078d292dd867776c5a8a01537e8f758520a65881ef54d","c5a19f5c339c7bc77852a9c5144deef6b1ee6f5375659c3f84f6aa3dff49eb0c","3b6160d403138e7b8fdb2a139a66133d43c0950556d53823179a7b0a2024666e","e1d01faf76608615df071619d81a942cd1a387d073784ed315bb1af743423846","af9d1a6c0f14931bf1a050bc12deb052b24b4a1c2680366734fec9b5ff431850","7eac38bc715b44db042e3d3fe8dd1d550d6bb3b15b5d715cb7586d7e6c53c3e7","575583a244d92d5438d054aa4fd14c2e6added5314873f789abc52ce7bb50397","a5b6d895f1477958701942aa740640e2194f306331b71235b4ddec190a3f7448","0ea0720994ba3c0658f98bf4956b5471d3f38d0c2f90e2a14c5c4e08578a5fb1","fc4c6f16f628f93b2fd173d4deaf81ba93eb9a17ad982f75cdfa1dbd4936a944","e6337d77773d763c79a1e8ba90ed6dccbd8b3b0736c78f87076a2d98d32979f4","21ed8d6fa955375cf35f391bc11eda531012e179337fcf3db52a3676cd56cb8b","9d64a0bc2440331a0dcb2d763a298fe42e2cfdf4f1bfc02436e10c373d457ca6","9da010705130cedacb3f862d4b8d871b29d8b898a9ce4cc8892a3f40ea7a50e8","de347200d5667e4b7d895afabee9472fa56e65e6237cb679053e6d688f31ac6a",{"version":"b1ffef21ba72261f01cfa2a79274b9a15b9acf293dccd9c51a52b99b85763280","affectsGlobalScope":true},"88d15604d39aacd3315e2c6467f2787eab52f6073404e8fa920eb21c061797a1","4329bab0bad8f11adbb7e69f68e7540130331907b257c6584192775ac5fcba19","b5900406724fd4b3fdae7b7a89781d799d386fe40d67f535b3d3d20376bc22c3","a425af7d90db91e6b2851ef4649a24fa6f5881411e9388d4410b1a6e3fde2e7f","3d6c1f1cf2cf416ca87cac68585d3c358a0ba406e14873edcb707a6b4be6dec8","0560d3dd801f1b496258932510f77a2df19c0e04812aa52e26b8ac14bd5ed2ac","ff975b363ac892f0508fbd187b765e49ab8c70ca093ee5b19b927b84137d34b7","4b093729b0d64f046a98d1b0d79ce9cb361ea8a32a87b86fe475eefabadad101","fdfbe321c556c39a2ecf791d537b999591d0849e971dd938d88f460fea0186f6","1db6491f25ced62f23f06d1f3700a790df0971726acb33669bbf4a8de2f769a9","a3e8b5af30fbc93c48f3d738ec4a855b621054286a16b86ca63a7edecfb83dc3","83251e0cbcb139e6f861efda493a9eab0f0ba617d3aa275bf9558ec2f37ad678","d8aab31ba8e618cc3eea10b0945de81cb93b7e8150a013a482332263b9305322","69da61a7b5093dac77fa3bec8be95dcf9a74c95a0e9161edb98bb24e30e439d2","561eca7a381b96d6ccac6e4061e6d2ae53f5bc44203f3fd9f5b26864c32ae6e9","62ea38627e3ebab429f7616812a9394d327c2bc271003dfba985de9b4137369f","b4439890c168d646357928431100daac5cbdee1d345a34e6bf6eca9f3abe22bc","5d72971a459517c44c1379dab9ed248e87a61ba0a1e0f25c9d67e1e640cd9a09","02d734976af36f4273d930bea88b3e62adf6b078cf120c1c63d49aa8d8427c5c",{"version":"71f30fba971582dc744373cbc8b06c1eb64dc24a6ccbc9b457f94fb68c67cb4e","affectsGlobalScope":true},{"version":"e9a43c3ee6fb8376bb9a4d318a660412c6abcfe5161c106e801e5431b41b7476","affectsGlobalScope":true},"7698983d080f951eaf53ff81e5c7bd61abc02e4a1a21266f1bd79ea85c0dc641","5726b5ce952dc5beaeb08d5f64236632501568a54a390363d2339ba1dc5393b1","89a3409a743c2a408d02bd68255a61d8416225b76c2c66d8e2e74dad3e00bc5d","714637d594e1a38a075091fe464ca91c6abc0b154784b4287f6883200e28ccef",{"version":"23edba5f47d3409810c563fe8034ae2c59e718e1ef8570f4152ccdde1915a096","affectsGlobalScope":true},"0e9c55f894ca2d9cf63b5b0d43a8cec1772dd560233fd16275bc7a485eb82f83","64813a6beff756b9e3f3c06d1b648d55e7c90af2b55c64d13a69d6c7f573643d","5f0a09de75bd965c21dc6d73671ba88830272f9ed62897bb0aa9754b369b1eed","2b34e7fcba9e1f24e7f54ba5c8be5a8895b0b8b444ccf6548e04acdee0899317",{"version":"06d2be99c3dd2ff52114d02ee443ba486ab482423df1941d3c97d6a92e924d70","affectsGlobalScope":true},{"version":"bfd4f140c07091b5e8a963c89e6fa3f44b6cfcbc11471b465cf63e2d020ad0eb","affectsGlobalScope":true},"a106a0bea088b70879ac88ff606dc253c0cc474ea05ad3a282b8bfb1091ae576","c98ce957db9eebd75f53edda3f6893e05ab2d2283b5667b18e31bcdb6427ed10","1f08bd8305d4a789a68f71ab622156dfff993aa51a2aa58b9ccf166cc6f9fcf7","4c260129d649d69f0608cd123e7016e61364b553a5ca2de9b66b0398594959cf","1978992206803f5761e99e893d93b25abc818c5fe619674fdf2ae02b29f641ba","05fbe81f09fc455a2c343d2458d2b3c600c90b92b22926be765ee79326be9466","8e7d6dae9e19bbe47600dcfd4418db85b30ae7351474ea0aad5e628f9845d340","f20ea392f7f27feb7a90e5a24319a4e365b07bf83c39a547711fe7ff9df68657","32542c4660ecda892a333a533feedba31738ee538ef6a78eb73af647137bc3fc","0ecacea5047d1a7d350e7049dbd22f26435be5e8736a81a56afec5b3264db1ca","ffcb4ebde21f83370ed402583888b28651d2eb7f05bfec9482eb46d82adedd7f",{"version":"06c004006016a51c4d1855527a523562c329dc44c473931c65f10373281f730e","affectsGlobalScope":true},"a7b43c69f9602d198825e403ee34e5d64f83c48b391b2897e8c0e6f72bca35f8","f4a3fc4efc6944e7b7bd4ccfa45e0df68b6359808e6cf9d061f04fd964a7b2d3","73cad675aead7a2c05cf934e7e700c61d84b2037ac1d576c3f751199b25331da","8c3137ba3583ec18484429ec1c8eff89efdc42730542f157b38b102fdccc0c71","d84300d886b45a198c346158e4ff7ae361cc7bc1c3deab44afb3db7de56b5d25","94ca7beec4e274d32362b54e0133152f7b4be9487db7b005070c03880b6363aa","2d713cbcbd5bcc38d91546eaeea7bb1c8686dc4a2995a28556d957b1b9de11d9","bbf21f210782db4193359010a4710786add43e3b50aa42fc0d371f45b4e4d8d3","0b7733d83619ac4e3963e2a9f7c75dc1e9af6850cb2354c9554977813092c10a","3ce933f0c3955f67f67eb7d6b5c83c2c54a18472c1d6f2bb651e51dd40c84837","631e96db896d645f7132c488ad34a16d71fd2be9f44696f8c98289ee1c8cbfa9","2c77230d381cba81eb6f87cda2fbfff6c0427c6546c2e2590110effff37c58f7","da86ee9a2f09a4583db1d5e37815894967e1f694ad9f3c25e84e0e4d40411e14","66679e8ffbf1fddef1796c60757e54e6e6551dd9823f75ef2f80176473bdaaff","ddc086b1adac44e2fccf55422da1e90fa970e659d77f99712422a421564b4877","515ef1d99036ff0dafa5bf738e02222edea94e0d97a0aa0ff277ac5e96b57977","d44028ae0127eb3e9fcfa5f55a8b81d64775ce15aca1020fe25c511bbb055834",{"version":"2708349d5a11a5c2e5f3a0765259ebe7ee00cdcc8161cb9990cb4910328442a1","affectsGlobalScope":true},"780058f4a804c8bdcdd2f60e7af64b2bc57d149c1586ee3db732a84d659a50bf","ad1ae5ae98eceb9af99061e83e867b9897d267aebc8f3b938c9424deabadf4bb","19d580a3b42ad5caeaee266ae958260e23f2df0549ee201c886c8bd7a4f01d4e","e61a21e9418f279bc480394a94d1581b2dee73747adcbdef999b6737e34d721b","9c4c395e927045b324877acdc4bfb95f128f36bc9f073266a2f0342495075a4f"],"options":{"declaration":true,"emitDecoratorMetadata":true,"experimentalDecorators":true,"module":1,"outDir":"./","removeComments":true,"sourceMap":true,"target":2},"fileIdsList":[[92,94],[88,89],[88,89,90,91],[93],[140],[97],[139,140],[98],[99,107,108,115,124],[99,100,107,115],[131],[102,103,108,116],[103,124],[104,105,107,115],[105],[106,107],[107],[107,108,109,124,130],[108,109],[110,115,124,130],[107,108,110,111,115,124,127,130],[110,112,127,130],[141],[107,113],[114,130],[105,107,115,124],[116],[117],[97,118],[129],[120],[121],[107,122],[122,123,131,133],[107,124],[125],[126],[115,127],[128],[96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135],[136,137,138],[115,129],[121,130],[124,132],[133],[138],[107,109,124,130,133,134],[124,135],[84],[33],[59],[33,59],[33,35,76,85,108,117],[35,76],[33,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,108,117],[33,35,59],[33,35],[33,35,58,74,75,117],[33,34],[33,34,35,58,74,117],[59,74],[33,34,35,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,117],[33,34,35,59],[33,35,58,59,108,117]],"referencedMap":[[95,1],[90,2],[92,3],[91,2],[94,4],[140,5],[97,6],[141,7],[98,8],[99,9],[100,10],[101,11],[102,12],[103,13],[104,14],[105,15],[106,16],[107,17],[108,18],[109,19],[110,20],[111,21],[112,22],[142,23],[113,24],[114,25],[115,26],[116,27],[117,28],[118,29],[119,30],[120,31],[121,32],[122,33],[123,34],[124,35],[125,36],[126,37],[127,38],[128,39],[136,40],[139,41],[129,42],[130,43],[131,11],[132,44],[133,45],[138,46],[134,47],[135,48],[85,49],[34,50],[79,51],[80,51],[81,51],[82,51],[83,51],[78,52],[86,53],[77,54],[58,55],[47,56],[44,56],[37,56],[45,56],[51,57],[50,56],[53,57],[57,57],[46,57],[43,57],[49,57],[55,57],[48,57],[39,56],[52,56],[38,56],[40,56],[41,56],[54,57],[42,56],[76,58],[35,59],[59,60],[87,61],[74,62],[60,63],[64,63],[70,57],[72,56],[71,57],[67,63],[69,56],[63,56],[68,57],[66,56],[61,63],[62,63],[73,63],[65,56],[56,64]],"exportedModulesMap":[[95,1],[90,2],[92,3],[91,2],[94,4],[140,5],[97,6],[141,7],[98,8],[99,9],[100,10],[101,11],[102,12],[103,13],[104,14],[105,15],[106,16],[107,17],[108,18],[109,19],[110,20],[111,21],[112,22],[142,23],[113,24],[114,25],[115,26],[116,27],[117,28],[118,29],[119,30],[120,31],[121,32],[122,33],[123,34],[124,35],[125,36],[126,37],[127,38],[128,39],[136,40],[139,41],[129,42],[130,43],[131,11],[132,44],[133,45],[138,46],[134,47],[135,48],[85,49],[34,50],[79,51],[80,51],[81,51],[82,51],[83,51],[78,52],[86,53],[77,54],[58,55],[47,56],[44,56],[37,56],[45,56],[51,57],[50,56],[53,57],[57,57],[46,57],[43,57],[49,57],[55,57],[48,57],[39,56],[52,56],[38,56],[40,56],[41,56],[54,57],[42,56],[76,58],[35,59],[59,60],[87,61],[74,62],[60,63],[64,63],[70,57],[72,56],[71,57],[67,63],[69,56],[63,56],[68,57],[66,56],[61,63],[62,63],[73,63],[65,56],[56,64]],"semanticDiagnosticsPerFile":[95,88,90,92,91,89,94,93,140,97,141,98,99,100,101,102,103,104,105,106,107,108,109,96,137,110,111,112,142,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,136,139,129,130,131,132,133,138,134,135,36,84,85,34,7,8,12,11,3,13,14,15,16,17,18,19,20,4,5,24,21,22,23,25,26,27,6,28,29,30,31,2,1,32,10,9,33,75,79,80,81,82,83,78,86,77,58,47,44,37,45,51,50,53,57,46,43,49,55,48,39,52,38,40,41,54,42,76,35,59,87,74,60,64,70,72,71,67,69,63,68,66,61,62,73,65,56]},"version":"4.3.4"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kea-typegen",
3
- "version": "1.2.2",
3
+ "version": "1.3.0",
4
4
  "description": "Generate type definitions for kea logic",
5
5
  "scripts": {
6
6
  "start": "ts-node ./src/cli/typegen.ts",
@@ -11,6 +11,7 @@
11
11
  "test": "jest",
12
12
  "samples:check": "ts-node ./src/cli/typegen.ts check -c ./samples/tsconfig.json",
13
13
  "samples:write": "ts-node ./src/cli/typegen.ts write -c ./samples/tsconfig.json",
14
+ "samples:write:paths": "ts-node ./src/cli/typegen.ts write -c ./samples/tsconfig.json --write-paths",
14
15
  "samples:watch": "ts-node ./src/cli/typegen.ts watch -c ./samples/tsconfig.json",
15
16
  "samples:write:posthog": "ts-node ./src/cli/typegen.ts write -c ../../PostHog/posthog/tsconfig.json",
16
17
  "form-plugin:build": "cd form-plugin && yarn build && cd ..",
@@ -46,6 +46,7 @@ yargs
46
46
  })
47
47
  .option('quiet', { alias: 'q', describe: 'Write nothing to stdout', type: 'boolean' })
48
48
  .option('no-import', { describe: 'Do not automatically import generated types in logic files', type: 'boolean' })
49
+ .option('write-paths', { describe: 'Write paths into logic files that have none', type: 'boolean' })
49
50
  .option('verbose', { describe: 'Slightly more verbose output log', type: 'boolean' })
50
51
  .demandCommand()
51
52
  .help()
@@ -60,6 +61,7 @@ function parsedToAppOptions(parsedOptions) {
60
61
  quiet: parsedOptions.quiet,
61
62
  verbose: parsedOptions.verbose,
62
63
  noImport: parsedOptions.noImport,
64
+ writePaths: parsedOptions.writePaths,
63
65
  log: parsedOptions.quiet ? () => null : console.log.bind(console),
64
66
  } as AppOptions
65
67
 
@@ -23,7 +23,7 @@ import { printReducerOptions } from './printReducerOptions'
23
23
  import { printEvents } from './printEvents'
24
24
  import { printSharedListeners } from './printSharedListeners'
25
25
  import { printListeners } from './printListeners'
26
- import { writeLogicTypeImports } from '../import/writeLogicTypeImports'
26
+ import { writePaths, writeTypeImports } from '../write/write'
27
27
  import { printInternalExtraInput } from './printInternalExtraInput'
28
28
 
29
29
  export function runThroughPrettier(sourceText: string, filePath: string): string {
@@ -46,7 +46,7 @@ export function printToFiles(
46
46
  program: ts.Program,
47
47
  appOptions: AppOptions,
48
48
  parsedLogics: ParsedLogic[],
49
- ): { filesToWrite: number; writtenFiles: number; importsToModify: number } {
49
+ ): { filesToWrite: number; writtenFiles: number; filesToModify: number } {
50
50
  const { log } = appOptions
51
51
 
52
52
  const groupedByFile: Record<string, ParsedLogic[]> = {}
@@ -62,7 +62,7 @@ export function printToFiles(
62
62
 
63
63
  let writtenFiles = 0
64
64
  let filesToWrite = 0
65
- let importsToModify = 0
65
+ let filesToModify = 0
66
66
 
67
67
  Object.entries(groupedByFile).forEach(([fileName, parsedLogics]) => {
68
68
  const typeFileName = parsedLogics[0].typeFileName
@@ -129,19 +129,19 @@ export function printToFiles(
129
129
  }
130
130
  }
131
131
 
132
+ const parsedLogicNeedsTypeImport = (pl: ParsedLogic) =>
133
+ // reload if logic type not imported
134
+ (pl.logicTypeImported === false ||
135
+ // reload if don't have the right types in arguments
136
+ pl.logicTypeArguments.join(', ') !== [...pl.typeReferencesInLogicInput].sort().join(', ')) &&
137
+ pl.fileName.match(/\.tsx?$/)
138
+
132
139
  // write the type into the logic itself
133
- const logicsNeedingImports = parsedLogics.filter(
134
- (pl) =>
135
- // reload if logic type not imported
136
- (pl.logicTypeImported === false ||
137
- // reload if don't have the right types in arguments
138
- pl.logicTypeArguments.join(', ') !== [...pl.typeReferencesInLogicInput].sort().join(', ')) &&
139
- pl.fileName.match(/\.tsx?$/),
140
- )
140
+ const logicsNeedingImports = parsedLogics.filter(parsedLogicNeedsTypeImport)
141
141
  if (logicsNeedingImports.length > 0) {
142
142
  if (appOptions.write && !appOptions.noImport) {
143
- writeLogicTypeImports(appOptions, program, fileName, logicsNeedingImports, parsedLogics)
144
- importsToModify = logicsNeedingImports.length
143
+ writeTypeImports(appOptions, program, fileName, logicsNeedingImports, parsedLogics)
144
+ filesToModify += logicsNeedingImports.length
145
145
  } else {
146
146
  log(
147
147
  `❌ Will not write ${logicsNeedingImports.length} logic type import${
@@ -150,22 +150,37 @@ export function printToFiles(
150
150
  )
151
151
  }
152
152
  }
153
+
154
+ const parsedLogicNeedsPath = appOptions.writePaths ? (pl: ParsedLogic) => !pl.hasPathInLogic : () => false
155
+ const logicsNeedingPaths = parsedLogics.filter(parsedLogicNeedsPath)
156
+ if (logicsNeedingPaths.length > 0) {
157
+ if (appOptions.write && !appOptions.noImport) {
158
+ writePaths(appOptions, program, fileName, logicsNeedingPaths)
159
+ filesToModify += logicsNeedingPaths.length
160
+ } else {
161
+ log(
162
+ `❌ Will not write ${logicsNeedingPaths.length} logic path${
163
+ logicsNeedingPaths.length === 1 ? '' : 's'
164
+ }`,
165
+ )
166
+ }
167
+ }
153
168
  })
154
169
 
155
- if (writtenFiles === 0 && importsToModify === 0) {
170
+ if (writtenFiles === 0 && filesToModify === 0) {
156
171
  if (appOptions.write) {
157
172
  log(`💚 ${parsedLogics.length} logic type${parsedLogics.length === 1 ? '' : 's'} up to date!`)
158
173
  log('')
159
- } else if (filesToWrite > 0 || importsToModify > 0) {
174
+ } else if (filesToWrite > 0 || filesToModify > 0) {
160
175
  log(
161
- `🚨 Run "kea-typegen write" to save ${filesToWrite + importsToModify} file${
176
+ `🚨 Run "kea-typegen write" to save ${filesToWrite + filesToModify} file${
162
177
  filesToWrite === 1 ? '' : 's'
163
178
  } to disk`,
164
179
  )
165
180
  }
166
181
  }
167
182
 
168
- return { filesToWrite, writtenFiles, importsToModify }
183
+ return { filesToWrite, writtenFiles, filesToModify }
169
184
  }
170
185
 
171
186
  export function nodeToString(node: ts.Node): string {
package/src/typegen.ts CHANGED
@@ -105,7 +105,7 @@ export function runTypeGen(appOptions: AppOptions) {
105
105
  function goThroughAllTheFiles(
106
106
  program,
107
107
  appOptions,
108
- ): { filesToWrite: number; writtenFiles: number; importsToModify: number } {
108
+ ): { filesToWrite: number; writtenFiles: number; filesToModify: number } {
109
109
  const parsedLogics = visitProgram(program, appOptions)
110
110
  if (appOptions.verbose) {
111
111
  log(`🗒️ ${parsedLogics.length} logic${parsedLogics.length === 1 ? '' : 's'} found!`)
@@ -115,7 +115,7 @@ export function runTypeGen(appOptions: AppOptions) {
115
115
 
116
116
  // running "kea-typegen check" and would write files?
117
117
  // exit with 1
118
- if (!appOptions.write && !appOptions.watch && (response.filesToWrite > 0 || response.importsToModify > 0)) {
118
+ if (!appOptions.write && !appOptions.watch && (response.filesToWrite > 0 || response.filesToModify > 0)) {
119
119
  process.exit(1)
120
120
  }
121
121
 
@@ -126,9 +126,9 @@ export function runTypeGen(appOptions: AppOptions) {
126
126
  if (appOptions.write) {
127
127
  let round = 0
128
128
  while ((round += 1)) {
129
- const { writtenFiles, importsToModify } = goThroughAllTheFiles(program, appOptions)
129
+ const { writtenFiles, filesToModify } = goThroughAllTheFiles(program, appOptions)
130
130
 
131
- if (writtenFiles === 0 && importsToModify === 0) {
131
+ if (writtenFiles === 0 && filesToModify === 0) {
132
132
  log(`👋 Finished writing files! Exiting.`)
133
133
  process.exit(0)
134
134
  }
package/src/types.ts CHANGED
@@ -35,6 +35,8 @@ export interface ParsedLogic {
35
35
  logicTypeImported: boolean
36
36
  path: string[]
37
37
  pathString: string
38
+ hasPathInLogic: boolean
39
+ hasKeyInLogic: boolean
38
40
  logicTypeArguments: string[]
39
41
  constants: string[]
40
42
  events: Record<string, boolean>
@@ -50,7 +52,7 @@ export interface ParsedLogic {
50
52
  typeReferencesToImportFromFiles: Record<string, Set<string>>
51
53
  typeReferencesInLogicInput: Set<string>
52
54
  interfaceDeclaration?: ts.InterfaceDeclaration
53
- extraInput: Record<string, { typeNode: ts.TypeNode, withLogicFunction: boolean }>
55
+ extraInput: Record<string, { typeNode: ts.TypeNode; withLogicFunction: boolean }>
54
56
  }
55
57
 
56
58
  export interface AppOptions {
@@ -63,6 +65,7 @@ export interface AppOptions {
63
65
  quiet?: boolean
64
66
  verbose?: boolean
65
67
  noImport?: boolean
68
+ writePaths?: boolean
66
69
 
67
70
  log: (message: string) => void
68
71
  }
@@ -214,9 +214,11 @@ export function visitKeaCalls(
214
214
  propsType: undefined,
215
215
  path: pathString.split('.'),
216
216
  pathString: pathString,
217
+ hasKeyInLogic: false,
218
+ hasPathInLogic: false,
217
219
  typeReferencesToImportFromFiles: {},
218
220
  typeReferencesInLogicInput: new Set(),
219
- extraInput: {}
221
+ extraInput: {},
220
222
  }
221
223
 
222
224
  const input = (node.parent as ts.CallExpression).arguments[0] as ts.ObjectLiteralExpression
@@ -232,6 +234,12 @@ export function visitKeaCalls(
232
234
  }
233
235
 
234
236
  const name = symbol.getName()
237
+ if (name === 'path') {
238
+ parsedLogic.hasPathInLogic = true
239
+ }
240
+ if (name === 'key') {
241
+ parsedLogic.hasKeyInLogic = true
242
+ }
235
243
 
236
244
  let type = checker.getTypeOfSymbolAtLocation(symbol, symbol.valueDeclaration)
237
245
  let typeNode = type ? checker.typeToTypeNode(type, undefined, undefined) : null
@@ -6,9 +6,12 @@ import { runThroughPrettier } from '../print/print'
6
6
  import * as diff from 'diff'
7
7
  import * as path from 'path'
8
8
 
9
+ // NOTE:
9
10
  // This is an unfortunate workaround. The TS compiler strips all
10
- // whitespace. This uses "jsdiff" to add them back.
11
- // If it turns out to be flaky, it might be worth rewriting to babel.
11
+ // whitespace AND COMMENTS. This uses "jsdiff" to add back the whitespace,
12
+ // but not the comments.
13
+ //
14
+ // This should be rewritten to babel!
12
15
  // https://github.com/microsoft/TypeScript/issues/843#issuecomment-555932858
13
16
  function addBackNewlines(oldText: string, newText: string) {
14
17
  const patch = diff.parsePatch(diff.createPatch('file', oldText, newText, '', ''))
@@ -31,7 +34,7 @@ function addBackNewlines(oldText: string, newText: string) {
31
34
  return diff.applyPatch(oldText, patch)
32
35
  }
33
36
 
34
- export function writeLogicTypeImports(
37
+ export function writeTypeImports(
35
38
  appOptions: AppOptions,
36
39
  program: ts.Program,
37
40
  filename: string,
@@ -83,9 +86,11 @@ export function writeLogicTypeImports(
83
86
  ts.createTypeReferenceNode(
84
87
  ts.createIdentifier(logicTypeName),
85
88
  typeReferencesInLogicInput.size > 0
86
- ? [...typeReferencesInLogicInput.values()].sort().map((type) =>
87
- ts.createTypeReferenceNode(ts.createIdentifier(type), undefined),
88
- )
89
+ ? [...typeReferencesInLogicInput.values()]
90
+ .sort()
91
+ .map((type) =>
92
+ ts.createTypeReferenceNode(ts.createIdentifier(type), undefined),
93
+ )
89
94
  : undefined,
90
95
  ),
91
96
  ],
@@ -149,6 +154,97 @@ export function writeLogicTypeImports(
149
154
  }
150
155
  }
151
156
 
157
+ writeFile(sourceFile, transformer, filename)
158
+
159
+ log(`🔥 Import added: ${path.relative(process.cwd(), filename)}`)
160
+ }
161
+
162
+ export function writePaths(appOptions: AppOptions, program: ts.Program, filename: string, parsedLogics: ParsedLogic[]) {
163
+ const { log } = appOptions
164
+ const sourceFile = program.getSourceFile(filename)
165
+ const checker = program.getTypeChecker()
166
+
167
+ const parsedLogicMapByNode = new Map<ts.Node, ParsedLogic>()
168
+ for (const parsedLogic of parsedLogics) {
169
+ parsedLogicMapByNode.set(parsedLogic.node, parsedLogic)
170
+ }
171
+
172
+ const transformer = <T extends ts.Node>(context: ts.TransformationContext) => {
173
+ return (rootNode: T) => {
174
+ function visit(node: ts.Node): ts.Node {
175
+ node = ts.visitEachChild(node, visit, context)
176
+ if (
177
+ ts.isCallExpression(node) &&
178
+ isKeaCall(node.expression, checker) &&
179
+ parsedLogicMapByNode.has(node.expression)
180
+ ) {
181
+ const { path, hasKeyInLogic } = parsedLogicMapByNode.get(node.expression)
182
+ return ts.createCall(
183
+ node.expression,
184
+ node.typeArguments,
185
+ node.arguments.map((argument, i) =>
186
+ i === 0 && ts.isObjectLiteralExpression(argument)
187
+ ? ts.createObjectLiteral(
188
+ [
189
+ hasKeyInLogic
190
+ ? ts.createPropertyAssignment(
191
+ ts.createIdentifier('path'),
192
+ ts.createArrowFunction(
193
+ undefined,
194
+ undefined,
195
+ [
196
+ ts.createParameter(
197
+ undefined,
198
+ undefined,
199
+ undefined,
200
+ ts.createIdentifier('key'),
201
+ undefined,
202
+ undefined,
203
+ undefined,
204
+ ),
205
+ ],
206
+ undefined,
207
+ ts.createToken(ts.SyntaxKind.EqualsGreaterThanToken),
208
+ ts.createArrayLiteral(
209
+ [
210
+ ...path.map((str) => ts.createStringLiteral(str)),
211
+ ts.createIdentifier('key'),
212
+ ],
213
+ false,
214
+ ),
215
+ ),
216
+ )
217
+ : ts.createPropertyAssignment(
218
+ ts.createIdentifier('path'),
219
+ ts.createArrayLiteral(
220
+ path.map((str) => ts.createStringLiteral(str)),
221
+ false,
222
+ ),
223
+ ),
224
+ ...argument.properties,
225
+ ],
226
+ true,
227
+ )
228
+ : argument,
229
+ ),
230
+ )
231
+ }
232
+ return node
233
+ }
234
+ return ts.visitNode(rootNode, visit)
235
+ }
236
+ }
237
+
238
+ writeFile(sourceFile, transformer, filename)
239
+
240
+ log(`🔥 Path added: ${path.relative(process.cwd(), filename)}`)
241
+ }
242
+
243
+ function writeFile<T>(
244
+ sourceFile: ts.SourceFile,
245
+ transformer: <T extends ts.Node>(context: ts.TransformationContext) => (rootNode: T) => T,
246
+ filename: string,
247
+ ) {
152
248
  const printer: ts.Printer = ts.createPrinter()
153
249
  const result: ts.TransformationResult<ts.SourceFile> = ts.transform<ts.SourceFile>(sourceFile, [transformer])
154
250
 
@@ -161,6 +257,4 @@ export function writeLogicTypeImports(
161
257
  const newestText = addBackNewlines(oldText, newText)
162
258
 
163
259
  fs.writeFileSync(filename, newestText)
164
-
165
- log(`🔥 Import added: ${path.relative(process.cwd(), filename)}`)
166
260
  }
@@ -1,3 +0,0 @@
1
- import { AppOptions, ParsedLogic } from '../types';
2
- import * as ts from 'typescript';
3
- export declare function writeLogicTypeImports(appOptions: AppOptions, program: ts.Program, filename: string, parsedLogics: ParsedLogic[], allParsedLogics: ParsedLogic[]): void;
@@ -1 +0,0 @@
1
- {"version":3,"file":"writeLogicTypeImports.js","sourceRoot":"","sources":["../../../src/import/writeLogicTypeImports.ts"],"names":[],"mappings":"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"}