@use-voltra/core 1.3.0-rc.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/README.md +30 -0
- package/build/cjs/index.js +23 -0
- package/build/cjs/index.js.map +1 -0
- package/build/cjs/jsx/createVoltraComponent.js +21 -0
- package/build/cjs/jsx/createVoltraComponent.js.map +1 -0
- package/build/cjs/package.json +3 -0
- package/build/cjs/payload/short-names.js +331 -0
- package/build/cjs/payload/short-names.js.map +1 -0
- package/build/cjs/payload.js +26 -0
- package/build/cjs/payload.js.map +1 -0
- package/build/cjs/renderer/context-registry.js +28 -0
- package/build/cjs/renderer/context-registry.js.map +1 -0
- package/build/cjs/renderer/dispatcher.js +62 -0
- package/build/cjs/renderer/dispatcher.js.map +1 -0
- package/build/cjs/renderer/element-registry.js +58 -0
- package/build/cjs/renderer/element-registry.js.map +1 -0
- package/build/cjs/renderer/flatten-styles.js +23 -0
- package/build/cjs/renderer/flatten-styles.js.map +1 -0
- package/build/cjs/renderer/index.js +23 -0
- package/build/cjs/renderer/index.js.map +1 -0
- package/build/cjs/renderer/render-cache.js +19 -0
- package/build/cjs/renderer/render-cache.js.map +1 -0
- package/build/cjs/renderer/renderer.js +358 -0
- package/build/cjs/renderer/renderer.js.map +1 -0
- package/build/cjs/renderer/stylesheet-registry.js +47 -0
- package/build/cjs/renderer/stylesheet-registry.js.map +1 -0
- package/build/cjs/renderer/types.js +3 -0
- package/build/cjs/renderer/types.js.map +1 -0
- package/build/cjs/styles/index.js +3 -0
- package/build/cjs/styles/index.js.map +1 -0
- package/build/cjs/styles/types.js +3 -0
- package/build/cjs/styles/types.js.map +1 -0
- package/build/cjs/types.js +3 -0
- package/build/cjs/types.js.map +1 -0
- package/build/esm/index.js +7 -0
- package/build/esm/index.js.map +1 -0
- package/build/esm/jsx/createVoltraComponent.js +16 -0
- package/build/esm/jsx/createVoltraComponent.js.map +1 -0
- package/build/esm/package.json +3 -0
- package/build/esm/payload/short-names.js +326 -0
- package/build/esm/payload/short-names.js.map +1 -0
- package/build/esm/payload.js +22 -0
- package/build/esm/payload.js.map +1 -0
- package/build/esm/renderer/context-registry.js +24 -0
- package/build/esm/renderer/context-registry.js.map +1 -0
- package/build/esm/renderer/dispatcher.js +54 -0
- package/build/esm/renderer/dispatcher.js.map +1 -0
- package/build/esm/renderer/element-registry.js +53 -0
- package/build/esm/renderer/element-registry.js.map +1 -0
- package/build/esm/renderer/flatten-styles.js +19 -0
- package/build/esm/renderer/flatten-styles.js.map +1 -0
- package/build/esm/renderer/index.js +8 -0
- package/build/esm/renderer/index.js.map +1 -0
- package/build/esm/renderer/render-cache.js +15 -0
- package/build/esm/renderer/render-cache.js.map +1 -0
- package/build/esm/renderer/renderer.js +351 -0
- package/build/esm/renderer/renderer.js.map +1 -0
- package/build/esm/renderer/stylesheet-registry.js +43 -0
- package/build/esm/renderer/stylesheet-registry.js.map +1 -0
- package/build/esm/renderer/types.js +2 -0
- package/build/esm/renderer/types.js.map +1 -0
- package/build/esm/styles/index.js +2 -0
- package/build/esm/styles/index.js.map +1 -0
- package/build/esm/styles/types.js +2 -0
- package/build/esm/styles/types.js.map +1 -0
- package/build/esm/types.js +2 -0
- package/build/esm/types.js.map +1 -0
- package/build/types/index.d.ts +7 -0
- package/build/types/index.d.ts.map +1 -0
- package/build/types/jsx/createVoltraComponent.d.ts +12 -0
- package/build/types/jsx/createVoltraComponent.d.ts.map +1 -0
- package/build/types/payload/short-names.d.ts +5 -0
- package/build/types/payload/short-names.d.ts.map +1 -0
- package/build/types/payload.d.ts +2 -0
- package/build/types/payload.d.ts.map +1 -0
- package/build/types/renderer/context-registry.d.ts +13 -0
- package/build/types/renderer/context-registry.d.ts.map +1 -0
- package/build/types/renderer/dispatcher.d.ts +35 -0
- package/build/types/renderer/dispatcher.d.ts.map +1 -0
- package/build/types/renderer/element-registry.d.ts +10 -0
- package/build/types/renderer/element-registry.d.ts.map +1 -0
- package/build/types/renderer/flatten-styles.d.ts +5 -0
- package/build/types/renderer/flatten-styles.d.ts.map +1 -0
- package/build/types/renderer/index.d.ts +9 -0
- package/build/types/renderer/index.d.ts.map +1 -0
- package/build/types/renderer/render-cache.d.ts +6 -0
- package/build/types/renderer/render-cache.d.ts.map +1 -0
- package/build/types/renderer/renderer.d.ts +26 -0
- package/build/types/renderer/renderer.d.ts.map +1 -0
- package/build/types/renderer/stylesheet-registry.d.ts +6 -0
- package/build/types/renderer/stylesheet-registry.d.ts.map +1 -0
- package/build/types/renderer/types.d.ts +4 -0
- package/build/types/renderer/types.d.ts.map +1 -0
- package/build/types/styles/index.d.ts +2 -0
- package/build/types/styles/index.d.ts.map +1 -0
- package/build/types/styles/types.d.ts +8 -0
- package/build/types/styles/types.d.ts.map +1 -0
- package/build/types/types.d.ts +36 -0
- package/build/types/types.d.ts.map +1 -0
- package/package.json +52 -0
|
@@ -0,0 +1,351 @@
|
|
|
1
|
+
import { isContextConsumer, isContextProvider, isForwardRef, isFragment, isLazy, isMemo, isPortal, isProfiler, isStrictMode, isSuspense, } from 'react-is';
|
|
2
|
+
import { isVoltraComponent } from '../jsx/createVoltraComponent.js';
|
|
3
|
+
import { shorten } from '../payload/short-names.js';
|
|
4
|
+
import { getContextRegistry } from './context-registry.js';
|
|
5
|
+
import { getHooksDispatcher, getReactCurrentDispatcher } from './dispatcher.js';
|
|
6
|
+
import { createElementRegistry, preScanForDuplicates } from './element-registry.js';
|
|
7
|
+
import { flattenStyle } from './flatten-styles.js';
|
|
8
|
+
import { getRenderCache } from './render-cache.js';
|
|
9
|
+
import { createStylesheetRegistry } from './stylesheet-registry.js';
|
|
10
|
+
function renderNode(element, context) {
|
|
11
|
+
if (element === null || element === undefined) {
|
|
12
|
+
return [];
|
|
13
|
+
}
|
|
14
|
+
if (typeof element === 'boolean') {
|
|
15
|
+
if (context.inStringOnlyContext) {
|
|
16
|
+
return '';
|
|
17
|
+
}
|
|
18
|
+
return [];
|
|
19
|
+
}
|
|
20
|
+
if (typeof element === 'string') {
|
|
21
|
+
if (context.inStringOnlyContext) {
|
|
22
|
+
return element;
|
|
23
|
+
}
|
|
24
|
+
throw new Error('Expected a React element, but got "string". Strings are only allowed as children of Text components.');
|
|
25
|
+
}
|
|
26
|
+
if (typeof element === 'number' || typeof element === 'bigint') {
|
|
27
|
+
if (context.inStringOnlyContext) {
|
|
28
|
+
return String(element);
|
|
29
|
+
}
|
|
30
|
+
throw new Error(`Expected a React element, but got "${typeof element}".`);
|
|
31
|
+
}
|
|
32
|
+
if (Array.isArray(element)) {
|
|
33
|
+
if (context.inStringOnlyContext) {
|
|
34
|
+
if (element.length === 0) {
|
|
35
|
+
throw new Error('Text component must have at least one child that resolves to a string.');
|
|
36
|
+
}
|
|
37
|
+
const results = [];
|
|
38
|
+
for (const child of element) {
|
|
39
|
+
const result = renderNode(child, context);
|
|
40
|
+
if (Array.isArray(result) && result.length === 0) {
|
|
41
|
+
continue;
|
|
42
|
+
}
|
|
43
|
+
if (typeof result !== 'string') {
|
|
44
|
+
throw new Error('Text component children must resolve to strings.');
|
|
45
|
+
}
|
|
46
|
+
results.push(result);
|
|
47
|
+
}
|
|
48
|
+
return results.join('');
|
|
49
|
+
}
|
|
50
|
+
return element.map((child) => renderNode(child, context)).flat();
|
|
51
|
+
}
|
|
52
|
+
if (context.duplicates?.has(element) && context.elementRegistry) {
|
|
53
|
+
const existingIndex = context.elementRegistry.isRegistered(element);
|
|
54
|
+
if (existingIndex !== undefined) {
|
|
55
|
+
return { $r: existingIndex };
|
|
56
|
+
}
|
|
57
|
+
const rendered = renderNodeInternal(element, context);
|
|
58
|
+
const index = context.elementRegistry.register(element, rendered);
|
|
59
|
+
return { $r: index };
|
|
60
|
+
}
|
|
61
|
+
return renderNodeInternal(element, context);
|
|
62
|
+
}
|
|
63
|
+
function renderNodeInternal(element, context) {
|
|
64
|
+
if (typeof element !== 'object' || element === null) {
|
|
65
|
+
throw new Error(`Expected element-like object with type and props, got ${typeof element}`);
|
|
66
|
+
}
|
|
67
|
+
if (!('type' in element) || !('props' in element)) {
|
|
68
|
+
throw new Error(`Expected element-like object with type and props, got ${typeof element}`);
|
|
69
|
+
}
|
|
70
|
+
if (typeof element.type === 'string') {
|
|
71
|
+
throw new Error(`Host component "${element.type}" is not supported in Voltra.`);
|
|
72
|
+
}
|
|
73
|
+
if (isStrictMode(element)) {
|
|
74
|
+
throw new Error('Strict mode is not supported in Voltra.');
|
|
75
|
+
}
|
|
76
|
+
if (isProfiler(element)) {
|
|
77
|
+
throw new Error('Profiler is not supported in Voltra.');
|
|
78
|
+
}
|
|
79
|
+
if (isSuspense(element)) {
|
|
80
|
+
throw new Error('Suspense is not supported in Voltra.');
|
|
81
|
+
}
|
|
82
|
+
if (isPortal(element) || element.type === Symbol.for('react.portal')) {
|
|
83
|
+
throw new Error('Portal is not supported in Voltra.');
|
|
84
|
+
}
|
|
85
|
+
if (isFragment(element) || element.type === Symbol.for('react.fragment')) {
|
|
86
|
+
const fragmentElement = element;
|
|
87
|
+
return renderNode(fragmentElement.props.children, context);
|
|
88
|
+
}
|
|
89
|
+
if (isMemo(element)) {
|
|
90
|
+
const memoElement = element;
|
|
91
|
+
const { type: memoizedComponent } = memoElement.type;
|
|
92
|
+
return renderNode({ ...memoElement, type: memoizedComponent }, context);
|
|
93
|
+
}
|
|
94
|
+
if (isForwardRef(element)) {
|
|
95
|
+
const forwardRefElement = element;
|
|
96
|
+
const { render } = forwardRefElement.type;
|
|
97
|
+
return renderFunctionalComponent(render, forwardRefElement.props, context);
|
|
98
|
+
}
|
|
99
|
+
if (isLazy(element)) {
|
|
100
|
+
const lazyElement = element;
|
|
101
|
+
const { lazy } = lazyElement.type;
|
|
102
|
+
return renderNode(lazy(), context);
|
|
103
|
+
}
|
|
104
|
+
if (isContextProvider(element)) {
|
|
105
|
+
const contextProviderElement = element;
|
|
106
|
+
const reactContext = contextProviderElement.type;
|
|
107
|
+
const { value, children } = contextProviderElement.props;
|
|
108
|
+
context.registry.pushProvider(reactContext, value);
|
|
109
|
+
const result = renderNode(children, context);
|
|
110
|
+
context.registry.popProvider(reactContext);
|
|
111
|
+
return result;
|
|
112
|
+
}
|
|
113
|
+
if (isContextConsumer(element)) {
|
|
114
|
+
const contextConsumerElement = element;
|
|
115
|
+
const reactContext = contextConsumerElement.type._context;
|
|
116
|
+
const value = context.registry.readContext(reactContext);
|
|
117
|
+
const children = contextConsumerElement.props.children;
|
|
118
|
+
if (typeof children === 'function') {
|
|
119
|
+
return renderNode(children(value), context);
|
|
120
|
+
}
|
|
121
|
+
throw new Error(`Expected a function as children of a context consumer, but got "${typeof children}".`);
|
|
122
|
+
}
|
|
123
|
+
if (element != null &&
|
|
124
|
+
typeof element === 'object' &&
|
|
125
|
+
'type' in element &&
|
|
126
|
+
'props' in element &&
|
|
127
|
+
typeof element.type === 'function') {
|
|
128
|
+
const reactElement = element;
|
|
129
|
+
const componentType = reactElement.type;
|
|
130
|
+
if (componentType.prototype && 'render' in componentType.prototype) {
|
|
131
|
+
throw new Error('Class components are not supported in Voltra.');
|
|
132
|
+
}
|
|
133
|
+
if (isVoltraComponent(componentType)) {
|
|
134
|
+
const child = componentType(reactElement.props);
|
|
135
|
+
if (typeof child !== 'object' || child === null || !('type' in child) || !('props' in child)) {
|
|
136
|
+
throw new Error(`Expected a React element, but got "${typeof child}".`);
|
|
137
|
+
}
|
|
138
|
+
if (typeof child.type !== 'string') {
|
|
139
|
+
throw new Error(`Expected a string as the type of a React element, but got "${typeof child.type}".`);
|
|
140
|
+
}
|
|
141
|
+
const { children, ...parameters } = child.props;
|
|
142
|
+
const isTextComponent = child.type === 'Text' || child.type === 'AndroidText';
|
|
143
|
+
const childContext = {
|
|
144
|
+
...context,
|
|
145
|
+
inStringOnlyContext: isTextComponent,
|
|
146
|
+
};
|
|
147
|
+
const renderedChildren = children !== null && children !== undefined ? renderNode(children, childContext) : isTextComponent ? '' : [];
|
|
148
|
+
const id = typeof parameters.id === 'string' ? parameters.id : undefined;
|
|
149
|
+
const { id: _id, ...cleanParameters } = parameters;
|
|
150
|
+
if (isTextComponent) {
|
|
151
|
+
if (typeof renderedChildren !== 'string') {
|
|
152
|
+
throw new Error('Text component children must resolve to a string. Nested components are allowed, but they must eventually resolve to a string.');
|
|
153
|
+
}
|
|
154
|
+
const transformedProps = transformProps(cleanParameters, context);
|
|
155
|
+
const hasProps = Object.keys(transformedProps).length > 0;
|
|
156
|
+
return {
|
|
157
|
+
t: context.componentRegistry.getComponentId(child.type),
|
|
158
|
+
...(id ? { i: id } : {}),
|
|
159
|
+
c: renderedChildren,
|
|
160
|
+
...(hasProps ? { p: transformedProps } : {}),
|
|
161
|
+
};
|
|
162
|
+
}
|
|
163
|
+
if (typeof renderedChildren === 'string') {
|
|
164
|
+
throw new Error('Unexpected string in non-Text component children.');
|
|
165
|
+
}
|
|
166
|
+
const transformedProps = transformProps(cleanParameters, context);
|
|
167
|
+
const hasProps = Object.keys(transformedProps).length > 0;
|
|
168
|
+
const hasChildren = Array.isArray(renderedChildren) ? renderedChildren.length > 0 : true;
|
|
169
|
+
return {
|
|
170
|
+
t: context.componentRegistry.getComponentId(child.type),
|
|
171
|
+
...(id ? { i: id } : {}),
|
|
172
|
+
...(hasChildren ? { c: renderedChildren } : {}),
|
|
173
|
+
...(hasProps ? { p: transformedProps } : {}),
|
|
174
|
+
};
|
|
175
|
+
}
|
|
176
|
+
return renderFunctionalComponent(componentType, reactElement.props, context);
|
|
177
|
+
}
|
|
178
|
+
throw new Error(`Unsupported element type "${String(element.type)}". Report this as a bug in the Voltra project.`);
|
|
179
|
+
}
|
|
180
|
+
export const renderFunctionalComponent = (Component, props, context) => {
|
|
181
|
+
const reactDispatcher = getReactCurrentDispatcher();
|
|
182
|
+
const prevHooksDispatcher = reactDispatcher.H;
|
|
183
|
+
try {
|
|
184
|
+
reactDispatcher.H = getHooksDispatcher(context.registry);
|
|
185
|
+
const result = Component(props);
|
|
186
|
+
if (result instanceof Promise) {
|
|
187
|
+
throw new Error(`Component "${Component.name || 'Anonymous'}" tried to suspend (returned a Promise). Async components are not supported in this synchronous renderer.`);
|
|
188
|
+
}
|
|
189
|
+
return renderNode(result, context);
|
|
190
|
+
}
|
|
191
|
+
catch (error) {
|
|
192
|
+
if (error instanceof Promise) {
|
|
193
|
+
throw new Error(`Component "${Component.name || 'Anonymous'}" suspended! Voltra does not support Suspense/Promises.`);
|
|
194
|
+
}
|
|
195
|
+
throw error;
|
|
196
|
+
}
|
|
197
|
+
finally {
|
|
198
|
+
reactDispatcher.H = prevHooksDispatcher;
|
|
199
|
+
}
|
|
200
|
+
};
|
|
201
|
+
export const renderVariantToJson = (element, componentRegistry) => {
|
|
202
|
+
const registry = getContextRegistry();
|
|
203
|
+
const context = {
|
|
204
|
+
registry,
|
|
205
|
+
componentRegistry,
|
|
206
|
+
};
|
|
207
|
+
return renderNode(element, context);
|
|
208
|
+
};
|
|
209
|
+
function compressStyleObject(style) {
|
|
210
|
+
if (style === null || style === undefined) {
|
|
211
|
+
return style;
|
|
212
|
+
}
|
|
213
|
+
const flattened = flattenStyle(style);
|
|
214
|
+
const compressed = {};
|
|
215
|
+
for (const [key, value] of Object.entries(flattened)) {
|
|
216
|
+
const shortKey = shorten(key);
|
|
217
|
+
if (value === null || value === undefined) {
|
|
218
|
+
continue;
|
|
219
|
+
}
|
|
220
|
+
if (typeof value === 'object' && !Array.isArray(value) && value.constructor === Object) {
|
|
221
|
+
const compressedNested = {};
|
|
222
|
+
for (const [nestedKey, nestedValue] of Object.entries(value)) {
|
|
223
|
+
compressedNested[nestedKey] = nestedValue;
|
|
224
|
+
}
|
|
225
|
+
compressed[shortKey] = compressedNested;
|
|
226
|
+
}
|
|
227
|
+
else {
|
|
228
|
+
compressed[shortKey] = value;
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
return compressed;
|
|
232
|
+
}
|
|
233
|
+
function isReactNode(value) {
|
|
234
|
+
if (value === null || value === undefined || value === false || value === true) {
|
|
235
|
+
return false;
|
|
236
|
+
}
|
|
237
|
+
if (typeof value === 'string' || typeof value === 'number' || typeof value === 'bigint') {
|
|
238
|
+
return false;
|
|
239
|
+
}
|
|
240
|
+
if (Array.isArray(value)) {
|
|
241
|
+
return true;
|
|
242
|
+
}
|
|
243
|
+
if (typeof value === 'object' && value !== null && 'type' in value && 'props' in value) {
|
|
244
|
+
return true;
|
|
245
|
+
}
|
|
246
|
+
return false;
|
|
247
|
+
}
|
|
248
|
+
export function transformProps(props, context) {
|
|
249
|
+
const transformed = {};
|
|
250
|
+
for (const [key, value] of Object.entries(props)) {
|
|
251
|
+
if (key === 'style') {
|
|
252
|
+
const shortKey = shorten(key);
|
|
253
|
+
if (context.stylesheetRegistry) {
|
|
254
|
+
const index = context.stylesheetRegistry.registerStyle(value);
|
|
255
|
+
transformed[shortKey] = index;
|
|
256
|
+
}
|
|
257
|
+
else {
|
|
258
|
+
transformed[shortKey] = compressStyleObject(value);
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
else if (isReactNode(value)) {
|
|
262
|
+
const serializedComponent = renderNode(value, {
|
|
263
|
+
registry: getContextRegistry(),
|
|
264
|
+
stylesheetRegistry: context.stylesheetRegistry,
|
|
265
|
+
elementRegistry: context.elementRegistry,
|
|
266
|
+
duplicates: context.duplicates,
|
|
267
|
+
inStringOnlyContext: false,
|
|
268
|
+
componentRegistry: context.componentRegistry,
|
|
269
|
+
});
|
|
270
|
+
const shortKey = shorten(key);
|
|
271
|
+
transformed[shortKey] = serializedComponent;
|
|
272
|
+
}
|
|
273
|
+
else {
|
|
274
|
+
const shortKey = shorten(key);
|
|
275
|
+
transformed[shortKey] = value;
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
return transformed;
|
|
279
|
+
}
|
|
280
|
+
export const VOLTRA_PAYLOAD_VERSION = 1;
|
|
281
|
+
export const createVoltraRenderer = (componentRegistry) => {
|
|
282
|
+
const rootNodes = [];
|
|
283
|
+
let duplicates;
|
|
284
|
+
let stylesheetRegistry;
|
|
285
|
+
let elementRegistry;
|
|
286
|
+
let renderCache;
|
|
287
|
+
const addRootNode = (name, node) => {
|
|
288
|
+
if (node === null || node === undefined) {
|
|
289
|
+
return;
|
|
290
|
+
}
|
|
291
|
+
rootNodes.push({ name, node });
|
|
292
|
+
};
|
|
293
|
+
const preScanAllNodes = () => {
|
|
294
|
+
const seen = new Set();
|
|
295
|
+
const duplicatesSet = new Set();
|
|
296
|
+
for (const { node } of rootNodes) {
|
|
297
|
+
if (node && typeof node === 'object') {
|
|
298
|
+
if (seen.has(node)) {
|
|
299
|
+
duplicatesSet.add(node);
|
|
300
|
+
}
|
|
301
|
+
else {
|
|
302
|
+
seen.add(node);
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
const nodeDuplicates = preScanForDuplicates(node);
|
|
306
|
+
for (const dup of nodeDuplicates) {
|
|
307
|
+
duplicatesSet.add(dup);
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
return duplicatesSet;
|
|
311
|
+
};
|
|
312
|
+
const render = () => {
|
|
313
|
+
stylesheetRegistry = createStylesheetRegistry();
|
|
314
|
+
elementRegistry = createElementRegistry();
|
|
315
|
+
duplicates = preScanAllNodes();
|
|
316
|
+
const renderVariantToJson = (element) => {
|
|
317
|
+
const registry = getContextRegistry();
|
|
318
|
+
const context = {
|
|
319
|
+
registry,
|
|
320
|
+
stylesheetRegistry,
|
|
321
|
+
elementRegistry,
|
|
322
|
+
duplicates,
|
|
323
|
+
componentRegistry,
|
|
324
|
+
};
|
|
325
|
+
return renderNode(element, context);
|
|
326
|
+
};
|
|
327
|
+
renderCache = getRenderCache(renderVariantToJson);
|
|
328
|
+
const result = {
|
|
329
|
+
v: VOLTRA_PAYLOAD_VERSION,
|
|
330
|
+
};
|
|
331
|
+
for (const { name, node } of rootNodes) {
|
|
332
|
+
if (node !== null && node !== undefined) {
|
|
333
|
+
result[name] = renderCache.getOrRender(node);
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
const sharedElements = elementRegistry.getElements();
|
|
337
|
+
if (sharedElements.length > 0) {
|
|
338
|
+
result.e = sharedElements;
|
|
339
|
+
}
|
|
340
|
+
const styles = stylesheetRegistry.getStyles();
|
|
341
|
+
if (styles.length > 0) {
|
|
342
|
+
result.s = styles;
|
|
343
|
+
}
|
|
344
|
+
return result;
|
|
345
|
+
};
|
|
346
|
+
return {
|
|
347
|
+
addRootNode,
|
|
348
|
+
render,
|
|
349
|
+
};
|
|
350
|
+
};
|
|
351
|
+
//# sourceMappingURL=renderer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderer.js","sourceRoot":"","sources":["../../../src/renderer/renderer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { shorten } from '../payload/short-names.js';
|
|
2
|
+
import { flattenStyle } from './flatten-styles.js';
|
|
3
|
+
function compressStyleObject(style) {
|
|
4
|
+
if (style === null || style === undefined) {
|
|
5
|
+
return style;
|
|
6
|
+
}
|
|
7
|
+
const flattened = flattenStyle(style);
|
|
8
|
+
const compressed = {};
|
|
9
|
+
for (const [key, value] of Object.entries(flattened)) {
|
|
10
|
+
const shortKey = shorten(key);
|
|
11
|
+
if (value === null || value === undefined) {
|
|
12
|
+
continue;
|
|
13
|
+
}
|
|
14
|
+
if (typeof value === 'object' && !Array.isArray(value) && value.constructor === Object) {
|
|
15
|
+
const compressedNested = {};
|
|
16
|
+
for (const [nestedKey, nestedValue] of Object.entries(value)) {
|
|
17
|
+
compressedNested[nestedKey] = nestedValue;
|
|
18
|
+
}
|
|
19
|
+
compressed[shortKey] = compressedNested;
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
compressed[shortKey] = value;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
return compressed;
|
|
26
|
+
}
|
|
27
|
+
export const createStylesheetRegistry = () => {
|
|
28
|
+
const styleToIndex = new Map();
|
|
29
|
+
const styles = [];
|
|
30
|
+
return {
|
|
31
|
+
registerStyle: (styleObject) => {
|
|
32
|
+
const existing = styleToIndex.get(styleObject);
|
|
33
|
+
if (existing !== undefined)
|
|
34
|
+
return existing;
|
|
35
|
+
const index = styles.length;
|
|
36
|
+
styleToIndex.set(styleObject, index);
|
|
37
|
+
styles.push(compressStyleObject(styleObject));
|
|
38
|
+
return index;
|
|
39
|
+
},
|
|
40
|
+
getStyles: () => styles,
|
|
41
|
+
};
|
|
42
|
+
};
|
|
43
|
+
//# sourceMappingURL=stylesheet-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stylesheet-registry.js","sourceRoot":"","sources":["../../../src/renderer/stylesheet-registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAElD,SAAS,mBAAmB,CAAC,KAAU;IACrC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QAC1C,OAAO,KAAK,CAAA;IACd,CAAC;IAED,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAA;IACrC,MAAM,UAAU,GAAwB,EAAE,CAAA;IAE1C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QACrD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;QAE7B,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YAC1C,SAAQ;QACV,CAAC;QAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,WAAW,KAAK,MAAM,EAAE,CAAC;YACvF,MAAM,gBAAgB,GAAwB,EAAE,CAAA;YAChD,KAAK,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7D,gBAAgB,CAAC,SAAS,CAAC,GAAG,WAAW,CAAA;YAC3C,CAAC;YACD,UAAU,CAAC,QAAQ,CAAC,GAAG,gBAAgB,CAAA;QACzC,CAAC;aAAM,CAAC;YACN,UAAU,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAA;QAC9B,CAAC;IACH,CAAC;IAED,OAAO,UAAU,CAAA;AACnB,CAAC;AAOD,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAuB,EAAE;IAC/D,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAA;IAC9C,MAAM,MAAM,GAA8B,EAAE,CAAA;IAE5C,OAAO;QACL,aAAa,EAAE,CAAC,WAAmB,EAAU,EAAE;YAC7C,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;YAC9C,IAAI,QAAQ,KAAK,SAAS;gBAAE,OAAO,QAAQ,CAAA;YAE3C,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAA;YAC3B,YAAY,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC,CAAA;YACpC,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC,CAAA;YAC7C,OAAO,KAAK,CAAA;QACd,CAAC;QACD,SAAS,EAAE,GAAG,EAAE,CAAC,MAAM;KACxB,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/renderer/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/styles/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/styles/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAA;AAC9C,cAAc,cAAc,CAAA;AAC5B,cAAc,0BAA0B,CAAA;AACxC,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAA;AACjC,cAAc,YAAY,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ComponentType } from 'react';
|
|
2
|
+
export declare const VOLTRA_COMPONENT_TAG: unique symbol;
|
|
3
|
+
export type VoltraComponent<TProps extends Record<string, unknown>> = ComponentType<TProps> & {
|
|
4
|
+
displayName: string;
|
|
5
|
+
[VOLTRA_COMPONENT_TAG]: true;
|
|
6
|
+
};
|
|
7
|
+
export type VoltraComponentOptions<TProps extends Record<string, unknown>> = {
|
|
8
|
+
toJSON?: (props: TProps) => Record<string, unknown>;
|
|
9
|
+
};
|
|
10
|
+
export declare const createVoltraComponent: <TProps extends Record<string, unknown>>(componentName: string, options?: VoltraComponentOptions<TProps>) => VoltraComponent<TProps>;
|
|
11
|
+
export declare const isVoltraComponent: <TProps extends Record<string, unknown>>(component: ComponentType<TProps>) => component is VoltraComponent<TProps>;
|
|
12
|
+
//# sourceMappingURL=createVoltraComponent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createVoltraComponent.d.ts","sourceRoot":"","sources":["../../../src/jsx/createVoltraComponent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAG1C,eAAO,MAAM,oBAAoB,eAAqC,CAAA;AAEtE,MAAM,MAAM,eAAe,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,aAAa,CAAC,MAAM,CAAC,GAAG;IAC5F,WAAW,EAAE,MAAM,CAAA;IACnB,CAAC,oBAAoB,CAAC,EAAE,IAAI,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,sBAAsB,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI;IAC3E,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACpD,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAI,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC1E,eAAe,MAAM,EACrB,UAAU,sBAAsB,CAAC,MAAM,CAAC,KACvC,eAAe,CAAC,MAAM,CAYxB,CAAA;AAED,eAAO,MAAM,iBAAiB,GAAI,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACtE,WAAW,aAAa,CAAC,MAAM,CAAC,KAC/B,SAAS,IAAI,eAAe,CAAC,MAAM,CAErC,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare const NAME_TO_SHORT: Record<string, string>;
|
|
2
|
+
export declare const SHORT_TO_NAME: Record<string, string>;
|
|
3
|
+
export declare function shorten(name: string): string;
|
|
4
|
+
export declare function expand(short: string): string;
|
|
5
|
+
//# sourceMappingURL=short-names.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"short-names.d.ts","sourceRoot":"","sources":["../../../src/payload/short-names.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA6JhD,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA6JhD,CAAA;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE5C;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE5C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"payload.d.ts","sourceRoot":"","sources":["../../src/payload.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,yBAAyB,GAAI,mBAAmB,MAAM,KAAG,IAQrE,CAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Context } from 'react';
|
|
2
|
+
declare module 'react' {
|
|
3
|
+
interface Context<T> {
|
|
4
|
+
_currentValue: T;
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
export type ContextRegistry = {
|
|
8
|
+
pushProvider: <T>(context: Context<T>, value: T) => void;
|
|
9
|
+
popProvider: <T>(context: Context<T>) => void;
|
|
10
|
+
readContext: <T>(context: Context<T>) => T;
|
|
11
|
+
};
|
|
12
|
+
export declare const getContextRegistry: () => ContextRegistry;
|
|
13
|
+
//# sourceMappingURL=context-registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-registry.d.ts","sourceRoot":"","sources":["../../../src/renderer/context-registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAE/B,OAAO,QAAQ,OAAO,CAAC;IACrB,UAAU,OAAO,CAAC,CAAC;QACjB,aAAa,EAAE,CAAC,CAAA;KACjB;CACF;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,YAAY,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,CAAA;IACxD,WAAW,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,IAAI,CAAA;IAC7C,WAAW,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;CAC3C,CAAA;AAED,eAAO,MAAM,kBAAkB,QAAO,eAyBrC,CAAA"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { ReactDispatcher, ReactHooksDispatcher } from 'react';
|
|
2
|
+
import { ContextRegistry } from './context-registry.js';
|
|
3
|
+
declare module 'react' {
|
|
4
|
+
type HookFn = (...args: any[]) => any;
|
|
5
|
+
type ReactHooksDispatcher = {
|
|
6
|
+
useState: HookFn;
|
|
7
|
+
useReducer: HookFn;
|
|
8
|
+
useEffect: HookFn;
|
|
9
|
+
useLayoutEffect: HookFn;
|
|
10
|
+
useInsertionEffect: HookFn;
|
|
11
|
+
useCallback: HookFn;
|
|
12
|
+
useMemo: HookFn;
|
|
13
|
+
useRef: HookFn;
|
|
14
|
+
useContext: HookFn;
|
|
15
|
+
useId: HookFn;
|
|
16
|
+
useImperativeHandle: HookFn;
|
|
17
|
+
useDebugValue: HookFn;
|
|
18
|
+
useDeferredValue: HookFn;
|
|
19
|
+
useTransition: HookFn;
|
|
20
|
+
useSyncExternalStore: HookFn;
|
|
21
|
+
use: HookFn;
|
|
22
|
+
useActionState: HookFn;
|
|
23
|
+
useOptimistic: HookFn;
|
|
24
|
+
useEffectEvent: HookFn;
|
|
25
|
+
useMemoCache: HookFn;
|
|
26
|
+
useCacheRefresh: HookFn;
|
|
27
|
+
};
|
|
28
|
+
type ReactDispatcher = {
|
|
29
|
+
H: ReactHooksDispatcher;
|
|
30
|
+
};
|
|
31
|
+
let __CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE: ReactDispatcher;
|
|
32
|
+
}
|
|
33
|
+
export declare const getHooksDispatcher: (registry: ContextRegistry) => ReactHooksDispatcher;
|
|
34
|
+
export declare const getReactCurrentDispatcher: () => ReactDispatcher;
|
|
35
|
+
//# sourceMappingURL=dispatcher.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dispatcher.d.ts","sourceRoot":"","sources":["../../../src/renderer/dispatcher.ts"],"names":[],"mappings":"AAAA,OAAc,EAAW,eAAe,EAAE,oBAAoB,EAAE,MAAM,OAAO,CAAA;AAE7E,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAKvD,OAAO,QAAQ,OAAO,CAAC;IACrB,KAAK,MAAM,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAA;IAErC,KAAY,oBAAoB,GAAG;QACjC,QAAQ,EAAE,MAAM,CAAA;QAChB,UAAU,EAAE,MAAM,CAAA;QAClB,SAAS,EAAE,MAAM,CAAA;QACjB,eAAe,EAAE,MAAM,CAAA;QACvB,kBAAkB,EAAE,MAAM,CAAA;QAC1B,WAAW,EAAE,MAAM,CAAA;QACnB,OAAO,EAAE,MAAM,CAAA;QACf,MAAM,EAAE,MAAM,CAAA;QACd,UAAU,EAAE,MAAM,CAAA;QAClB,KAAK,EAAE,MAAM,CAAA;QACb,mBAAmB,EAAE,MAAM,CAAA;QAC3B,aAAa,EAAE,MAAM,CAAA;QACrB,gBAAgB,EAAE,MAAM,CAAA;QACxB,aAAa,EAAE,MAAM,CAAA;QACrB,oBAAoB,EAAE,MAAM,CAAA;QAC5B,GAAG,EAAE,MAAM,CAAA;QACX,cAAc,EAAE,MAAM,CAAA;QACtB,aAAa,EAAE,MAAM,CAAA;QACrB,cAAc,EAAE,MAAM,CAAA;QACtB,YAAY,EAAE,MAAM,CAAA;QACpB,eAAe,EAAE,MAAM,CAAA;KACxB,CAAA;IAED,KAAY,eAAe,GAAG;QAC5B,CAAC,EAAE,oBAAoB,CAAA;KACxB,CAAA;IAED,IAAI,+DAA+D,EAAE,eAAe,CAAA;CACrF;AAED,eAAO,MAAM,kBAAkB,GAAI,UAAU,eAAe,KAAG,oBA2D7D,CAAA;AAEF,eAAO,MAAM,yBAAyB,QAAO,eAE5C,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { VoltraNodeJson } from '../types.js';
|
|
3
|
+
export type ElementRegistry = {
|
|
4
|
+
isRegistered: (element: ReactNode) => number | undefined;
|
|
5
|
+
register: (element: ReactNode, rendered: VoltraNodeJson) => number;
|
|
6
|
+
getElements: () => VoltraNodeJson[];
|
|
7
|
+
};
|
|
8
|
+
export declare const createElementRegistry: () => ElementRegistry;
|
|
9
|
+
export declare const preScanForDuplicates: (element: ReactNode) => Set<ReactNode>;
|
|
10
|
+
//# sourceMappingURL=element-registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"element-registry.d.ts","sourceRoot":"","sources":["../../../src/renderer/element-registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAE5C,MAAM,MAAM,eAAe,GAAG;IAC5B,YAAY,EAAE,CAAC,OAAO,EAAE,SAAS,KAAK,MAAM,GAAG,SAAS,CAAA;IACxD,QAAQ,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,KAAK,MAAM,CAAA;IAClE,WAAW,EAAE,MAAM,cAAc,EAAE,CAAA;CACpC,CAAA;AAED,eAAO,MAAM,qBAAqB,QAAO,eAgBxC,CAAA;AAED,eAAO,MAAM,oBAAoB,GAAI,SAAS,SAAS,KAAG,GAAG,CAAC,SAAS,CAwCtE,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
type StyleProp<T> = T | T[] | null | undefined | false;
|
|
2
|
+
type FlatStyleProp<T> = T extends (infer U)[] ? FlatStyleProp<U> : T;
|
|
3
|
+
export declare const flattenStyle: <T extends StyleProp<unknown>>(style: T | null | undefined) => FlatStyleProp<T> | null;
|
|
4
|
+
export {};
|
|
5
|
+
//# sourceMappingURL=flatten-styles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flatten-styles.d.ts","sourceRoot":"","sources":["../../../src/renderer/flatten-styles.ts"],"names":[],"mappings":"AAAA,KAAK,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,KAAK,CAAA;AAEtD,KAAK,aAAa,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;AAEpE,eAAO,MAAM,YAAY,GAAI,CAAC,SAAS,SAAS,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,KAAG,aAAa,CAAC,CAAC,CAAC,GAAG,IAmB3G,CAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export { type ContextRegistry, getContextRegistry } from './context-registry.js';
|
|
2
|
+
export { getHooksDispatcher, getReactCurrentDispatcher } from './dispatcher.js';
|
|
3
|
+
export { createElementRegistry, type ElementRegistry, preScanForDuplicates } from './element-registry.js';
|
|
4
|
+
export { flattenStyle } from './flatten-styles.js';
|
|
5
|
+
export { getRenderCache, type RenderCache } from './render-cache.js';
|
|
6
|
+
export { type ComponentRegistry, createVoltraRenderer, renderVariantToJson, transformProps, VOLTRA_PAYLOAD_VERSION, } from './renderer.js';
|
|
7
|
+
export { createStylesheetRegistry, type StylesheetRegistry } from './stylesheet-registry.js';
|
|
8
|
+
export type { VoltraVariantRenderer } from './types.js';
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/renderer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAChF,OAAO,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAA;AAC/E,OAAO,EAAE,qBAAqB,EAAE,KAAK,eAAe,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AACzG,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAA;AACpE,OAAO,EACL,KAAK,iBAAiB,EACtB,oBAAoB,EACpB,mBAAmB,EACnB,cAAc,EACd,sBAAsB,GACvB,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,wBAAwB,EAAE,KAAK,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAC5F,YAAY,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render-cache.d.ts","sourceRoot":"","sources":["../../../src/renderer/render-cache.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAElD,MAAM,MAAM,WAAW,GAAG;IACxB,WAAW,EAAE,qBAAqB,CAAA;CACnC,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,UAAU,qBAAqB,KAAG,WAiBhE,CAAA"}
|