@forge/react 8.1.1 → 8.1.2-next.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.
- package/CHANGELOG.md +13 -0
- package/out/__test__/hostConfig.test.d.ts +2 -0
- package/out/__test__/hostConfig.test.d.ts.map +1 -0
- package/out/__test__/hostConfig.test.js +210 -0
- package/out/__test__/inline.test.js +2 -2
- package/out/__test__/reconciler.test.js +95 -215
- package/out/__test__/stack.test.js +2 -2
- package/out/__test__/table.test.js +2 -2
- package/out/__test__/testUtils.d.ts +6 -1
- package/out/__test__/testUtils.d.ts.map +1 -1
- package/out/__test__/testUtils.js +21 -2
- package/out/reconciler.d.ts +3 -1
- package/out/reconciler.d.ts.map +1 -1
- package/out/reconciler.js +48 -3
- package/package.json +2 -2
- package/tsconfig.tsbuildinfo +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# @forge/react
|
|
2
2
|
|
|
3
|
+
## 8.1.2-next.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 8ebcac27: Reintroduced improved reconciliation counting
|
|
8
|
+
|
|
9
|
+
## 8.1.2-next.0
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- Updated dependencies [c1c5fb5]
|
|
14
|
+
- @forge/ui@1.9.5-next.0
|
|
15
|
+
|
|
3
16
|
## 8.1.1
|
|
4
17
|
|
|
5
18
|
### Patch Changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hostConfig.test.d.ts","sourceRoot":"","sources":["../../src/__test__/hostConfig.test.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
let keyCount = 0;
|
|
4
|
+
jest.mock('uuid', () => (Object.assign(Object.assign({}, jest.requireActual('uuid')), { v4: () => `${keyCount++}` })));
|
|
5
|
+
const reconciler_1 = require("../reconciler");
|
|
6
|
+
const testUtils_1 = require("./testUtils");
|
|
7
|
+
const emptyForgeDoc = (0, reconciler_1.createElement)({ type: 'root', props: {} });
|
|
8
|
+
describe('hostConfig used functions', () => {
|
|
9
|
+
let bridgeCalls = [];
|
|
10
|
+
beforeAll(async () => {
|
|
11
|
+
bridgeCalls = (0, testUtils_1.setupBridge)();
|
|
12
|
+
keyCount = 0;
|
|
13
|
+
});
|
|
14
|
+
it('resetAfterCommit should call bridge', () => {
|
|
15
|
+
const testDoc = (0, reconciler_1.createElement)({ type: 'root', props: {} });
|
|
16
|
+
reconciler_1.hostConfig.resetAfterCommit(testDoc);
|
|
17
|
+
const forgeDoc = (0, testUtils_1.getLastBridgeCallForgeDoc)(bridgeCalls);
|
|
18
|
+
expect(forgeDoc).toMatchSnapshot();
|
|
19
|
+
});
|
|
20
|
+
it('createInstance returns empty ForgeDoc', () => {
|
|
21
|
+
const testProps = {
|
|
22
|
+
test: true
|
|
23
|
+
};
|
|
24
|
+
const instance = reconciler_1.hostConfig.createInstance('test', testProps, emptyForgeDoc, null, null);
|
|
25
|
+
expect(instance).toMatchSnapshot();
|
|
26
|
+
});
|
|
27
|
+
it('createTextInstance returns ForgeDoc with UUID', () => {
|
|
28
|
+
const testDoc = (0, reconciler_1.createElement)({ type: 'root', props: {} });
|
|
29
|
+
const textInstance = reconciler_1.hostConfig.createTextInstance('test', testDoc, null, null);
|
|
30
|
+
expect(textInstance).toMatchSnapshot();
|
|
31
|
+
});
|
|
32
|
+
it('appendInitialChild adds child to empty children array', () => {
|
|
33
|
+
const parent = (0, reconciler_1.createElement)({ type: 'parent', props: {} });
|
|
34
|
+
const child = (0, reconciler_1.createElement)({ type: 'child', props: {} });
|
|
35
|
+
expect(parent).toHaveProperty('children', []);
|
|
36
|
+
reconciler_1.hostConfig.appendInitialChild(parent, child);
|
|
37
|
+
expect(parent).toHaveProperty('children', [child]);
|
|
38
|
+
});
|
|
39
|
+
it('appendChild does not append same child twice', () => {
|
|
40
|
+
expect(reconciler_1.hostConfig).toHaveProperty('appendChild');
|
|
41
|
+
if (reconciler_1.hostConfig.appendChild !== undefined) {
|
|
42
|
+
const parent = (0, reconciler_1.createElement)({ type: 'parent', props: {} });
|
|
43
|
+
const child = (0, reconciler_1.createElement)({ type: 'child', props: {} });
|
|
44
|
+
expect(parent).toHaveProperty('children', []);
|
|
45
|
+
reconciler_1.hostConfig.appendChild(parent, child);
|
|
46
|
+
expect(parent).toHaveProperty('children', [child]);
|
|
47
|
+
reconciler_1.hostConfig.appendChild(parent, child);
|
|
48
|
+
expect(parent).toHaveProperty('children', [child]);
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
it('appendChildToContainer', () => {
|
|
52
|
+
expect(reconciler_1.hostConfig).toHaveProperty('appendChildToContainer');
|
|
53
|
+
if (reconciler_1.hostConfig.appendChildToContainer !== undefined) {
|
|
54
|
+
const parent = (0, reconciler_1.createElement)({ type: 'parent', props: {} });
|
|
55
|
+
const child = (0, reconciler_1.createElement)({ type: 'child', props: {} });
|
|
56
|
+
expect(parent).toHaveProperty('children', []);
|
|
57
|
+
reconciler_1.hostConfig.appendChildToContainer(parent, child);
|
|
58
|
+
expect(parent).toHaveProperty('children', [child]);
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
it('finalizeInitialChildren returns false', () => {
|
|
62
|
+
expect(reconciler_1.hostConfig.finalizeInitialChildren(emptyForgeDoc, 'test', {}, emptyForgeDoc, null)).toBe(false);
|
|
63
|
+
});
|
|
64
|
+
it('prepareUpdate should set new props as props on instance', () => {
|
|
65
|
+
const instance = (0, reconciler_1.createElement)({ type: 'test', props: { oldProps: true } });
|
|
66
|
+
const newProps = {
|
|
67
|
+
updated: true
|
|
68
|
+
};
|
|
69
|
+
expect(reconciler_1.hostConfig.prepareUpdate(instance, 'test', {}, newProps, emptyForgeDoc, null)).toBe(newProps);
|
|
70
|
+
expect(instance).not.toHaveProperty('oldProps');
|
|
71
|
+
expect(instance).toHaveProperty('props', newProps);
|
|
72
|
+
expect(instance).toHaveProperty('reconciliationCount', 2);
|
|
73
|
+
});
|
|
74
|
+
it('shouldSetTextContent returns false', () => {
|
|
75
|
+
expect(reconciler_1.hostConfig.shouldSetTextContent('test', {})).toBe(false);
|
|
76
|
+
});
|
|
77
|
+
it('insertBefore reorders children', () => {
|
|
78
|
+
expect(reconciler_1.hostConfig).toHaveProperty('insertBefore');
|
|
79
|
+
if (reconciler_1.hostConfig.insertBefore !== undefined) {
|
|
80
|
+
const parent = (0, reconciler_1.createElement)({ type: 'parent', props: {} });
|
|
81
|
+
const child1 = (0, reconciler_1.createElement)({ type: 'child1', props: {} });
|
|
82
|
+
const child2 = (0, reconciler_1.createElement)({ type: 'child2', props: {} });
|
|
83
|
+
reconciler_1.hostConfig.appendInitialChild(parent, child1);
|
|
84
|
+
expect(parent).toHaveProperty('children', [child1]);
|
|
85
|
+
reconciler_1.hostConfig.insertBefore(parent, child2, child1);
|
|
86
|
+
expect(parent).toHaveProperty('children', [child2, child1]);
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
it('insertInContainerBefore reorders children when child being inserted exists', () => {
|
|
90
|
+
expect(reconciler_1.hostConfig).toHaveProperty('insertInContainerBefore');
|
|
91
|
+
if (reconciler_1.hostConfig.insertInContainerBefore !== undefined) {
|
|
92
|
+
const parent = (0, reconciler_1.createElement)({ type: 'parent', props: {} });
|
|
93
|
+
const child1 = (0, reconciler_1.createElement)({ type: 'child1', props: {} });
|
|
94
|
+
const child2 = (0, reconciler_1.createElement)({ type: 'child2', props: {} });
|
|
95
|
+
reconciler_1.hostConfig.appendInitialChild(parent, child1);
|
|
96
|
+
reconciler_1.hostConfig.appendInitialChild(parent, child2);
|
|
97
|
+
expect(parent).toHaveProperty('children', [child1, child2]);
|
|
98
|
+
reconciler_1.hostConfig.insertInContainerBefore(parent, child2, child1);
|
|
99
|
+
expect(parent).toHaveProperty('children', [child2, child1]);
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
it('removeChild removes child', () => {
|
|
103
|
+
expect(reconciler_1.hostConfig).toHaveProperty('removeChild');
|
|
104
|
+
if (reconciler_1.hostConfig.removeChild !== undefined) {
|
|
105
|
+
const parent = (0, reconciler_1.createElement)({ type: 'parent', props: {} });
|
|
106
|
+
const child = (0, reconciler_1.createElement)({ type: 'child', props: {} });
|
|
107
|
+
expect(parent).toHaveProperty('children', []);
|
|
108
|
+
reconciler_1.hostConfig.appendInitialChild(parent, child);
|
|
109
|
+
expect(parent).toHaveProperty('children', [child]);
|
|
110
|
+
reconciler_1.hostConfig.removeChild(parent, child);
|
|
111
|
+
expect(parent).toHaveProperty('children', []);
|
|
112
|
+
}
|
|
113
|
+
});
|
|
114
|
+
it('removeChildFromContainer removes child', () => {
|
|
115
|
+
expect(reconciler_1.hostConfig).toHaveProperty('removeChildFromContainer');
|
|
116
|
+
if (reconciler_1.hostConfig.removeChildFromContainer !== undefined) {
|
|
117
|
+
const parent = (0, reconciler_1.createElement)({ type: 'parent', props: {} });
|
|
118
|
+
const child = (0, reconciler_1.createElement)({ type: 'child', props: {} });
|
|
119
|
+
expect(parent).toHaveProperty('children', []);
|
|
120
|
+
reconciler_1.hostConfig.appendInitialChild(parent, child);
|
|
121
|
+
expect(parent).toHaveProperty('children', [child]);
|
|
122
|
+
reconciler_1.hostConfig.removeChildFromContainer(parent, child);
|
|
123
|
+
expect(parent).toHaveProperty('children', []);
|
|
124
|
+
}
|
|
125
|
+
});
|
|
126
|
+
it('commitTextUpdate should update instance props', () => {
|
|
127
|
+
expect(reconciler_1.hostConfig).toHaveProperty('commitTextUpdate');
|
|
128
|
+
if (reconciler_1.hostConfig.commitTextUpdate !== undefined) {
|
|
129
|
+
const testDoc = (0, reconciler_1.createElement)({ type: 'root', props: {} });
|
|
130
|
+
const textInstance = reconciler_1.hostConfig.createTextInstance('test', testDoc, null, null);
|
|
131
|
+
reconciler_1.hostConfig.commitTextUpdate(textInstance, '', 'updated');
|
|
132
|
+
expect(textInstance).toEqual(expect.objectContaining({
|
|
133
|
+
type: 'String',
|
|
134
|
+
children: [],
|
|
135
|
+
props: {
|
|
136
|
+
text: 'updated'
|
|
137
|
+
},
|
|
138
|
+
key: expect.any(String)
|
|
139
|
+
}));
|
|
140
|
+
}
|
|
141
|
+
});
|
|
142
|
+
});
|
|
143
|
+
describe('hostConfig unused functions', () => {
|
|
144
|
+
it('should return empty object from getRootHostContext', () => {
|
|
145
|
+
expect(reconciler_1.hostConfig.getRootHostContext(emptyForgeDoc)).toEqual({});
|
|
146
|
+
});
|
|
147
|
+
it('should return null from getChildHostContext', () => {
|
|
148
|
+
expect(reconciler_1.hostConfig.getChildHostContext(null, 'test', emptyForgeDoc)).toBeNull();
|
|
149
|
+
});
|
|
150
|
+
it('should return supplied value to getPublicInstance', () => {
|
|
151
|
+
expect(reconciler_1.hostConfig.getPublicInstance(emptyForgeDoc)).toBe(emptyForgeDoc);
|
|
152
|
+
});
|
|
153
|
+
it('should return null from prepareForCommit', () => {
|
|
154
|
+
expect(reconciler_1.hostConfig.prepareForCommit(emptyForgeDoc)).toBeNull();
|
|
155
|
+
});
|
|
156
|
+
it('should return undefined from preparePortalMount', () => {
|
|
157
|
+
expect(reconciler_1.hostConfig.preparePortalMount(emptyForgeDoc)).toBeUndefined();
|
|
158
|
+
});
|
|
159
|
+
it('should return undefined from resetTextContent', () => {
|
|
160
|
+
if (reconciler_1.hostConfig.resetTextContent !== undefined) {
|
|
161
|
+
expect(reconciler_1.hostConfig.resetTextContent(emptyForgeDoc)).toBeUndefined();
|
|
162
|
+
}
|
|
163
|
+
});
|
|
164
|
+
it('should return undefined from commitMount', () => {
|
|
165
|
+
if (reconciler_1.hostConfig.commitMount !== undefined) {
|
|
166
|
+
expect(reconciler_1.hostConfig.commitMount(emptyForgeDoc, 'test', {}, null)).toBeUndefined();
|
|
167
|
+
}
|
|
168
|
+
});
|
|
169
|
+
it('should return undefined from commitUpdate', () => {
|
|
170
|
+
if (reconciler_1.hostConfig.commitUpdate !== undefined) {
|
|
171
|
+
expect(reconciler_1.hostConfig.commitUpdate(emptyForgeDoc, {}, 'test', {}, {}, null)).toBeUndefined();
|
|
172
|
+
}
|
|
173
|
+
});
|
|
174
|
+
it('should return undefined from hideInstance', () => {
|
|
175
|
+
if (reconciler_1.hostConfig.hideInstance !== undefined) {
|
|
176
|
+
expect(reconciler_1.hostConfig.hideInstance(emptyForgeDoc)).toBeUndefined();
|
|
177
|
+
}
|
|
178
|
+
});
|
|
179
|
+
it('should return undefined from unhideTextInstance', () => {
|
|
180
|
+
if (reconciler_1.hostConfig.unhideTextInstance !== undefined) {
|
|
181
|
+
expect(reconciler_1.hostConfig.unhideTextInstance(emptyForgeDoc, 'Test')).toBeUndefined();
|
|
182
|
+
}
|
|
183
|
+
});
|
|
184
|
+
it('should return undefined from clearContainer', () => {
|
|
185
|
+
if (reconciler_1.hostConfig.clearContainer !== undefined) {
|
|
186
|
+
expect(reconciler_1.hostConfig.clearContainer(emptyForgeDoc)).toBeUndefined();
|
|
187
|
+
}
|
|
188
|
+
});
|
|
189
|
+
it('should return undefined from detachDeletedInstance', () => {
|
|
190
|
+
expect(reconciler_1.hostConfig.detachDeletedInstance(emptyForgeDoc)).toBeUndefined();
|
|
191
|
+
});
|
|
192
|
+
it('should return undefined from getCurrentEventPriority', () => {
|
|
193
|
+
expect(reconciler_1.hostConfig.getCurrentEventPriority()).toBe(16);
|
|
194
|
+
});
|
|
195
|
+
it('should return null from getInstanceFromNode', () => {
|
|
196
|
+
expect(reconciler_1.hostConfig.getInstanceFromNode(null)).toBeNull();
|
|
197
|
+
});
|
|
198
|
+
it('should return undefined from beforeActiveInstanceBlur', () => {
|
|
199
|
+
expect(reconciler_1.hostConfig.beforeActiveInstanceBlur()).toBeUndefined();
|
|
200
|
+
});
|
|
201
|
+
it('should return undefined from afterActiveInstanceBlur', () => {
|
|
202
|
+
expect(reconciler_1.hostConfig.afterActiveInstanceBlur()).toBeUndefined();
|
|
203
|
+
});
|
|
204
|
+
it('should return undefined from prepareScopeUpdate', () => {
|
|
205
|
+
expect(reconciler_1.hostConfig.prepareScopeUpdate(null, null)).toBeUndefined();
|
|
206
|
+
});
|
|
207
|
+
it('should return null from getInstanceFromScope', () => {
|
|
208
|
+
expect(reconciler_1.hostConfig.getInstanceFromScope(null)).toBeNull();
|
|
209
|
+
});
|
|
210
|
+
});
|
|
@@ -17,7 +17,7 @@ describe('reconciled output', () => {
|
|
|
17
17
|
};
|
|
18
18
|
await reconcilerTestRenderer_1.default.create((0, jsx_runtime_1.jsx)(Test, {}));
|
|
19
19
|
const forgeDoc = (0, testUtils_1.getLastBridgeCallForgeDoc)(bridgeCalls);
|
|
20
|
-
expect(forgeDoc).toHaveProperty('
|
|
21
|
-
expect(forgeDoc).toHaveProperty('
|
|
20
|
+
expect(forgeDoc).toHaveProperty('type', 'Root');
|
|
21
|
+
expect(forgeDoc).toHaveProperty('children[0].type', 'Inline');
|
|
22
22
|
});
|
|
23
23
|
});
|
|
@@ -2,247 +2,127 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
let keyCount = 0;
|
|
6
|
+
jest.mock('uuid', () => (Object.assign(Object.assign({}, jest.requireActual('uuid')), { v4: () => `${keyCount++}` })));
|
|
5
7
|
const react_1 = tslib_1.__importStar(require("react"));
|
|
6
|
-
const reconciler_1 = require("../reconciler");
|
|
7
8
|
const reconcilerTestRenderer_1 = tslib_1.__importDefault(require("./reconcilerTestRenderer"));
|
|
8
9
|
const components_1 = require("../components");
|
|
10
|
+
const get_1 = tslib_1.__importDefault(require("lodash/get"));
|
|
9
11
|
const testUtils_1 = require("./testUtils");
|
|
10
|
-
const emptyForgeDoc = (0, reconciler_1.createElement)({ type: 'root', props: {} });
|
|
11
|
-
const ButtonWithStatus = () => {
|
|
12
|
-
const [bool, setBool] = (0, react_1.useState)(true);
|
|
13
|
-
const appearance = bool ? 'inprogress' : 'success';
|
|
14
|
-
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(components_1.Button, Object.assign({ onClick: () => setBool(!bool) }, { children: "Click me!" })), (0, jsx_runtime_1.jsx)(components_1.Text, { children: (0, jsx_runtime_1.jsx)(components_1.StatusLozenge, Object.assign({ appearance: appearance }, { children: appearance })) })] }));
|
|
15
|
-
};
|
|
16
12
|
describe('Reconciliation counting', () => {
|
|
17
13
|
let bridgeCalls = [];
|
|
14
|
+
const TEXT = 0;
|
|
15
|
+
const BUTTON = 1;
|
|
16
|
+
const STATIC_TEXT = 2;
|
|
17
|
+
const STRING = 0;
|
|
18
18
|
beforeAll(async () => {
|
|
19
19
|
bridgeCalls = (0, testUtils_1.setupBridge)();
|
|
20
20
|
const Test = () => {
|
|
21
|
-
|
|
21
|
+
const [bool, setBool] = (0, react_1.useState)(false);
|
|
22
|
+
return ((0, jsx_runtime_1.jsxs)(react_1.default.Fragment, { children: [(0, jsx_runtime_1.jsx)(components_1.Text, { children: !bool ? 'Loading...' : 'Now loaded...' }), (0, jsx_runtime_1.jsx)(components_1.Button, Object.assign({ onClick: () => setBool(true) }, { children: "Click" })), (0, jsx_runtime_1.jsx)(components_1.StatusLozenge, Object.assign({ appearance: "inprogress" }, { children: "Test" }))] }));
|
|
22
23
|
};
|
|
23
24
|
await reconcilerTestRenderer_1.default.create((0, jsx_runtime_1.jsx)(Test, {}));
|
|
24
25
|
});
|
|
25
26
|
it('initial reconcilation output is correct', () => {
|
|
26
27
|
const forgeDoc = (0, testUtils_1.getLastBridgeCallForgeDoc)(bridgeCalls);
|
|
27
|
-
expect(forgeDoc).toHaveProperty('
|
|
28
|
-
expect(forgeDoc).toHaveProperty(
|
|
29
|
-
expect(forgeDoc).toHaveProperty(
|
|
28
|
+
expect(forgeDoc).toHaveProperty('reconciliationCount', 1);
|
|
29
|
+
expect(forgeDoc).toHaveProperty(`children[${TEXT}].type`, 'Text');
|
|
30
|
+
expect(forgeDoc).toHaveProperty(`children[${TEXT}].reconciliationCount`, 1);
|
|
31
|
+
expect(forgeDoc).toHaveProperty(`children[${BUTTON}].type`, 'Button');
|
|
32
|
+
expect(forgeDoc).toHaveProperty(`children[${BUTTON}].reconciliationCount`, 1);
|
|
33
|
+
expect(forgeDoc).toHaveProperty(`children[${STATIC_TEXT}].type`, 'StatusLozenge');
|
|
34
|
+
expect(forgeDoc).toHaveProperty(`children[${STATIC_TEXT}].reconciliationCount`, 1);
|
|
35
|
+
});
|
|
36
|
+
it('calling the button click handler triggers reconciliation', () => {
|
|
37
|
+
let forgeDoc = (0, testUtils_1.getLastBridgeCallForgeDoc)(bridgeCalls);
|
|
38
|
+
const onClick = (0, get_1.default)(forgeDoc, `children[${BUTTON}].props.onClick`);
|
|
39
|
+
expect(onClick).not.toBeUndefined();
|
|
40
|
+
onClick();
|
|
41
|
+
forgeDoc = (0, testUtils_1.getLastBridgeCallForgeDoc)(bridgeCalls);
|
|
42
|
+
expect(forgeDoc).toHaveProperty('reconciliationCount', 2);
|
|
43
|
+
expect(forgeDoc).toHaveProperty(`children[${TEXT}].reconciliationCount`, 1);
|
|
44
|
+
expect(forgeDoc).toHaveProperty(`children[${TEXT}].children[${STRING}].type`, 'String');
|
|
45
|
+
expect(forgeDoc).toHaveProperty(`children[${TEXT}].children[${STRING}].reconciliationCount`, 2);
|
|
46
|
+
expect(forgeDoc).toHaveProperty(`children[${BUTTON}].reconciliationCount`, 2);
|
|
47
|
+
expect(forgeDoc).toHaveProperty(`children[${STATIC_TEXT}].reconciliationCount`, 1);
|
|
30
48
|
});
|
|
31
49
|
});
|
|
32
|
-
describe('
|
|
50
|
+
describe('deep tree reconciliation', () => {
|
|
33
51
|
let bridgeCalls = [];
|
|
34
52
|
beforeAll(async () => {
|
|
35
53
|
bridgeCalls = (0, testUtils_1.setupBridge)();
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
forgeDoc: testDoc
|
|
43
|
-
});
|
|
44
|
-
});
|
|
45
|
-
it('createInstance returns empty ForgeDoc', () => {
|
|
46
|
-
const testProps = {
|
|
47
|
-
test: true
|
|
48
|
-
};
|
|
49
|
-
const instance = reconciler_1.hostConfig.createInstance('test', testProps, emptyForgeDoc, null, null);
|
|
50
|
-
expect(instance).toEqual(expect.objectContaining({
|
|
51
|
-
type: 'test',
|
|
52
|
-
children: [],
|
|
53
|
-
props: {
|
|
54
|
-
test: true
|
|
55
|
-
},
|
|
56
|
-
key: expect.any(String)
|
|
57
|
-
}));
|
|
58
|
-
});
|
|
59
|
-
it('createTextInstance returns ForgeDoc with UUID', () => {
|
|
60
|
-
const testDoc = (0, reconciler_1.createElement)({ type: 'root', props: {} });
|
|
61
|
-
const textInstance = reconciler_1.hostConfig.createTextInstance('test', testDoc, null, null);
|
|
62
|
-
expect(textInstance).toEqual(expect.objectContaining({
|
|
63
|
-
type: 'String',
|
|
64
|
-
children: [],
|
|
65
|
-
props: {
|
|
66
|
-
text: 'test'
|
|
67
|
-
},
|
|
68
|
-
key: expect.any(String)
|
|
69
|
-
}));
|
|
70
|
-
});
|
|
71
|
-
it('appendInitialChild adds child to empty children array', () => {
|
|
72
|
-
const parent = (0, reconciler_1.createElement)({ type: 'parent', props: {} });
|
|
73
|
-
const child = (0, reconciler_1.createElement)({ type: 'child', props: {} });
|
|
74
|
-
expect(parent).toHaveProperty('children', []);
|
|
75
|
-
reconciler_1.hostConfig.appendInitialChild(parent, child);
|
|
76
|
-
expect(parent).toHaveProperty('children', [child]);
|
|
77
|
-
});
|
|
78
|
-
it('appendChild does not append same child twice', () => {
|
|
79
|
-
expect(reconciler_1.hostConfig).toHaveProperty('appendChild');
|
|
80
|
-
if (reconciler_1.hostConfig.appendChild !== undefined) {
|
|
81
|
-
const parent = (0, reconciler_1.createElement)({ type: 'parent', props: {} });
|
|
82
|
-
const child = (0, reconciler_1.createElement)({ type: 'child', props: {} });
|
|
83
|
-
expect(parent).toHaveProperty('children', []);
|
|
84
|
-
reconciler_1.hostConfig.appendChild(parent, child);
|
|
85
|
-
expect(parent).toHaveProperty('children', [child]);
|
|
86
|
-
reconciler_1.hostConfig.appendChild(parent, child);
|
|
87
|
-
expect(parent).toHaveProperty('children', [child]);
|
|
88
|
-
}
|
|
89
|
-
});
|
|
90
|
-
it('appendChildToContainer', () => {
|
|
91
|
-
expect(reconciler_1.hostConfig).toHaveProperty('appendChildToContainer');
|
|
92
|
-
if (reconciler_1.hostConfig.appendChildToContainer !== undefined) {
|
|
93
|
-
const parent = (0, reconciler_1.createElement)({ type: 'parent', props: {} });
|
|
94
|
-
const child = (0, reconciler_1.createElement)({ type: 'child', props: {} });
|
|
95
|
-
expect(parent).toHaveProperty('children', []);
|
|
96
|
-
reconciler_1.hostConfig.appendChildToContainer(parent, child);
|
|
97
|
-
expect(parent).toHaveProperty('children', [child]);
|
|
98
|
-
}
|
|
99
|
-
});
|
|
100
|
-
it('finalizeInitialChildren returns false', () => {
|
|
101
|
-
expect(reconciler_1.hostConfig.finalizeInitialChildren(emptyForgeDoc, 'test', {}, emptyForgeDoc, null)).toBe(false);
|
|
102
|
-
});
|
|
103
|
-
it('prepareUpdate should set new props as props on instance', () => {
|
|
104
|
-
const instance = (0, reconciler_1.createElement)({ type: 'test', props: { oldProps: true } });
|
|
105
|
-
const newProps = {
|
|
106
|
-
updated: true
|
|
54
|
+
const Test = () => {
|
|
55
|
+
const [count, setCount] = (0, react_1.useState)(0);
|
|
56
|
+
function incrementCount() {
|
|
57
|
+
setCount(count + 1);
|
|
58
|
+
}
|
|
59
|
+
return ((0, jsx_runtime_1.jsx)(react_1.default.Fragment, { children: (0, jsx_runtime_1.jsxs)(components_1.Inline, { children: [(0, jsx_runtime_1.jsx)(components_1.Stack, { children: (0, jsx_runtime_1.jsx)(components_1.Text, { children: count }) }), (0, jsx_runtime_1.jsxs)(components_1.Stack, { children: [(0, jsx_runtime_1.jsx)(components_1.Text, { children: "Should not update" }), (0, jsx_runtime_1.jsx)(components_1.Button, Object.assign({ onClick: incrementCount }, { children: "Click" }))] })] }) }));
|
|
107
60
|
};
|
|
108
|
-
|
|
109
|
-
expect(instance).not.toHaveProperty('oldProps');
|
|
110
|
-
expect(instance).toHaveProperty('props', newProps);
|
|
111
|
-
});
|
|
112
|
-
it('shouldSetTextContent returns false', () => {
|
|
113
|
-
expect(reconciler_1.hostConfig.shouldSetTextContent('test', {})).toBe(false);
|
|
114
|
-
});
|
|
115
|
-
it('insertBefore reorders children', () => {
|
|
116
|
-
expect(reconciler_1.hostConfig).toHaveProperty('insertBefore');
|
|
117
|
-
if (reconciler_1.hostConfig.insertBefore !== undefined) {
|
|
118
|
-
const parent = (0, reconciler_1.createElement)({ type: 'parent', props: {} });
|
|
119
|
-
const child1 = (0, reconciler_1.createElement)({ type: 'child1', props: {} });
|
|
120
|
-
const child2 = (0, reconciler_1.createElement)({ type: 'child2', props: {} });
|
|
121
|
-
reconciler_1.hostConfig.appendInitialChild(parent, child1);
|
|
122
|
-
expect(parent).toHaveProperty('children', [child1]);
|
|
123
|
-
reconciler_1.hostConfig.insertBefore(parent, child2, child1);
|
|
124
|
-
expect(parent).toHaveProperty('children', [child2, child1]);
|
|
125
|
-
}
|
|
126
|
-
});
|
|
127
|
-
it('insertInContainerBefore reorders children when child being inserted exists', () => {
|
|
128
|
-
expect(reconciler_1.hostConfig).toHaveProperty('insertInContainerBefore');
|
|
129
|
-
if (reconciler_1.hostConfig.insertInContainerBefore !== undefined) {
|
|
130
|
-
const parent = (0, reconciler_1.createElement)({ type: 'parent', props: {} });
|
|
131
|
-
const child1 = (0, reconciler_1.createElement)({ type: 'child1', props: {} });
|
|
132
|
-
const child2 = (0, reconciler_1.createElement)({ type: 'child2', props: {} });
|
|
133
|
-
reconciler_1.hostConfig.appendInitialChild(parent, child1);
|
|
134
|
-
reconciler_1.hostConfig.appendInitialChild(parent, child2);
|
|
135
|
-
expect(parent).toHaveProperty('children', [child1, child2]);
|
|
136
|
-
reconciler_1.hostConfig.insertInContainerBefore(parent, child2, child1);
|
|
137
|
-
expect(parent).toHaveProperty('children', [child2, child1]);
|
|
138
|
-
}
|
|
139
|
-
});
|
|
140
|
-
it('removeChild removes child', () => {
|
|
141
|
-
expect(reconciler_1.hostConfig).toHaveProperty('removeChild');
|
|
142
|
-
if (reconciler_1.hostConfig.removeChild !== undefined) {
|
|
143
|
-
const parent = (0, reconciler_1.createElement)({ type: 'parent', props: {} });
|
|
144
|
-
const child = (0, reconciler_1.createElement)({ type: 'child', props: {} });
|
|
145
|
-
expect(parent).toHaveProperty('children', []);
|
|
146
|
-
reconciler_1.hostConfig.appendInitialChild(parent, child);
|
|
147
|
-
expect(parent).toHaveProperty('children', [child]);
|
|
148
|
-
reconciler_1.hostConfig.removeChild(parent, child);
|
|
149
|
-
expect(parent).toHaveProperty('children', []);
|
|
150
|
-
}
|
|
151
|
-
});
|
|
152
|
-
it('removeChildFromContainer removes child', () => {
|
|
153
|
-
expect(reconciler_1.hostConfig).toHaveProperty('removeChildFromContainer');
|
|
154
|
-
if (reconciler_1.hostConfig.removeChildFromContainer !== undefined) {
|
|
155
|
-
const parent = (0, reconciler_1.createElement)({ type: 'parent', props: {} });
|
|
156
|
-
const child = (0, reconciler_1.createElement)({ type: 'child', props: {} });
|
|
157
|
-
expect(parent).toHaveProperty('children', []);
|
|
158
|
-
reconciler_1.hostConfig.appendInitialChild(parent, child);
|
|
159
|
-
expect(parent).toHaveProperty('children', [child]);
|
|
160
|
-
reconciler_1.hostConfig.removeChildFromContainer(parent, child);
|
|
161
|
-
expect(parent).toHaveProperty('children', []);
|
|
162
|
-
}
|
|
61
|
+
await reconcilerTestRenderer_1.default.create((0, jsx_runtime_1.jsx)(Test, {}));
|
|
163
62
|
});
|
|
164
|
-
it('
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
63
|
+
it('should match the initially rendered ForgeDoc snaphot', () => {
|
|
64
|
+
const forgeDoc = (0, testUtils_1.getLastBridgeCallForgeDoc)(bridgeCalls);
|
|
65
|
+
expect(forgeDoc).toMatchSnapshot();
|
|
66
|
+
});
|
|
67
|
+
it('should match snapshot after triggering update', () => {
|
|
68
|
+
var _a, _b;
|
|
69
|
+
let forgeDoc = (0, testUtils_1.getLastBridgeCallForgeDoc)(bridgeCalls);
|
|
70
|
+
expect(forgeDoc).not.toBeNull();
|
|
71
|
+
const button = (0, testUtils_1.findElementInForgeDoc)(forgeDoc, '14');
|
|
72
|
+
expect(button).not.toBeUndefined();
|
|
73
|
+
expect((_a = button === null || button === void 0 ? void 0 : button.props) === null || _a === void 0 ? void 0 : _a.onClick).not.toBeUndefined();
|
|
74
|
+
(_b = button === null || button === void 0 ? void 0 : button.props) === null || _b === void 0 ? void 0 : _b.onClick();
|
|
75
|
+
forgeDoc = (0, testUtils_1.getLastBridgeCallForgeDoc)(bridgeCalls);
|
|
76
|
+
expect(forgeDoc).toMatchSnapshot();
|
|
77
|
+
});
|
|
78
|
+
it('should set accurate reconciliation counts for updated text and string components', () => {
|
|
79
|
+
const forgeDoc = (0, testUtils_1.getLastBridgeCallForgeDoc)(bridgeCalls);
|
|
80
|
+
expect(forgeDoc).not.toBeNull();
|
|
81
|
+
const textComponent = (0, testUtils_1.findElementInForgeDoc)(forgeDoc, '9');
|
|
82
|
+
expect(textComponent).not.toBeUndefined();
|
|
83
|
+
expect(textComponent === null || textComponent === void 0 ? void 0 : textComponent.reconciliationCount).toBe(3);
|
|
84
|
+
const stringComponent = (0, testUtils_1.findElementInForgeDoc)(forgeDoc, '8');
|
|
85
|
+
expect(stringComponent).not.toBeUndefined();
|
|
86
|
+
expect(stringComponent === null || stringComponent === void 0 ? void 0 : stringComponent.reconciliationCount).toBe(4);
|
|
179
87
|
});
|
|
180
88
|
});
|
|
181
|
-
describe('
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
});
|
|
191
|
-
it('should return null from prepareForCommit', () => {
|
|
192
|
-
expect(reconciler_1.hostConfig.prepareForCommit(emptyForgeDoc)).toBeNull();
|
|
193
|
-
});
|
|
194
|
-
it('should return undefined from preparePortalMount', () => {
|
|
195
|
-
expect(reconciler_1.hostConfig.preparePortalMount(emptyForgeDoc)).toBeUndefined();
|
|
196
|
-
});
|
|
197
|
-
it('should return undefined from resetTextContent', () => {
|
|
198
|
-
if (reconciler_1.hostConfig.resetTextContent !== undefined) {
|
|
199
|
-
expect(reconciler_1.hostConfig.resetTextContent(emptyForgeDoc)).toBeUndefined();
|
|
200
|
-
}
|
|
201
|
-
});
|
|
202
|
-
it('should return undefined from commitMount', () => {
|
|
203
|
-
if (reconciler_1.hostConfig.commitMount !== undefined) {
|
|
204
|
-
expect(reconciler_1.hostConfig.commitMount(emptyForgeDoc, 'test', {}, null)).toBeUndefined();
|
|
205
|
-
}
|
|
206
|
-
});
|
|
207
|
-
it('should return undefined from commitUpdate', () => {
|
|
208
|
-
if (reconciler_1.hostConfig.commitUpdate !== undefined) {
|
|
209
|
-
expect(reconciler_1.hostConfig.commitUpdate(emptyForgeDoc, {}, 'test', {}, {}, null)).toBeUndefined();
|
|
210
|
-
}
|
|
211
|
-
});
|
|
212
|
-
it('should return undefined from hideInstance', () => {
|
|
213
|
-
if (reconciler_1.hostConfig.hideInstance !== undefined) {
|
|
214
|
-
expect(reconciler_1.hostConfig.hideInstance(emptyForgeDoc)).toBeUndefined();
|
|
215
|
-
}
|
|
89
|
+
describe('swapping component type with same props', () => {
|
|
90
|
+
let bridgeCalls = [];
|
|
91
|
+
beforeAll(async () => {
|
|
92
|
+
bridgeCalls = (0, testUtils_1.setupBridge)();
|
|
93
|
+
const Test = () => {
|
|
94
|
+
const [bool, setBool] = (0, react_1.useState)(false);
|
|
95
|
+
return ((0, jsx_runtime_1.jsxs)(react_1.default.Fragment, { children: [bool ? (0, jsx_runtime_1.jsx)(components_1.Text, { children: "Text" }) : (0, jsx_runtime_1.jsx)(components_1.Heading, Object.assign({ size: "medium" }, { children: "Text" })), (0, jsx_runtime_1.jsx)(components_1.Button, Object.assign({ onClick: () => setBool(!bool) }, { children: "Click" }))] }));
|
|
96
|
+
};
|
|
97
|
+
await reconcilerTestRenderer_1.default.create((0, jsx_runtime_1.jsx)(Test, {}));
|
|
216
98
|
});
|
|
217
|
-
it('should
|
|
218
|
-
|
|
219
|
-
|
|
99
|
+
it('should match the initially rendered ForgeDoc snaphot', () => {
|
|
100
|
+
const forgeDoc = (0, testUtils_1.getLastBridgeCallForgeDoc)(bridgeCalls);
|
|
101
|
+
expect(forgeDoc).toMatchSnapshot();
|
|
102
|
+
});
|
|
103
|
+
it('should match snapshot after triggering update', () => {
|
|
104
|
+
var _a, _b;
|
|
105
|
+
let forgeDoc = (0, testUtils_1.getLastBridgeCallForgeDoc)(bridgeCalls);
|
|
106
|
+
expect(forgeDoc).not.toBeNull();
|
|
107
|
+
if (forgeDoc !== null) {
|
|
108
|
+
const button = (0, testUtils_1.findElementInForgeDoc)(forgeDoc, '21');
|
|
109
|
+
expect(button).not.toBeUndefined();
|
|
110
|
+
expect((_a = button === null || button === void 0 ? void 0 : button.props) === null || _a === void 0 ? void 0 : _a.onClick).not.toBeUndefined();
|
|
111
|
+
(_b = button === null || button === void 0 ? void 0 : button.props) === null || _b === void 0 ? void 0 : _b.onClick();
|
|
112
|
+
forgeDoc = (0, testUtils_1.getLastBridgeCallForgeDoc)(bridgeCalls);
|
|
113
|
+
expect(forgeDoc).toMatchSnapshot();
|
|
220
114
|
}
|
|
221
115
|
});
|
|
222
|
-
it('should
|
|
223
|
-
|
|
224
|
-
|
|
116
|
+
it('should set accurate reconciliation counts for swapped in text and string components', () => {
|
|
117
|
+
const forgeDoc = (0, testUtils_1.getLastBridgeCallForgeDoc)(bridgeCalls);
|
|
118
|
+
expect(forgeDoc).not.toBeNull();
|
|
119
|
+
if (forgeDoc !== null) {
|
|
120
|
+
const textComponent = (0, testUtils_1.findElementInForgeDoc)(forgeDoc, '23');
|
|
121
|
+
expect(textComponent).not.toBeUndefined();
|
|
122
|
+
expect(textComponent === null || textComponent === void 0 ? void 0 : textComponent.reconciliationCount).toBe(6);
|
|
123
|
+
const stringComponent = (0, testUtils_1.findElementInForgeDoc)(forgeDoc, '22');
|
|
124
|
+
expect(stringComponent).not.toBeUndefined();
|
|
125
|
+
expect(stringComponent === null || stringComponent === void 0 ? void 0 : stringComponent.reconciliationCount).toBe(6);
|
|
225
126
|
}
|
|
226
127
|
});
|
|
227
|
-
it('should return undefined from detachDeletedInstance', () => {
|
|
228
|
-
expect(reconciler_1.hostConfig.detachDeletedInstance(emptyForgeDoc)).toBeUndefined();
|
|
229
|
-
});
|
|
230
|
-
it('should return undefined from getCurrentEventPriority', () => {
|
|
231
|
-
expect(reconciler_1.hostConfig.getCurrentEventPriority()).toBe(16);
|
|
232
|
-
});
|
|
233
|
-
it('should return null from getInstanceFromNode', () => {
|
|
234
|
-
expect(reconciler_1.hostConfig.getInstanceFromNode(null)).toBeNull();
|
|
235
|
-
});
|
|
236
|
-
it('should return undefined from beforeActiveInstanceBlur', () => {
|
|
237
|
-
expect(reconciler_1.hostConfig.beforeActiveInstanceBlur()).toBeUndefined();
|
|
238
|
-
});
|
|
239
|
-
it('should return undefined from afterActiveInstanceBlur', () => {
|
|
240
|
-
expect(reconciler_1.hostConfig.afterActiveInstanceBlur()).toBeUndefined();
|
|
241
|
-
});
|
|
242
|
-
it('should return undefined from prepareScopeUpdate', () => {
|
|
243
|
-
expect(reconciler_1.hostConfig.prepareScopeUpdate(null, null)).toBeUndefined();
|
|
244
|
-
});
|
|
245
|
-
it('should return null from getInstanceFromScope', () => {
|
|
246
|
-
expect(reconciler_1.hostConfig.getInstanceFromScope(null)).toBeNull();
|
|
247
|
-
});
|
|
248
128
|
});
|
|
@@ -17,7 +17,7 @@ describe('reconciled output', () => {
|
|
|
17
17
|
};
|
|
18
18
|
await reconcilerTestRenderer_1.default.create((0, jsx_runtime_1.jsx)(Test, {}));
|
|
19
19
|
const forgeDoc = (0, testUtils_1.getLastBridgeCallForgeDoc)(bridgeCalls);
|
|
20
|
-
expect(forgeDoc).toHaveProperty('
|
|
21
|
-
expect(forgeDoc).toHaveProperty('
|
|
20
|
+
expect(forgeDoc).toHaveProperty('type', 'Root');
|
|
21
|
+
expect(forgeDoc).toHaveProperty('children[0].type', 'Stack');
|
|
22
22
|
});
|
|
23
23
|
});
|
|
@@ -17,7 +17,7 @@ describe('reconciled output', () => {
|
|
|
17
17
|
};
|
|
18
18
|
await reconcilerTestRenderer_1.default.create((0, jsx_runtime_1.jsx)(Test, {}));
|
|
19
19
|
const forgeDoc = (0, testUtils_1.getLastBridgeCallForgeDoc)(bridgeCalls);
|
|
20
|
-
expect(forgeDoc).toHaveProperty('
|
|
21
|
-
expect(forgeDoc).toHaveProperty('
|
|
20
|
+
expect(forgeDoc).toHaveProperty('type', 'Root');
|
|
21
|
+
expect(forgeDoc).toHaveProperty('children[0].type', 'Table');
|
|
22
22
|
});
|
|
23
23
|
});
|
|
@@ -1,13 +1,18 @@
|
|
|
1
1
|
import { ForgeDoc } from '../types';
|
|
2
2
|
export type BridgeCall = {
|
|
3
3
|
cmd: string;
|
|
4
|
-
data:
|
|
4
|
+
data: BridgeCallData;
|
|
5
5
|
};
|
|
6
6
|
type SetupBridge = () => BridgeCall[];
|
|
7
7
|
type GetLastBridgeCall = (bridgeCalls: BridgeCall[]) => BridgeCall | null;
|
|
8
8
|
type GetLastBridgeCallForgeDoc = (bridgeCalls: BridgeCall[]) => ForgeDoc | null;
|
|
9
|
+
type FindElementInForgeDoc = (forgeDoc: ForgeDoc | null, key: string) => ForgeDoc | undefined;
|
|
10
|
+
type BridgeCallData = {
|
|
11
|
+
forgeDoc: ForgeDoc;
|
|
12
|
+
};
|
|
9
13
|
export declare const setupBridge: SetupBridge;
|
|
10
14
|
export declare const getLastBridgeCall: GetLastBridgeCall;
|
|
11
15
|
export declare const getLastBridgeCallForgeDoc: GetLastBridgeCallForgeDoc;
|
|
16
|
+
export declare const findElementInForgeDoc: FindElementInForgeDoc;
|
|
12
17
|
export {};
|
|
13
18
|
//# sourceMappingURL=testUtils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testUtils.d.ts","sourceRoot":"","sources":["../../src/__test__/testUtils.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,MAAM,MAAM,UAAU,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"testUtils.d.ts","sourceRoot":"","sources":["../../src/__test__/testUtils.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,MAAM,MAAM,UAAU,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,cAAc,CAAA;CAAE,CAAC;AAC/D,KAAK,WAAW,GAAG,MAAM,UAAU,EAAE,CAAC;AAEtC,KAAK,iBAAiB,GAAG,CAAC,WAAW,EAAE,UAAU,EAAE,KAAK,UAAU,GAAG,IAAI,CAAC;AAC1E,KAAK,yBAAyB,GAAG,CAAC,WAAW,EAAE,UAAU,EAAE,KAAK,QAAQ,GAAG,IAAI,CAAC;AAChF,KAAK,qBAAqB,GAAG,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,KAAK,QAAQ,GAAG,SAAS,CAAC;AAE9F,KAAK,cAAc,GAAG;IACpB,QAAQ,EAAE,QAAQ,CAAC;CACpB,CAAC;AAMF,eAAO,MAAM,WAAW,EAAE,WAWzB,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,iBAK/B,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,yBAMvC,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,qBAkBnC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getLastBridgeCallForgeDoc = exports.getLastBridgeCall = exports.setupBridge = void 0;
|
|
3
|
+
exports.findElementInForgeDoc = exports.getLastBridgeCallForgeDoc = exports.getLastBridgeCall = exports.setupBridge = void 0;
|
|
4
4
|
const setupBridge = () => {
|
|
5
5
|
const bridgeCalls = [];
|
|
6
6
|
global['self'] = {
|
|
@@ -25,6 +25,25 @@ const getLastBridgeCallForgeDoc = (bridgeCalls) => {
|
|
|
25
25
|
if (lastBridgeCall === null) {
|
|
26
26
|
return lastBridgeCall;
|
|
27
27
|
}
|
|
28
|
-
return lastBridgeCall.data;
|
|
28
|
+
return lastBridgeCall.data.forgeDoc;
|
|
29
29
|
};
|
|
30
30
|
exports.getLastBridgeCallForgeDoc = getLastBridgeCallForgeDoc;
|
|
31
|
+
const findElementInForgeDoc = (forgeDoc, key) => {
|
|
32
|
+
if (forgeDoc === null) {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
if (forgeDoc.key === key) {
|
|
36
|
+
return forgeDoc;
|
|
37
|
+
}
|
|
38
|
+
const { children } = forgeDoc;
|
|
39
|
+
if (forgeDoc.children) {
|
|
40
|
+
for (const child of children) {
|
|
41
|
+
const result = (0, exports.findElementInForgeDoc)(child, key);
|
|
42
|
+
if (result) {
|
|
43
|
+
return result;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
return;
|
|
48
|
+
};
|
|
49
|
+
exports.findElementInForgeDoc = findElementInForgeDoc;
|
package/out/reconciler.d.ts
CHANGED
|
@@ -8,18 +8,20 @@ export interface ForgeDoc {
|
|
|
8
8
|
props: ElementProps;
|
|
9
9
|
children: ForgeDoc[];
|
|
10
10
|
key: string;
|
|
11
|
+
reconciliationCount: number;
|
|
11
12
|
}
|
|
12
13
|
export type CallBridge = (cmd: string, data: {
|
|
13
14
|
forgeDoc: ForgeDoc;
|
|
14
15
|
}) => void;
|
|
15
16
|
export declare const callBridge: CallBridge;
|
|
16
|
-
|
|
17
|
+
type CreateElement = (args: {
|
|
17
18
|
type: ElementType;
|
|
18
19
|
props: InstanceProps;
|
|
19
20
|
}) => ForgeDoc;
|
|
20
21
|
export declare const createElement: CreateElement;
|
|
21
22
|
export declare const appendChild: (parent: ForgeDoc, child: ForgeDoc) => void;
|
|
22
23
|
export declare const insertBefore: (parent: ForgeDoc, child: ForgeDoc, beforeChild: ForgeDoc) => void;
|
|
24
|
+
export declare const nonChildPropsAreEqual: (oldProps: InstanceProps, newProps: InstanceProps) => boolean;
|
|
23
25
|
type HostConfigType = string;
|
|
24
26
|
type InstanceProps = Record<string, any>;
|
|
25
27
|
type Container = ForgeDoc;
|
package/out/reconciler.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reconciler.d.ts","sourceRoot":"","sources":["../src/reconciler.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"reconciler.d.ts","sourceRoot":"","sources":["../src/reconciler.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAmB,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAI1D,KAAK,WAAW,GAAG,MAAM,CAAC;AAC1B,KAAK,YAAY,GAAG,aAAa,CAAC;AAElC,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,WAAW,CAAC;IAClB,KAAK,EAAE,YAAY,CAAC;IACpB,QAAQ,EAAE,QAAQ,EAAE,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE;IAAE,QAAQ,EAAE,QAAQ,CAAA;CAAE,KAAK,IAAI,CAAC;AAC7E,eAAO,MAAM,UAAU,EAAE,UAGxB,CAAC;AAEF,KAAK,aAAa,GAAG,CAAC,IAAI,EAAE;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,aAAa,CAAA;CAAE,KAAK,QAAQ,CAAC;AAmCrF,eAAO,MAAM,aAAa,EAAE,aAe3B,CAAC;AAEF,eAAO,MAAM,WAAW,WAAY,QAAQ,SAAS,QAAQ,SAM5D,CAAC;AAEF,eAAO,MAAM,YAAY,WAAY,QAAQ,SAAS,QAAQ,eAAe,QAAQ,SAOpF,CAAC;AAeF,eAAO,MAAM,qBAAqB,aAAc,aAAa,YAAY,aAAa,YAerF,CAAC;AAEF,KAAK,cAAc,GAAG,MAAM,CAAC;AAE7B,KAAK,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AACzC,KAAK,SAAS,GAAG,QAAQ,CAAC;AAC1B,KAAK,QAAQ,GAAG,QAAQ,CAAC;AACzB,KAAK,YAAY,GAAG,QAAQ,CAAC;AAC7B,KAAK,gBAAgB,GAAG,QAAQ,CAAC;AACjC,KAAK,kBAAkB,GAAG,QAAQ,CAAC;AACnC,KAAK,cAAc,GAAG,QAAQ,CAAC;AAE/B,KAAK,WAAW,GAAG,GAAG,CAAC;AAEvB,KAAK,aAAa,GAAG,GAAG,CAAC;AAEzB,KAAK,QAAQ,GAAG,GAAG,CAAC;AACpB,KAAK,aAAa,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AACnD,KAAK,SAAS,GAAG,CAAC,CAAC,CAAC;AAEpB,eAAO,MAAM,UAAU,EAAE,UAAU,CACjC,cAAc,EACd,aAAa,EACb,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,WAAW,EACX,aAAa,EACb,QAAQ,EACR,aAAa,EACb,SAAS,CAoKV,CAAC;AAIF,eAAO,MAAM,eAAe;sBACR,SAAS;CAiB5B,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
package/out/reconciler.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ForgeReconciler = exports.hostConfig = exports.insertBefore = exports.appendChild = exports.createElement = exports.callBridge = void 0;
|
|
3
|
+
exports.ForgeReconciler = exports.hostConfig = exports.nonChildPropsAreEqual = exports.insertBefore = exports.appendChild = exports.createElement = exports.callBridge = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const react_reconciler_1 = tslib_1.__importDefault(require("react-reconciler"));
|
|
6
6
|
const constants_1 = require("react-reconciler/constants");
|
|
@@ -10,14 +10,37 @@ const callBridge = function (cmd, data) {
|
|
|
10
10
|
(_a = self === null || self === void 0 ? void 0 : self.__bridge) === null || _a === void 0 ? void 0 : _a.callBridge(cmd, data);
|
|
11
11
|
};
|
|
12
12
|
exports.callBridge = callBridge;
|
|
13
|
+
class ReconciliationCounter {
|
|
14
|
+
constructor() {
|
|
15
|
+
this.count = 0;
|
|
16
|
+
this.count = 0;
|
|
17
|
+
}
|
|
18
|
+
static getInstance() {
|
|
19
|
+
if (!ReconciliationCounter.instance) {
|
|
20
|
+
ReconciliationCounter.instance = new ReconciliationCounter();
|
|
21
|
+
}
|
|
22
|
+
return ReconciliationCounter.instance;
|
|
23
|
+
}
|
|
24
|
+
increment() {
|
|
25
|
+
this.count++;
|
|
26
|
+
}
|
|
27
|
+
getCount() {
|
|
28
|
+
return this.count;
|
|
29
|
+
}
|
|
30
|
+
getNextCount() {
|
|
31
|
+
return this.count + 1;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
13
34
|
const createElement = ({ type, props = {} }) => {
|
|
14
35
|
const { children } = props, restProps = tslib_1.__rest(props, ["children"]);
|
|
15
|
-
|
|
36
|
+
const element = {
|
|
16
37
|
type,
|
|
17
38
|
children: [],
|
|
18
39
|
props: restProps,
|
|
19
|
-
key: (0, uuid_1.v4)()
|
|
40
|
+
key: (0, uuid_1.v4)(),
|
|
41
|
+
reconciliationCount: ReconciliationCounter.getInstance().getNextCount()
|
|
20
42
|
};
|
|
43
|
+
return element;
|
|
21
44
|
};
|
|
22
45
|
exports.createElement = createElement;
|
|
23
46
|
const appendChild = (parent, child) => {
|
|
@@ -37,6 +60,20 @@ const insertBefore = (parent, child, beforeChild) => {
|
|
|
37
60
|
parent.children.splice(insertIndex, 0, child);
|
|
38
61
|
};
|
|
39
62
|
exports.insertBefore = insertBefore;
|
|
63
|
+
const nonChildPropsAreEqual = (oldProps, newProps) => {
|
|
64
|
+
const newPropsKey = Object.keys(newProps).filter((key) => key !== 'children');
|
|
65
|
+
const oldPropsKey = Object.keys(oldProps).filter((key) => key !== 'children');
|
|
66
|
+
if (newPropsKey.length !== oldPropsKey.length) {
|
|
67
|
+
return false;
|
|
68
|
+
}
|
|
69
|
+
for (const key of newPropsKey) {
|
|
70
|
+
if (newProps[key] !== oldProps[key]) {
|
|
71
|
+
return false;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
return true;
|
|
75
|
+
};
|
|
76
|
+
exports.nonChildPropsAreEqual = nonChildPropsAreEqual;
|
|
40
77
|
exports.hostConfig = {
|
|
41
78
|
supportsMutation: true,
|
|
42
79
|
supportsPersistence: false,
|
|
@@ -44,6 +81,9 @@ exports.hostConfig = {
|
|
|
44
81
|
isPrimaryRenderer: false,
|
|
45
82
|
supportsHydration: false,
|
|
46
83
|
resetAfterCommit(containerInfo) {
|
|
84
|
+
const counter = ReconciliationCounter.getInstance();
|
|
85
|
+
counter.increment();
|
|
86
|
+
containerInfo.reconciliationCount = counter.getCount();
|
|
47
87
|
(0, exports.callBridge)('reconcile', { forgeDoc: containerInfo });
|
|
48
88
|
},
|
|
49
89
|
createInstance(type, instanceProps) {
|
|
@@ -67,6 +107,10 @@ exports.hostConfig = {
|
|
|
67
107
|
return false;
|
|
68
108
|
},
|
|
69
109
|
prepareUpdate(instance, type, oldProps, newProps) {
|
|
110
|
+
if ((0, exports.nonChildPropsAreEqual)(oldProps, newProps)) {
|
|
111
|
+
return null;
|
|
112
|
+
}
|
|
113
|
+
instance.reconciliationCount = ReconciliationCounter.getInstance().getNextCount();
|
|
70
114
|
instance.props = newProps;
|
|
71
115
|
return newProps;
|
|
72
116
|
},
|
|
@@ -108,6 +152,7 @@ exports.hostConfig = {
|
|
|
108
152
|
},
|
|
109
153
|
resetTextContent() { },
|
|
110
154
|
commitTextUpdate(textInstance, oldText, newText) {
|
|
155
|
+
textInstance.reconciliationCount = ReconciliationCounter.getInstance().getNextCount();
|
|
111
156
|
textInstance.props.text = newText;
|
|
112
157
|
},
|
|
113
158
|
commitMount() { },
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@forge/react",
|
|
3
|
-
"version": "8.1.1",
|
|
3
|
+
"version": "8.1.2-next.1",
|
|
4
4
|
"description": "Forge React reconciler",
|
|
5
5
|
"author": "Atlassian",
|
|
6
6
|
"license": "UNLICENSED",
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"pack": "./build/bundle-types.sh"
|
|
14
14
|
},
|
|
15
15
|
"peerDependencies": {
|
|
16
|
-
"@forge/ui": "1.9.
|
|
16
|
+
"@forge/ui": "1.9.5-next.0"
|
|
17
17
|
},
|
|
18
18
|
"dependencies": {
|
|
19
19
|
"@types/react-reconciler": "^0.28.4",
|
package/tsconfig.tsbuildinfo
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"program":{"fileNames":["../../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.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.es2020.intl.d.ts","../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../node_modules/tslib/tslib.d.ts","../../node_modules/@types/react/global.d.ts","../../node_modules/csstype/index.d.ts","../../node_modules/@types/prop-types/index.d.ts","../../node_modules/@types/scheduler/tracing.d.ts","../../node_modules/@types/react/index.d.ts","../../node_modules/@types/react/jsx-runtime.d.ts","./src/types/forge.ts","./src/types/icons.ts","./src/types/components.ts","./src/types/legacy-effect.ts","./src/types/effect.ts","./src/types/extension.ts","./src/types/index.ts","./src/components.tsx","./src/globals.d.ts","../../node_modules/@types/react-reconciler/index.d.ts","../../node_modules/@types/react-reconciler/constants.d.ts","../../node_modules/@types/uuid/interfaces.d.ts","../../node_modules/@types/uuid/index.d.ts","./src/reconciler.ts","./src/index.ts","./src/__test__/reconcilerTestRenderer.ts","./src/__test__/testUtils.tsx","./src/__test__/inline.test.tsx","./src/__test__/reconciler.test.tsx","./src/__test__/stack.test.tsx","./src/__test__/table.test.tsx","../../node_modules/@types/node/assert.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/events/index.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/wasi.d.ts","../../node_modules/@types/node/worker_threads.d.ts","../../node_modules/@types/node/zlib.d.ts","../../node_modules/@types/node/globals.global.d.ts","../../node_modules/@types/node/index.d.ts","../../node_modules/@jest/expect-utils/build/index.d.ts","../../node_modules/jest-matcher-utils/node_modules/chalk/index.d.ts","../../node_modules/pretty-format/node_modules/@sinclair/typebox/typebox.d.ts","../../node_modules/pretty-format/node_modules/@jest/schemas/build/index.d.ts","../../node_modules/pretty-format/build/index.d.ts","../../node_modules/jest-diff/build/index.d.ts","../../node_modules/jest-matcher-utils/build/index.d.ts","../../node_modules/expect/build/index.d.ts","../../node_modules/@types/jest/index.d.ts","../../node_modules/jest-matcher-specific-error/types/index.d.ts"],"fileInfos":[{"version":"8730f4bf322026ff5229336391a18bcaa1f94d4f82416c8b2f3954e2ccaae2ba","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","impliedFormat":1},{"version":"7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","impliedFormat":1},{"version":"8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","impliedFormat":1},{"version":"5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","impliedFormat":1},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cc8c5a3bac513368b0157f3d8b31cfdcfe78b56d3724f30f80ed9715e404af8","affectsGlobalScope":true,"impliedFormat":1},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true,"impliedFormat":1},{"version":"5f406584aef28a331c36523df688ca3650288d14f39c5d2e555c95f0d2ff8f6f","affectsGlobalScope":true,"impliedFormat":1},{"version":"22f230e544b35349cfb3bd9110b6ef37b41c6d6c43c3314a31bd0d9652fcec72","affectsGlobalScope":true,"impliedFormat":1},{"version":"7ea0b55f6b315cf9ac2ad622b0a7813315bb6e97bf4bb3fbf8f8affbca7dc695","affectsGlobalScope":true,"impliedFormat":1},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb26de841c52236d8222f87e9e6a235332e0788af8c87a71e9e210314300410a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true,"impliedFormat":1},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true,"impliedFormat":1},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true,"impliedFormat":1},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true,"impliedFormat":1},{"version":"81cac4cbc92c0c839c70f8ffb94eb61e2d32dc1c3cf6d95844ca099463cf37ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true,"impliedFormat":1},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true,"impliedFormat":1},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true,"impliedFormat":1},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true,"impliedFormat":1},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true,"impliedFormat":1},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true,"impliedFormat":1},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true,"impliedFormat":1},{"version":"2768ef564cfc0689a1b76106c421a2909bdff0acbe87da010785adab80efdd5c","affectsGlobalScope":true,"impliedFormat":1},{"version":"52d1bb7ab7a3306fd0375c8bff560feed26ed676a5b0457fa8027b563aecb9a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"7a1971efcba559ea9002ada4c4e3c925004fb67a755300d53b5edf9399354900","impliedFormat":1},{"version":"49a253ec027e56c55c7450a0c331cfe96212b3d1cc215b1710ba94a083404cf3","affectsGlobalScope":true,"impliedFormat":1},{"version":"381899b8d1d4c1be716f18cb5242ba39f66f4b1e31d45af62a32a99f8edcb39d","impliedFormat":1},{"version":"f7b46d22a307739c145e5fddf537818038fdfffd580d79ed717f4d4d37249380","impliedFormat":1},{"version":"f5a8b384f182b3851cec3596ccc96cb7464f8d3469f48c74bf2befb782a19de5","impliedFormat":1},{"version":"6a1c1a2911268b0ac9e6b0248ecbcbab53b197431965684491f153ef57e02726","affectsGlobalScope":true,"impliedFormat":1},{"version":"af7fd2870746deed40e130fc0a3966de74e8f52a97ec114d0fbb35876ab05ca9","impliedFormat":1},{"version":"15eeb27e455aa30b5d11d5ae818c7d706bd0944fb8075466c76e920510a2f7d4","signature":"1e31f2b46a6970d6a27709f2103c84c108dbc164cf90745a896efe580055f450","impliedFormat":1},{"version":"11c057ce7fd5b975ce63dcb6a5b2af636c406e9d1c0bc886d1b8555d6e20168b","signature":"8acc4d23ecd6110cce5a61d808e417708822d3d370f79113ea876d21322dfff9","impliedFormat":1},{"version":"a10625a3e86d04086d4839b1a70216daf809c59deb98ffcecebdb3638d9bde3d","signature":"22b8a50ee93e11aab253fbe0358311257994093cb27b17db5d370f447120d9e0","impliedFormat":1},{"version":"066ace8e087d2485b36e840f175e9281114f328fa8534747743e40acfb13cf16","signature":"5a6b91135ebfbf8bd41263819d4aebcdd1cf613721e9e054ba6c4a9fc6c0c1bf","impliedFormat":1},{"version":"98ac2df42f7dde2fba315caf973b6db95844051ec5ad3ce7f1dd17e7e1c81688","signature":"96749f501d240ad678a17e09ef380c6c80c419517a5bd5665eed78fe05317cd9","impliedFormat":1},{"version":"b97953a9f58eba4323f8894187ff5df1204eae4dab37965324414622edcdbe92","signature":"7741db2a3c047ea9d5f0476cb5856500a1527fa0ee8480afaf6cd326fe9ea488","impliedFormat":1},{"version":"f41772a47b572428702219f11038b5dd74a4263a35d2c3e81979d7f6e4c96927","signature":"ac1e0c3d4584e5c51dd74c2282a93b8f6566a688c1d72a7b674daea6e01b9401","impliedFormat":1},{"version":"80ff43658ad088a0c700dc3396ce0dc4b9178dbd9b35a4faa1497bb5047e3959","signature":"574469bffa60b8434db0b862f63091d72938c942c60e9190b1fb7dace3761309","impliedFormat":1},{"version":"c7422e5fa00f90d68ada7be6aaae5de28f6ac19ce770c7ea31dd5b494ad18866","affectsGlobalScope":true,"impliedFormat":1},{"version":"cc1d6096924754ce5e1eb7e4290e24e63abf8feab2cad79f6d953cc6a3a158e8","impliedFormat":1},{"version":"79b9d7f669b76f2bc9227a3bd5fa2c47a5d6440c7fced8370ece9a21ae748f64","impliedFormat":1},{"version":"f30f86562bcdbd3338d40837bcf14a28f975b5c2474a9422a3346d08624b245f","impliedFormat":1},{"version":"a82d61dcd7cac9bd35fd54bac823b7775f7020595eb0f5145caceb7dbffd53e4","impliedFormat":1},{"version":"c289907075e039b225f971d9a132c2f8f984ab3e3243aececcecd685e2d66d59","signature":"df87b3122190194f135a4d86b82a206b81a3fd3842f41293caf144832329cac2","impliedFormat":1},{"version":"3371a9923b5034cf18a0dcae117d06b6642f030b7914036ed915ef140f6e1595","signature":"d90382fa6306a07d89aa25d7606e169d4184ca3bc23d2860d4b40f4cdf9e6cac","impliedFormat":1},{"version":"9b5e4d455cfc3733ac5456e51abfc68602ccfca9aa1530641c1ad6677e644c4c","signature":"80bdfa71d7235e972120e244d7ce8e08196b380885b0740094907db03580de74","impliedFormat":1},{"version":"3f9cc0819f3d11ce37997d005e0e11b036dd4417daa85257ab44d983720ff8b3","signature":"cead4c245894c4ba504e5eb82cd20a250ba49dba29fac3fffaee97225eb1d523","impliedFormat":1},{"version":"5769a61d6e37045885ec95ba15dd96d3a4c8e121b8acfd60edca4e42ec9f3c68","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":1},{"version":"fa44d28b763f0a045b818f267bfaf26bbe256b0b5e3f5136fd8af5f2df0822e1","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":1},{"version":"a43170dfd63dded51a24f4aa388309a50ac3d01bc57e62cd3f4f65a7928476d8","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":1},{"version":"b5405f5533c810903c10f21992dfa2690ed226a4c41d618b552102619f6e4f2a","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":1},{"version":"4c2c4f53e8eedd970f8afa369d7371544fb6231bf95e659f8602e09abe74d5a5","impliedFormat":1},{"version":"cb5a780979155e80a2184eb987cc411a95c9a1686019ade06918c312a0b7c9b2","affectsGlobalScope":true,"impliedFormat":1},{"version":"a4aebbd743a1c46554d26ba56efe18506f026f17d23f830b37231324c88b8faa","impliedFormat":1},{"version":"3143a5add0467b83150961ecd33773b561a1207aec727002aa1d70333068eb1b","impliedFormat":1},{"version":"400db42c3a46984118bff14260d60cec580057dc1ab4c2d7310beb643e4f5935","impliedFormat":1},{"version":"f87191b7fafe7a0edad375710d99f900e49cef560b66bf309cf3f8e1b7177126","impliedFormat":1},{"version":"586af7d2abe2f9d59c5e757c370087d6c6baea81b033250f43b8df808d6dfb33","impliedFormat":1},{"version":"1a048ff164b8d9609f5de3139d4e37f6e8a82af82087ac414b9208f52ef8aac7","affectsGlobalScope":true,"impliedFormat":1},{"version":"3111079f3cb5f2b9c812ca3f46161562bce5bfb355e915f46ed46c41714dc1c3","impliedFormat":1},{"version":"e7bee4a6d9bb78afa390b25e0ce97a2f94787a1eb17f0a16e732dcbebba3f3ee","impliedFormat":1},{"version":"b32b6b16cb0bda68199582ad6f22242d07ee75fac9b1f28a98cd838afc5eea45","impliedFormat":1},{"version":"4441ee4119824bfaebc49308559edd7545978f9cb41a40f115074e1031dde75f","impliedFormat":1},{"version":"60693a88462d0e97900123b5bf7c73e146ce0cc94da46a61fe6775b430d2ff05","affectsGlobalScope":true,"impliedFormat":1},{"version":"588c69eda58b9202676ec7ca11a72c3762819b46a0ed72462c769846153c447c","affectsGlobalScope":true,"impliedFormat":1},{"version":"4d44a8614b2e45ae7eeb785584beb9def7b22cc7882a6a68f948f5c3dff5f574","impliedFormat":1},{"version":"92f019c55b21c939616f6a48f678e714ac7b109444cbbf23ad69310ce66ecbdc","impliedFormat":1},{"version":"bba259efdf9ab95e0c7d3cc8e99250f56bb6b31d6129efdf733ca4eb1d01feea","impliedFormat":1},{"version":"499b7544062cf44fab253daeaea8ba28877d9e7ff4149246b1f0154d1c9ed535","impliedFormat":1},{"version":"139fd681eff7771a38d0c025d13c7a11c5474f6aab61e01c41511d71496df173","impliedFormat":1},{"version":"f70f62f5f87ff8900090069554f79d9757f8e385322d0e26268463e27c098204","impliedFormat":1},{"version":"44e42ed6ec9c4451ebe89524e80ac8564e9dd0988c56e6c58f393c810730595d","impliedFormat":1},{"version":"a504c109b872b0e653549bd258eb06584c148c98d79406c7516995865a6d5089","impliedFormat":1},{"version":"155865f5f76db0996cd5e20cc5760613ea170ee5ad594c1f3d76fcaa05382161","impliedFormat":1},{"version":"e92852d673c836fc64e10c38640abcd67c463456e5df55723ac699b8e6ab3a8a","impliedFormat":1},{"version":"4455c78d226d061b1203c7614c6c6eb5f4f9db5f00d44ff47d0112de8766fbc4","impliedFormat":1},{"version":"ec369bb9d97c4dc09dd2a4093b7ca3ba69ad284831fccac8a1977785e9e38ce5","affectsGlobalScope":true,"impliedFormat":1},{"version":"4465a636f5f6e9665a90e30691862c9e0a3ac2edc0e66296704f10865e924f2a","impliedFormat":1},{"version":"9af781f03d44f5635ed7844be0ce370d9d595d4b4ec67cad88f0fac03255257e","impliedFormat":1},{"version":"f9fd4c3ef6de27fa0e256f4e75b61711c4be05a3399f7714621d3edc832e36b0","impliedFormat":1},{"version":"e49290b7a927995c0d7e6b2b9c8296284b68a9036d9966531de65185269258d7","impliedFormat":1},{"version":"aa95cc73ea5315e4f6fc8c6db43d49e3b7de3780cae20a4f1319032809013038","impliedFormat":1},{"version":"874ca809b79276460011480a2829f4c8d4db29416dd411f71efbf8f497f0ac09","impliedFormat":1},{"version":"6c903bceaf3f3bc04f2d4c7dcd89ce9fb148b3ba0a5f5408d8f6de2b7eecc7ea","impliedFormat":1},{"version":"504d049d9e550a65466b73ca39da6469ab41786074ea1d16d37c8853f9f6ab2e","impliedFormat":1},{"version":"23a28f834a078986bbf58f4e3705956983ff81c3c2493f3db3e5f0e8a9507779","impliedFormat":1},{"version":"4febdf7f3ec92706c58e0b4e8159cd6de718284ef384260b07c9641c13fc70ce","impliedFormat":1},{"version":"bf241ed073916ec9e21a3c138936edd444b6787d874844c0d05fc00a8f109d19","affectsGlobalScope":true,"impliedFormat":1},{"version":"7335933d9f30dcfd2c4b6080a8b78e81912a7fcefb1dafccb67ca4cb4b3ac23d","impliedFormat":1},{"version":"a6bfe9de9adef749010c118104b071d14943802ff0614732b47ce4f1c3e383cd","impliedFormat":1},{"version":"4c3d0e10396646db4a1e917fb852077ee77ae62e512913bef9cccc2bb0f8bd0e","impliedFormat":1},{"version":"3b220849d58140dcc6718f5b52dcd29fdb79c45bc28f561cbd29eb1cac6cce13","impliedFormat":1},{"version":"0ee22fce41f7417a24c808d266e91b850629113c104713a35854393d55994beb","impliedFormat":1},{"version":"22d1b1d965baba05766613e2e6c753bb005d4386c448cafd72c309ba689e8c24","impliedFormat":1},{"version":"2708349d5a11a5c2e5f3a0765259ebe7ee00cdcc8161cb9990cb4910328442a1","affectsGlobalScope":true,"impliedFormat":1},{"version":"c6c0bd221bb1e94768e94218f8298e47633495529d60cae7d8da9374247a1cf5","impliedFormat":1},{"version":"cdcc132f207d097d7d3aa75615ab9a2e71d6a478162dde8b67f88ea19f3e54de","impliedFormat":1},{"version":"0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","impliedFormat":1},{"version":"c085e9aa62d1ae1375794c1fb927a445fa105fed891a7e24edbb1c3300f7384a","impliedFormat":1},{"version":"f315e1e65a1f80992f0509e84e4ae2df15ecd9ef73df975f7c98813b71e4c8da","impliedFormat":1},{"version":"5b9586e9b0b6322e5bfbd2c29bd3b8e21ab9d871f82346cb71020e3d84bae73e","impliedFormat":1},{"version":"3e70a7e67c2cb16f8cd49097360c0309fe9d1e3210ff9222e9dac1f8df9d4fb6","impliedFormat":1},{"version":"ab68d2a3e3e8767c3fba8f80de099a1cfc18c0de79e42cb02ae66e22dfe14a66","impliedFormat":1},{"version":"d96cc6598148bf1a98fb2e8dcf01c63a4b3558bdaec6ef35e087fd0562eb40ec","impliedFormat":1},{"version":"1fe4f59d471c69fd533049505081f7e5d6d56486416b12aafb22ba9616034ab7","affectsGlobalScope":true,"impliedFormat":1},{"version":"50adbf55a460fd1048260f11c9b0ec28ee950e6aeaee179ddc09d14be6dedb4e","affectsGlobalScope":true,"impliedFormat":1}],"options":{"composite":true,"declaration":true,"declarationMap":true,"esModuleInterop":true,"importHelpers":true,"jsx":4,"module":1,"noUnusedLocals":true,"outDir":"./out","removeComments":true,"rootDir":"./src","skipLibCheck":true,"strict":true,"target":4,"useUnknownInCatchVariables":false},"fileIdsList":[[106,109],[57],[59],[60,66],[62,70,71,78,87],[62,63,70,78],[64,94],[65,66,71,79],[66,87],[67,68,70,78],[68],[69,70],[70],[70,71,72,87,93],[71,72],[70,73,78,87,93],[70,71,73,74,78,87,90,93],[73,75,87,90,93],[57,58,59,60,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100],[70,76],[77,93],[68,70,78,87],[79],[80],[59,81],[82,92],[83],[84],[70,85],[85,86,94,96],[70,87],[88],[89],[78,87,90],[91],[78,92],[73,84,93],[94],[87,95],[96],[97],[70,72,87,93,96,98],[87,99],[34],[30,31,32,33],[47],[102,108],[106],[110],[103,107],[105],[104],[29,34,35,43,51,52],[29,34,35,43,49,51,52],[29,34,35,49],[29,35,42],[29,35,43,49],[29,34,35,45,46,48],[29,34,35,36,37],[29,35,36],[29,35],[29,35,36,37,38,39,40,41],[42],[43,49],[34,45],[34,36,37],[36],[36,37,38,39,40,41]],"referencedMap":[[110,1],[57,2],[59,3],[60,4],[62,5],[63,6],[64,7],[65,8],[66,9],[67,10],[68,11],[69,12],[70,13],[71,14],[72,15],[73,16],[74,17],[75,18],[101,19],[76,20],[77,21],[78,22],[79,23],[80,24],[81,25],[82,26],[83,27],[84,28],[85,29],[86,30],[87,31],[88,32],[89,33],[90,34],[91,35],[92,36],[93,37],[94,38],[95,39],[96,40],[97,41],[98,42],[99,43],[45,44],[34,45],[35,44],[48,46],[109,47],[107,48],[111,49],[108,50],[106,51],[105,52],[53,53],[54,54],[51,55],[55,53],[56,53],[52,56],[43,56],[50,57],[49,58],[38,59],[40,60],[41,60],[36,61],[37,61],[42,62],[39,60]],"exportedModulesMap":[[110,1],[57,2],[59,3],[60,4],[62,5],[63,6],[64,7],[65,8],[66,9],[67,10],[68,11],[69,12],[70,13],[71,14],[72,15],[73,16],[74,17],[75,18],[101,19],[76,20],[77,21],[78,22],[79,23],[80,24],[81,25],[82,26],[83,27],[84,28],[85,29],[86,30],[87,31],[88,32],[89,33],[90,34],[91,35],[92,36],[93,37],[94,38],[95,39],[96,40],[97,41],[98,42],[99,43],[45,44],[34,45],[35,44],[48,46],[109,47],[107,48],[111,49],[108,50],[106,51],[105,52],[51,44],[52,63],[43,63],[50,64],[49,65],[38,66],[40,67],[41,67],[42,68],[39,67]],"semanticDiagnosticsPerFile":[102,61,110,57,59,60,62,63,64,65,66,67,68,69,70,71,72,58,100,73,74,75,101,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,32,46,45,30,34,35,33,48,47,31,109,107,111,108,103,106,105,104,29,7,6,2,8,9,10,11,12,13,14,15,3,4,19,16,17,18,20,21,22,5,23,24,25,26,27,1,28,53,54,51,55,56,52,43,44,50,49,38,40,41,36,37,42,39],"latestChangedDtsFile":"./out/__test__/table.test.d.ts"},"version":"4.9.5"}
|
|
1
|
+
{"program":{"fileNames":["../../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.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.es2020.intl.d.ts","../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../node_modules/tslib/tslib.d.ts","../../node_modules/@types/react/global.d.ts","../../node_modules/csstype/index.d.ts","../../node_modules/@types/prop-types/index.d.ts","../../node_modules/@types/scheduler/tracing.d.ts","../../node_modules/@types/react/index.d.ts","../../node_modules/@types/react/jsx-runtime.d.ts","./src/types/forge.ts","./src/types/icons.ts","./src/types/components.ts","./src/types/legacy-effect.ts","./src/types/effect.ts","./src/types/extension.ts","./src/types/index.ts","./src/components.tsx","./src/globals.d.ts","../../node_modules/@types/react-reconciler/index.d.ts","../../node_modules/@types/react-reconciler/constants.d.ts","../../node_modules/@types/uuid/interfaces.d.ts","../../node_modules/@types/uuid/index.d.ts","./src/reconciler.ts","./src/index.ts","./src/__test__/testUtils.tsx","./src/__test__/hostConfig.test.tsx","./src/__test__/reconcilerTestRenderer.ts","./src/__test__/inline.test.tsx","../../node_modules/@types/lodash/common/common.d.ts","../../node_modules/@types/lodash/common/array.d.ts","../../node_modules/@types/lodash/common/collection.d.ts","../../node_modules/@types/lodash/common/date.d.ts","../../node_modules/@types/lodash/common/function.d.ts","../../node_modules/@types/lodash/common/lang.d.ts","../../node_modules/@types/lodash/common/math.d.ts","../../node_modules/@types/lodash/common/number.d.ts","../../node_modules/@types/lodash/common/object.d.ts","../../node_modules/@types/lodash/common/seq.d.ts","../../node_modules/@types/lodash/common/string.d.ts","../../node_modules/@types/lodash/common/util.d.ts","../../node_modules/@types/lodash/index.d.ts","../../node_modules/@types/lodash/get.d.ts","./src/__test__/reconciler.test.tsx","./src/__test__/stack.test.tsx","./src/__test__/table.test.tsx","../../node_modules/@types/node/assert.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/events/index.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/wasi.d.ts","../../node_modules/@types/node/worker_threads.d.ts","../../node_modules/@types/node/zlib.d.ts","../../node_modules/@types/node/globals.global.d.ts","../../node_modules/@types/node/index.d.ts","../../node_modules/@jest/expect-utils/build/index.d.ts","../../node_modules/chalk/index.d.ts","../../node_modules/pretty-format/node_modules/@sinclair/typebox/typebox.d.ts","../../node_modules/pretty-format/node_modules/@jest/schemas/build/index.d.ts","../../node_modules/pretty-format/build/index.d.ts","../../node_modules/jest-diff/build/index.d.ts","../../node_modules/jest-matcher-utils/build/index.d.ts","../../node_modules/expect/build/index.d.ts","../../node_modules/@types/jest/index.d.ts","../../node_modules/jest-matcher-specific-error/types/index.d.ts"],"fileInfos":[{"version":"8730f4bf322026ff5229336391a18bcaa1f94d4f82416c8b2f3954e2ccaae2ba","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","impliedFormat":1},{"version":"7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","impliedFormat":1},{"version":"8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","impliedFormat":1},{"version":"5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","impliedFormat":1},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cc8c5a3bac513368b0157f3d8b31cfdcfe78b56d3724f30f80ed9715e404af8","affectsGlobalScope":true,"impliedFormat":1},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true,"impliedFormat":1},{"version":"5f406584aef28a331c36523df688ca3650288d14f39c5d2e555c95f0d2ff8f6f","affectsGlobalScope":true,"impliedFormat":1},{"version":"22f230e544b35349cfb3bd9110b6ef37b41c6d6c43c3314a31bd0d9652fcec72","affectsGlobalScope":true,"impliedFormat":1},{"version":"7ea0b55f6b315cf9ac2ad622b0a7813315bb6e97bf4bb3fbf8f8affbca7dc695","affectsGlobalScope":true,"impliedFormat":1},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb26de841c52236d8222f87e9e6a235332e0788af8c87a71e9e210314300410a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true,"impliedFormat":1},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true,"impliedFormat":1},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true,"impliedFormat":1},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true,"impliedFormat":1},{"version":"81cac4cbc92c0c839c70f8ffb94eb61e2d32dc1c3cf6d95844ca099463cf37ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true,"impliedFormat":1},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true,"impliedFormat":1},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true,"impliedFormat":1},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true,"impliedFormat":1},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true,"impliedFormat":1},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true,"impliedFormat":1},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true,"impliedFormat":1},{"version":"2768ef564cfc0689a1b76106c421a2909bdff0acbe87da010785adab80efdd5c","affectsGlobalScope":true,"impliedFormat":1},{"version":"52d1bb7ab7a3306fd0375c8bff560feed26ed676a5b0457fa8027b563aecb9a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"7a1971efcba559ea9002ada4c4e3c925004fb67a755300d53b5edf9399354900","impliedFormat":1},{"version":"49a253ec027e56c55c7450a0c331cfe96212b3d1cc215b1710ba94a083404cf3","affectsGlobalScope":true,"impliedFormat":1},{"version":"381899b8d1d4c1be716f18cb5242ba39f66f4b1e31d45af62a32a99f8edcb39d","impliedFormat":1},{"version":"f7b46d22a307739c145e5fddf537818038fdfffd580d79ed717f4d4d37249380","impliedFormat":1},{"version":"f5a8b384f182b3851cec3596ccc96cb7464f8d3469f48c74bf2befb782a19de5","impliedFormat":1},{"version":"6a1c1a2911268b0ac9e6b0248ecbcbab53b197431965684491f153ef57e02726","affectsGlobalScope":true,"impliedFormat":1},{"version":"af7fd2870746deed40e130fc0a3966de74e8f52a97ec114d0fbb35876ab05ca9","impliedFormat":1},{"version":"15eeb27e455aa30b5d11d5ae818c7d706bd0944fb8075466c76e920510a2f7d4","signature":"1e31f2b46a6970d6a27709f2103c84c108dbc164cf90745a896efe580055f450","impliedFormat":1},{"version":"11c057ce7fd5b975ce63dcb6a5b2af636c406e9d1c0bc886d1b8555d6e20168b","signature":"8acc4d23ecd6110cce5a61d808e417708822d3d370f79113ea876d21322dfff9","impliedFormat":1},{"version":"a10625a3e86d04086d4839b1a70216daf809c59deb98ffcecebdb3638d9bde3d","signature":"22b8a50ee93e11aab253fbe0358311257994093cb27b17db5d370f447120d9e0","impliedFormat":1},{"version":"066ace8e087d2485b36e840f175e9281114f328fa8534747743e40acfb13cf16","signature":"5a6b91135ebfbf8bd41263819d4aebcdd1cf613721e9e054ba6c4a9fc6c0c1bf","impliedFormat":1},{"version":"98ac2df42f7dde2fba315caf973b6db95844051ec5ad3ce7f1dd17e7e1c81688","signature":"96749f501d240ad678a17e09ef380c6c80c419517a5bd5665eed78fe05317cd9","impliedFormat":1},{"version":"b97953a9f58eba4323f8894187ff5df1204eae4dab37965324414622edcdbe92","signature":"7741db2a3c047ea9d5f0476cb5856500a1527fa0ee8480afaf6cd326fe9ea488","impliedFormat":1},{"version":"f41772a47b572428702219f11038b5dd74a4263a35d2c3e81979d7f6e4c96927","signature":"ac1e0c3d4584e5c51dd74c2282a93b8f6566a688c1d72a7b674daea6e01b9401","impliedFormat":1},{"version":"80ff43658ad088a0c700dc3396ce0dc4b9178dbd9b35a4faa1497bb5047e3959","signature":"574469bffa60b8434db0b862f63091d72938c942c60e9190b1fb7dace3761309","impliedFormat":1},{"version":"c7422e5fa00f90d68ada7be6aaae5de28f6ac19ce770c7ea31dd5b494ad18866","affectsGlobalScope":true,"impliedFormat":1},{"version":"cc1d6096924754ce5e1eb7e4290e24e63abf8feab2cad79f6d953cc6a3a158e8","impliedFormat":1},{"version":"79b9d7f669b76f2bc9227a3bd5fa2c47a5d6440c7fced8370ece9a21ae748f64","impliedFormat":1},{"version":"f30f86562bcdbd3338d40837bcf14a28f975b5c2474a9422a3346d08624b245f","impliedFormat":1},{"version":"a82d61dcd7cac9bd35fd54bac823b7775f7020595eb0f5145caceb7dbffd53e4","impliedFormat":1},{"version":"887a03ece42f5c89fc37a825c6051306550c8d74ea773ac7e03f3e2f4cdfc2b1","signature":"f21582ad1e0f709d2976cb688b1c161f2816ccf8e0f3104dd4eb1140c0e238f3","impliedFormat":1},{"version":"3371a9923b5034cf18a0dcae117d06b6642f030b7914036ed915ef140f6e1595","signature":"d90382fa6306a07d89aa25d7606e169d4184ca3bc23d2860d4b40f4cdf9e6cac","impliedFormat":1},{"version":"986489b7fb01085aad319c9b03c4b140a85c64d275183cb8a4133d13ab6ed1cc","signature":"3f33aa7ebe9f7a3ec8bf8bc21edd336786e481c3227559b4749c4bffd70814ce","impliedFormat":1},{"version":"be3bc7c8484643b2cec379872fa7d1eb67c65281805667017ad7416783a3d939","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":1},{"version":"9b5e4d455cfc3733ac5456e51abfc68602ccfca9aa1530641c1ad6677e644c4c","signature":"80bdfa71d7235e972120e244d7ce8e08196b380885b0740094907db03580de74","impliedFormat":1},{"version":"c9818d4a154fff2a8881dba7f00d98c2bc96694a3529645258db5714084b85fc","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":1},{"version":"675e702f2032766a91eeadee64f51014c64688525da99dccd8178f0c599f13a8","impliedFormat":1},{"version":"458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22","impliedFormat":1},{"version":"da2b6356b84a40111aaecb18304ea4e4fcb43d70efb1c13ca7d7a906445ee0d3","impliedFormat":1},{"version":"187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","impliedFormat":1},{"version":"febf0b2de54781102b00f61653b21377390a048fbf5262718c91860d11ff34a6","impliedFormat":1},{"version":"98f9d826db9cd99d27a01a59ee5f22863df00ccf1aaf43e1d7db80ebf716f7c3","impliedFormat":1},{"version":"0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","impliedFormat":1},{"version":"00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","impliedFormat":1},{"version":"dcd91d3b697cb650b95db5471189b99815af5db2a1cd28760f91e0b12ede8ed5","impliedFormat":1},{"version":"3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","impliedFormat":1},{"version":"b03afe4bec768ae333582915146f48b161e567a81b5ebc31c4d78af089770ac9","impliedFormat":1},{"version":"df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9","impliedFormat":1},{"version":"30abc554c7ad13063a02ddd06757929b34357aea1f6fcf4ca39114cb0fc19384","impliedFormat":1},{"version":"8c7bb1d03e5607e5ad3d27f48e53dbe70b61372ea73d75000c9ead7ad2ac0fbd","impliedFormat":1},{"version":"dab4645c48d890ee55d839e3eeed5c6eb54d2dc07e662d0ad98444aee750f653","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":1},{"version":"a6111067706e96158af29b652ecfd01a3b11de75fcfc50e6737e3e85094ff9ec","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":1},{"version":"7ffa16ec60c057d9cf3d39008c01a089cd2ccd3a0d62e12905f2ea7d8552e490","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":1},{"version":"4c2c4f53e8eedd970f8afa369d7371544fb6231bf95e659f8602e09abe74d5a5","impliedFormat":1},{"version":"cb5a780979155e80a2184eb987cc411a95c9a1686019ade06918c312a0b7c9b2","affectsGlobalScope":true,"impliedFormat":1},{"version":"a4aebbd743a1c46554d26ba56efe18506f026f17d23f830b37231324c88b8faa","impliedFormat":1},{"version":"3143a5add0467b83150961ecd33773b561a1207aec727002aa1d70333068eb1b","impliedFormat":1},{"version":"400db42c3a46984118bff14260d60cec580057dc1ab4c2d7310beb643e4f5935","impliedFormat":1},{"version":"f87191b7fafe7a0edad375710d99f900e49cef560b66bf309cf3f8e1b7177126","impliedFormat":1},{"version":"586af7d2abe2f9d59c5e757c370087d6c6baea81b033250f43b8df808d6dfb33","impliedFormat":1},{"version":"1a048ff164b8d9609f5de3139d4e37f6e8a82af82087ac414b9208f52ef8aac7","affectsGlobalScope":true,"impliedFormat":1},{"version":"3111079f3cb5f2b9c812ca3f46161562bce5bfb355e915f46ed46c41714dc1c3","impliedFormat":1},{"version":"e7bee4a6d9bb78afa390b25e0ce97a2f94787a1eb17f0a16e732dcbebba3f3ee","impliedFormat":1},{"version":"b32b6b16cb0bda68199582ad6f22242d07ee75fac9b1f28a98cd838afc5eea45","impliedFormat":1},{"version":"4441ee4119824bfaebc49308559edd7545978f9cb41a40f115074e1031dde75f","impliedFormat":1},{"version":"60693a88462d0e97900123b5bf7c73e146ce0cc94da46a61fe6775b430d2ff05","affectsGlobalScope":true,"impliedFormat":1},{"version":"588c69eda58b9202676ec7ca11a72c3762819b46a0ed72462c769846153c447c","affectsGlobalScope":true,"impliedFormat":1},{"version":"4d44a8614b2e45ae7eeb785584beb9def7b22cc7882a6a68f948f5c3dff5f574","impliedFormat":1},{"version":"92f019c55b21c939616f6a48f678e714ac7b109444cbbf23ad69310ce66ecbdc","impliedFormat":1},{"version":"bba259efdf9ab95e0c7d3cc8e99250f56bb6b31d6129efdf733ca4eb1d01feea","impliedFormat":1},{"version":"499b7544062cf44fab253daeaea8ba28877d9e7ff4149246b1f0154d1c9ed535","impliedFormat":1},{"version":"139fd681eff7771a38d0c025d13c7a11c5474f6aab61e01c41511d71496df173","impliedFormat":1},{"version":"f70f62f5f87ff8900090069554f79d9757f8e385322d0e26268463e27c098204","impliedFormat":1},{"version":"44e42ed6ec9c4451ebe89524e80ac8564e9dd0988c56e6c58f393c810730595d","impliedFormat":1},{"version":"a504c109b872b0e653549bd258eb06584c148c98d79406c7516995865a6d5089","impliedFormat":1},{"version":"155865f5f76db0996cd5e20cc5760613ea170ee5ad594c1f3d76fcaa05382161","impliedFormat":1},{"version":"e92852d673c836fc64e10c38640abcd67c463456e5df55723ac699b8e6ab3a8a","impliedFormat":1},{"version":"4455c78d226d061b1203c7614c6c6eb5f4f9db5f00d44ff47d0112de8766fbc4","impliedFormat":1},{"version":"ec369bb9d97c4dc09dd2a4093b7ca3ba69ad284831fccac8a1977785e9e38ce5","affectsGlobalScope":true,"impliedFormat":1},{"version":"4465a636f5f6e9665a90e30691862c9e0a3ac2edc0e66296704f10865e924f2a","impliedFormat":1},{"version":"9af781f03d44f5635ed7844be0ce370d9d595d4b4ec67cad88f0fac03255257e","impliedFormat":1},{"version":"f9fd4c3ef6de27fa0e256f4e75b61711c4be05a3399f7714621d3edc832e36b0","impliedFormat":1},{"version":"e49290b7a927995c0d7e6b2b9c8296284b68a9036d9966531de65185269258d7","impliedFormat":1},{"version":"aa95cc73ea5315e4f6fc8c6db43d49e3b7de3780cae20a4f1319032809013038","impliedFormat":1},{"version":"874ca809b79276460011480a2829f4c8d4db29416dd411f71efbf8f497f0ac09","impliedFormat":1},{"version":"6c903bceaf3f3bc04f2d4c7dcd89ce9fb148b3ba0a5f5408d8f6de2b7eecc7ea","impliedFormat":1},{"version":"504d049d9e550a65466b73ca39da6469ab41786074ea1d16d37c8853f9f6ab2e","impliedFormat":1},{"version":"23a28f834a078986bbf58f4e3705956983ff81c3c2493f3db3e5f0e8a9507779","impliedFormat":1},{"version":"4febdf7f3ec92706c58e0b4e8159cd6de718284ef384260b07c9641c13fc70ce","impliedFormat":1},{"version":"bf241ed073916ec9e21a3c138936edd444b6787d874844c0d05fc00a8f109d19","affectsGlobalScope":true,"impliedFormat":1},{"version":"c0f55a0ab349053c95345f7e5d4583d69161f25a5d26b6850acffb9240dcf943","impliedFormat":1},{"version":"a6bfe9de9adef749010c118104b071d14943802ff0614732b47ce4f1c3e383cd","impliedFormat":1},{"version":"4c3d0e10396646db4a1e917fb852077ee77ae62e512913bef9cccc2bb0f8bd0e","impliedFormat":1},{"version":"3b220849d58140dcc6718f5b52dcd29fdb79c45bc28f561cbd29eb1cac6cce13","impliedFormat":1},{"version":"0ee22fce41f7417a24c808d266e91b850629113c104713a35854393d55994beb","impliedFormat":1},{"version":"22d1b1d965baba05766613e2e6c753bb005d4386c448cafd72c309ba689e8c24","impliedFormat":1},{"version":"2708349d5a11a5c2e5f3a0765259ebe7ee00cdcc8161cb9990cb4910328442a1","affectsGlobalScope":true,"impliedFormat":1},{"version":"c6c0bd221bb1e94768e94218f8298e47633495529d60cae7d8da9374247a1cf5","impliedFormat":1},{"version":"cdcc132f207d097d7d3aa75615ab9a2e71d6a478162dde8b67f88ea19f3e54de","impliedFormat":1},{"version":"0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","impliedFormat":1},{"version":"c085e9aa62d1ae1375794c1fb927a445fa105fed891a7e24edbb1c3300f7384a","impliedFormat":1},{"version":"f315e1e65a1f80992f0509e84e4ae2df15ecd9ef73df975f7c98813b71e4c8da","impliedFormat":1},{"version":"5b9586e9b0b6322e5bfbd2c29bd3b8e21ab9d871f82346cb71020e3d84bae73e","impliedFormat":1},{"version":"3e70a7e67c2cb16f8cd49097360c0309fe9d1e3210ff9222e9dac1f8df9d4fb6","impliedFormat":1},{"version":"ab68d2a3e3e8767c3fba8f80de099a1cfc18c0de79e42cb02ae66e22dfe14a66","impliedFormat":1},{"version":"d96cc6598148bf1a98fb2e8dcf01c63a4b3558bdaec6ef35e087fd0562eb40ec","impliedFormat":1},{"version":"1fe4f59d471c69fd533049505081f7e5d6d56486416b12aafb22ba9616034ab7","affectsGlobalScope":true,"impliedFormat":1},{"version":"50adbf55a460fd1048260f11c9b0ec28ee950e6aeaee179ddc09d14be6dedb4e","affectsGlobalScope":true,"impliedFormat":1}],"options":{"composite":true,"declaration":true,"declarationMap":true,"esModuleInterop":true,"importHelpers":true,"jsx":4,"module":1,"noUnusedLocals":true,"outDir":"./out","removeComments":true,"rootDir":"./src","skipLibCheck":true,"strict":true,"target":4,"useUnknownInCatchVariables":false},"fileIdsList":[[121,124],[55,57,58,59,60,61,62,63,64,65,66,67],[55,56,58,59,60,61,62,63,64,65,66,67],[56,57,58,59,60,61,62,63,64,65,66,67],[55,56,57,59,60,61,62,63,64,65,66,67],[55,56,57,58,60,61,62,63,64,65,66,67],[55,56,57,58,59,61,62,63,64,65,66,67],[55,56,57,58,59,60,62,63,64,65,66,67],[55,56,57,58,59,60,61,63,64,65,66,67],[55,56,57,58,59,60,61,62,64,65,66,67],[55,56,57,58,59,60,61,62,63,65,66,67],[55,56,57,58,59,60,61,62,63,64,66,67],[55,56,57,58,59,60,61,62,63,64,65,67],[67],[55,56,57,58,59,60,61,62,63,64,65,66],[72],[74],[75,81],[77,85,86,93,102],[77,78,85,93],[79,109],[80,81,86,94],[81,102],[82,83,85,93],[83],[84,85],[85],[85,86,87,102,108],[86,87],[85,88,93,102,108],[85,86,88,89,93,102,105,108],[88,90,102,105,108],[72,73,74,75,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115],[85,91],[92,108],[83,85,93,102],[94],[95],[74,96],[97,107],[98],[99],[85,100],[100,101,109,111],[85,102],[103],[104],[93,102,105],[106],[93,107],[88,99,108],[109],[102,110],[111],[112],[85,87,102,108,111,113],[102,114],[34],[30,31,32,33],[47],[117,123],[121],[125],[118,122],[120],[119],[29,35,49,51],[29,34,35,43,51,53],[29,34,35,43,51,53,68],[29,34,35,49],[29,35,42],[29,35,43,49],[29,34,35,45,46,48],[29,34,35,36,37],[29,35,36],[29,35],[29,35,36,37,38,39,40,41],[42],[43,49],[34,45],[34,36,37],[36],[36,37,38,39,40,41]],"referencedMap":[[125,1],[56,2],[57,3],[55,4],[58,5],[59,6],[60,7],[61,8],[62,9],[63,10],[64,11],[65,12],[66,13],[68,14],[67,15],[72,16],[74,17],[75,18],[77,19],[78,20],[79,21],[80,22],[81,23],[82,24],[83,25],[84,26],[85,27],[86,28],[87,29],[88,30],[89,31],[90,32],[116,33],[91,34],[92,35],[93,36],[94,37],[95,38],[96,39],[97,40],[98,41],[99,42],[100,43],[101,44],[102,45],[103,46],[104,47],[105,48],[106,49],[107,50],[108,51],[109,52],[110,53],[111,54],[112,55],[113,56],[114,57],[45,58],[34,59],[35,58],[48,60],[124,61],[122,62],[126,63],[123,64],[121,65],[120,66],[52,67],[54,68],[69,69],[53,70],[70,68],[71,68],[51,71],[43,71],[50,72],[49,73],[38,74],[40,75],[41,75],[36,76],[37,76],[42,77],[39,75]],"exportedModulesMap":[[125,1],[56,2],[57,3],[55,4],[58,5],[59,6],[60,7],[61,8],[62,9],[63,10],[64,11],[65,12],[66,13],[68,14],[67,15],[72,16],[74,17],[75,18],[77,19],[78,20],[79,21],[80,22],[81,23],[82,24],[83,25],[84,26],[85,27],[86,28],[87,29],[88,30],[89,31],[90,32],[116,33],[91,34],[92,35],[93,36],[94,37],[95,38],[96,39],[97,40],[98,41],[99,42],[100,43],[101,44],[102,45],[103,46],[104,47],[105,48],[106,49],[107,50],[108,51],[109,52],[110,53],[111,54],[112,55],[113,56],[114,57],[45,58],[34,59],[35,58],[48,60],[124,61],[122,62],[126,63],[123,64],[121,65],[120,66],[53,58],[51,78],[43,78],[50,79],[49,80],[38,81],[40,82],[41,82],[42,83],[39,82]],"semanticDiagnosticsPerFile":[117,76,125,56,57,55,58,59,60,61,62,63,64,65,66,68,67,72,74,75,77,78,79,80,81,82,83,84,85,86,87,73,115,88,89,90,116,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,32,46,45,30,34,35,33,48,47,118,31,124,122,126,123,121,120,119,29,7,6,2,8,9,10,11,12,13,14,15,3,4,19,16,17,18,20,21,22,5,23,24,25,26,27,1,28,52,54,69,53,70,71,51,43,44,50,49,38,40,41,36,37,42,39],"latestChangedDtsFile":"./out/__test__/table.test.d.ts"},"version":"4.9.5"}
|