airx 0.1.2 → 0.1.3

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.
@@ -1,3 +1,4 @@
1
+ import { Ref } from './reactive';
1
2
  import * as symbol from './symbol';
2
3
  type AirxElementType<P> = string | AirxComponent<P>;
3
4
  /**
@@ -7,14 +8,14 @@ type AirxElementType<P> = string | AirxComponent<P>;
7
8
  * props 表示元素的属性
8
9
  * children 表示元素的子元素
9
10
  */
10
- export interface AirxElement<P = unknown> {
11
+ export interface AirxElement<P = any> {
11
12
  type: AirxElementType<P>;
12
13
  props: {
13
14
  [propKey: string]: unknown;
14
- };
15
+ } & P;
15
16
  [symbol.airxElementSymbol]: true;
16
17
  }
17
- export type AirxChildren = null | string | number | boolean | undefined | AirxElement<never> | Array<AirxElement<never>>;
18
+ export type AirxChildren = null | string | number | boolean | undefined | AirxElement | Array<AirxChildren>;
18
19
  /**
19
20
  * 函数式组件接收自己的 props,并返回一个 AirxElement
20
21
  */
@@ -23,18 +24,21 @@ export type AirxComponentRender = () => AirxChildren;
23
24
  /**
24
25
  * createElement 是用于创建 AirxElement 的工具函数
25
26
  */
26
- export declare function createElement<P = unknown>(type: AirxElementType<P>, props: {
27
+ export declare function createElement<P = any>(type: AirxElementType<P>, props: {
27
28
  [key: string]: unknown;
28
29
  } & P, ...children: AirxChildren[]): AirxElement<P>;
29
30
  export declare function isValidElement(element: unknown): element is AirxElement;
30
31
  export declare function Fragment(props: {
31
32
  children: AirxElement;
32
- }): () => AirxElement<unknown>;
33
+ }): () => AirxElement<any>;
33
34
  export type AirxComponentUnmountedListener = () => void;
34
35
  export type AirxComponentMountedListener = () => () => void | void;
35
36
  export interface AirxComponentLifecycle {
36
37
  onMounted: (listener: AirxComponentMountedListener) => void;
37
38
  onUnmounted: (listener: AirxComponentUnmountedListener) => void;
38
39
  }
39
- export type AirxComponentContext = AirxComponentLifecycle;
40
+ export type AirxComponentContext = AirxComponentLifecycle & {
41
+ provide: <T = any>(key: any, value: T) => (newValue: T) => void;
42
+ inject: <T = any>(key: any) => Ref<T | null>;
43
+ };
40
44
  export {};
package/output/element.js CHANGED
@@ -2,6 +2,7 @@ import * as symbol from './symbol';
2
2
  /**
3
3
  * createElement 是用于创建 AirxElement 的工具函数
4
4
  */
