@lynx-js/react 0.110.1 → 0.111.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 +50 -0
- package/components/lib/DeferredListItem.d.ts +7 -0
- package/components/lib/DeferredListItem.jsx +40 -0
- package/components/lib/DeferredListItem.jsx.map +1 -0
- package/components/lib/index.d.ts +1 -0
- package/components/lib/index.js +1 -0
- package/components/lib/index.js.map +1 -1
- package/components/src/DeferredListItem.tsx +56 -0
- package/components/src/index.ts +1 -0
- package/package.json +1 -1
- package/refresh/.turbo/turbo-build.log +7 -3
- package/refresh/dist/index.js +223 -284
- package/refresh/package.json +3 -4
- package/refresh/rslib.config.ts +24 -0
- package/runtime/lazy/react-lepus.js +1 -0
- package/runtime/lazy/react.js +1 -0
- package/runtime/lepus/index.d.ts +1 -1
- package/runtime/lepus/index.js +44 -0
- package/runtime/lib/backgroundSnapshot.d.ts +2 -1
- package/runtime/lib/backgroundSnapshot.js +62 -40
- package/runtime/lib/backgroundSnapshot.js.map +1 -1
- package/runtime/lib/compat/initData.js +10 -0
- package/runtime/lib/compat/initData.js.map +1 -1
- package/runtime/lib/index.d.ts +2 -2
- package/runtime/lib/index.js +2 -2
- package/runtime/lib/index.js.map +1 -1
- package/runtime/lib/lifecycle/patch/commit.js +5 -5
- package/runtime/lib/lifecycle/patch/commit.js.map +1 -1
- package/runtime/lib/lifecycle/patch/snapshotPatch.d.ts +9 -9
- package/runtime/lib/lifecycle/patch/snapshotPatch.js +9 -10
- package/runtime/lib/lifecycle/patch/snapshotPatch.js.map +1 -1
- package/runtime/lib/lifecycle/patch/updateMainThread.js +7 -8
- package/runtime/lib/lifecycle/patch/updateMainThread.js.map +1 -1
- package/runtime/lib/lifecycleConstant.d.ts +2 -1
- package/runtime/lib/lifecycleConstant.js +1 -0
- package/runtime/lib/lifecycleConstant.js.map +1 -1
- package/runtime/lib/list.js +102 -12
- package/runtime/lib/list.js.map +1 -1
- package/runtime/lib/lynx/calledByNative.js +6 -9
- package/runtime/lib/lynx/calledByNative.js.map +1 -1
- package/runtime/lib/lynx/component.js +11 -14
- package/runtime/lib/lynx/component.js.map +1 -1
- package/runtime/lib/lynx/env.js +1 -2
- package/runtime/lib/lynx/env.js.map +1 -1
- package/runtime/lib/lynx/lazy-bundle.js +48 -21
- package/runtime/lib/lynx/lazy-bundle.js.map +1 -1
- package/runtime/lib/lynx/performance.d.ts +3 -19
- package/runtime/lib/lynx/performance.js +25 -26
- package/runtime/lib/lynx/performance.js.map +1 -1
- package/runtime/lib/lynx/tt.js +10 -5
- package/runtime/lib/lynx/tt.js.map +1 -1
- package/runtime/lib/lynx-api.d.ts +78 -1
- package/runtime/lib/lynx-api.js.map +1 -1
- package/runtime/lib/snapshot.d.ts +2 -0
- package/runtime/lib/snapshot.js +19 -5
- package/runtime/lib/snapshot.js.map +1 -1
- package/runtime/lib/utils.d.ts +1 -0
- package/runtime/lib/utils.js +6 -0
- package/runtime/lib/utils.js.map +1 -1
- package/runtime/src/backgroundSnapshot.ts +74 -55
- package/runtime/src/compat/initData.ts +10 -0
- package/runtime/src/index.ts +2 -0
- package/runtime/src/lifecycle/patch/commit.ts +5 -11
- package/runtime/src/lifecycle/patch/snapshotPatch.ts +9 -9
- package/runtime/src/lifecycle/patch/updateMainThread.ts +7 -8
- package/runtime/src/lifecycleConstant.ts +1 -0
- package/runtime/src/list.ts +118 -15
- package/runtime/src/lynx/calledByNative.ts +6 -8
- package/runtime/src/lynx/component.ts +17 -29
- package/runtime/src/lynx/env.ts +1 -2
- package/runtime/src/lynx/lazy-bundle.ts +55 -20
- package/runtime/src/lynx/performance.ts +26 -27
- package/runtime/src/lynx/tt.ts +10 -11
- package/runtime/src/lynx-api.ts +77 -1
- package/runtime/src/snapshot.ts +20 -5
- package/runtime/src/utils.ts +9 -0
- package/testing-library/dist/env/vitest.js +6 -3
- package/testing-library/dist/index.d.ts +4 -1
- package/testing-library/dist/pure.js +4 -2
- package/testing-library/dist/vitest-global-setup.js +2 -2
- package/testing-library/dist/vitest.config.js +38 -1
- package/testing-library/types/entry.d.ts +3 -2
- package/transform/dist/wasm.cjs +1 -1
- package/types/react.d.ts +21 -1
- package/types/react.docs.d.ts +1 -1
- package/worklet-runtime/dist/dev.js +403 -506
- package/worklet-runtime/dist/main.js +1 -517
- package/worklet-runtime/lib/workletRuntime.js +5 -5
- package/worklet-runtime/lib/workletRuntime.js.map +1 -1
package/runtime/lib/lynx/tt.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
// LICENSE file in the root directory of this source tree.
|
|
4
4
|
import { render } from 'preact';
|
|
5
5
|
import { LifecycleConstant, NativeUpdateDataType } from '../lifecycleConstant.js';
|
|
6
|
-
import { PerformanceTimingFlags,
|
|
6
|
+
import { PerformanceTimingFlags, PipelineOrigins, beginPipeline, markTiming } from './performance.js';
|
|
7
7
|
import { BackgroundSnapshotInstance, hydrate } from '../backgroundSnapshot.js';
|
|
8
8
|
import { runWithForce } from './runWithForce.js';
|
|
9
9
|
import { destroyBackground } from '../lifecycle/destroy.js';
|
|
@@ -64,15 +64,15 @@ function onLifecycleEventImpl(type, data) {
|
|
|
64
64
|
console.profile('hydrate');
|
|
65
65
|
}
|
|
66
66
|
beginPipeline(true, PipelineOrigins.reactLynxHydrate, PerformanceTimingFlags.reactLynxHydrate);
|
|
67
|
-
markTiming(
|
|
67
|
+
markTiming('hydrateParseSnapshotStart');
|
|
68
68
|
const before = JSON.parse(lepusSide);
|
|
69
|
-
markTiming(
|
|
70
|
-
markTiming(
|
|
69
|
+
markTiming('hydrateParseSnapshotEnd');
|
|
70
|
+
markTiming('diffVdomStart');
|
|
71
71
|
const snapshotPatch = hydrate(before, __root);
|
|
72
72
|
if (__PROFILE__) {
|
|
73
73
|
console.profileEnd();
|
|
74
74
|
}
|
|
75
|
-
markTiming(
|
|
75
|
+
markTiming('diffVdomEnd');
|
|
76
76
|
// TODO: It seems `delayedEvents` and `delayedLifecycleEvents` should be merged into one array to ensure the proper order of events.
|
|
77
77
|
flushDelayedLifecycleEvents();
|
|
78
78
|
if (delayedEvents) {
|
|
@@ -120,6 +120,11 @@ function onLifecycleEventImpl(type, data) {
|
|
|
120
120
|
lynx.getJSModule('GlobalEventEmitter').trigger(eventName, params);
|
|
121
121
|
break;
|
|
122
122
|
}
|
|
123
|
+
case LifecycleConstant.publishEvent: {
|
|
124
|
+
const { handlerName, data: d } = data;
|
|
125
|
+
lynxCoreInject.tt.publishEvent(handlerName, d);
|
|
126
|
+
break;
|
|
127
|
+
}
|
|
123
128
|
}
|
|
124
129
|
}
|
|
125
130
|
let flushingDelayedLifecycleEvents = false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tt.js","sourceRoot":"","sources":["../../src/lynx/tt.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,yEAAyE;AACzE,0DAA0D;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAElF,OAAO,
|
|
1
|
+
{"version":3,"file":"tt.js","sourceRoot":"","sources":["../../src/lynx/tt.ts"],"names":[],"mappings":"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"}
|
|
@@ -154,6 +154,83 @@ export interface InitDataRaw {
|
|
|
154
154
|
export interface InitData {
|
|
155
155
|
}
|
|
156
156
|
export { withInitDataInState };
|
|
157
|
+
/**
|
|
158
|
+
* The data processors that registered with {@link Lynx.registerDataProcessors}.
|
|
159
|
+
*
|
|
160
|
+
* @example
|
|
161
|
+
*
|
|
162
|
+
* Extending `dataProcessors` interface
|
|
163
|
+
*
|
|
164
|
+
* ```ts
|
|
165
|
+
* import type { DataProcessors as WellKnownDataProcessors } from '@lynx-js/react';
|
|
166
|
+
*
|
|
167
|
+
* declare module '@lynx-js/react' {
|
|
168
|
+
* interface DataProcessors extends WellKnownDataProcessors {
|
|
169
|
+
* foo(bar: string): number;
|
|
170
|
+
* }
|
|
171
|
+
* }
|
|
172
|
+
* ```
|
|
173
|
+
*
|
|
174
|
+
* Then you can use `lynx.registerDataProcessors` with types.
|
|
175
|
+
*
|
|
176
|
+
* ```js
|
|
177
|
+
* lynx.registerDataProcessors({
|
|
178
|
+
* dataProcessors: {
|
|
179
|
+
* foo(bar) {
|
|
180
|
+
* return 1;
|
|
181
|
+
* }
|
|
182
|
+
* }
|
|
183
|
+
* })
|
|
184
|
+
* ```
|
|
185
|
+
*
|
|
186
|
+
* @public
|
|
187
|
+
*/
|
|
188
|
+
export interface DataProcessors {
|
|
189
|
+
/**
|
|
190
|
+
* Optional processor to override screen metrics used by the app
|
|
191
|
+
*
|
|
192
|
+
* @param metrics - The physical screen dimensions in pixels
|
|
193
|
+
*
|
|
194
|
+
* @returns New screen dimensions to be used by the app
|
|
195
|
+
*
|
|
196
|
+
* @example
|
|
197
|
+
*
|
|
198
|
+
* ```ts
|
|
199
|
+
* lynx.registerDataProcessors({
|
|
200
|
+
* dataProcessors: {
|
|
201
|
+
* getScreenMetricsOverride: (metrics) => {
|
|
202
|
+
* // Force a specific aspect ratio
|
|
203
|
+
* return {
|
|
204
|
+
* width: metrics.width,
|
|
205
|
+
* height: metrics.width * (16/9)
|
|
206
|
+
* };
|
|
207
|
+
* }
|
|
208
|
+
* }
|
|
209
|
+
* });
|
|
210
|
+
* ```
|
|
211
|
+
*/
|
|
212
|
+
getScreenMetricsOverride?(metrics: {
|
|
213
|
+
/**
|
|
214
|
+
* The physical pixel width of the screen
|
|
215
|
+
*/
|
|
216
|
+
width: number;
|
|
217
|
+
/**
|
|
218
|
+
* The physical pixel height of the screen
|
|
219
|
+
*/
|
|
220
|
+
height: number;
|
|
221
|
+
}): {
|
|
222
|
+
width: number;
|
|
223
|
+
height: number;
|
|
224
|
+
};
|
|
225
|
+
/**
|
|
226
|
+
* Custom unknown data processors.
|
|
227
|
+
*
|
|
228
|
+
* @remarks
|
|
229
|
+
*
|
|
230
|
+
* You may extends the `DataProcessors` interface for better TypeScript types. See {@link DataProcessors}.
|
|
231
|
+
*/
|
|
232
|
+
[processorName: string]: (...args: any[]) => any;
|
|
233
|
+
}
|
|
157
234
|
/**
|
|
158
235
|
* Definition of DataProcessor(s)
|
|
159
236
|
* @public
|
|
@@ -174,7 +251,7 @@ export interface DataProcessorDefinition {
|
|
|
174
251
|
*
|
|
175
252
|
* @public
|
|
176
253
|
*/
|
|
177
|
-
dataProcessors?:
|
|
254
|
+
dataProcessors?: DataProcessors;
|
|
178
255
|
}
|
|
179
256
|
/**
|
|
180
257
|
* APIs under `lynx` global variable that added by ReactLynx.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lynx-api.js","sourceRoot":"","sources":["../src/lynx-api.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,yEAAyE;AACzE,0DAA0D;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxC,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,2BAA2B,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AA6DnC;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,IAAI,GAAS;IACxB,MAAM,EAAE,CAAC,GAAc,EAAQ,EAAE;QAC/B,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC;QACrB,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC;YACnB,iEAAiE;YACjE,MAAM,CAAC,GAAG,EAAE,MAAa,CAAC,CAAC;YAC3B,IAAI,4BAA4B,KAAK,aAAa,EAAE,CAAC;gBACnD,oEAAoE;gBACpE,iDAAiD;gBACjD,2BAA2B,EAAE,CAAC;YAChC,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,YAAY,EAAE,CAAC,eAAe,CAAC,iBAAiB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACrE,CAAC;QACH,CAAC;IACH,CAAC;IACD,sBAAsB,EAAE,CAAC,uBAAgD,EAAQ,EAAE;QACjF,IAAI,CAAC,sBAAsB,CAAC,uBAAuB,CAAC,CAAC;IACvD,CAAC;CACF,CAAC;AAEF,MAAM,SAAS,GAAG,eAAe,CAAC,OAAO,CACvC;IACE,aAAa;IACb,QAAQ;IACR,aAAa;IACb,0BAA0B;CAC3B,EACD,YAAY,EACZ,eAAe,CAChB,CAAC;AACF;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,oDAAoD;AACpD,MAAM,CAAC,MAAM,gBAAgB,GAA6C,eAAe,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;AAC/G;;;;;GAKG;AACH,oDAAoD;AACpD,MAAM,CAAC,MAAM,gBAAgB,GAAuB,eAAe,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;AACzF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,WAAW,GAAmB,eAAe,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;AAC3E;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAiD,eAAe,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;AAsCvH,OAAO,EAAE,mBAAmB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"lynx-api.js","sourceRoot":"","sources":["../src/lynx-api.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,yEAAyE;AACzE,0DAA0D;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxC,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,2BAA2B,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AA6DnC;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,IAAI,GAAS;IACxB,MAAM,EAAE,CAAC,GAAc,EAAQ,EAAE;QAC/B,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC;QACrB,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC;YACnB,iEAAiE;YACjE,MAAM,CAAC,GAAG,EAAE,MAAa,CAAC,CAAC;YAC3B,IAAI,4BAA4B,KAAK,aAAa,EAAE,CAAC;gBACnD,oEAAoE;gBACpE,iDAAiD;gBACjD,2BAA2B,EAAE,CAAC;YAChC,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,YAAY,EAAE,CAAC,eAAe,CAAC,iBAAiB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACrE,CAAC;QACH,CAAC;IACH,CAAC;IACD,sBAAsB,EAAE,CAAC,uBAAgD,EAAQ,EAAE;QACjF,IAAI,CAAC,sBAAsB,CAAC,uBAAuB,CAAC,CAAC;IACvD,CAAC;CACF,CAAC;AAEF,MAAM,SAAS,GAAG,eAAe,CAAC,OAAO,CACvC;IACE,aAAa;IACb,QAAQ;IACR,aAAa;IACb,0BAA0B;CAC3B,EACD,YAAY,EACZ,eAAe,CAChB,CAAC;AACF;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,oDAAoD;AACpD,MAAM,CAAC,MAAM,gBAAgB,GAA6C,eAAe,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;AAC/G;;;;;GAKG;AACH,oDAAoD;AACpD,MAAM,CAAC,MAAM,gBAAgB,GAAuB,eAAe,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;AACzF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,WAAW,GAAmB,eAAe,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;AAC3E;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAiD,eAAe,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;AAsCvH,OAAO,EAAE,mBAAmB,EAAE,CAAC;AAyO/B,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC"}
|
|
@@ -55,6 +55,7 @@ export interface SerializedSnapshotInstance {
|
|
|
55
55
|
id: number;
|
|
56
56
|
type: string;
|
|
57
57
|
values?: any[] | undefined;
|
|
58
|
+
extraProps?: Record<string, unknown> | undefined;
|
|
58
59
|
children?: SerializedSnapshotInstance[] | undefined;
|
|
59
60
|
}
|
|
60
61
|
/**
|
|
@@ -74,6 +75,7 @@ export declare class SnapshotInstance {
|
|
|
74
75
|
__current_slot_index: number;
|
|
75
76
|
__worklet_ref_set?: Set<WorkletRefImpl<any> | Worklet>;
|
|
76
77
|
__listItemPlatformInfo?: PlatformInfo;
|
|
78
|
+
__extraProps?: Record<string, unknown> | undefined;
|
|
77
79
|
constructor(type: string, id?: number);
|
|
78
80
|
ensureElements(): void;
|
|
79
81
|
unRenderElements(): void;
|
package/runtime/lib/snapshot.js
CHANGED
|
@@ -116,11 +116,19 @@ export const backgroundSnapshotInstanceManager = {
|
|
|
116
116
|
return null;
|
|
117
117
|
}
|
|
118
118
|
const spreadKey = res[2];
|
|
119
|
-
if (
|
|
120
|
-
|
|
119
|
+
if (res[1] === '__extraProps') {
|
|
120
|
+
if (spreadKey) {
|
|
121
|
+
return ctx.__extraProps[spreadKey];
|
|
122
|
+
}
|
|
123
|
+
throw new Error('unreachable');
|
|
121
124
|
}
|
|
122
125
|
else {
|
|
123
|
-
|
|
126
|
+
if (spreadKey) {
|
|
127
|
+
return ctx.__values[expIndex][spreadKey];
|
|
128
|
+
}
|
|
129
|
+
else {
|
|
130
|
+
return ctx.__values[expIndex];
|
|
131
|
+
}
|
|
124
132
|
}
|
|
125
133
|
},
|
|
126
134
|
};
|
|
@@ -178,6 +186,7 @@ export class SnapshotInstance {
|
|
|
178
186
|
__current_slot_index = 0;
|
|
179
187
|
__worklet_ref_set;
|
|
180
188
|
__listItemPlatformInfo;
|
|
189
|
+
__extraProps;
|
|
181
190
|
constructor(type, id) {
|
|
182
191
|
this.type = type;
|
|
183
192
|
this.__snapshot_def = snapshotManager.values.get(type);
|
|
@@ -478,15 +487,20 @@ export class SnapshotInstance {
|
|
|
478
487
|
}
|
|
479
488
|
return;
|
|
480
489
|
}
|
|
481
|
-
|
|
490
|
+
if (typeof key === 'string') {
|
|
491
|
+
// for more flexible usage, we allow setting non-indexed attributes
|
|
492
|
+
(this.__extraProps ??= {})[key] = value;
|
|
493
|
+
return;
|
|
494
|
+
}
|
|
482
495
|
this.__values ??= [];
|
|
483
|
-
this.callUpdateIfNotDirectOrDeepEqual(
|
|
496
|
+
this.callUpdateIfNotDirectOrDeepEqual(key, this.__values[key], this.__values[key] = value);
|
|
484
497
|
}
|
|
485
498
|
toJSON() {
|
|
486
499
|
return {
|
|
487
500
|
id: this.__id,
|
|
488
501
|
type: this.type,
|
|
489
502
|
values: this.__values,
|
|
503
|
+
extraProps: this.__extraProps,
|
|
490
504
|
children: this.__firstChild ? this.childNodes : undefined,
|
|
491
505
|
};
|
|
492
506
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../src/snapshot.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../src/snapshot.ts"],"names":[],"mappings":"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"}
|
package/runtime/lib/utils.d.ts
CHANGED
|
@@ -2,3 +2,4 @@ export declare function isDirectOrDeepEqual(a: any, b: any): boolean;
|
|
|
2
2
|
export declare function isEmptyObject(obj?: object): obj is Record<string, never>;
|
|
3
3
|
export declare function isSdkVersionGt(major: number, minor: number): boolean;
|
|
4
4
|
export declare function pick<T extends object, K extends keyof T>(obj: T, keys: Iterable<K>): Pick<T, K>;
|
|
5
|
+
export declare function maybePromise<T>(value: unknown): value is Promise<T>;
|
package/runtime/lib/utils.js
CHANGED
|
@@ -29,4 +29,10 @@ export function pick(obj, keys) {
|
|
|
29
29
|
}
|
|
30
30
|
return result;
|
|
31
31
|
}
|
|
32
|
+
export function maybePromise(value) {
|
|
33
|
+
return (typeof value === 'object'
|
|
34
|
+
&& value !== null
|
|
35
|
+
// @ts-expect-error the check is safe
|
|
36
|
+
&& typeof value.then === 'function');
|
|
37
|
+
}
|
|
32
38
|
//# sourceMappingURL=utils.js.map
|
package/runtime/lib/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,yEAAyE;AACzE,0DAA0D;AAC1D,MAAM,UAAU,mBAAmB,CAAC,CAAM,EAAE,CAAM;IAChD,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IACE,OAAO,CAAC,IAAI,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EACnH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,GAAY;IACxC,KAAK,MAAM,CAAC,IAAI,GAAG;QAAE,OAAO,KAAK,CAAC;IAClC,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,KAAa;IACzD,MAAM,cAAc,GAAW,UAAU,CAAC,cAAc,IAAI,KAAK,CAAC;IAClE,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC1C,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;AACnG,CAAC;AAED,MAAM,UAAU,IAAI,CAAsC,GAAM,EAAE,IAAiB;IACjF,MAAM,MAAM,GAAwB,EAAE,CAAC;IACvC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;YACf,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IACD,OAAO,MAAoB,CAAC;AAC9B,CAAC"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,yEAAyE;AACzE,0DAA0D;AAC1D,MAAM,UAAU,mBAAmB,CAAC,CAAM,EAAE,CAAM;IAChD,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IACE,OAAO,CAAC,IAAI,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EACnH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,GAAY;IACxC,KAAK,MAAM,CAAC,IAAI,GAAG;QAAE,OAAO,KAAK,CAAC;IAClC,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,KAAa;IACzD,MAAM,cAAc,GAAW,UAAU,CAAC,cAAc,IAAI,KAAK,CAAC;IAClE,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC1C,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;AACnG,CAAC;AAED,MAAM,UAAU,IAAI,CAAsC,GAAM,EAAE,IAAiB;IACjF,MAAM,MAAM,GAAwB,EAAE,CAAC;IACvC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;YACf,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IACD,OAAO,MAAoB,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,YAAY,CAAI,KAAc;IAC5C,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;WACtB,KAAK,KAAK,IAAI;QACjB,qCAAqC;WAClC,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU,CACpC,CAAC;AACJ,CAAC"}
|
|
@@ -35,8 +35,7 @@ import { onPostWorkletCtx } from './worklet/ctx.js';
|
|
|
35
35
|
export class BackgroundSnapshotInstance {
|
|
36
36
|
constructor(public type: string) {
|
|
37
37
|
this.__snapshot_def = snapshotManager.values.get(type)!;
|
|
38
|
-
|
|
39
|
-
id = this.__id = backgroundSnapshotInstanceManager.nextId += 1;
|
|
38
|
+
const id = this.__id = backgroundSnapshotInstanceManager.nextId += 1;
|
|
40
39
|
backgroundSnapshotInstanceManager.values.set(id, this);
|
|
41
40
|
|
|
42
41
|
__globalSnapshotPatch?.push(SnapshotOperation.CreateElement, type, id);
|
|
@@ -45,6 +44,7 @@ export class BackgroundSnapshotInstance {
|
|
|
45
44
|
__id: number;
|
|
46
45
|
__values: any[] | undefined;
|
|
47
46
|
__snapshot_def: Snapshot;
|
|
47
|
+
__extraProps?: Record<string, unknown> | undefined;
|
|
48
48
|
|
|
49
49
|
private __parent: BackgroundSnapshotInstance | null = null;
|
|
50
50
|
private __firstChild: BackgroundSnapshotInstance | null = null;
|
|
@@ -191,7 +191,7 @@ export class BackgroundSnapshotInstance {
|
|
|
191
191
|
return nodes;
|
|
192
192
|
}
|
|
193
193
|
|
|
194
|
-
setAttribute(key: string | number, value:
|
|
194
|
+
setAttribute(key: string | number, value: unknown): void {
|
|
195
195
|
if (__PROFILE__) {
|
|
196
196
|
console.profile('setAttribute');
|
|
197
197
|
}
|
|
@@ -199,8 +199,12 @@ export class BackgroundSnapshotInstance {
|
|
|
199
199
|
if (__globalSnapshotPatch) {
|
|
200
200
|
const oldValues = this.__values;
|
|
201
201
|
if (oldValues) {
|
|
202
|
-
for (let index = 0; index < value.length; index++) {
|
|
203
|
-
const { needUpdate, valueToCommit } = this.setAttributeImpl(
|
|
202
|
+
for (let index = 0; index < (value as unknown[]).length; index++) {
|
|
203
|
+
const { needUpdate, valueToCommit } = this.setAttributeImpl(
|
|
204
|
+
(value as unknown[])[index],
|
|
205
|
+
oldValues[index],
|
|
206
|
+
index,
|
|
207
|
+
);
|
|
204
208
|
if (needUpdate) {
|
|
205
209
|
__globalSnapshotPatch.push(
|
|
206
210
|
SnapshotOperation.SetAttribute,
|
|
@@ -212,9 +216,9 @@ export class BackgroundSnapshotInstance {
|
|
|
212
216
|
}
|
|
213
217
|
} else {
|
|
214
218
|
const patch = [];
|
|
215
|
-
const length = value.length;
|
|
219
|
+
const length = (value as unknown[]).length;
|
|
216
220
|
for (let index = 0; index < length; ++index) {
|
|
217
|
-
const { valueToCommit } = this.setAttributeImpl(value[index], null, index);
|
|
221
|
+
const { valueToCommit } = this.setAttributeImpl((value as unknown[])[index], null, index);
|
|
218
222
|
patch[index] = valueToCommit;
|
|
219
223
|
}
|
|
220
224
|
__globalSnapshotPatch.push(
|
|
@@ -235,22 +239,24 @@ export class BackgroundSnapshotInstance {
|
|
|
235
239
|
}
|
|
236
240
|
});
|
|
237
241
|
}
|
|
238
|
-
this.__values = value;
|
|
242
|
+
this.__values = value as unknown[];
|
|
239
243
|
if (__PROFILE__) {
|
|
240
244
|
console.profileEnd();
|
|
241
245
|
}
|
|
242
246
|
return;
|
|
243
247
|
}
|
|
244
248
|
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
249
|
+
if (typeof key === 'string') {
|
|
250
|
+
(this.__extraProps ??= {})[key] = value;
|
|
251
|
+
} else {
|
|
252
|
+
// old path (`this.setAttribute(0, xxx)`)
|
|
253
|
+
// is reserved as slow path
|
|
254
|
+
(this.__values ??= [])[key] = value;
|
|
255
|
+
}
|
|
250
256
|
__globalSnapshotPatch?.push(
|
|
251
257
|
SnapshotOperation.SetAttribute,
|
|
252
258
|
this.__id,
|
|
253
|
-
|
|
259
|
+
key,
|
|
254
260
|
value,
|
|
255
261
|
);
|
|
256
262
|
if (__PROFILE__) {
|
|
@@ -341,7 +347,7 @@ export function hydrate(
|
|
|
341
347
|
): SnapshotPatch {
|
|
342
348
|
initGlobalSnapshotPatch();
|
|
343
349
|
|
|
344
|
-
const helper2 = (afters: BackgroundSnapshotInstance[], parentId: number) => {
|
|
350
|
+
const helper2 = (afters: BackgroundSnapshotInstance[], parentId: number, targetId?: number) => {
|
|
345
351
|
for (const child of afters) {
|
|
346
352
|
const id = child.__id;
|
|
347
353
|
__globalSnapshotPatch!.push(SnapshotOperation.CreateElement, child.type, id);
|
|
@@ -350,8 +356,12 @@ export function hydrate(
|
|
|
350
356
|
child.__values = undefined;
|
|
351
357
|
child.setAttribute('values', values);
|
|
352
358
|
}
|
|
359
|
+
const extraProps = child.__extraProps;
|
|
360
|
+
for (const key in extraProps) {
|
|
361
|
+
child.setAttribute(key, extraProps[key]);
|
|
362
|
+
}
|
|
353
363
|
helper2(child.childNodes, id);
|
|
354
|
-
__globalSnapshotPatch!.push(SnapshotOperation.InsertBefore, parentId, id,
|
|
364
|
+
__globalSnapshotPatch!.push(SnapshotOperation.InsertBefore, parentId, id, targetId);
|
|
355
365
|
}
|
|
356
366
|
};
|
|
357
367
|
|
|
@@ -361,35 +371,45 @@ export function hydrate(
|
|
|
361
371
|
) => {
|
|
362
372
|
hydrationMap.set(after.__id, before.id);
|
|
363
373
|
backgroundSnapshotInstanceManager.updateId(after.__id, before.id);
|
|
364
|
-
after.__values?.forEach((value, index) => {
|
|
365
|
-
const old = before.values![index];
|
|
374
|
+
after.__values?.forEach((value: unknown, index) => {
|
|
375
|
+
const old: unknown = before.values![index];
|
|
366
376
|
|
|
367
377
|
if (value) {
|
|
368
|
-
if (value
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
378
|
+
if (typeof value === 'object') {
|
|
379
|
+
if ('__spread' in value) {
|
|
380
|
+
// `value.__spread` my contain event ids using snapshot ids before hydration. Remove it.
|
|
381
|
+
delete value.__spread;
|
|
382
|
+
const __spread = transformSpread(after, index, value);
|
|
383
|
+
for (const key in __spread) {
|
|
384
|
+
const v = __spread[key];
|
|
385
|
+
if (v && typeof v === 'object') {
|
|
386
|
+
if ('_wkltId' in v) {
|
|
387
|
+
onPostWorkletCtx(v as Worklet);
|
|
388
|
+
} else if ('__isGesture' in v) {
|
|
389
|
+
processGestureBackground(v as GestureKind);
|
|
390
|
+
}
|
|
391
|
+
}
|
|
377
392
|
}
|
|
393
|
+
(after.__values![index]! as Record<string, unknown>)['__spread'] = __spread;
|
|
394
|
+
value = __spread;
|
|
395
|
+
} else if ('__ref' in value) {
|
|
396
|
+
// skip patch
|
|
397
|
+
value = old;
|
|
398
|
+
} else if ('_wkltId' in value) {
|
|
399
|
+
onPostWorkletCtx(value as Worklet);
|
|
400
|
+
} else if ('__isGesture' in value) {
|
|
401
|
+
processGestureBackground(value as GestureKind);
|
|
378
402
|
}
|
|
379
|
-
after.__values![index]!.__spread = value;
|
|
380
|
-
} else if (value.__ref) {
|
|
381
|
-
// skip patch
|
|
382
|
-
value = old;
|
|
383
403
|
} else if (typeof value === 'function') {
|
|
384
|
-
value
|
|
404
|
+
if ('__ref' in value) {
|
|
405
|
+
// skip patch
|
|
406
|
+
value = old;
|
|
407
|
+
} else {
|
|
408
|
+
value = `${after.__id}:${index}:`;
|
|
409
|
+
}
|
|
385
410
|
}
|
|
386
411
|
}
|
|
387
412
|
|
|
388
|
-
if (value && value._wkltId) {
|
|
389
|
-
onPostWorkletCtx(value);
|
|
390
|
-
} else if (value && value.__isGesture) {
|
|
391
|
-
processGestureBackground(value);
|
|
392
|
-
}
|
|
393
413
|
if (!isDirectOrDeepEqual(value, old)) {
|
|
394
414
|
__globalSnapshotPatch!.push(
|
|
395
415
|
SnapshotOperation.SetAttribute,
|
|
@@ -400,9 +420,24 @@ export function hydrate(
|
|
|
400
420
|
}
|
|
401
421
|
});
|
|
402
422
|
|
|
423
|
+
if (after.__extraProps) {
|
|
424
|
+
for (const key in after.__extraProps) {
|
|
425
|
+
const value = after.__extraProps[key];
|
|
426
|
+
const old = before.extraProps?.[key];
|
|
427
|
+
if (!isDirectOrDeepEqual(value, old)) {
|
|
428
|
+
__globalSnapshotPatch!.push(
|
|
429
|
+
SnapshotOperation.SetAttribute,
|
|
430
|
+
after.__id,
|
|
431
|
+
key,
|
|
432
|
+
value,
|
|
433
|
+
);
|
|
434
|
+
}
|
|
435
|
+
}
|
|
436
|
+
}
|
|
437
|
+
|
|
403
438
|
const { slot } = after.__snapshot_def;
|
|
404
439
|
|
|
405
|
-
const beforeChildNodes = before.children
|
|
440
|
+
const beforeChildNodes = before.children ?? [];
|
|
406
441
|
const afterChildNodes = after.childNodes;
|
|
407
442
|
|
|
408
443
|
if (!slot) {
|
|
@@ -433,23 +468,7 @@ export function hydrate(
|
|
|
433
468
|
beforeChildNodes,
|
|
434
469
|
diffResult,
|
|
435
470
|
(node, target) => {
|
|
436
|
-
|
|
437
|
-
SnapshotOperation.CreateElement,
|
|
438
|
-
node.type,
|
|
439
|
-
node.__id,
|
|
440
|
-
);
|
|
441
|
-
helper2(node.childNodes, node.__id);
|
|
442
|
-
const values = node.__values;
|
|
443
|
-
if (values) {
|
|
444
|
-
node.__values = undefined;
|
|
445
|
-
node.setAttribute('values', values);
|
|
446
|
-
}
|
|
447
|
-
__globalSnapshotPatch!.push(
|
|
448
|
-
SnapshotOperation.InsertBefore,
|
|
449
|
-
before.id,
|
|
450
|
-
node.__id,
|
|
451
|
-
target?.id,
|
|
452
|
-
);
|
|
471
|
+
helper2([node], before.id, target?.id);
|
|
453
472
|
return undefined as unknown as SerializedSnapshotInstance;
|
|
454
473
|
},
|
|
455
474
|
node => {
|
|
@@ -5,6 +5,7 @@ import type { ComponentChildren, Consumer, Context, Provider } from 'preact';
|
|
|
5
5
|
import type { ComponentClass } from 'react';
|
|
6
6
|
|
|
7
7
|
import { useLynxGlobalEventListener } from '../hooks/useLynxGlobalEventListener.js';
|
|
8
|
+
import { globalFlushOptions } from '../lifecycle/patch/commit.js';
|
|
8
9
|
|
|
9
10
|
type Getter<T> = {
|
|
10
11
|
[key in keyof T]: () => T[key];
|
|
@@ -33,6 +34,9 @@ export function factory<Data>(
|
|
|
33
34
|
const [__, set] = useState<Data>(lynx[prop] as Data);
|
|
34
35
|
|
|
35
36
|
const handleChange = () => {
|
|
37
|
+
if (prop === '__initData') {
|
|
38
|
+
globalFlushOptions.triggerDataUpdated = true;
|
|
39
|
+
}
|
|
36
40
|
set(lynx[prop] as Data);
|
|
37
41
|
};
|
|
38
42
|
|
|
@@ -52,6 +56,9 @@ export function factory<Data>(
|
|
|
52
56
|
const use = (): Data => {
|
|
53
57
|
const [__, set] = useState(lynx[prop]);
|
|
54
58
|
useChanged(() => {
|
|
59
|
+
if (prop === '__initData') {
|
|
60
|
+
globalFlushOptions.triggerDataUpdated = true;
|
|
61
|
+
}
|
|
55
62
|
set(lynx[prop]);
|
|
56
63
|
});
|
|
57
64
|
|
|
@@ -65,6 +72,7 @@ export function factory<Data>(
|
|
|
65
72
|
};
|
|
66
73
|
|
|
67
74
|
return {
|
|
75
|
+
/* v8 ignore next */
|
|
68
76
|
Context: () => Context,
|
|
69
77
|
Provider: () => Provider,
|
|
70
78
|
Consumer: () => Consumer,
|
|
@@ -100,6 +108,7 @@ export function factory<Data>(
|
|
|
100
108
|
*/
|
|
101
109
|
export function withInitDataInState<P, S>(App: ComponentClass<P, S>): ComponentClass<P, S> {
|
|
102
110
|
const isClassComponent = 'prototype' in App && 'render' in App.prototype;
|
|
111
|
+
/* v8 ignore next 4 */
|
|
103
112
|
if (!isClassComponent) {
|
|
104
113
|
// return as-is when not class component
|
|
105
114
|
return App;
|
|
@@ -119,6 +128,7 @@ export function withInitDataInState<P, S>(App: ComponentClass<P, S>): ComponentC
|
|
|
119
128
|
lynx.getJSModule('GlobalEventEmitter').addListener(
|
|
120
129
|
'onDataChanged',
|
|
121
130
|
this.h = () => {
|
|
131
|
+
globalFlushOptions.triggerDataUpdated = true;
|
|
122
132
|
this.setState(lynx.__initData as S);
|
|
123
133
|
},
|
|
124
134
|
);
|
package/runtime/src/index.ts
CHANGED
|
@@ -11,6 +11,7 @@ import {
|
|
|
11
11
|
PureComponent,
|
|
12
12
|
Suspense,
|
|
13
13
|
lazy as backgroundLazy,
|
|
14
|
+
cloneElement,
|
|
14
15
|
createContext,
|
|
15
16
|
createElement,
|
|
16
17
|
createRef,
|
|
@@ -86,6 +87,7 @@ export {
|
|
|
86
87
|
Suspense,
|
|
87
88
|
lazy,
|
|
88
89
|
createElement,
|
|
90
|
+
cloneElement,
|
|
89
91
|
useSyncExternalStore,
|
|
90
92
|
};
|
|
91
93
|
|