airx 0.1.5 → 0.1.7
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/output/index.js +2 -2
- package/output/index.js.map +1 -1
- package/output/reactive.js +1 -6
- package/output/reactive.js.map +1 -1
- package/output/render/browser.d.ts +8 -2
- package/output/render/browser.js +27 -7
- package/output/render/browser.js.map +1 -1
- package/output/render/common/index.d.ts +11 -10
- package/output/render/common/index.js +25 -3
- package/output/render/common/index.js.map +1 -1
- package/output/render/index.d.ts +2 -1
- package/output/render/index.js +2 -1
- package/output/render/index.js.map +1 -1
- package/output/render/server.d.ts +22 -7
- package/output/render/server.js +343 -7
- package/output/render/server.js.map +1 -1
- package/output/types.d.ts +1 -0
- package/package.json +1 -1
package/output/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { renderToDom } from './render';
|
|
2
2
|
export * from './types';
|
|
3
3
|
export { createRef, watch } from './reactive';
|
|
4
4
|
export { Fragment, createElement } from './element';
|
|
@@ -11,7 +11,7 @@ export function createApp(element) {
|
|
|
11
11
|
// return app
|
|
12
12
|
// },
|
|
13
13
|
mount: (container) => {
|
|
14
|
-
|
|
14
|
+
renderToDom(element, container);
|
|
15
15
|
return app;
|
|
16
16
|
}
|
|
17
17
|
};
|
package/output/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../source/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../source/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAEtC,cAAc,SAAS,CAAA;AAEvB,OAAO,EAAE,SAAS,EAAO,KAAK,EAAE,MAAM,YAAY,CAAA;AAElD,OAAO,EACL,QAAQ,EACR,aAAa,EAKd,MAAM,WAAW,CAAA;AAElB,OAAO,EACL,MAAM,EACN,OAAO,EACP,SAAS,EACT,WAAW,EACZ,MAAM,UAAU,CAAA;AAOjB,8DAA8D;AAC9D,MAAM,UAAU,SAAS,CAAC,OAAyB;IACjD,MAAM,GAAG,GAAY;QACnB,yBAAyB;QACzB,yBAAyB;QACzB,eAAe;QACf,KAAK;QAEL,KAAK,EAAE,CAAC,SAAsB,EAAE,EAAE;YAChC,WAAW,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;YAC/B,OAAO,GAAG,CAAA;QACZ,CAAC;KACF,CAAA;IAED,OAAO,GAAG,CAAA;AACZ,CAAC"}
|
package/output/reactive.js
CHANGED
|
@@ -34,18 +34,13 @@ function createRefObject(value) {
|
|
|
34
34
|
});
|
|
35
35
|
return object;
|
|
36
36
|
}
|
|
37
|
-
function isRefObject(obj) {
|
|
38
|
-
return obj != null
|
|
39
|
-
&& typeof obj === 'object'
|
|
40
|
-
&& Reflect.has(obj, symbol.airxReactiveDependenciesSymbol);
|
|
41
|
-
}
|
|
42
37
|
export function watch(ref, listener) {
|
|
43
38
|
const deps = Reflect.get(ref, symbol.airxReactiveDependenciesSymbol);
|
|
44
39
|
deps.add(listener);
|
|
45
40
|
return () => { deps.delete(listener); };
|
|
46
41
|
}
|
|
47
42
|
export function createRef(obj) {
|
|
48
|
-
const ref =
|
|
43
|
+
const ref = createRefObject(obj);
|
|
49
44
|
if (!globalContext.dependencies.has(ref)) {
|
|
50
45
|
globalContext.dependencies.add(ref);
|
|
51
46
|
}
|
package/output/reactive.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reactive.js","sourceRoot":"","sources":["../source/reactive.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAA;AAElC,sBAAsB;AACtB,MAAM,aAAa,GAAG;IACpB,YAAY,EAAE,IAAI,GAAG,EAAgB;CACtC,CAAA;AAED,MAAM,UAAU,eAAe;IAC7B,MAAM,eAAe,GAAG,IAAI,GAAG,EAAgB,CAAA;IAC/C,OAAO;QACL,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC;QAC7C,OAAO,EAAE,CAAc,OAAgB,EAAE,EAAE;YACzC,MAAM,UAAU,GAAG,aAAa,CAAC,YAAY,CAAA;YAC7C,aAAa,CAAC,YAAY,GAAG,eAAe,CAAA;YAC5C,MAAM,MAAM,GAAG,OAAO,EAAE,CAAA;YACxB,aAAa,CAAC,YAAY,GAAG,UAAU,CAAA;YACvC,OAAO,MAAM,CAAA;QACf,CAAC;KACF,CAAA;AACH,CAAC;AAED,SAAS,UAAU,CAAc,GAAW;IAC1C,qBAAqB,CAAC,GAAG,EAAE;QACzB,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,8BAA8B,CAAC,CAAA;QACpE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;YACtB,GAAG,EAAE,CAAA;SACN;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAMD,SAAS,eAAe,CAAc,KAAQ;IAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;IAEvC,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,8BAA8B,EAAE;QACpE,YAAY,EAAE,KAAK;QACnB,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,IAAI,GAAG,EAAE;KACjB,CAAC,CAAA;IAEF,OAAO,MAAM,CAAA;AACf,CAAC;AAED,
|
|
1
|
+
{"version":3,"file":"reactive.js","sourceRoot":"","sources":["../source/reactive.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAA;AAElC,sBAAsB;AACtB,MAAM,aAAa,GAAG;IACpB,YAAY,EAAE,IAAI,GAAG,EAAgB;CACtC,CAAA;AAED,MAAM,UAAU,eAAe;IAC7B,MAAM,eAAe,GAAG,IAAI,GAAG,EAAgB,CAAA;IAC/C,OAAO;QACL,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC;QAC7C,OAAO,EAAE,CAAc,OAAgB,EAAE,EAAE;YACzC,MAAM,UAAU,GAAG,aAAa,CAAC,YAAY,CAAA;YAC7C,aAAa,CAAC,YAAY,GAAG,eAAe,CAAA;YAC5C,MAAM,MAAM,GAAG,OAAO,EAAE,CAAA;YACxB,aAAa,CAAC,YAAY,GAAG,UAAU,CAAA;YACvC,OAAO,MAAM,CAAA;QACf,CAAC;KACF,CAAA;AACH,CAAC;AAED,SAAS,UAAU,CAAc,GAAW;IAC1C,qBAAqB,CAAC,GAAG,EAAE;QACzB,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,8BAA8B,CAAC,CAAA;QACpE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;YACtB,GAAG,EAAE,CAAA;SACN;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAMD,SAAS,eAAe,CAAc,KAAQ;IAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;IAEvC,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,8BAA8B,EAAE;QACpE,YAAY,EAAE,KAAK;QACnB,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,IAAI,GAAG,EAAE;KACjB,CAAC,CAAA;IAEF,OAAO,MAAM,CAAA;AACf,CAAC;AAED,MAAM,UAAU,KAAK,CAAc,GAAW,EAAE,QAAuB;IACrE,MAAM,IAAI,GAAuB,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,8BAA8B,CAAC,CAAA;IACxF,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IAClB,OAAO,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA,CAAC,CAAC,CAAA;AACxC,CAAC;AAED,MAAM,UAAU,SAAS,CAAI,GAAM;IACjC,MAAM,GAAG,GAAG,eAAe,CAAC,GAAG,CAAC,CAAA;IAEhC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;QACxC,aAAa,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;KACpC;IAED,IAAI,KAAK,GAAM,GAAG,CAAC,KAAK,CAAA;IAExB,OAAO,CAAC,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE;QACnC,GAAG;YACD,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBACxC,aAAa,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;aACpC;YACD,OAAO,KAAK,CAAA;QACd,CAAC;QACD,GAAG,CAAC,QAAQ;YACV,KAAK,GAAG,QAAQ,CAAA;YAChB,UAAU,CAAC,GAAG,CAAC,CAAA;YACf,OAAO,KAAK,CAAA;QACd,CAAC;KACF,CAAC,CAAA;IAEF,OAAO,GAAG,CAAA;AACZ,CAAC"}
|
|
@@ -1,3 +1,9 @@
|
|
|
1
1
|
import { AirxElement } from '../element';
|
|
2
|
-
import { Instance } from './common';
|
|
3
|
-
|
|
2
|
+
import { Instance as BaseInstance } from './common';
|
|
3
|
+
type Instance = BaseInstance<Element>;
|
|
4
|
+
interface RenderOptions {
|
|
5
|
+
ensureRendered: boolean;
|
|
6
|
+
}
|
|
7
|
+
export declare function innerRender(element: AirxElement, domRef: Element, options?: RenderOptions): Instance;
|
|
8
|
+
export declare function render(element: AirxElement, domRef: Element): Instance;
|
|
9
|
+
export {};
|
package/output/render/browser.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createLogger } from '../logger';
|
|
2
2
|
import { InnerAirxComponentContext, performUnitOfWork } from './common';
|
|
3
|
-
export function
|
|
3
|
+
export function innerRender(element, domRef, options) {
|
|
4
4
|
const rootInstance = {
|
|
5
5
|
domRef,
|
|
6
6
|
context: new InnerAirxComponentContext()
|
|
@@ -9,6 +9,7 @@ export function render(element, domRef) {
|
|
|
9
9
|
const context = {
|
|
10
10
|
rootInstance,
|
|
11
11
|
nextUnitOfWork: null,
|
|
12
|
+
firstRendered: false,
|
|
12
13
|
needCommitDom: false
|
|
13
14
|
};
|
|
14
15
|
const appInstance = {
|
|
@@ -47,15 +48,21 @@ export function render(element, domRef) {
|
|
|
47
48
|
// remove old style
|
|
48
49
|
const oldStyle = prevProps?.style;
|
|
49
50
|
if (typeof oldStyle === 'object' && oldStyle != null) {
|
|
51
|
+
if (!('style' in dom) || !dom.style)
|
|
52
|
+
return;
|
|
50
53
|
Object.keys(oldStyle).forEach(key => {
|
|
51
54
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
52
|
-
|
|
53
|
-
|
|
55
|
+
if ('style' in dom && dom.style) {
|
|
56
|
+
delete dom.style[key];
|
|
57
|
+
/* eslint-enable @typescript-eslint/no-explicit-any */
|
|
58
|
+
}
|
|
54
59
|
});
|
|
55
60
|
}
|
|
56
61
|
// add new style
|
|
57
62
|
const newStyle = nextProps?.style;
|
|
58
63
|
if (typeof newStyle === 'object' && newStyle != null) {
|
|
64
|
+
if (!('style' in dom) || !dom.style)
|
|
65
|
+
return;
|
|
59
66
|
Object.keys(newStyle).forEach((key) => {
|
|
60
67
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
61
68
|
const value = newStyle?.[key];
|
|
@@ -186,7 +193,13 @@ export function render(element, domRef) {
|
|
|
186
193
|
nextInstance.domRef = document.createComment(textContent);
|
|
187
194
|
}
|
|
188
195
|
else {
|
|
189
|
-
nextInstance.domRef =
|
|
196
|
+
nextInstance.domRef = nextInstance.elementNamespace
|
|
197
|
+
? document.createElementNS(nextInstance.elementNamespace, nextInstance.element.type)
|
|
198
|
+
: document.createElement(nextInstance.element.type);
|
|
199
|
+
}
|
|
200
|
+
if (nextInstance.domRef) {
|
|
201
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
202
|
+
nextInstance.domRef.airxInstance = nextInstance;
|
|
190
203
|
}
|
|
191
204
|
}
|
|
192
205
|
}
|
|
@@ -257,17 +270,24 @@ export function render(element, domRef) {
|
|
|
257
270
|
context.nextUnitOfWork = performUnitOfWork(context.nextUnitOfWork, onUpdateRequire);
|
|
258
271
|
if (context.nextUnitOfWork == null)
|
|
259
272
|
context.needCommitDom = true;
|
|
260
|
-
|
|
261
|
-
|
|
273
|
+
// 强制要求首次渲染完成的的情况下必须要等 firstRendered 为 true 再进入时间片剩余检查
|
|
274
|
+
if (options?.ensureRendered !== true && context.firstRendered != true) {
|
|
275
|
+
if (deadline)
|
|
276
|
+
shouldYield = deadline.timeRemaining() < 1;
|
|
277
|
+
}
|
|
262
278
|
}
|
|
263
279
|
if (context.needCommitDom && context.rootInstance.child) {
|
|
264
280
|
commitDom(context.rootInstance.child, context.rootInstance.domRef?.firstChild || undefined);
|
|
281
|
+
context.firstRendered = true;
|
|
265
282
|
context.needCommitDom = false;
|
|
266
283
|
}
|
|
267
284
|
requestIdleCallback(workLoop);
|
|
268
285
|
}
|
|
269
286
|
// 开始调度
|
|
270
|
-
|
|
287
|
+
workLoop();
|
|
271
288
|
return context.rootInstance;
|
|
272
289
|
}
|
|
290
|
+
export function render(element, domRef) {
|
|
291
|
+
return innerRender(element, domRef);
|
|
292
|
+
}
|
|
273
293
|
//# sourceMappingURL=browser.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../../source/render/browser.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,yBAAyB,
|
|
1
|
+
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../../source/render/browser.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,8 +5,8 @@ export declare const onUnmounted: AirxComponentContext['onUnmounted'];
|
|
|
5
5
|
export declare const inject: AirxComponentContext['inject'];
|
|
6
6
|
export declare const provide: AirxComponentContext['provide'];
|
|
7
7
|
export type Disposer = () => void;
|
|
8
|
-
export declare class InnerAirxComponentContext implements AirxComponentContext {
|
|
9
|
-
instance?: Instance
|
|
8
|
+
export declare class InnerAirxComponentContext<DOM = Element | string> implements AirxComponentContext {
|
|
9
|
+
instance?: Instance<DOM>;
|
|
10
10
|
private disposers;
|
|
11
11
|
private providedMap;
|
|
12
12
|
private injectedMap;
|
|
@@ -34,18 +34,19 @@ export declare class InnerAirxComponentContext implements AirxComponentContext {
|
|
|
34
34
|
* ↓ | |
|
|
35
35
|
* instance -sibling→ instance...
|
|
36
36
|
*/
|
|
37
|
-
export interface Instance {
|
|
38
|
-
domRef?:
|
|
39
|
-
child?: Instance
|
|
40
|
-
parent?: Instance
|
|
41
|
-
sibling?: Instance
|
|
42
|
-
deletions?: Set<Instance
|
|
37
|
+
export interface Instance<DOM = Element | string> {
|
|
38
|
+
domRef?: DOM;
|
|
39
|
+
child?: Instance<DOM>;
|
|
40
|
+
parent?: Instance<DOM>;
|
|
41
|
+
sibling?: Instance<DOM>;
|
|
42
|
+
deletions?: Set<Instance<DOM>>;
|
|
43
43
|
element?: AirxElement;
|
|
44
44
|
beforeElement?: AirxElement;
|
|
45
45
|
render?: AirxComponentRender;
|
|
46
|
-
memoProps?: any;
|
|
47
46
|
requiredUpdate?: boolean;
|
|
48
|
-
|
|
47
|
+
elementNamespace?: string;
|
|
48
|
+
context: InnerAirxComponentContext<DOM>;
|
|
49
|
+
memoProps?: any;
|
|
49
50
|
}
|
|
50
51
|
/**
|
|
51
52
|
* 更新 children
|
|
@@ -287,6 +287,21 @@ export function reconcileChildren(parentInstance, childrenElementArray) {
|
|
|
287
287
|
}
|
|
288
288
|
return true;
|
|
289
289
|
}
|
|
290
|
+
function getElementNamespace(element) {
|
|
291
|
+
const ns = Object.keys(element.props)
|
|
292
|
+
.filter(key => (key === 'xmlns' || key.startsWith('xmlns:')))
|
|
293
|
+
.sort((a, b) => a.length - b.length);
|
|
294
|
+
if (ns.length > 1) {
|
|
295
|
+
console.log('airx currently does not support setting multiple xmlns');
|
|
296
|
+
return '';
|
|
297
|
+
}
|
|
298
|
+
if (ns.some(i => i.startsWith('xmlns:'))) {
|
|
299
|
+
console.log('airx does not currently support setting named namespaces,only supports default');
|
|
300
|
+
return '';
|
|
301
|
+
}
|
|
302
|
+
// 原则上来说 html 仅支持设置默认的 namespace
|
|
303
|
+
return element.props[ns[0]];
|
|
304
|
+
}
|
|
290
305
|
// 依次遍历 child 并和 instance 对比
|
|
291
306
|
for (let index = 0; index < childrenElementArray.length; index++) {
|
|
292
307
|
const element = childrenElementArray[index];
|
|
@@ -298,15 +313,15 @@ export function reconcileChildren(parentInstance, childrenElementArray) {
|
|
|
298
313
|
instance.beforeElement = instance.element;
|
|
299
314
|
instance.element = element;
|
|
300
315
|
updateMemoProps(instance);
|
|
301
|
-
//
|
|
316
|
+
// 如果父组件更新了,子组件全部都要更新
|
|
302
317
|
if (instance.requiredUpdate !== true && typeof element.type === 'function') {
|
|
303
|
-
// FIXME: 没必要让 child 都 requiredUpdate,最好时可以只通过 shouldUpdate 来判断是否需要更新
|
|
304
318
|
instance.requiredUpdate = parentInstance.requiredUpdate || shouldUpdate(instance);
|
|
305
319
|
}
|
|
306
320
|
}
|
|
307
321
|
else {
|
|
308
322
|
const context = new InnerAirxComponentContext();
|
|
309
|
-
const
|
|
323
|
+
const elementNamespace = getElementNamespace(element);
|
|
324
|
+
const instance = { element, context, elementNamespace };
|
|
310
325
|
newChildrenInstanceArray.push(instance);
|
|
311
326
|
context.instance = instance;
|
|
312
327
|
updateMemoProps(instance);
|
|
@@ -332,6 +347,13 @@ export function reconcileChildren(parentInstance, childrenElementArray) {
|
|
|
332
347
|
newChildrenInstanceArray[index - 1].sibling = instance;
|
|
333
348
|
if (index === newChildrenInstanceArray.length - 1)
|
|
334
349
|
delete instance.sibling;
|
|
350
|
+
// 处理 ElementNS: 继承父级 namespace
|
|
351
|
+
if (!instance.elementNamespace && instance.parent?.elementNamespace) {
|
|
352
|
+
// SVG 中 foreignObject 代表外来对象,起到隔离 namespace 的作用
|
|
353
|
+
if (instance.parent.element?.type !== 'foreignObject') {
|
|
354
|
+
instance.elementNamespace = instance.parent.elementNamespace;
|
|
355
|
+
}
|
|
356
|
+
}
|
|
335
357
|
}
|
|
336
358
|
// 剩余的是需要移除的
|
|
337
359
|
if (childrenInstanceMap.size > 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../source/render/common/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../source/render/common/index.ts"],"names":[],"mappings":"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"}
|
package/output/render/index.d.ts
CHANGED
package/output/render/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../source/render/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,OAAO,EACP,SAAS,EACT,WAAW,EACZ,MAAM,UAAU,CAAA;AAEjB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../source/render/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,OAAO,EACP,SAAS,EACT,WAAW,EACZ,MAAM,UAAU,CAAA;AAEjB,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,WAAW,CAAA;AACjD,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,UAAU,CAAA"}
|
|
@@ -1,9 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { CSSProperties } from '..';
|
|
2
|
+
import { AirxElement } from '../element';
|
|
3
|
+
declare class SsrHTMLElement {
|
|
4
|
+
nodeName: string;
|
|
5
|
+
static createTextNode(content: string): SsrHTMLElement;
|
|
6
|
+
static createComment(content: string): SsrHTMLElement;
|
|
7
|
+
static createElement(tag: string): SsrHTMLElement;
|
|
8
|
+
constructor(nodeName: string);
|
|
9
|
+
readonly firstChild?: SsrHTMLElement;
|
|
10
|
+
readonly nextSibling?: SsrHTMLElement;
|
|
11
|
+
readonly parentNode?: SsrHTMLElement;
|
|
12
|
+
readonly className: string;
|
|
13
|
+
readonly style: CSSProperties;
|
|
14
|
+
private content;
|
|
15
|
+
private children;
|
|
16
|
+
private attributes;
|
|
17
|
+
removeChild(dom: SsrHTMLElement): void;
|
|
18
|
+
appendChild(dom: SsrHTMLElement): void;
|
|
19
|
+
setAttribute(name: string, value: any): any;
|
|
20
|
+
removeAttribute(name: string): void;
|
|
21
|
+
toString(): string;
|
|
3
22
|
}
|
|
4
|
-
|
|
5
|
-
* 服务端渲染
|
|
6
|
-
* @param options
|
|
7
|
-
*/
|
|
8
|
-
export declare function render(options: RenderStringOptions): string;
|
|
23
|
+
export declare function render(element: AirxElement, domRef?: SsrHTMLElement): string | undefined;
|
|
9
24
|
export {};
|
package/output/render/server.js
CHANGED
|
@@ -1,9 +1,345 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import { createLogger } from '../logger';
|
|
2
|
+
import { InnerAirxComponentContext, performUnitOfWork } from './common';
|
|
3
|
+
function camelToKebab(str) {
|
|
4
|
+
return str.replace(/([A-Z])/g, (match, p1, offset) => {
|
|
5
|
+
if (offset === 0) {
|
|
6
|
+
return p1.toLowerCase();
|
|
7
|
+
}
|
|
8
|
+
else {
|
|
9
|
+
return '-' + p1.toLowerCase();
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
class SsrHTMLElement {
|
|
14
|
+
nodeName;
|
|
15
|
+
static createTextNode(content) {
|
|
16
|
+
const dom = new SsrHTMLElement('#text');
|
|
17
|
+
dom.content = content;
|
|
18
|
+
return dom;
|
|
19
|
+
}
|
|
20
|
+
static createComment(content) {
|
|
21
|
+
const dom = new SsrHTMLElement('#comment');
|
|
22
|
+
dom.content = content;
|
|
23
|
+
return dom;
|
|
24
|
+
}
|
|
25
|
+
static createElement(tag) {
|
|
26
|
+
return new SsrHTMLElement(tag);
|
|
27
|
+
}
|
|
28
|
+
constructor(nodeName) {
|
|
29
|
+
this.nodeName = nodeName;
|
|
30
|
+
this.style = {};
|
|
31
|
+
this.content = '';
|
|
32
|
+
this.children = [];
|
|
33
|
+
this.className = '';
|
|
34
|
+
this.attributes = new Map();
|
|
35
|
+
}
|
|
36
|
+
firstChild;
|
|
37
|
+
nextSibling;
|
|
38
|
+
parentNode;
|
|
39
|
+
className;
|
|
40
|
+
style;
|
|
41
|
+
content;
|
|
42
|
+
children;
|
|
43
|
+
attributes;
|
|
44
|
+
removeChild(dom) {
|
|
45
|
+
/* eslint-disable @typescript-eslint/ban-ts-comment */
|
|
46
|
+
const index = this.children.findIndex(v => v === dom);
|
|
47
|
+
if (index != -1)
|
|
48
|
+
this.children.splice(index, 1);
|
|
49
|
+
// @ts-ignore
|
|
50
|
+
this.firstChild = undefined;
|
|
51
|
+
// @ts-ignore
|
|
52
|
+
this.nextSibling = undefined;
|
|
53
|
+
// @ts-ignore
|
|
54
|
+
this.parentNode = undefined;
|
|
55
|
+
/* eslint-enable @typescript-eslint/ban-ts-comment */
|
|
56
|
+
}
|
|
57
|
+
appendChild(dom) {
|
|
58
|
+
/* eslint-disable @typescript-eslint/ban-ts-comment */
|
|
59
|
+
// @ts-ignore
|
|
60
|
+
dom.parentNode = this;
|
|
61
|
+
if (this.children.length > 0) {
|
|
62
|
+
// @ts-ignore
|
|
63
|
+
this.children[this.children.length - 1].nextSibling = dom;
|
|
64
|
+
}
|
|
65
|
+
// @ts-ignore
|
|
66
|
+
this.firstChild = this.children[0];
|
|
67
|
+
this.children.push(dom);
|
|
68
|
+
/* eslint-enable @typescript-eslint/ban-ts-comment */
|
|
69
|
+
}
|
|
70
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
71
|
+
setAttribute(name, value) {
|
|
72
|
+
if (value === '')
|
|
73
|
+
return this.attributes.delete(name);
|
|
74
|
+
/* eslint-disable @typescript-eslint/ban-ts-comment */
|
|
75
|
+
// @ts-ignore
|
|
76
|
+
if (name === 'class')
|
|
77
|
+
return this.className = value;
|
|
78
|
+
// @ts-ignore
|
|
79
|
+
if (name === 'style')
|
|
80
|
+
return this.style = value;
|
|
81
|
+
/* eslint-enable @typescript-eslint/ban-ts-comment */
|
|
82
|
+
this.attributes.set(name, value);
|
|
83
|
+
}
|
|
84
|
+
removeAttribute(name) {
|
|
85
|
+
this.attributes.delete(name);
|
|
86
|
+
}
|
|
87
|
+
toString() {
|
|
88
|
+
if (this.nodeName === '#text')
|
|
89
|
+
return this.content;
|
|
90
|
+
if (this.nodeName === '#comment')
|
|
91
|
+
return this.content;
|
|
92
|
+
const className = this.className.length > 0 ? `class="${this.className}"` : '';
|
|
93
|
+
const styleString = Object.entries(this.style).map(([key, value]) => `${camelToKebab(key)}:${value}`).join(';');
|
|
94
|
+
const style = styleString.length > 0 ? `style="${styleString}"` : '';
|
|
95
|
+
const attributes = Array.from(this.attributes.entries()).map(([name, value]) => `${name}="${value}"`).join(' ');
|
|
96
|
+
return `<${this.nodeName} ${className} ${style} ${attributes}>${this.children.map(child => child.toString()).join('')}</${this.nodeName}>`;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
export function render(element, domRef) {
|
|
100
|
+
const rootInstance = {
|
|
101
|
+
domRef: SsrHTMLElement.createElement('div') || domRef,
|
|
102
|
+
context: new InnerAirxComponentContext()
|
|
103
|
+
};
|
|
104
|
+
rootInstance.context.instance = rootInstance;
|
|
105
|
+
const context = {
|
|
106
|
+
rootInstance,
|
|
107
|
+
nextUnitOfWork: null,
|
|
108
|
+
needCommitDom: false
|
|
109
|
+
};
|
|
110
|
+
const appInstance = {
|
|
111
|
+
element,
|
|
112
|
+
parent: context.rootInstance,
|
|
113
|
+
memoProps: { ...element.props },
|
|
114
|
+
context: new InnerAirxComponentContext()
|
|
115
|
+
};
|
|
116
|
+
appInstance.context.instance = appInstance;
|
|
117
|
+
context.rootInstance.child = appInstance;
|
|
118
|
+
context.nextUnitOfWork = appInstance;
|
|
119
|
+
/**
|
|
120
|
+
* 提交 Dom 变化
|
|
121
|
+
*/
|
|
122
|
+
function commitDom(rootInstance, rootNode) {
|
|
123
|
+
const logger = createLogger('commitDom');
|
|
124
|
+
logger.debug('commitDom', rootInstance);
|
|
125
|
+
function updateDomProperties(dom, nextProps, prevProps = {}) {
|
|
126
|
+
const isKey = (key) => key === 'key';
|
|
127
|
+
const isRef = (key) => key === 'ref';
|
|
128
|
+
const isStyle = (key) => key === 'style';
|
|
129
|
+
const isClass = (key) => key === 'class';
|
|
130
|
+
const isEvent = (key) => key.startsWith("on");
|
|
131
|
+
const isChildren = (key) => key === 'children';
|
|
132
|
+
const isGone = (_prev, next) => (key) => !(key in next);
|
|
133
|
+
const isNew = (prev, next) => (key) => prev[key] !== next[key];
|
|
134
|
+
const isProperty = (key) => !isChildren(key) && !isEvent(key) && !isStyle(key) && !isClass(key) && !isKey(key) && !isRef(key);
|
|
135
|
+
// https://developer.mozilla.org/zh-CN/docs/Web/API/Node
|
|
136
|
+
if (dom.nodeName === '#text' || dom.nodeName === '#comment') {
|
|
137
|
+
const textNode = dom;
|
|
138
|
+
if (textNode.nodeValue !== nextProps.textContent) {
|
|
139
|
+
textNode.nodeValue = String(nextProps.textContent);
|
|
140
|
+
}
|
|
141
|
+
return;
|
|
142
|
+
}
|
|
143
|
+
// remove old style
|
|
144
|
+
const oldStyle = prevProps?.style;
|
|
145
|
+
if (typeof oldStyle === 'object' && oldStyle != null) {
|
|
146
|
+
Object.keys(oldStyle).forEach(key => {
|
|
147
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
148
|
+
delete dom.style[key];
|
|
149
|
+
/* eslint-enable @typescript-eslint/no-explicit-any */
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
// add new style
|
|
153
|
+
const newStyle = nextProps?.style;
|
|
154
|
+
if (typeof newStyle === 'object' && newStyle != null) {
|
|
155
|
+
Object.keys(newStyle).forEach((key) => {
|
|
156
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
157
|
+
const value = newStyle?.[key];
|
|
158
|
+
dom.style[key] = value == null ? '' : value;
|
|
159
|
+
/* eslint-enable @typescript-eslint/no-explicit-any */
|
|
160
|
+
});
|
|
161
|
+
}
|
|
162
|
+
if (dom.className !== nextProps?.class) {
|
|
163
|
+
if (!nextProps?.class) {
|
|
164
|
+
dom.removeAttribute('class');
|
|
165
|
+
}
|
|
166
|
+
else if (typeof nextProps?.class === 'string') {
|
|
167
|
+
dom.setAttribute('class', nextProps?.class);
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
// //Remove old or changed event listeners
|
|
171
|
+
// Object.keys(prevProps)
|
|
172
|
+
// .filter(isEvent)
|
|
173
|
+
// .filter(
|
|
174
|
+
// key =>
|
|
175
|
+
// !(key in nextProps) ||
|
|
176
|
+
// isNew(prevProps, nextProps)(key)
|
|
177
|
+
// )
|
|
178
|
+
// .forEach(name => {
|
|
179
|
+
// const eventType = name
|
|
180
|
+
// .toLowerCase()
|
|
181
|
+
// .substring(2)
|
|
182
|
+
// if (prevProps[name] == null) return
|
|
183
|
+
// if (typeof prevProps[name] !== 'function') {
|
|
184
|
+
// console.error('EventListener is not a function')
|
|
185
|
+
// } else {
|
|
186
|
+
// // eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
187
|
+
// dom.removeEventListener(eventType as any, prevProps[name] as any)
|
|
188
|
+
// }
|
|
189
|
+
// })
|
|
190
|
+
// // Add event listeners
|
|
191
|
+
// Object.keys(nextProps)
|
|
192
|
+
// .filter(isEvent)
|
|
193
|
+
// .filter(isNew(prevProps, nextProps))
|
|
194
|
+
// .forEach(name => {
|
|
195
|
+
// const eventType = name
|
|
196
|
+
// .toLowerCase()
|
|
197
|
+
// .substring(2)
|
|
198
|
+
// if (nextProps[name] == null) return
|
|
199
|
+
// if (typeof nextProps[name] !== 'function') {
|
|
200
|
+
// console.error('EventListener is not a function')
|
|
201
|
+
// } else {
|
|
202
|
+
// // eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
203
|
+
// dom.addEventListener(eventType as any, nextProps[name] as any)
|
|
204
|
+
// }
|
|
205
|
+
// })
|
|
206
|
+
// Remove old properties
|
|
207
|
+
Object.keys(prevProps)
|
|
208
|
+
.filter(isProperty)
|
|
209
|
+
.filter(isGone(prevProps, nextProps))
|
|
210
|
+
.forEach(name => dom.setAttribute(name, ''));
|
|
211
|
+
// Set new or changed properties
|
|
212
|
+
Object.keys(nextProps)
|
|
213
|
+
.filter(isProperty)
|
|
214
|
+
.filter(isNew(prevProps, nextProps))
|
|
215
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
216
|
+
.forEach(name => dom.setAttribute(name, nextProps[name]));
|
|
217
|
+
}
|
|
218
|
+
function getParentDom(instance) {
|
|
219
|
+
if (instance.parent?.domRef != null) {
|
|
220
|
+
return instance.parent.domRef;
|
|
221
|
+
}
|
|
222
|
+
if (instance.parent) {
|
|
223
|
+
return getParentDom(instance.parent);
|
|
224
|
+
}
|
|
225
|
+
throw new Error('Cant find dom');
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* 查找 instance 下所有的一级 dom
|
|
229
|
+
* @param instance
|
|
230
|
+
* @returns
|
|
231
|
+
*/
|
|
232
|
+
function getChildDoms(instance) {
|
|
233
|
+
const domList = [];
|
|
234
|
+
const todoList = [instance];
|
|
235
|
+
while (todoList.length > 0) {
|
|
236
|
+
const current = todoList.pop();
|
|
237
|
+
// 找到真实 dom 直接提交
|
|
238
|
+
if (current?.domRef != null) {
|
|
239
|
+
domList.push(current.domRef);
|
|
240
|
+
}
|
|
241
|
+
// 有子节点但是无真实 dom,向下继续查找
|
|
242
|
+
if (current?.domRef == null) {
|
|
243
|
+
if (current?.child != null) {
|
|
244
|
+
todoList.push(current.child);
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
// 可能有兄弟节点,则需要继续查找
|
|
248
|
+
if (current?.sibling != null) {
|
|
249
|
+
todoList.push(current.sibling);
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
return domList;
|
|
253
|
+
}
|
|
254
|
+
function commitInstanceDom(nextInstance, oldNode) {
|
|
255
|
+
// 移除标删元素
|
|
256
|
+
if (nextInstance.deletions) {
|
|
257
|
+
for (const deletion of nextInstance.deletions) {
|
|
258
|
+
const domList = getChildDoms(deletion);
|
|
259
|
+
for (let index = 0; index < domList.length; index++) {
|
|
260
|
+
const dom = domList[index];
|
|
261
|
+
if (dom && dom.parentNode)
|
|
262
|
+
dom.parentNode.removeChild(dom);
|
|
263
|
+
}
|
|
264
|
+
deletion.context.triggerUnmounted();
|
|
265
|
+
}
|
|
266
|
+
nextInstance.deletions.clear();
|
|
267
|
+
}
|
|
268
|
+
// 创建 dom
|
|
269
|
+
if (nextInstance.domRef == null) {
|
|
270
|
+
if (nextInstance.element == null)
|
|
271
|
+
throw new Error('???');
|
|
272
|
+
if (typeof nextInstance.element.type === 'string') {
|
|
273
|
+
if (nextInstance.element.type === 'text') {
|
|
274
|
+
const textContent = nextInstance.element.props.textContent;
|
|
275
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
276
|
+
nextInstance.domRef = SsrHTMLElement.createTextNode(textContent);
|
|
277
|
+
}
|
|
278
|
+
else if (nextInstance.element.type === 'comment') {
|
|
279
|
+
const textContent = nextInstance.element.props.textContent;
|
|
280
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
281
|
+
nextInstance.domRef = SsrHTMLElement.createComment(textContent);
|
|
282
|
+
}
|
|
283
|
+
else {
|
|
284
|
+
nextInstance.domRef = SsrHTMLElement.createElement(nextInstance.element.type);
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
// 更新属性
|
|
289
|
+
if (nextInstance.domRef != null && nextInstance.element != null) {
|
|
290
|
+
updateDomProperties(nextInstance.domRef, nextInstance.element.props, nextInstance.beforeElement?.props);
|
|
291
|
+
}
|
|
292
|
+
// 插入 parent
|
|
293
|
+
// TODO: 针对仅移动时优化
|
|
294
|
+
if (nextInstance.domRef != null) {
|
|
295
|
+
if (oldNode !== nextInstance.domRef) {
|
|
296
|
+
if (nextInstance.domRef.parentNode) {
|
|
297
|
+
nextInstance.domRef.parentNode.removeChild(nextInstance.domRef);
|
|
298
|
+
}
|
|
299
|
+
const parentDom = getParentDom(nextInstance);
|
|
300
|
+
parentDom.appendChild(nextInstance.domRef);
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
function commitWalkV2(initInstance, initNode) {
|
|
305
|
+
// 创建一个栈,将根节点压入栈中
|
|
306
|
+
const stack = [[initInstance, initNode]];
|
|
307
|
+
while (stack.length > 0) {
|
|
308
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
309
|
+
const stackLayer = stack.pop();
|
|
310
|
+
if (typeof stackLayer === 'function') {
|
|
311
|
+
stackLayer();
|
|
312
|
+
continue;
|
|
313
|
+
}
|
|
314
|
+
const [instance, node] = stackLayer;
|
|
315
|
+
commitInstanceDom(instance, node);
|
|
316
|
+
// stack 是先入后出
|
|
317
|
+
// 实际上是先渲染 child
|
|
318
|
+
// 这里然后再渲染 sibling
|
|
319
|
+
// 执行生命周期的 Mount
|
|
320
|
+
stack.push(() => instance.context.triggerMounted());
|
|
321
|
+
// 更新下一个兄弟节点
|
|
322
|
+
if (instance.sibling != null) {
|
|
323
|
+
const siblingNode = instance.domRef
|
|
324
|
+
? instance.domRef.nextSibling
|
|
325
|
+
: node?.nextSibling;
|
|
326
|
+
stack.push([instance.sibling, siblingNode || undefined]);
|
|
327
|
+
}
|
|
328
|
+
// 更新下一个子节点
|
|
329
|
+
if (instance.child != null) {
|
|
330
|
+
const childNode = instance.domRef
|
|
331
|
+
? instance.domRef.firstChild
|
|
332
|
+
: node;
|
|
333
|
+
stack.push([instance.child, childNode || undefined]);
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
}
|
|
337
|
+
commitWalkV2(rootInstance, rootNode);
|
|
338
|
+
}
|
|
339
|
+
while (context.nextUnitOfWork) {
|
|
340
|
+
context.nextUnitOfWork = performUnitOfWork(context.nextUnitOfWork);
|
|
341
|
+
}
|
|
342
|
+
commitDom(context.rootInstance.child, context.rootInstance.domRef?.firstChild || undefined);
|
|
343
|
+
return context.rootInstance.domRef?.toString();
|
|
8
344
|
}
|
|
9
345
|
//# sourceMappingURL=server.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../source/render/server.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,6DAA6D;AAC7D,MAAM,UAAU,MAAM,CAAC,OAA4B;IACjD,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAA;AAClC,CAAC"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../source/render/server.ts"],"names":[],"mappings":"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"}
|
package/output/types.d.ts
CHANGED
|
@@ -287,6 +287,7 @@ interface AriaAttributes {
|
|
|
287
287
|
}
|
|
288
288
|
export type StyleValue = string | CSSProperties | Array<StyleValue>;
|
|
289
289
|
export interface HTMLAttributes extends AriaAttributes, EventHandlers<Events> {
|
|
290
|
+
xmlns?: string;
|
|
290
291
|
innerHTML?: string;
|
|
291
292
|
class?: string;
|
|
292
293
|
style?: StyleValue;
|