5
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
5
6
  export function createElement(type, props, ...children) {
6
7
  return {
7
8
  type,
@@ -1 +1 @@
1
- {"version":3,"file":"element.js","sourceRoot":"","sources":["../source/element.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAA;AAgClC;;GAEG;AACH,MAAM,UAAU,aAAa,CAC3B,IAAwB,EACxB,KAAqC,EACrC,GAAG,QAAwB;IAE3B,OAAO;QACL,IAAI;QACJ,KAAK,EAAE;YACL,GAAG,KAAK;YACR,QAAQ;SACT;QACD,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,IAAI;KACjC,CAAA;AACH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,OAAgB;IAC7C,OAAO,OAAO,OAAO,KAAK,QAAQ;WAC7B,OAAO,KAAK,IAAI;WAChB,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,iBAAiB,CAAC,CAAA;AACrD,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,KAAgC;IACvD,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAA;AAC7B,CAAC"}
1
+ {"version":3,"file":"element.js","sourceRoot":"","sources":["../source/element.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAA;AAiClC;;GAEG;AACH,8DAA8D;AAC9D,MAAM,UAAU,aAAa,CAC3B,IAAwB,EACxB,KAAqC,EACrC,GAAG,QAAwB;IAE3B,OAAO;QACL,IAAI;QACJ,KAAK,EAAE;YACL,GAAG,KAAK;YACR,QAAQ;SACT;QACD,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,IAAI;KACjC,CAAA;AACH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,OAAgB;IAC7C,OAAO,OAAO,OAAO,KAAK,QAAQ;WAC7B,OAAO,KAAK,IAAI;WAChB,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,iBAAiB,CAAC,CAAA;AACrD,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,KAAgC;IACvD,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAA;AAC7B,CAAC"}
package/output/index.d.ts CHANGED
@@ -2,7 +2,7 @@ import { AirxElement } from './element';
2
2
  export * from './types';
3
3
  export { createRef } from './reactive';
4
4
  export { Fragment, createElement, AirxComponent, AirxElement, AirxChildren, AirxComponentContext } from './element';
5
- export { useContext, onMounted, onUnmounted } from './render';
5
+ export { useContext, inject, provide, onMounted, onUnmounted } from './render';
6
6
  export interface AirxApp {
7
7
  mount: (container: HTMLElement) => AirxApp;
8
8
  }
package/output/index.js CHANGED
@@ -2,7 +2,7 @@ import { render } from './render';
2
2
  export * from './types';
3
3
  export { createRef } from './reactive';
4
4
  export { Fragment, createElement } from './element';
5
- export { useContext, onMounted, onUnmounted } from './render';
5
+ export { useContext, inject, provide, onMounted, onUnmounted } from './render';
6
6
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
7
7
  export function createApp(element) {
8
8
  const app = {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../source/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEjC,cAAc,SAAS,CAAA;AAEvB,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAEtC,OAAO,EACL,QAAQ,EACR,aAAa,EAKd,MAAM,WAAW,CAAA;AAElB,OAAO,EACL,UAAU,EACV,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,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;YAC1B,OAAO,GAAG,CAAA;QACZ,CAAC;KACF,CAAA;IAED,OAAO,GAAG,CAAA;AACZ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../source/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEjC,cAAc,SAAS,CAAA;AAEvB,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAEtC,OAAO,EACL,QAAQ,EACR,aAAa,EAKd,MAAM,WAAW,CAAA;AAElB,OAAO,EACL,UAAU,EACV,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,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;YAC1B,OAAO,GAAG,CAAA;QACZ,CAAC;KACF,CAAA;IAED,OAAO,GAAG,CAAA;AACZ,CAAC"}
@@ -2,9 +2,8 @@ export declare function createCollector(): {
2
2
  complete: () => Ref<unknown>[];
3
3
  collect: <R = unknown>(process: () => R) => R;
4
4
  };
5
- interface Ref<T = unknown> {
5
+ export interface Ref<T = unknown> {
6
6
  value: T;
7
7
  }
8
8
  export declare function watch<T = unknown>(ref: Ref<T>, listener: () => unknown): () => void;
9
9
  export declare function createRef<T>(obj: T): Ref<T>;
10
- export {};
@@ -49,19 +49,20 @@ export function createRef(obj) {
49
49
  if (!globalContext.dependencies.has(ref)) {
50
50
  globalContext.dependencies.add(ref);
51
51
  }
52
- return new Proxy(ref, {
53
- get(target, key, receiver) {
54
- const result = Reflect.get(target, key, receiver);
52
+ let value = ref.value;
53
+ Reflect.defineProperty(ref, 'value', {
54
+ get() {
55
55
  if (!globalContext.dependencies.has(ref)) {
56
56
  globalContext.dependencies.add(ref);
57
57
  }
58
- return result;
59
- },
60
- set(target, key, value, receiver) {
61
- const result = Reflect.set(target, key, value, receiver);
62
- triggerRef(target);
63
- return result;
58
+ return value;
64
59
  },
60
+ set(newValue) {
61
+ value = newValue;
62
+ triggerRef(ref);
63
+ return value;
64
+ }
65
65
  });
66
+ return ref;
66
67
  }
67
68
  //# sourceMappingURL=reactive.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reactive.js","sourceRoot":"","sources":["../source/reactive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reactive.js","sourceRoot":"","sources":["../source/reactive.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,24 @@
1
+ import { Ref } from './reactive';
1
2
  import { AirxElement, AirxComponentRender, AirxComponentContext, AirxComponentMountedListener, AirxComponentUnmountedListener } from './element';
2
3
  export declare function useContext(): AirxComponentContext;
3
4
  export declare const onMounted: AirxComponentContext['onMounted'];
4
5
  export declare const onUnmounted: AirxComponentContext['onUnmounted'];
6
+ export declare const inject: AirxComponentContext['inject'];
7
+ export declare const provide: AirxComponentContext['provide'];
5
8
  export type Disposer = () => void;
6
9
  declare class InnerAirxComponentContext implements AirxComponentContext {
10
+ instance?: Instance;
7
11
  private disposers;
12
+ private providedMap;
13
+ private injectedMap;
8
14
  private mountListeners;
9
15
  private unmountedListeners;
10
16
  triggerMounted(): void;
11
17
  triggerUnmounted(): void;
12
18
  onMounted(listener: AirxComponentMountedListener): void;
13
19
  onUnmounted(listener: AirxComponentUnmountedListener): void;
20
+ provide<T = unknown>(key: any, value: any): (v: T) => void;
21
+ inject<T = unknown>(key: any): Ref<T | null>;
14
22
  addDisposer(...disposers: Disposer[]): void;
15
23
  dispose(): void;
16
24
  /**
@@ -36,7 +44,7 @@ interface Instance {
36
44
  element?: AirxElement;
37
45
  beforeElement?: AirxElement;
38
46
  render?: AirxComponentRender;
39
- memoProps?: object;
47
+ memoProps?: any;
40
48
  requiredUpdate?: boolean;
41
49
  context: InnerAirxComponentContext;
42
50
  }
package/output/render.js CHANGED
@@ -1,4 +1,4 @@
1
- import { createCollector, watch } from './reactive';
1
+ import { createCollector, createRef, watch } from './reactive';
2
2
  import { createElement, isValidElement } from './element';
3
3
  import { createLogger } from './logger';
4
4
  const globalContext = {
@@ -16,8 +16,17 @@ export const onMounted = (listener) => {
16
16
  export const onUnmounted = (listener) => {
17
17
  return useContext().onUnmounted(listener);
18
18
  };
19
+ export const inject = (key) => {
20
+ return useContext().inject(key);
21
+ };
22
+ export const provide = (key, value) => {
23
+ return useContext().provide(key, value);
24
+ };
19
25
  class InnerAirxComponentContext {
26
+ instance;
20
27
  disposers = new Set();
28
+ providedMap = new Map();
29
+ injectedMap = new Map();
21
30
  mountListeners = new Set();
22
31
  unmountedListeners = new Set();
23
32
  triggerMounted() {
@@ -37,6 +46,11 @@ class InnerAirxComponentContext {
37
46
  this.mountListeners.clear();
38
47
  }
39
48
  triggerUnmounted() {
49
+ // 递归的调用子 child 的 Unmounted
50
+ if (this.instance?.child != null) {
51
+ this.instance.child.context.triggerUnmounted();
52
+ }
53
+ // 处理自己
40
54
  this.unmountedListeners.forEach(listener => {
41
55
  try {
42
56
  listener();
@@ -45,8 +59,11 @@ class InnerAirxComponentContext {
45
59
  console.error(err, listener);
46
60
  }
47
61
  });
48
- // 生命周期只会调用一次
49
- this.mountListeners.clear();
62
+ // 处理兄弟节点
63
+ if (this.instance?.sibling != null) {
64
+ this.instance.sibling.context.triggerUnmounted();
65
+ }
66
+ this.dispose();
50
67
  }
51
68
  onMounted(listener) {
52
69
  this.mountListeners.add(listener);
@@ -54,6 +71,51 @@ class InnerAirxComponentContext {
54
71
  onUnmounted(listener) {
55
72
  this.unmountedListeners.add(listener);
56
73
  }
74
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
75
+ provide(key, value) {
76
+ if (!this.providedMap.has(key)) {
77
+ this.providedMap.set(key, createRef(value));
78
+ }
79
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
80
+ const ref = this.providedMap.get(key);
81
+ ref.value = value;
82
+ return newValue => ref.value = newValue;
83
+ }
84
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
85
+ inject(key) {
86
+ if (!this.injectedMap.has(key)) {
87
+ this.injectedMap.set(key, createRef(null));
88
+ }
89
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
90
+ const resultRef = this.injectedMap.get(key);
91
+ /**
92
+ * 从当前组件开始向上查找
93
+ * @returns 返回找到的值的 Ref 和提供该值的实例
94
+ */
95
+ const getResultOfContext = () => {
96
+ let provider = null;
97
+ let result = null;
98
+ let nextParentInstance = this.instance;
99
+ while (nextParentInstance != null) {
100
+ provider = nextParentInstance;
101
+ result = nextParentInstance.context.providedMap.get(key) || null;
102
+ if (result != null)
103
+ break;
104
+ nextParentInstance = nextParentInstance.parent;
105
+ }
106
+ return { result, provider };
107
+ };
108
+ const { result, provider } = getResultOfContext();
109
+ if (result != null && provider != null) {
110
+ // 每当值发生变化,同步到当前的 Ref 上
111
+ this.addDisposer(watch(result, () => {
112
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
113
+ resultRef.value = result.value;
114
+ }));
115
+ }
116
+ resultRef.value = result?.value;
117
+ return resultRef;
118
+ }
57
119
  addDisposer(...disposers) {
58
120
  disposers.forEach(disposer => {
59
121
  this.disposers.add(disposer);
@@ -70,6 +132,8 @@ class InnerAirxComponentContext {
70
132
  }
71
133
  });
72
134
  this.disposers.clear();
135
+ this.injectedMap.clear();
136
+ this.providedMap.clear();
73
137
  this.mountListeners.clear();
74
138
  this.unmountedListeners.clear();
75
139
  }
@@ -79,27 +143,31 @@ class InnerAirxComponentContext {
79
143
  */
80
144
  getSafeContext() {
81
145
  return {
146
+ inject: k => this.inject(k),
147
+ provide: (k, v) => this.provide(k, v),
82
148
  onMounted: listener => this.onMounted(listener),
83
149
  onUnmounted: listener => this.onUnmounted(listener)
84
150
  };
85
151
  }
86
152
  }
87
153
  export function render(element, domRef) {
154
+ const rootInstance = {
155
+ domRef,
156
+ context: new InnerAirxComponentContext()
157
+ };
158
+ rootInstance.context.instance = rootInstance;
88
159
  const context = {
89
- rootInstance: {
90
- domRef,
91
- memoProps: {},
92
- context: new InnerAirxComponentContext()
93
- },
160
+ rootInstance,
94
161
  nextUnitOfWork: null,
95
162
  needCommitDom: false
96
163
  };
97
164
  const appInstance = {
98
165
  element,
99
- memoProps: {},
100
166
  parent: context.rootInstance,
167
+ memoProps: { ...element.props },
101
168
  context: new InnerAirxComponentContext()
102
169
  };
170
+ appInstance.context.instance = appInstance;
103
171
  context.rootInstance.child = appInstance;
104
172
  context.nextUnitOfWork = appInstance;
105
173
  /**
@@ -175,7 +243,7 @@ export function render(element, domRef) {
175
243
  return false;
176
244
  return true;
177
245
  }
178
- function updateProps(instance) {
246
+ function updateMemoProps(instance) {
179
247
  if (instance.element == null)
180
248
  return;
181
249
  if (instance.memoProps == null)
@@ -185,16 +253,15 @@ export function render(element, domRef) {
185
253
  // 1. 创建一个新对象来保存 beforeElement props 的状态
186
254
  // 2. 将新的 element 上的 props 引用设置为之前的 props
187
255
  // 3. 将新的 element 上的 props 更新到之前的 props 上去
188
- // 清空原来的东西
189
- if (instance.beforeElement != null) {
190
- for (const key in instance.beforeElement.props) {
191
- Reflect.deleteProperty(instance.memoProps, key);
256
+ if (instance.memoProps != null) {
257
+ for (const key in instance.memoProps) {
258
+ delete instance.memoProps[key];
192
259
  }
193
260
  }
194
261
  // 将新的 props 更新上去
195
262
  for (const key in instance.element.props) {
196
- const value = Reflect.get(instance.element.props, key);
197
- Reflect.set(instance.memoProps, key, value);
263
+ const value = instance.element.props[key];
264
+ instance.memoProps[key] = value;
198
265
  }
199
266
  }
200
267
  function shouldUpdate(instance) {
@@ -250,17 +317,19 @@ export function render(element, domRef) {
250
317
  newChildrenInstanceArray.push(instance);
251
318
  instance.beforeElement = instance.element;
252
319
  instance.element = element;
253
- updateProps(instance);
320
+ updateMemoProps(instance);
254
321
  // 未标注更新的检查一下是否需要更新
255
- if (!instance.requiredUpdate) {
256
- instance.requiredUpdate = shouldUpdate(instance);
322
+ if (instance.requiredUpdate !== true && typeof element.type === 'function') {
323
+ // FIXME: 没必要让 child 都 requiredUpdate,最好时可以只通过 shouldUpdate 来判断是否需要更新
324
+ instance.requiredUpdate = parentInstance.requiredUpdate || shouldUpdate(instance);
257
325
  }
258
326
  }
259
327
  else {
260
328
  const context = new InnerAirxComponentContext();
261
329
  const instance = { element, context };
262
330
  newChildrenInstanceArray.push(instance);
263
- updateProps(instance);
331
+ context.instance = instance;
332
+ updateMemoProps(instance);
264
333
  }
265
334
  }
266
335
  // 新的 node
@@ -281,6 +350,8 @@ export function render(element, domRef) {
281
350
  parentInstance.deletions = new Set();
282
351
  }
283
352
  childrenInstanceMap.forEach(instance => {
353
+ delete instance.parent;
354
+ delete instance.sibling;
284
355
  parentInstance.deletions?.add(instance);
285
356
  });
286
357
  }
@@ -491,7 +562,6 @@ export function render(element, domRef) {
491
562
  if (dom && dom.parentNode)
492
563
  dom.parentNode.removeChild(dom);
493
564
  deletion.context.triggerUnmounted();
494
- deletion.context.dispose();
495
565
  }
496
566
  nextInstance.deletions.clear();
497
567
  }
@@ -1 +1 @@
1
- {"version":3,"file":"render.js","sourceRoot":"","sources":["../source/render.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../source/render.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "airx",
3
- "version": "0.1.2",
3
+ "version": "0.1.3",
4
4
  "description": "a front framework with jsx",
5
5
  "types": "./output/index.d.ts",
6
6
  "exports": {
@@ -26,5 +26,5 @@
26
26
  "typescript": "~5.0.0"
27
27
  },
28
28
  "author": "",
29
- "license": "ISC"
29
+ "license": "MIT"
30
30
  }