@reckona/mreact-compat 0.0.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/LICENSE +21 -0
- package/README.md +32 -0
- package/dist/class-component.d.ts +48 -0
- package/dist/class-component.d.ts.map +1 -0
- package/dist/class-component.js +186 -0
- package/dist/class-component.js.map +1 -0
- package/dist/context.d.ts +31 -0
- package/dist/context.d.ts.map +1 -0
- package/dist/context.js +83 -0
- package/dist/context.js.map +1 -0
- package/dist/devtools.d.ts +5 -0
- package/dist/devtools.d.ts.map +1 -0
- package/dist/devtools.js +839 -0
- package/dist/devtools.js.map +1 -0
- package/dist/dom-children.d.ts +3 -0
- package/dist/dom-children.d.ts.map +1 -0
- package/dist/dom-children.js +23 -0
- package/dist/dom-children.js.map +1 -0
- package/dist/dom-props.d.ts +4 -0
- package/dist/dom-props.d.ts.map +1 -0
- package/dist/dom-props.js +266 -0
- package/dist/dom-props.js.map +1 -0
- package/dist/element.d.ts +94 -0
- package/dist/element.d.ts.map +1 -0
- package/dist/element.js +160 -0
- package/dist/element.js.map +1 -0
- package/dist/event-listeners.d.ts +12 -0
- package/dist/event-listeners.d.ts.map +1 -0
- package/dist/event-listeners.js +11 -0
- package/dist/event-listeners.js.map +1 -0
- package/dist/event-replay.d.ts +18 -0
- package/dist/event-replay.d.ts.map +1 -0
- package/dist/event-replay.js +94 -0
- package/dist/event-replay.js.map +1 -0
- package/dist/event-types.d.ts +19 -0
- package/dist/event-types.d.ts.map +1 -0
- package/dist/event-types.js +2 -0
- package/dist/event-types.js.map +1 -0
- package/dist/events.d.ts +6 -0
- package/dist/events.d.ts.map +1 -0
- package/dist/events.js +306 -0
- package/dist/events.js.map +1 -0
- package/dist/fiber-child.d.ts +4 -0
- package/dist/fiber-child.d.ts.map +1 -0
- package/dist/fiber-child.js +262 -0
- package/dist/fiber-child.js.map +1 -0
- package/dist/fiber-commit.d.ts +4 -0
- package/dist/fiber-commit.d.ts.map +1 -0
- package/dist/fiber-commit.js +54 -0
- package/dist/fiber-commit.js.map +1 -0
- package/dist/fiber-flags.d.ts +15 -0
- package/dist/fiber-flags.d.ts.map +1 -0
- package/dist/fiber-flags.js +18 -0
- package/dist/fiber-flags.js.map +1 -0
- package/dist/fiber-host.d.ts +16 -0
- package/dist/fiber-host.d.ts.map +1 -0
- package/dist/fiber-host.js +892 -0
- package/dist/fiber-host.js.map +1 -0
- package/dist/fiber-lanes.d.ts +30 -0
- package/dist/fiber-lanes.d.ts.map +1 -0
- package/dist/fiber-lanes.js +71 -0
- package/dist/fiber-lanes.js.map +1 -0
- package/dist/fiber-reconciler.d.ts +8 -0
- package/dist/fiber-reconciler.d.ts.map +1 -0
- package/dist/fiber-reconciler.js +385 -0
- package/dist/fiber-reconciler.js.map +1 -0
- package/dist/fiber-scheduler.d.ts +37 -0
- package/dist/fiber-scheduler.d.ts.map +1 -0
- package/dist/fiber-scheduler.js +307 -0
- package/dist/fiber-scheduler.js.map +1 -0
- package/dist/fiber-work-loop.d.ts +21 -0
- package/dist/fiber-work-loop.d.ts.map +1 -0
- package/dist/fiber-work-loop.js +116 -0
- package/dist/fiber-work-loop.js.map +1 -0
- package/dist/fiber.d.ts +50 -0
- package/dist/fiber.d.ts.map +1 -0
- package/dist/fiber.js +73 -0
- package/dist/fiber.js.map +1 -0
- package/dist/flight-decoder.d.ts +8 -0
- package/dist/flight-decoder.d.ts.map +1 -0
- package/dist/flight-decoder.js +132 -0
- package/dist/flight-decoder.js.map +1 -0
- package/dist/flight-element-builder.d.ts +6 -0
- package/dist/flight-element-builder.d.ts.map +1 -0
- package/dist/flight-element-builder.js +56 -0
- package/dist/flight-element-builder.js.map +1 -0
- package/dist/flight-parser.d.ts +3 -0
- package/dist/flight-parser.d.ts.map +1 -0
- package/dist/flight-parser.js +508 -0
- package/dist/flight-parser.js.map +1 -0
- package/dist/flight-protocol.d.ts +11 -0
- package/dist/flight-protocol.d.ts.map +1 -0
- package/dist/flight-protocol.js +61 -0
- package/dist/flight-protocol.js.map +1 -0
- package/dist/flight-types.d.ts +98 -0
- package/dist/flight-types.d.ts.map +1 -0
- package/dist/flight-types.js +2 -0
- package/dist/flight-types.js.map +1 -0
- package/dist/flight.d.ts +26 -0
- package/dist/flight.d.ts.map +1 -0
- package/dist/flight.js +66 -0
- package/dist/flight.js.map +1 -0
- package/dist/hooks.d.ts +214 -0
- package/dist/hooks.d.ts.map +1 -0
- package/dist/hooks.js +1296 -0
- package/dist/hooks.js.map +1 -0
- package/dist/hydration.d.ts +34 -0
- package/dist/hydration.d.ts.map +1 -0
- package/dist/hydration.js +164 -0
- package/dist/hydration.js.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -0
- package/dist/internal.d.ts +2 -0
- package/dist/internal.d.ts.map +1 -0
- package/dist/internal.js +2 -0
- package/dist/internal.js.map +1 -0
- package/dist/jsx-dev-runtime.d.ts +19 -0
- package/dist/jsx-dev-runtime.d.ts.map +1 -0
- package/dist/jsx-dev-runtime.js +6 -0
- package/dist/jsx-dev-runtime.js.map +1 -0
- package/dist/jsx-runtime.d.ts +24 -0
- package/dist/jsx-runtime.d.ts.map +1 -0
- package/dist/jsx-runtime.js +21 -0
- package/dist/jsx-runtime.js.map +1 -0
- package/dist/prop-comparison.d.ts +6 -0
- package/dist/prop-comparison.d.ts.map +1 -0
- package/dist/prop-comparison.js +28 -0
- package/dist/prop-comparison.js.map +1 -0
- package/dist/reconcile-types.d.ts +10 -0
- package/dist/reconcile-types.d.ts.map +1 -0
- package/dist/reconcile-types.js +2 -0
- package/dist/reconcile-types.js.map +1 -0
- package/dist/reconciler.d.ts +7 -0
- package/dist/reconciler.d.ts.map +1 -0
- package/dist/reconciler.js +318 -0
- package/dist/reconciler.js.map +1 -0
- package/dist/render.d.ts +7 -0
- package/dist/render.d.ts.map +1 -0
- package/dist/render.js +4 -0
- package/dist/render.js.map +1 -0
- package/dist/root.d.ts +44 -0
- package/dist/root.d.ts.map +1 -0
- package/dist/root.js +278 -0
- package/dist/root.js.map +1 -0
- package/dist/scheduler.d.ts +30 -0
- package/dist/scheduler.d.ts.map +1 -0
- package/dist/scheduler.js +90 -0
- package/dist/scheduler.js.map +1 -0
- package/dist/suspense.d.ts +8 -0
- package/dist/suspense.d.ts.map +1 -0
- package/dist/suspense.js +164 -0
- package/dist/suspense.js.map +1 -0
- package/dist/thenable.d.ts +2 -0
- package/dist/thenable.d.ts.map +1 -0
- package/dist/thenable.js +6 -0
- package/dist/thenable.js.map +1 -0
- package/dist/url-safety.d.ts +2 -0
- package/dist/url-safety.d.ts.map +1 -0
- package/dist/url-safety.js +2 -0
- package/dist/url-safety.js.map +1 -0
- package/package.json +65 -0
|
@@ -0,0 +1,318 @@
|
|
|
1
|
+
import { Activity, Fragment, ERROR_BOUNDARY_TYPE, FORWARD_REF_TYPE, Profiler, Suspense, SuspenseList, LAZY_TYPE, MEMO_TYPE, STRICT_MODE_TYPE, isReactCompatElement, isReactCompatPortal, } from "./element.js";
|
|
2
|
+
import { isReactCompatConsumer, isReactCompatProvider, renderWithContextProvider, useContext, } from "./context.js";
|
|
3
|
+
import { hasStableExternalStores, restoreRuntimeSnapshot, renderWithProfiler, renderWithStrictMode, renderWithRootRuntime, takeRuntimeSnapshot, } from "./hooks.js";
|
|
4
|
+
import { commitDevToolsRoot } from "./devtools.js";
|
|
5
|
+
import { applyPostChildFormProps, applyProps } from "./dom-props.js";
|
|
6
|
+
import { syncChildNodes, syncScopedChildNodes } from "./dom-children.js";
|
|
7
|
+
import { setLogicalEventParent } from "./events.js";
|
|
8
|
+
import { getHydrationScope, reportElementTextMismatch, reportExtraHydrationNodes, reportHydrationNodeTypeMismatch, reportMissingHydrationNode, reportRecoverable, withHydrationComponentStack, } from "./hydration.js";
|
|
9
|
+
import { isClassComponentType, reconcileClassComponent, reconcileErrorBoundary, } from "./class-component.js";
|
|
10
|
+
import { isSuspensePrimaryRenderActive, reconcileSuspense, reconcileSuspenseList, } from "./suspense.js";
|
|
11
|
+
import { areMemoPropsEqual } from "./prop-comparison.js";
|
|
12
|
+
const nodeKeys = new WeakMap();
|
|
13
|
+
const memoRenderStates = new WeakMap();
|
|
14
|
+
export function renderIntoContainer(container, element, runtime, options = {}) {
|
|
15
|
+
for (let attempt = 0; attempt < 25; attempt += 1) {
|
|
16
|
+
runtime.beginRender();
|
|
17
|
+
let committed = false;
|
|
18
|
+
try {
|
|
19
|
+
for (const portalContainer of runtime.portalContainers) {
|
|
20
|
+
portalContainer.replaceChildren();
|
|
21
|
+
}
|
|
22
|
+
runtime.portalContainers.clear();
|
|
23
|
+
const scope = getHydrationScope(container, options.resumeId);
|
|
24
|
+
const renderOptions = { ...options, eventRoot: container };
|
|
25
|
+
const nodes = reconcileNodeList(scope.parent, scope.previousNodes, element, runtime, "0", renderOptions);
|
|
26
|
+
if (!hasStableExternalStores(runtime)) {
|
|
27
|
+
continue;
|
|
28
|
+
}
|
|
29
|
+
syncScopedChildNodes(scope.parent, scope.before, scope.after, nodes);
|
|
30
|
+
if (options.consumeResumeMarkers === true) {
|
|
31
|
+
scope.before?.parentNode?.removeChild(scope.before);
|
|
32
|
+
scope.after?.parentNode?.removeChild(scope.after);
|
|
33
|
+
}
|
|
34
|
+
committed = true;
|
|
35
|
+
}
|
|
36
|
+
finally {
|
|
37
|
+
runtime.endRender(committed);
|
|
38
|
+
}
|
|
39
|
+
runtime.flushEffects();
|
|
40
|
+
commitDevToolsRoot(container, element);
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
throw new Error("Store unstable.");
|
|
44
|
+
}
|
|
45
|
+
function reconcileNodeList(parent, previousNodes, node, runtime, path, options = {}) {
|
|
46
|
+
const result = reconcileNode(parent, previousNodes, node, runtime, path, options);
|
|
47
|
+
return result.nodes;
|
|
48
|
+
}
|
|
49
|
+
function reconcileNode(parent, previousNodes, node, runtime, path, options = {}) {
|
|
50
|
+
if (node === null || node === undefined || typeof node === "boolean") {
|
|
51
|
+
return { nodes: [], consumed: 0 };
|
|
52
|
+
}
|
|
53
|
+
if (typeof node === "string" || typeof node === "number") {
|
|
54
|
+
const existing = previousNodes[0];
|
|
55
|
+
const text = existing instanceof Text ? existing : document.createTextNode("");
|
|
56
|
+
if (existing === undefined) {
|
|
57
|
+
reportMissingHydrationNode(options, path);
|
|
58
|
+
}
|
|
59
|
+
else if (!(existing instanceof Text)) {
|
|
60
|
+
reportHydrationNodeTypeMismatch(options, path, "text", existing);
|
|
61
|
+
}
|
|
62
|
+
if (existing instanceof Text && existing.data !== String(node)) {
|
|
63
|
+
reportRecoverable(options, "text", path, new Error("Hydration text mismatch."));
|
|
64
|
+
}
|
|
65
|
+
text.data = String(node);
|
|
66
|
+
return { nodes: [text], consumed: existing instanceof Text ? 1 : 0 };
|
|
67
|
+
}
|
|
68
|
+
if (Array.isArray(node)) {
|
|
69
|
+
return reconcileSequence(parent, previousNodes, node, runtime, path, options);
|
|
70
|
+
}
|
|
71
|
+
if (!isReactCompatElement(node)) {
|
|
72
|
+
if (isReactCompatPortal(node)) {
|
|
73
|
+
return reconcilePortal(node, parent, runtime, path, options);
|
|
74
|
+
}
|
|
75
|
+
throw new Error("Invalid react-compat element.");
|
|
76
|
+
}
|
|
77
|
+
return reconcileElement(parent, previousNodes, node, runtime, path, options);
|
|
78
|
+
}
|
|
79
|
+
function reconcilePortal(portal, parent, runtime, path, options = {}) {
|
|
80
|
+
runtime.portalContainers.add(portal.container);
|
|
81
|
+
setLogicalEventParent(portal.container, parent);
|
|
82
|
+
const nodes = reconcileNodeList(portal.container, Array.from(portal.container.childNodes), portal.children, runtime, `${path}.portal`, { ...options, eventRoot: portal.container });
|
|
83
|
+
syncChildNodes(portal.container, nodes);
|
|
84
|
+
return { nodes: [], consumed: 0 };
|
|
85
|
+
}
|
|
86
|
+
function reconcileSequence(parent, previousNodes, children, runtime, path, options = {}) {
|
|
87
|
+
const keyedNodes = collectKeyedNodes(previousNodes);
|
|
88
|
+
const nodes = [];
|
|
89
|
+
let previousIndex = 0;
|
|
90
|
+
children.forEach((child, index) => {
|
|
91
|
+
const key = getNodeKey(child);
|
|
92
|
+
const previousForChild = key === undefined
|
|
93
|
+
? previousNodes.slice(previousIndex)
|
|
94
|
+
: keyedNodes.size === 0
|
|
95
|
+
? previousNodes.slice(previousIndex)
|
|
96
|
+
: keyedNodes.get(key) === undefined
|
|
97
|
+
? []
|
|
98
|
+
: [keyedNodes.get(key)];
|
|
99
|
+
const result = reconcileNode(parent, previousForChild, child, runtime, `${path}.${getNodePathSegment(child, index)}`, options);
|
|
100
|
+
if (key === undefined || keyedNodes.size === 0) {
|
|
101
|
+
previousIndex += result.consumed;
|
|
102
|
+
}
|
|
103
|
+
for (const childNode of result.nodes) {
|
|
104
|
+
if (key !== undefined) {
|
|
105
|
+
nodeKeys.set(childNode, key);
|
|
106
|
+
}
|
|
107
|
+
nodes.push(childNode);
|
|
108
|
+
}
|
|
109
|
+
});
|
|
110
|
+
return { nodes, consumed: nodes.length };
|
|
111
|
+
}
|
|
112
|
+
function reconcileElement(parent, previousNodes, element, runtime, path, options = {}) {
|
|
113
|
+
if (element.type === Fragment) {
|
|
114
|
+
return reconcileNode(parent, previousNodes, element.props.children, runtime, `${path}.f`, options);
|
|
115
|
+
}
|
|
116
|
+
if (element.type === Activity) {
|
|
117
|
+
const children = element.props.mode === "hidden"
|
|
118
|
+
? null
|
|
119
|
+
: element.props.children;
|
|
120
|
+
return reconcileNode(parent, previousNodes, children, runtime, `${path}.activity`, options);
|
|
121
|
+
}
|
|
122
|
+
if (element.type === Profiler) {
|
|
123
|
+
return renderWithProfiler(runtime, `${path}.profiler`, element.props, () => reconcileNode(parent, previousNodes, element.props.children, runtime, `${path}.profiler`, options));
|
|
124
|
+
}
|
|
125
|
+
if (element.type === STRICT_MODE_TYPE) {
|
|
126
|
+
const snapshot = takeRuntimeSnapshot(runtime);
|
|
127
|
+
try {
|
|
128
|
+
reconcileNode(parent, [], element.props.children, runtime, `${path}.strict.preview`, options);
|
|
129
|
+
}
|
|
130
|
+
finally {
|
|
131
|
+
restoreRuntimeSnapshot(runtime, snapshot);
|
|
132
|
+
}
|
|
133
|
+
return renderWithStrictMode(runtime, () => reconcileNode(parent, previousNodes, element.props.children, runtime, `${path}.strict`, options));
|
|
134
|
+
}
|
|
135
|
+
if (element.type === Suspense) {
|
|
136
|
+
return reconcileSuspense(parent, previousNodes, element, runtime, path, options, reconcileNode);
|
|
137
|
+
}
|
|
138
|
+
if (element.type === SuspenseList) {
|
|
139
|
+
return reconcileSuspenseList(parent, previousNodes, element, runtime, path, options, reconcileNode, reconcileSequence);
|
|
140
|
+
}
|
|
141
|
+
if (element.type === ERROR_BOUNDARY_TYPE) {
|
|
142
|
+
return reconcileErrorBoundary(parent, previousNodes, element, runtime, path, options, reconcileNode);
|
|
143
|
+
}
|
|
144
|
+
const elementType = element.type;
|
|
145
|
+
if (isReactCompatProvider(elementType)) {
|
|
146
|
+
return renderWithContextProvider(elementType, element.props.value, () => reconcileNode(parent, previousNodes, element.props.children, runtime, `${path}.p`, options));
|
|
147
|
+
}
|
|
148
|
+
if (isReactCompatConsumer(elementType)) {
|
|
149
|
+
const children = element.props.children;
|
|
150
|
+
const render = typeof children === "function"
|
|
151
|
+
? children
|
|
152
|
+
: () => null;
|
|
153
|
+
return reconcileNode(parent, previousNodes, render(useContext(elementType.context)), runtime, `${path}.consumer`, options);
|
|
154
|
+
}
|
|
155
|
+
if (isForwardRefType(elementType)) {
|
|
156
|
+
return renderWithRootRuntime(runtime, path, () => reconcileNode(parent, previousNodes, elementType.render(element.props, element.ref), runtime, `${path}.forwardRef`, options));
|
|
157
|
+
}
|
|
158
|
+
if (isMemoType(elementType)) {
|
|
159
|
+
const memoPath = `${path}.memo`;
|
|
160
|
+
const memoStates = getMemoRenderStates(runtime);
|
|
161
|
+
const previousMemoState = memoStates.get(memoPath);
|
|
162
|
+
if (previousMemoState !== undefined &&
|
|
163
|
+
previousNodes.length >= previousMemoState.nodeCount &&
|
|
164
|
+
!hasDirtyInstance(runtime, previousMemoState.instanceKeys) &&
|
|
165
|
+
areMemoPropsEqual(elementType, previousMemoState.props, element.props)) {
|
|
166
|
+
markActiveInstanceKeys(runtime, previousMemoState.instanceKeys);
|
|
167
|
+
return {
|
|
168
|
+
nodes: previousNodes.slice(0, previousMemoState.nodeCount),
|
|
169
|
+
consumed: previousMemoState.nodeCount,
|
|
170
|
+
};
|
|
171
|
+
}
|
|
172
|
+
const result = reconcileElement(parent, previousNodes, {
|
|
173
|
+
...element,
|
|
174
|
+
type: elementType.type,
|
|
175
|
+
}, runtime, memoPath, options);
|
|
176
|
+
memoStates.set(memoPath, {
|
|
177
|
+
props: { ...element.props },
|
|
178
|
+
nodeCount: result.nodes.length,
|
|
179
|
+
instanceKeys: collectInstanceKeys(runtime, memoPath),
|
|
180
|
+
});
|
|
181
|
+
return result;
|
|
182
|
+
}
|
|
183
|
+
if (isLazyType(elementType)) {
|
|
184
|
+
if (elementType.status === "resolved" && elementType.resolved !== undefined) {
|
|
185
|
+
return reconcileElement(parent, previousNodes, { ...element, type: elementType.resolved }, runtime, `${path}.lazy`, options);
|
|
186
|
+
}
|
|
187
|
+
if (elementType.status === "rejected") {
|
|
188
|
+
throw elementType.error;
|
|
189
|
+
}
|
|
190
|
+
if (elementType.status === "uninitialized") {
|
|
191
|
+
elementType.status = "pending";
|
|
192
|
+
elementType.promise = elementType
|
|
193
|
+
.load()
|
|
194
|
+
.then((module) => {
|
|
195
|
+
elementType.status = "resolved";
|
|
196
|
+
elementType.resolved = module.default;
|
|
197
|
+
runtime.rerender();
|
|
198
|
+
})
|
|
199
|
+
.catch((error) => {
|
|
200
|
+
elementType.status = "rejected";
|
|
201
|
+
elementType.error = error;
|
|
202
|
+
runtime.rerender();
|
|
203
|
+
});
|
|
204
|
+
}
|
|
205
|
+
if (isSuspensePrimaryRenderActive()) {
|
|
206
|
+
throw elementType.promise;
|
|
207
|
+
}
|
|
208
|
+
return { nodes: [], consumed: 0 };
|
|
209
|
+
}
|
|
210
|
+
if (isClassComponentType(elementType)) {
|
|
211
|
+
return reconcileClassComponent(parent, previousNodes, elementType, element.props, runtime, path, options, reconcileNode, (instance) => {
|
|
212
|
+
applyRef(element.ref, instance);
|
|
213
|
+
});
|
|
214
|
+
}
|
|
215
|
+
if (typeof elementType === "function") {
|
|
216
|
+
const functionComponent = elementType;
|
|
217
|
+
return renderWithRootRuntime(runtime, path, () => reconcileNode(parent, previousNodes, functionComponent(element.props), runtime, `${path}.0`, withHydrationComponentStack(options, getComponentName(functionComponent))));
|
|
218
|
+
}
|
|
219
|
+
if (typeof elementType !== "string") {
|
|
220
|
+
throw new Error("Invalid react-compat element type.");
|
|
221
|
+
}
|
|
222
|
+
const existing = previousNodes[0];
|
|
223
|
+
if (existing === undefined) {
|
|
224
|
+
reportMissingHydrationNode(options, path);
|
|
225
|
+
}
|
|
226
|
+
else if (!(existing instanceof HTMLElement)) {
|
|
227
|
+
reportHydrationNodeTypeMismatch(options, path, `<${elementType}>`, existing);
|
|
228
|
+
}
|
|
229
|
+
if (existing instanceof HTMLElement &&
|
|
230
|
+
existing.tagName.toLowerCase() !== elementType) {
|
|
231
|
+
reportRecoverable(options, "tag", path, new Error(`Hydration tag mismatch: expected <${elementType}> but found <${existing.tagName.toLowerCase()}>.`));
|
|
232
|
+
reportElementTextMismatch(options, `${path}.c`, existing, element.props.children);
|
|
233
|
+
}
|
|
234
|
+
const domElement = existing instanceof HTMLElement &&
|
|
235
|
+
existing.tagName.toLowerCase() === elementType
|
|
236
|
+
? existing
|
|
237
|
+
: document.createElement(elementType);
|
|
238
|
+
applyProps(domElement, element.props, path, {
|
|
239
|
+
...options,
|
|
240
|
+
preserveHydrationAttributes: options.hydration !== undefined &&
|
|
241
|
+
existing instanceof HTMLElement &&
|
|
242
|
+
existing.tagName.toLowerCase() === elementType,
|
|
243
|
+
});
|
|
244
|
+
const previousChildNodes = Array.from(domElement.childNodes);
|
|
245
|
+
const childResult = reconcileNode(domElement, previousChildNodes, element.props.children, runtime, `${path}.c`, options);
|
|
246
|
+
reportExtraHydrationNodes(options, `${path}.c`, previousChildNodes, childResult.consumed);
|
|
247
|
+
syncChildNodes(domElement, childResult.nodes);
|
|
248
|
+
applyPostChildFormProps(domElement, element.props);
|
|
249
|
+
applyRef(element.ref, domElement);
|
|
250
|
+
return { nodes: [domElement], consumed: existing === undefined ? 0 : 1 };
|
|
251
|
+
}
|
|
252
|
+
function collectKeyedNodes(nodes) {
|
|
253
|
+
const keyedNodes = new Map();
|
|
254
|
+
for (const node of nodes) {
|
|
255
|
+
const key = nodeKeys.get(node);
|
|
256
|
+
if (key !== undefined) {
|
|
257
|
+
keyedNodes.set(key, node);
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
return keyedNodes;
|
|
261
|
+
}
|
|
262
|
+
function getNodePathSegment(node, index) {
|
|
263
|
+
const key = getNodeKey(node);
|
|
264
|
+
return key === undefined ? String(index) : `k:${key}`;
|
|
265
|
+
}
|
|
266
|
+
function getNodeKey(node) {
|
|
267
|
+
return isReactCompatElement(node) && node.key !== null
|
|
268
|
+
? node.key
|
|
269
|
+
: undefined;
|
|
270
|
+
}
|
|
271
|
+
function getComponentName(component) {
|
|
272
|
+
return component.name === "" ? "Anonymous" : component.name;
|
|
273
|
+
}
|
|
274
|
+
function isForwardRefType(value) {
|
|
275
|
+
return (typeof value === "object" &&
|
|
276
|
+
value !== null &&
|
|
277
|
+
value.$$typeof === FORWARD_REF_TYPE);
|
|
278
|
+
}
|
|
279
|
+
function isMemoType(value) {
|
|
280
|
+
return (typeof value === "object" &&
|
|
281
|
+
value !== null &&
|
|
282
|
+
value.$$typeof === MEMO_TYPE);
|
|
283
|
+
}
|
|
284
|
+
function getMemoRenderStates(runtime) {
|
|
285
|
+
const existing = memoRenderStates.get(runtime);
|
|
286
|
+
if (existing !== undefined) {
|
|
287
|
+
return existing;
|
|
288
|
+
}
|
|
289
|
+
const created = new Map();
|
|
290
|
+
memoRenderStates.set(runtime, created);
|
|
291
|
+
return created;
|
|
292
|
+
}
|
|
293
|
+
function collectInstanceKeys(runtime, prefix) {
|
|
294
|
+
return Array.from(runtime.instances.keys()).filter((key) => key === prefix || key.startsWith(`${prefix}.`));
|
|
295
|
+
}
|
|
296
|
+
function markActiveInstanceKeys(runtime, keys) {
|
|
297
|
+
for (const key of keys) {
|
|
298
|
+
runtime.activeInstanceKeys?.add(key);
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
function hasDirtyInstance(runtime, keys) {
|
|
302
|
+
return keys.some((key) => runtime.instances.get(key)?.dirty === true);
|
|
303
|
+
}
|
|
304
|
+
function isLazyType(value) {
|
|
305
|
+
return (typeof value === "object" &&
|
|
306
|
+
value !== null &&
|
|
307
|
+
value.$$typeof === LAZY_TYPE);
|
|
308
|
+
}
|
|
309
|
+
function applyRef(ref, node) {
|
|
310
|
+
if (typeof ref === "function") {
|
|
311
|
+
ref(node);
|
|
312
|
+
return;
|
|
313
|
+
}
|
|
314
|
+
if (typeof ref === "object" && ref !== null && "current" in ref) {
|
|
315
|
+
ref.current = node;
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
//# sourceMappingURL=reconciler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reconciler.js","sourceRoot":"","sources":["../src/reconciler.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,mBAAmB,EACnB,gBAAgB,EAChB,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,SAAS,EACT,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,GAIpB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,yBAAyB,EACzB,UAAU,GACX,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,uBAAuB,EACvB,sBAAsB,EACtB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,GAEpB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,uBAAuB,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EACL,iBAAiB,EACjB,yBAAyB,EACzB,yBAAyB,EACzB,+BAA+B,EAC/B,0BAA0B,EAC1B,iBAAiB,EAEjB,2BAA2B,GAC5B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,6BAA6B,EAC7B,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAGzD,MAAM,QAAQ,GAAG,IAAI,OAAO,EAAgB,CAAC;AAQ7C,MAAM,gBAAgB,GAAG,IAAI,OAAO,EAA6C,CAAC;AAElF,MAAM,UAAU,mBAAmB,CACjC,SAAkB,EAClB,OAAgB,EAChB,OAAoB,EACpB,UAGI,EAAE;IAEN,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,EAAE,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;QACjD,OAAO,CAAC,WAAW,EAAE,CAAC;QACtB,IAAI,SAAS,GAAG,KAAK,CAAC;QAEtB,IAAI,CAAC;YACH,KAAK,MAAM,eAAe,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;gBACvD,eAAe,CAAC,eAAe,EAAE,CAAC;YACpC,CAAC;YACD,OAAO,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;YAEjC,MAAM,KAAK,GAAG,iBAAiB,CAAC,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC7D,MAAM,aAAa,GAAG,EAAE,GAAG,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;YAC3D,MAAM,KAAK,GAAG,iBAAiB,CAC7B,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,aAAa,EACnB,OAA0B,EAC1B,OAAO,EACP,GAAG,EACH,aAAa,CACd,CAAC;YAEF,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,EAAE,CAAC;gBACtC,SAAS;YACX,CAAC;YAED,oBAAoB,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAErE,IAAI,OAAO,CAAC,oBAAoB,KAAK,IAAI,EAAE,CAAC;gBAC1C,KAAK,CAAC,MAAM,EAAE,UAAU,EAAE,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBACpD,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACpD,CAAC;YACD,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC;gBAAS,CAAC;YACT,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAC/B,CAAC;QAED,OAAO,CAAC,YAAY,EAAE,CAAC;QACvB,kBAAkB,CAAC,SAAS,EAAE,OAA0B,CAAC,CAAC;QAC1D,OAAO;IACT,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,iBAAiB,CACxB,MAAkB,EAClB,aAA8B,EAC9B,IAAqB,EACrB,OAAoB,EACpB,IAAY,EACZ,UAAyB,EAAE;IAE3B,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAClF,OAAO,MAAM,CAAC,KAAK,CAAC;AACtB,CAAC;AAED,SAAS,aAAa,CACpB,MAAkB,EAClB,aAA8B,EAC9B,IAAqB,EACrB,OAAoB,EACpB,IAAY,EACZ,UAAyB,EAAE;IAE3B,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS,IAAI,OAAO,IAAI,KAAK,SAAS,EAAE,CAAC;QACrE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;IACpC,CAAC;IAED,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QACzD,MAAM,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;QAClC,MAAM,IAAI,GACR,QAAQ,YAAY,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;QACpE,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,0BAA0B,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC5C,CAAC;aAAM,IAAI,CAAC,CAAC,QAAQ,YAAY,IAAI,CAAC,EAAE,CAAC;YACvC,+BAA+B,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;QACnE,CAAC;QACD,IAAI,QAAQ,YAAY,IAAI,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/D,iBAAiB,CACf,OAAO,EACP,MAAM,EACN,IAAI,EACJ,IAAI,KAAK,CAAC,0BAA0B,CAAC,CACtC,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QACzB,OAAO,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAQ,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACvE,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,OAAO,iBAAiB,CAAC,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAChF,CAAC;IAED,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;QAChC,IAAI,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9B,OAAO,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAC/D,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,gBAAgB,CAAC,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AAC/E,CAAC;AAED,SAAS,eAAe,CACtB,MAAyB,EACzB,MAAkB,EAClB,OAAoB,EACpB,IAAY,EACZ,UAAyB,EAAE;IAE3B,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC/C,qBAAqB,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAChD,MAAM,KAAK,GAAG,iBAAiB,CAC7B,MAAM,CAAC,SAAS,EAChB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,EACvC,MAAM,CAAC,QAAQ,EACf,OAAO,EACP,GAAG,IAAI,SAAS,EAChB,EAAE,GAAG,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAC5C,CAAC;IACF,cAAc,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACxC,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;AACpC,CAAC;AAED,SAAS,iBAAiB,CACxB,MAAkB,EAClB,aAA8B,EAC9B,QAAoC,EACpC,OAAoB,EACpB,IAAY,EACZ,UAAyB,EAAE;IAE3B,MAAM,UAAU,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC;IACpD,MAAM,KAAK,GAAW,EAAE,CAAC;IACzB,IAAI,aAAa,GAAG,CAAC,CAAC;IAEtB,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QAChC,MAAM,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;QAC9B,MAAM,gBAAgB,GACpB,GAAG,KAAK,SAAS;YACf,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,aAAa,CAAC;YACpC,CAAC,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC;gBACrB,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,aAAa,CAAC;gBACpC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,SAAS;oBACnC,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAS,CAAC,CAAC;QACtC,MAAM,MAAM,GAAG,aAAa,CAC1B,MAAM,EACN,gBAAgB,EAChB,KAAK,EACL,OAAO,EACP,GAAG,IAAI,IAAI,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAC7C,OAAO,CACR,CAAC;QAEF,IAAI,GAAG,KAAK,SAAS,IAAI,UAAU,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC/C,aAAa,IAAI,MAAM,CAAC,QAAQ,CAAC;QACnC,CAAC;QAED,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACrC,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;gBACtB,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YAC/B,CAAC;YAED,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxB,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;AAC3C,CAAC;AAED,SAAS,gBAAgB,CACvB,MAAkB,EAClB,aAA8B,EAC9B,OAA2B,EAC3B,OAAoB,EACpB,IAAY,EACZ,UAAyB,EAAE;IAE3B,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,aAAa,CAClB,MAAM,EACN,aAAa,EACb,OAAO,CAAC,KAAK,CAAC,QAAQ,EACtB,OAAO,EACP,GAAG,IAAI,IAAI,EACX,OAAO,CACR,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,QAAQ,GACX,OAAO,CAAC,KAA4B,CAAC,IAAI,KAAK,QAAQ;YACrD,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;QAC7B,OAAO,aAAa,CAClB,MAAM,EACN,aAAa,EACb,QAAQ,EACR,OAAO,EACP,GAAG,IAAI,WAAW,EAClB,OAAO,CACR,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,kBAAkB,CACvB,OAAO,EACP,GAAG,IAAI,WAAW,EAClB,OAAO,CAAC,KAAK,EACb,GAAG,EAAE,CACH,aAAa,CACX,MAAM,EACN,aAAa,EACb,OAAO,CAAC,KAAK,CAAC,QAAQ,EACtB,OAAO,EACP,GAAG,IAAI,WAAW,EAClB,OAAO,CACR,CACJ,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;QACtC,MAAM,QAAQ,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,CAAC;YACH,aAAa,CACX,MAAM,EACN,EAAE,EACF,OAAO,CAAC,KAAK,CAAC,QAAQ,EACtB,OAAO,EACP,GAAG,IAAI,iBAAiB,EACxB,OAAO,CACR,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,sBAAsB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC5C,CAAC;QAED,OAAO,oBAAoB,CAAC,OAAO,EAAE,GAAG,EAAE,CACxC,aAAa,CACX,MAAM,EACN,aAAa,EACb,OAAO,CAAC,KAAK,CAAC,QAAQ,EACtB,OAAO,EACP,GAAG,IAAI,SAAS,EAChB,OAAO,CACR,CACF,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,iBAAiB,CACtB,MAAM,EACN,aAAa,EACb,OAAO,EACP,OAAO,EACP,IAAI,EACJ,OAAO,EACP,aAAa,CACd,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QAClC,OAAO,qBAAqB,CAC1B,MAAM,EACN,aAAa,EACb,OAAO,EACP,OAAO,EACP,IAAI,EACJ,OAAO,EACP,aAAa,EACb,iBAAiB,CAClB,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;QACzC,OAAO,sBAAsB,CAC3B,MAAM,EACN,aAAa,EACb,OAAO,EACP,OAAO,EACP,IAAI,EACJ,OAAO,EACP,aAAa,CACd,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAEjC,IAAI,qBAAqB,CAAC,WAAW,CAAC,EAAE,CAAC;QACvC,OAAO,yBAAyB,CAC9B,WAAW,EACX,OAAO,CAAC,KAAK,CAAC,KAAK,EACnB,GAAG,EAAE,CACH,aAAa,CACX,MAAM,EACN,aAAa,EACb,OAAO,CAAC,KAAK,CAAC,QAAQ,EACtB,OAAO,EACP,GAAG,IAAI,IAAI,EACX,OAAO,CACR,CACJ,CAAC;IACJ,CAAC;IAED,IAAI,qBAAqB,CAAC,WAAW,CAAC,EAAE,CAAC;QACvC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;QACxC,MAAM,MAAM,GACV,OAAO,QAAQ,KAAK,UAAU;YAC5B,CAAC,CAAE,QAAgD;YACnD,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;QACjB,OAAO,aAAa,CAClB,MAAM,EACN,aAAa,EACb,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,EACvC,OAAO,EACP,GAAG,IAAI,WAAW,EAClB,OAAO,CACR,CAAC;IACJ,CAAC;IAED,IAAI,gBAAgB,CAAC,WAAW,CAAC,EAAE,CAAC;QAClC,OAAO,qBAAqB,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,CAC/C,aAAa,CACX,MAAM,EACN,aAAa,EACb,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,EAC9C,OAAO,EACP,GAAG,IAAI,aAAa,EACpB,OAAO,CACR,CACF,CAAC;IACJ,CAAC;IAED,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,GAAG,IAAI,OAAO,CAAC;QAChC,MAAM,UAAU,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAChD,MAAM,iBAAiB,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAEnD,IACE,iBAAiB,KAAK,SAAS;YAC/B,aAAa,CAAC,MAAM,IAAI,iBAAiB,CAAC,SAAS;YACnD,CAAC,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,CAAC,YAAY,CAAC;YAC1D,iBAAiB,CAAC,WAAW,EAAE,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,EACtE,CAAC;YACD,sBAAsB,CAAC,OAAO,EAAE,iBAAiB,CAAC,YAAY,CAAC,CAAC;YAChE,OAAO;gBACL,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,iBAAiB,CAAC,SAAS,CAAC;gBAC1D,QAAQ,EAAE,iBAAiB,CAAC,SAAS;aACtC,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,gBAAgB,CAC7B,MAAM,EACN,aAAa,EACb;YACE,GAAG,OAAO;YACV,IAAI,EAAE,WAAW,CAAC,IAAI;SACvB,EACD,OAAO,EACP,QAAQ,EACR,OAAO,CACR,CAAC;QACF,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE;YACvB,KAAK,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,EAAE;YAC3B,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM;YAC9B,YAAY,EAAE,mBAAmB,CAAC,OAAO,EAAE,QAAQ,CAAC;SACrD,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC5B,IAAI,WAAW,CAAC,MAAM,KAAK,UAAU,IAAI,WAAW,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC5E,OAAO,gBAAgB,CACrB,MAAM,EACN,aAAa,EACb,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE,EAC1C,OAAO,EACP,GAAG,IAAI,OAAO,EACd,OAAO,CACR,CAAC;QACJ,CAAC;QAED,IAAI,WAAW,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YACtC,MAAM,WAAW,CAAC,KAAK,CAAC;QAC1B,CAAC;QAED,IAAI,WAAW,CAAC,MAAM,KAAK,eAAe,EAAE,CAAC;YAC3C,WAAW,CAAC,MAAM,GAAG,SAAS,CAAC;YAC/B,WAAW,CAAC,OAAO,GAAG,WAAW;iBAC9B,IAAI,EAAE;iBACN,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBACf,WAAW,CAAC,MAAM,GAAG,UAAU,CAAC;gBAChC,WAAW,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;gBACtC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACrB,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;gBACxB,WAAW,CAAC,MAAM,GAAG,UAAU,CAAC;gBAChC,WAAW,CAAC,KAAK,GAAG,KAAK,CAAC;gBAC1B,OAAO,CAAC,QAAQ,EAAE,CAAC;YACrB,CAAC,CAAC,CAAC;QACP,CAAC;QAED,IAAI,6BAA6B,EAAE,EAAE,CAAC;YACpC,MAAM,WAAW,CAAC,OAAO,CAAC;QAC5B,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;IACpC,CAAC;IAED,IAAI,oBAAoB,CAAC,WAAW,CAAC,EAAE,CAAC;QACtC,OAAO,uBAAuB,CAC5B,MAAM,EACN,aAAa,EACb,WAAW,EACX,OAAO,CAAC,KAAK,EACb,OAAO,EACP,IAAI,EACJ,OAAO,EACP,aAAa,EACb,CAAC,QAAQ,EAAE,EAAE;YACX,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAClC,CAAC,CACF,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,WAAW,KAAK,UAAU,EAAE,CAAC;QACtC,MAAM,iBAAiB,GAAG,WAEN,CAAC;QACrB,OAAO,qBAAqB,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,CAC/C,aAAa,CACX,MAAM,EACN,aAAa,EACb,iBAAiB,CAAC,OAAO,CAAC,KAAK,CAAC,EAChC,OAAO,EACP,GAAG,IAAI,IAAI,EACX,2BAA2B,CAAC,OAAO,EAAE,gBAAgB,CAAC,iBAAiB,CAAC,CAAC,CAC1E,CACF,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;IAClC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,0BAA0B,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC5C,CAAC;SAAM,IAAI,CAAC,CAAC,QAAQ,YAAY,WAAW,CAAC,EAAE,CAAC;QAC9C,+BAA+B,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,WAAW,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC/E,CAAC;IACD,IACE,QAAQ,YAAY,WAAW;QAC/B,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,WAAW,EAC9C,CAAC;QACD,iBAAiB,CACf,OAAO,EACP,KAAK,EACL,IAAI,EACJ,IAAI,KAAK,CACP,qCAAqC,WAAW,gBAAgB,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CACnG,CACF,CAAC;QACF,yBAAyB,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACpF,CAAC;IACD,MAAM,UAAU,GACd,QAAQ,YAAY,WAAW;QAC/B,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,WAAW;QAC5C,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;IAE1C,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE;QAC1C,GAAG,OAAO;QACV,2BAA2B,EACzB,OAAO,CAAC,SAAS,KAAK,SAAS;YAC/B,QAAQ,YAAY,WAAW;YAC/B,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,WAAW;KACjD,CAAC,CAAC;IACH,MAAM,kBAAkB,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IAC7D,MAAM,WAAW,GAAG,aAAa,CAC/B,UAAU,EACV,kBAAkB,EAClB,OAAO,CAAC,KAAK,CAAC,QAAQ,EACtB,OAAO,EACP,GAAG,IAAI,IAAI,EACX,OAAO,CACR,CAAC;IACF,yBAAyB,CACvB,OAAO,EACP,GAAG,IAAI,IAAI,EACX,kBAAkB,EAClB,WAAW,CAAC,QAAQ,CACrB,CAAC;IACF,cAAc,CAAC,UAAU,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;IAC9C,uBAAuB,CAAC,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACnD,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAClC,OAAO,EAAE,KAAK,EAAE,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC3E,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAsB;IAC/C,MAAM,UAAU,GAAG,IAAI,GAAG,EAAgB,CAAC;IAE3C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAE/B,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAqB,EAAE,KAAa;IAC9D,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAC7B,OAAO,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;AACxD,CAAC;AAED,SAAS,UAAU,CAAC,IAAqB;IACvC,OAAO,oBAAoB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI;QACpD,CAAC,CAAC,IAAI,CAAC,GAAG;QACV,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,SAAS,gBAAgB,CAAC,SAAmB;IAC3C,OAAO,SAAS,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC;AAC9D,CAAC;AAED,SAAS,gBAAgB,CACvB,KAAc;IAEd,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACb,KAAgC,CAAC,QAAQ,KAAK,gBAAgB,CAChE,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CACjB,KAAc;IASd,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACb,KAAgC,CAAC,QAAQ,KAAK,SAAS,CACzD,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAoB;IAC/C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAE/C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,GAAG,EAA2B,CAAC;IACnD,gBAAgB,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACvC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAoB,EAAE,MAAc;IAC/D,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CACzD,GAAG,KAAK,MAAM,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,MAAM,GAAG,CAAC,CAC/C,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,OAAoB,EAAE,IAAuB;IAC3E,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;IACvC,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAoB,EAAE,IAAuB;IACrE,OAAO,IAAI,CAAC,IAAI,CACd,CAAC,GAAG,EAAE,EAAE,CACL,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAqC,EAAE,KAAK,KAAK,IAAI,CAClF,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CACjB,KAAc;IASd,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACb,KAAgC,CAAC,QAAQ,KAAK,SAAS,CACzD,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,GAAY,EAAE,IAAa;IAC3C,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE,CAAC;QAC9B,GAAG,CAAC,IAAI,CAAC,CAAC;QACV,OAAO;IACT,CAAC;IAED,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,SAAS,IAAI,GAAG,EAAE,CAAC;QAC/D,GAA4B,CAAC,OAAO,GAAG,IAAI,CAAC;IAC/C,CAAC;AACH,CAAC"}
|
package/dist/render.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { createRoot, createStreamingHydrationRoot, flushSync, hydrateRoot, render, unmountComponentAtNode, } from "./root.js";
|
|
2
|
+
export type { HydrateRootOptions, Root, RootOptions, SelectiveHydrationBoundary, SelectiveHydrationOptions, StreamingHydrationRoot, StreamingHydrationRootOptions, } from "./root.js";
|
|
3
|
+
export { applyStreamingHydrationFragments } from "./hydration.js";
|
|
4
|
+
export { enableEventHydrationManifestReplay, enableHydrationEventReplay, queueHydrationEvent, readEventHydrationManifest, } from "./event-replay.js";
|
|
5
|
+
export type { EventHydrationManifest, EventHydrationManifestEntry, } from "./event-replay.js";
|
|
6
|
+
export type { HydrationRecoverableErrorInfo } from "./hydration.js";
|
|
7
|
+
//# sourceMappingURL=render.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,4BAA4B,EAC5B,SAAS,EACT,WAAW,EACX,MAAM,EACN,sBAAsB,GACvB,MAAM,WAAW,CAAC;AACnB,YAAY,EACV,kBAAkB,EAClB,IAAI,EACJ,WAAW,EACX,0BAA0B,EAC1B,yBAAyB,EACzB,sBAAsB,EACtB,6BAA6B,GAC9B,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,gCAAgC,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EACL,kCAAkC,EAClC,0BAA0B,EAC1B,mBAAmB,EACnB,0BAA0B,GAC3B,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,6BAA6B,EAAE,MAAM,gBAAgB,CAAC"}
|
package/dist/render.js
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { createRoot, createStreamingHydrationRoot, flushSync, hydrateRoot, render, unmountComponentAtNode, } from "./root.js";
|
|
2
|
+
export { applyStreamingHydrationFragments } from "./hydration.js";
|
|
3
|
+
export { enableEventHydrationManifestReplay, enableHydrationEventReplay, queueHydrationEvent, readEventHydrationManifest, } from "./event-replay.js";
|
|
4
|
+
//# sourceMappingURL=render.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,4BAA4B,EAC5B,SAAS,EACT,WAAW,EACX,MAAM,EACN,sBAAsB,GACvB,MAAM,WAAW,CAAC;AAUnB,OAAO,EAAE,gCAAgC,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EACL,kCAAkC,EAClC,0BAA0B,EAC1B,mBAAmB,EACnB,0BAA0B,GAC3B,MAAM,mBAAmB,CAAC"}
|
package/dist/root.d.ts
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { ReactCompatNode } from "./element.js";
|
|
2
|
+
import { type HydrationRecoverableErrorInfo } from "./hydration.js";
|
|
3
|
+
import { type EventHydrationManifest } from "./event-replay.js";
|
|
4
|
+
export interface Root {
|
|
5
|
+
render(element: ReactCompatNode): void;
|
|
6
|
+
unmount(): void;
|
|
7
|
+
}
|
|
8
|
+
export interface RootOptions {
|
|
9
|
+
identifierPrefix?: string;
|
|
10
|
+
}
|
|
11
|
+
export interface HydrateRootOptions {
|
|
12
|
+
onRecoverableError?: (error: Error, info: HydrationRecoverableErrorInfo) => void;
|
|
13
|
+
resumeId?: string;
|
|
14
|
+
consumeResumeMarkers?: boolean;
|
|
15
|
+
identifierPrefix?: string;
|
|
16
|
+
}
|
|
17
|
+
export interface StreamingHydrationRoot {
|
|
18
|
+
hydrate(element: ReactCompatNode, options?: HydrateRootOptions): Root;
|
|
19
|
+
dispose(): void;
|
|
20
|
+
}
|
|
21
|
+
export interface StreamingHydrationRootOptions {
|
|
22
|
+
manifest?: EventHydrationManifest;
|
|
23
|
+
manifestRoot?: ParentNode;
|
|
24
|
+
fragmentRoot?: ParentNode;
|
|
25
|
+
applyOutOfOrderFragments?: boolean;
|
|
26
|
+
observeOutOfOrderFragments?: boolean;
|
|
27
|
+
selectiveHydration?: SelectiveHydrationOptions;
|
|
28
|
+
}
|
|
29
|
+
export interface SelectiveHydrationOptions {
|
|
30
|
+
element?: ReactCompatNode;
|
|
31
|
+
options?: HydrateRootOptions | ((event: Event) => HydrateRootOptions);
|
|
32
|
+
boundaries?: Record<string, SelectiveHydrationBoundary>;
|
|
33
|
+
}
|
|
34
|
+
export interface SelectiveHydrationBoundary {
|
|
35
|
+
element: ReactCompatNode;
|
|
36
|
+
options?: HydrateRootOptions | ((event: Event) => HydrateRootOptions);
|
|
37
|
+
}
|
|
38
|
+
export declare function createRoot(container: Element, options?: RootOptions): Root;
|
|
39
|
+
export declare function render(element: ReactCompatNode, container: Element): void;
|
|
40
|
+
export declare function flushSync<T>(callback: () => T): T;
|
|
41
|
+
export declare function hydrateRoot(container: Element, element: ReactCompatNode, options?: HydrateRootOptions): Root;
|
|
42
|
+
export declare function createStreamingHydrationRoot(container: Element, options?: StreamingHydrationRootOptions): StreamingHydrationRoot;
|
|
43
|
+
export declare function unmountComponentAtNode(container: Element): boolean;
|
|
44
|
+
//# sourceMappingURL=root.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"root.d.ts","sourceRoot":"","sources":["../src/root.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AASpD,OAAO,EAIL,KAAK,6BAA6B,EAEnC,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAIL,KAAK,sBAAsB,EAC5B,MAAM,mBAAmB,CAAC;AAqB3B,MAAM,WAAW,IAAI;IACnB,MAAM,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,CAAC;IACvC,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,kBAAkB;IACjC,kBAAkB,CAAC,EAAE,CACnB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,6BAA6B,KAChC,IAAI,CAAC;IACV,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,OAAO,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACtE,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC,YAAY,CAAC,EAAE,UAAU,CAAC;IAC1B,YAAY,CAAC,EAAE,UAAU,CAAC;IAC1B,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,kBAAkB,CAAC,EAAE,yBAAyB,CAAC;CAChD;AAED,MAAM,WAAW,yBAAyB;IACxC,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,OAAO,CAAC,EAAE,kBAAkB,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,kBAAkB,CAAC,CAAC;IACtE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,eAAe,CAAC;IACzB,OAAO,CAAC,EAAE,kBAAkB,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,kBAAkB,CAAC,CAAC;CACvE;AAID,wBAAgB,UAAU,CACxB,SAAS,EAAE,OAAO,EAClB,OAAO,GAAE,WAAgB,GACxB,IAAI,CAsCN;AA6FD,wBAAgB,MAAM,CAAC,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,OAAO,GAAG,IAAI,CAIzE;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAEjD;AAED,wBAAgB,WAAW,CACzB,SAAS,EAAE,OAAO,EAClB,OAAO,EAAE,eAAe,EACxB,OAAO,GAAE,kBAAuB,GAC/B,IAAI,CA0EN;AAcD,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,OAAO,EAClB,OAAO,GAAE,6BAAkC,GAC1C,sBAAsB,CA0ExB;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAYlE"}
|