annil 1.5.8 → 1.5.10
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 +14 -0
- package/README.md +1 -1
- package/dist/api/DefineComponent/assignOptions/computedWatchHandle/computedUpdater.d.ts +6 -0
- package/dist/{behaviors/BComputedAndWatch → api/DefineComponent/assignOptions/computedWatchHandle}/computedUpdater.js +3 -3
- package/dist/api/DefineComponent/assignOptions/computedWatchHandle/computedUpdater.js.map +1 -0
- package/dist/{behaviors/BComputedAndWatch → api/DefineComponent/assignOptions/computedWatchHandle}/data-tracer.d.ts +1 -1
- package/dist/api/DefineComponent/assignOptions/computedWatchHandle/data-tracer.js.map +1 -0
- package/dist/api/DefineComponent/assignOptions/computedWatchHandle/getPathsValue.js.map +1 -0
- package/dist/{behaviors/BComputedAndWatch → api/DefineComponent/assignOptions/computedWatchHandle}/getPropertiesValue.d.ts +1 -1
- package/dist/{behaviors/BComputedAndWatch → api/DefineComponent/assignOptions/computedWatchHandle}/getPropertiesValue.js +1 -1
- package/dist/api/DefineComponent/assignOptions/computedWatchHandle/getPropertiesValue.js.map +1 -0
- package/dist/api/DefineComponent/assignOptions/computedWatchHandle/index.d.ts +2 -0
- package/dist/api/DefineComponent/assignOptions/computedWatchHandle/index.js +69 -0
- package/dist/api/DefineComponent/assignOptions/computedWatchHandle/index.js.map +1 -0
- package/dist/{behaviors/BComputedAndWatch → api/DefineComponent/assignOptions/computedWatchHandle}/initComputed.d.ts +8 -5
- package/dist/{behaviors/BComputedAndWatch → api/DefineComponent/assignOptions/computedWatchHandle}/initComputed.js +1 -1
- package/dist/api/DefineComponent/assignOptions/computedWatchHandle/initComputed.js.map +1 -0
- package/dist/api/DefineComponent/assignOptions/computedWatchHandle/isEqual.js.map +1 -0
- package/dist/api/DefineComponent/assignOptions/index.d.ts +49 -0
- package/dist/api/DefineComponent/{collectOptionsForComponent.js → assignOptions/index.js} +35 -23
- package/dist/api/DefineComponent/assignOptions/index.js.map +1 -0
- package/dist/api/DefineComponent/assignOptions/initStore/index.d.ts +2 -0
- package/dist/api/DefineComponent/assignOptions/initStore/index.js +12 -0
- package/dist/api/DefineComponent/assignOptions/initStore/index.js.map +1 -0
- package/dist/api/DefineComponent/index.d.ts +1 -1
- package/dist/api/DefineComponent/index.js +2 -2
- package/dist/api/DefineComponent/index.js.map +1 -1
- package/dist/api/InstanceInject/instanceConfig.d.ts +1 -1
- package/dist/api/InstanceInject/instanceConfig.js.map +1 -1
- package/dist/api/RootComponent/Lifetimes/LifetimesConstraint.d.ts +1 -1
- package/dist/api/RootComponent/Observers/ObserversOption.d.ts +1 -1
- package/dist/api/SubComponent/index.d.ts +2 -1
- package/dist/api/SubComponent/index.js.map +1 -1
- package/dist/behaviors/BStore.js +1 -14
- package/dist/behaviors/BStore.js.map +1 -1
- package/dist/types/AssignValues.d.ts +9 -0
- package/dist/types/AssignValues.js +2 -0
- package/dist/types/AssignValues.js.map +1 -0
- package/dist/utils/deepClone.js.map +1 -1
- package/package.json +1 -1
- package/src/{behaviors/BComputedAndWatch → api/DefineComponent/assignOptions/computedWatchHandle}/computedUpdater.ts +6 -5
- package/src/{behaviors/BComputedAndWatch → api/DefineComponent/assignOptions/computedWatchHandle}/data-tracer.ts +1 -1
- package/src/{behaviors/BComputedAndWatch → api/DefineComponent/assignOptions/computedWatchHandle}/getPropertiesValue.ts +3 -4
- package/src/api/DefineComponent/assignOptions/computedWatchHandle/index.ts +110 -0
- package/src/{behaviors/BComputedAndWatch → api/DefineComponent/assignOptions/computedWatchHandle}/initComputed.ts +13 -8
- package/src/api/DefineComponent/{collectOptionsForComponent.ts → assignOptions/index.ts} +108 -61
- package/src/api/DefineComponent/assignOptions/initStore/index.ts +16 -0
- package/src/api/DefineComponent/index.ts +3 -6
- package/src/api/DefineComponent/storeDataHandle/index.ts +30 -0
- package/src/api/InstanceInject/instanceConfig.ts +2 -1
- package/src/api/RootComponent/Lifetimes/LifetimesConstraint.ts +1 -1
- package/src/api/RootComponent/Observers/ObserversOption.ts +2 -2
- package/src/api/SubComponent/SubComputed/test/normal.test.ts +5 -5
- package/src/api/SubComponent/SubData/test/normal.test.ts +3 -3
- package/src/api/SubComponent/SubInstance/test/normal.test.ts +2 -2
- package/src/api/SubComponent/index.ts +3 -2
- package/src/behaviors/BStore.ts +4 -22
- package/src/behaviors/BbeforeCreated.ts +1 -1
- package/src/types/AssignValues.ts +26 -0
- package/src/utils/deepClone.ts +1 -2
- package/dist/api/DefineComponent/collectOptionsForComponent.d.ts +0 -31
- package/dist/api/DefineComponent/collectOptionsForComponent.js.map +0 -1
- package/dist/behaviors/BComputedAndWatch/computedUpdater.d.ts +0 -2
- package/dist/behaviors/BComputedAndWatch/computedUpdater.js.map +0 -1
- package/dist/behaviors/BComputedAndWatch/data-tracer.js.map +0 -1
- package/dist/behaviors/BComputedAndWatch/getPathsValue.js.map +0 -1
- package/dist/behaviors/BComputedAndWatch/getPropertiesValue.js.map +0 -1
- package/dist/behaviors/BComputedAndWatch/index.d.ts +0 -1
- package/dist/behaviors/BComputedAndWatch/index.js +0 -85
- package/dist/behaviors/BComputedAndWatch/index.js.map +0 -1
- package/dist/behaviors/BComputedAndWatch/initComputed.js.map +0 -1
- package/dist/behaviors/BComputedAndWatch/isEqual.js.map +0 -1
- package/dist/behaviors/BComputedAndWatch/types.d.ts +0 -24
- package/dist/behaviors/BComputedAndWatch/types.js +0 -2
- package/dist/behaviors/BComputedAndWatch/types.js.map +0 -1
- package/dist/utils/deleteProtoField.d.ts +0 -1
- package/dist/utils/deleteProtoField.js +0 -4
- package/dist/utils/deleteProtoField.js.map +0 -1
- package/src/behaviors/BComputedAndWatch/index.ts +0 -135
- package/src/behaviors/BComputedAndWatch/types.ts +0 -30
- package/src/utils/deleteProtoField.ts +0 -6
- /package/dist/{behaviors/BComputedAndWatch → api/DefineComponent/assignOptions/computedWatchHandle}/data-tracer.js +0 -0
- /package/dist/{behaviors/BComputedAndWatch → api/DefineComponent/assignOptions/computedWatchHandle}/getPathsValue.d.ts +0 -0
- /package/dist/{behaviors/BComputedAndWatch → api/DefineComponent/assignOptions/computedWatchHandle}/getPathsValue.js +0 -0
- /package/dist/{behaviors/BComputedAndWatch → api/DefineComponent/assignOptions/computedWatchHandle}/isEqual.d.ts +0 -0
- /package/dist/{behaviors/BComputedAndWatch → api/DefineComponent/assignOptions/computedWatchHandle}/isEqual.js +0 -0
- /package/src/{behaviors/BComputedAndWatch → api/DefineComponent/assignOptions/computedWatchHandle}/getPathsValue.ts +0 -0
- /package/src/{behaviors/BComputedAndWatch → api/DefineComponent/assignOptions/computedWatchHandle}/isEqual.ts +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,20 @@
|
|
|
4
4
|
|
|
5
5
|
* 解决DetailedType不接收接口类型的错误 ([ae8acbf](https://github.com/missannil/annil/commit/ae8acbfc2e62f99db565c448ad9253aa549e78bb))
|
|
6
6
|
|
|
7
|
+
## [1.5.10](https://github.com/missannil/annil/compare/v1.5.9...v1.5.10) (2024-01-08)
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
### Bug Fixes
|
|
11
|
+
|
|
12
|
+
* 同一组件多次复用时 computed和watch的问题 ([e996f10](https://github.com/missannil/annil/commit/e996f10369dc5fc64225f573a9f28c3c542c7226))
|
|
13
|
+
|
|
14
|
+
## [1.5.9](https://github.com/missannil/annil/compare/v1.5.8...v1.5.9) (2024-01-06)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Bug Fixes
|
|
18
|
+
|
|
19
|
+
* 无注入数据时 watch监控类型错误的问题和SubComponentdata数据为字面量类型造成实例类型错误的问题 ([3cb2b90](https://github.com/missannil/annil/commit/3cb2b9069a9aa0f95767a346f16634d4db3109f9))
|
|
20
|
+
|
|
7
21
|
## [1.5.8](https://github.com/missannil/annil/compare/v1.5.7...v1.5.8) (2024-01-05)
|
|
8
22
|
|
|
9
23
|
|
package/README.md
CHANGED
|
@@ -2,8 +2,8 @@ import { deepProxy, unwrap } from "./data-tracer";
|
|
|
2
2
|
import { getPathsValue } from "./getPathsValue";
|
|
3
3
|
import { isEqual } from "./isEqual";
|
|
4
4
|
export function computedUpdater(isUpdated = false) {
|
|
5
|
-
for (const key in this.__computedCache__) {
|
|
6
|
-
const itemCache = this.__computedCache__[key];
|
|
5
|
+
for (const key in this.data.__computedCache__) {
|
|
6
|
+
const itemCache = this.data.__computedCache__[key];
|
|
7
7
|
let changed = false;
|
|
8
8
|
for (const dep of itemCache.dependences) {
|
|
9
9
|
const curVal = getPathsValue(this.data, dep.paths.join("."))[0];
|
|
@@ -19,7 +19,7 @@ export function computedUpdater(isUpdated = false) {
|
|
|
19
19
|
[key]: unwrap(newValue),
|
|
20
20
|
});
|
|
21
21
|
isUpdated = true;
|
|
22
|
-
this.__computedCache__[key].dependences = newDependences;
|
|
22
|
+
this.data.__computedCache__[key].dependences = newDependences;
|
|
23
23
|
return computedUpdater.call(this, isUpdated);
|
|
24
24
|
}
|
|
25
25
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"computedUpdater.js","sourceRoot":"","sources":["../../../../../src/api/DefineComponent/assignOptions/computedWatchHandle/computedUpdater.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,MAAM,UAAU,eAAe,CAAiB,SAAS,GAAG,KAAK;IAC/D,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QACnD,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,KAAK,MAAM,GAAG,IAAI,SAAS,CAAC,WAAW,EAAE,CAAC;YAExC,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAGhE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC9B,OAAO,GAAG,IAAI,CAAC;gBAEf,MAAM;YACR,CAAC;QACH,CAAC;QACD,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,cAAc,GAAyB,EAAE,CAAC;YAChD,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;YAGvF,IAAI,CAAC,OAAO,CAAC;gBACX,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC;aACxB,CAAC,CAAC;YAEH,SAAS,GAAG,IAAI,CAAC;YAGjB,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,WAAW,GAAG,cAAc,CAAC;YAG9D,OAAO,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import type { ComputedDependence } from "./
|
|
1
|
+
import type { ComputedDependence } from "./computedUpdater";
|
|
2
2
|
export declare function deepProxy(data: object, dependences: ComputedDependence[], basePath?: string[]): object;
|
|
3
3
|
export declare function unwrap(wrapped: any): unknown;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-tracer.js","sourceRoot":"","sources":["../../../../../src/api/DefineComponent/assignOptions/computedWatchHandle/data-tracer.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,SAAS,CACvB,IAAY,EACZ,WAAiC,EACjC,WAAqB,EAAE;IAEvB,MAAM,OAAO,GAAG;QACd,GAAG,CAAC,MAAc,EAAE,IAAY;YAI9B,IAAI,IAAI,KAAK,eAAe;gBAAE,OAAO,MAAM,CAAC;YAE5C,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YAKzB,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAE1B,MAAM,eAAe,GAAG,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAE5D,IAAI,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;oBAE7D,WAAW,CAAC,GAAG,EAAE,CAAC;gBACpB,CAAC;YACH,CAAC;YACD,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAItC,WAAW,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAGvD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE,CAAC;gBAErF,OAAO,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YAC5D,CAAC;YAED,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;gBAAE,OAAO,GAAG,CAAC;YAExD,OAAO,SAAS,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QAC9C,CAAC;QAED,GAAG,CAAC,OAAe,EAAE,IAAY;YAC/B,MAAM,KAAK,CAAC,GAAG,IAAI,QAAQ,CAAC,CAAC;QAC/B,CAAC;KACF,CAAC;IAEF,OAAO,IAAI,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,OAAY;IAEjC,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACpD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;IAC5C,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO,GAAG,aAAa,CAAC;IAC1B,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getPathsValue.js","sourceRoot":"","sources":["../../../../../src/api/DefineComponent/assignOptions/computedWatchHandle/getPathsValue.ts"],"names":[],"mappings":"AAMA,MAAM,UAAU,aAAa,CAAC,IAAY,EAAE,KAAa;IACvD,MAAM,SAAS,GAAc,EAAE,CAAC;IAGhC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QAE9B,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YAEzB,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAQ,EAAE,IAAI,EAAE,EAAE;YAEtD,IAAI,CAAC;gBACH,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC,EAAE,IAAI,CAAC,CAAC;QAET,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC,CAAC,CAAC;IAEH,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type { PropertiesConstraint } from "
|
|
1
|
+
import type { PropertiesConstraint } from "../../../RootComponent/Properties/PropertiesConstraint";
|
|
2
2
|
export declare function getPropertiesValue(propertiesOpt: PropertiesConstraint | undefined): object | undefined;
|
|
@@ -11,7 +11,7 @@ function getRequiredSingleValue(PropType) {
|
|
|
11
11
|
case Boolean:
|
|
12
12
|
return false;
|
|
13
13
|
default:
|
|
14
|
-
throw Error("properties字段类型只能为 String | Number | Array | Object | Boolean");
|
|
14
|
+
throw Error("properties字段类型只能为 String | Number | Array | Object | Boolean ");
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
17
|
function IsRequiredSingle(config) {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getPropertiesValue.js","sourceRoot":"","sources":["../../../../../src/api/DefineComponent/assignOptions/computedWatchHandle/getPropertiesValue.ts"],"names":[],"mappings":"AASA,SAAS,sBAAsB,CAC7B,QAAwB;IAExB,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,MAAM;YACT,OAAO,EAAE,CAAC;QACZ,KAAK,MAAM;YACT,OAAO,CAAC,CAAC;QACX,KAAK,KAAK;YACR,OAAO,EAAE,CAAC;QACZ,KAAK,MAAM;YACT,OAAO,IAAI,CAAC;QACd,KAAK,OAAO;YACV,OAAO,KAAK,CAAC;QACf;YAEE,MAAM,KAAK,CACT,+DAA+D,CAChE,CAAC;IACN,CAAC;AACH,CAAC;AACD,SAAS,gBAAgB,CAAC,MAAuB;IAC/C,OAAO,MAAM,YAAY,QAAQ,CAAC;AACpC,CAAC;AACD,SAAS,eAAe,CAAC,MAAuB;IAC9C,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACvC,CAAC;AACD,MAAM,UAAU,kBAAkB,CAAC,aAA+C;IAChF,IAAI,aAAa,KAAK,SAAS;QAAE,OAAO;IACxC,MAAM,MAAM,GAAG,EAAE,CAAC;IAClB,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;QAElC,IAAI,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC;YAE7B,MAAM,CAAC,GAAG,CAAC,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC;QAC/C,CAAC;aAAM,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;YAEnC,MAAM,CAAC,GAAG,CAAC,GAAG,sBAAsB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACpD,CAAC;aAAM,CAAC;YAEN,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { computedUpdater } from "./computedUpdater";
|
|
2
|
+
import { getPathsValue } from "./getPathsValue";
|
|
3
|
+
import { getPropertiesValue } from "./getPropertiesValue";
|
|
4
|
+
import { initComputed } from "./initComputed";
|
|
5
|
+
import { isEqual } from "./isEqual";
|
|
6
|
+
import { deepClone } from "../../../../utils/deepClone";
|
|
7
|
+
import { isEmptyObject } from "../../../../utils/isEmptyObject";
|
|
8
|
+
function initWatchOldValue(data, watchConfig) {
|
|
9
|
+
const watchOldValue = {};
|
|
10
|
+
for (const key in watchConfig) {
|
|
11
|
+
watchOldValue[key] = deepClone(getPathsValue(data, key));
|
|
12
|
+
}
|
|
13
|
+
return watchOldValue;
|
|
14
|
+
}
|
|
15
|
+
export function computedWatchHandle(options) {
|
|
16
|
+
const computedConfig = options.computed;
|
|
17
|
+
const rawPropertiesValue = getPropertiesValue(options.properties);
|
|
18
|
+
if (computedConfig && !isEmptyObject(computedConfig)) {
|
|
19
|
+
const __computedInitCache__ = initComputed(options, computedConfig, Object.assign(Object.assign({}, options.data), rawPropertiesValue));
|
|
20
|
+
options.data.__computedCache__ = __computedInitCache__;
|
|
21
|
+
options.data.__computedStatus__ = "待更新";
|
|
22
|
+
options.methods.__computedUpdater__ = computedUpdater;
|
|
23
|
+
}
|
|
24
|
+
const observersConfig = options.observers;
|
|
25
|
+
const originalFunc = observersConfig["**"];
|
|
26
|
+
observersConfig["**"] = function () {
|
|
27
|
+
const computedStatus = this.data.__computedStatus__;
|
|
28
|
+
switch (computedStatus) {
|
|
29
|
+
case "待更新":
|
|
30
|
+
{
|
|
31
|
+
const isUpdated = this.__computedUpdater__();
|
|
32
|
+
if (isUpdated) {
|
|
33
|
+
this.data.__computedStatus__ = "更新完毕";
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
originalFunc && originalFunc.call(this);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
break;
|
|
40
|
+
case "更新完毕":
|
|
41
|
+
{
|
|
42
|
+
this.data.__computedStatus__ = "待更新";
|
|
43
|
+
originalFunc && originalFunc.call(this);
|
|
44
|
+
}
|
|
45
|
+
break;
|
|
46
|
+
}
|
|
47
|
+
originalFunc && originalFunc.call(this);
|
|
48
|
+
};
|
|
49
|
+
const watchConfig = options.watch;
|
|
50
|
+
if (watchConfig && !isEmptyObject(watchConfig)) {
|
|
51
|
+
const data = options.data;
|
|
52
|
+
data.__watchOldValue__ = initWatchOldValue(Object.assign(Object.assign({}, data), rawPropertiesValue), watchConfig);
|
|
53
|
+
const observersConfig = options.observers;
|
|
54
|
+
for (const key in watchConfig) {
|
|
55
|
+
const watchHadle = watchConfig[key];
|
|
56
|
+
const originObserversHandle = observersConfig[key];
|
|
57
|
+
observersConfig[key] = function (...newValue) {
|
|
58
|
+
originObserversHandle && originObserversHandle.call(this, ...newValue);
|
|
59
|
+
const watchOldValue = this.data.__watchOldValue__;
|
|
60
|
+
const oldValue = watchOldValue[key];
|
|
61
|
+
if (isEqual(newValue, oldValue))
|
|
62
|
+
return;
|
|
63
|
+
watchOldValue[key] = deepClone(newValue);
|
|
64
|
+
watchHadle.call(this, ...newValue, ...oldValue);
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/api/DefineComponent/assignOptions/computedWatchHandle/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAKhE,SAAS,iBAAiB,CAAC,IAAqC,EAAE,WAAmB;IACnF,MAAM,aAAa,GAAG,EAAE,CAAC;IACzB,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QAM9B,aAAa,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC;AACD,MAAM,UAAU,mBAAmB,CAAC,OAAgC;IAElE,MAAM,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC;IACxC,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAClE,IAAI,cAAc,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,EAAE,CAAC;QAGrD,MAAM,qBAAqB,GAAG,YAAY,CAAC,OAAO,EAAE,cAAc,kCAAO,OAAO,CAAC,IAAI,GAAK,kBAAkB,EAAG,CAAC;QAEhH,OAAO,CAAC,IAAI,CAAC,iBAAiB,GAAG,qBAAqB,CAAC;QAEvD,OAAO,CAAC,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAExC,OAAO,CAAC,OAAO,CAAC,mBAAmB,GAAG,eAAe,CAAC;IAGxD,CAAC;IACD,MAAM,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC;IAE1C,MAAM,YAAY,GAAG,eAAe,CAAC,IAAI,CAAqB,CAAC;IAE/D,eAAe,CAAC,IAAI,CAAC,GAAG;QACtB,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC;QAIpD,QAAQ,cAAc,EAAE,CAAC;YACvB,KAAK,KAAK;gBAER,CAAC;oBACC,MAAM,SAAS,GAAG,IAAI,CAAC,mBAAoB,EAAE,CAAC;oBAE9C,IAAI,SAAS,EAAE,CAAC;wBAEd,IAAI,CAAC,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC;oBACxC,CAAC;yBAAM,CAAC;wBAGN,YAAY,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAC1C,CAAC;gBACH,CAAC;gBACD,MAAM;YACR,KAAK,MAAM;gBACT,CAAC;oBAGC,IAAI,CAAC,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;oBAErC,YAAY,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC1C,CAAC;gBACD,MAAM;QACV,CAAC;QAED,YAAY,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC,CAAC;IAGF,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC;IAElC,IAAI,WAAW,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QAE1B,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,iCAAM,IAAI,GAAK,kBAAkB,GAAI,WAAW,CAAC,CAAC;QAE5F,MAAM,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC;QAC1C,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;YAC9B,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;YACpC,MAAM,qBAAqB,GAAG,eAAe,CAAC,GAAG,CAAqB,CAAC;YAGvE,eAAe,CAAC,GAAG,CAAC,GAAG,UAAyB,GAAG,QAAmB;gBACpE,qBAAqB,IAAI,qBAAqB,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,QAAQ,CAAC,CAAC;gBAEvE,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAkB,CAAC;gBACnD,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;gBAEpC,IAAI,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC;oBAAE,OAAO;gBACxC,aAAa,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;gBAEzC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,QAAQ,EAAE,GAAG,QAAQ,CAAC,CAAC;YAClD,CAAC,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import type { Func } from "hry-types/src/Misc/Func";
|
|
2
|
-
import type { FinalOptionsOfComponent } from "
|
|
3
|
-
import type {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
2
|
+
import type { FinalOptionsOfComponent } from "..";
|
|
3
|
+
import type { ComputedDependence } from "./computedUpdater";
|
|
4
|
+
type ItemCache = {
|
|
5
|
+
dependences: ComputedDependence[];
|
|
6
|
+
method: Func;
|
|
7
|
+
value: unknown;
|
|
7
8
|
};
|
|
9
|
+
export type ComputedCache = Record<string, ItemCache>;
|
|
8
10
|
export declare function getItemCache(initAllData: object, computedKeys: string[], computedFunc: Func): false | ItemCache;
|
|
9
11
|
export declare function initComputed(options: FinalOptionsOfComponent, computedConfig: Record<string, Func>, initAllData: object, uninitedkeys?: string[], computedCache?: ComputedCache): ComputedCache;
|
|
12
|
+
export {};
|
|
@@ -48,7 +48,7 @@ export function initComputed(options, computedConfig, initAllData, uninitedkeys
|
|
|
48
48
|
uninitedkeys.push(key);
|
|
49
49
|
}
|
|
50
50
|
else {
|
|
51
|
-
const dataOpt = options.data
|
|
51
|
+
const dataOpt = options.data;
|
|
52
52
|
dataOpt[key] = itemCache.value;
|
|
53
53
|
initAllData[key] = itemCache.value;
|
|
54
54
|
computedCache[key] = itemCache;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"initComputed.js","sourceRoot":"","sources":["../../../../../src/api/DefineComponent/assignOptions/computedWatchHandle/initComputed.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isEqual.js","sourceRoot":"","sources":["../../../../../src/api/DefineComponent/assignOptions/computedWatchHandle/isEqual.ts"],"names":[],"mappings":"AAEA,SAAS,UAAU,CAAC,CAAS,EAAE,CAAS;IACtC,OAAO,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjF,CAAC;AAGD,SAAS,UAAU,CAAC,CAAS,EAAE,CAAS;IACtC,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;AACzD,CAAC;AAGD,SAAS,UAAU,CAAC,CAAW,EAAE,CAAW;IAE1C,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC/E,CAAC;AAGD,SAAS,UAAU,CAAC,CAAO,EAAE,CAAO;IAClC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;AACrC,CAAC;AAGD,SAAS,aAAa,CAAC,CAAS,EAAE,CAAS;IACzC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,CAAC;AACtD,CAAC;AAQD,MAAM,UAAU,OAAO,CAAC,CAAU,EAAE,CAAU;IAE5C,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC/E,IAAI,OAAO,CAAC,KAAK,UAAU,IAAI,OAAO,CAAC,KAAK,UAAU,EAAE,CAAC;YACvD,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IAGD,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,KAAK,CAAC,CAAC,WAAW,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAC9E,OAAO,KAAK,CAAC;IACf,CAAC;IAGD,IAAI,OAAO,CAAC,KAAK,UAAU,EAAE,CAAC;QAC5B,OAAO,UAAU,CAAC,CAAC,EAAE,CAAa,CAAC,CAAC;IACtC,CAAC;IAGD,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC;QACtB,OAAO,UAAU,CAAC,CAAC,EAAE,CAAS,CAAC,CAAC;IAClC,CAAC;IAGD,IAAI,CAAC,YAAY,MAAM,EAAE,CAAC;QACxB,OAAO,aAAa,CAAC,CAAC,EAAE,CAAW,CAAC,CAAC;IACvC,CAAC;IAGD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAE7B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAE7B,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAExB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBAC7B,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAGD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { Func } from "hry-types/src/Misc/_api";
|
|
2
|
+
import type { WMComponent } from "../../../types/OfficialTypeAlias";
|
|
3
|
+
import type { ComputedConstraint } from "../../RootComponent/Computed/ComputedConstraint";
|
|
4
|
+
import type { DataConstraint } from "../../RootComponent/Data/DataConstraint";
|
|
5
|
+
import type { ComponentInstance, PageInstance } from "../../RootComponent/Instance/RootComponentInstance";
|
|
6
|
+
import type { LifetimesConstraint } from "../../RootComponent/Lifetimes/LifetimesConstraint";
|
|
7
|
+
import type { MethodsConstraint } from "../../RootComponent/Methods/MethodsConstraint";
|
|
8
|
+
import type { PageLifetimesOption } from "../../RootComponent/PageLifetimes/PageLifetimesOption";
|
|
9
|
+
import type { PropertiesConstraint } from "../../RootComponent/Properties/PropertiesConstraint";
|
|
10
|
+
import type { StoreConstraint } from "../../RootComponent/Store/StoreConstraint";
|
|
11
|
+
import type { DefineComponentOption } from "..";
|
|
12
|
+
import type { ComputedCache } from "./computedWatchHandle/initComputed";
|
|
13
|
+
type InstanceInnerFields = {
|
|
14
|
+
data: OptionsInnerFields["data"];
|
|
15
|
+
disposer: Record<string, Func>;
|
|
16
|
+
} & OptionsInnerFields["methods"];
|
|
17
|
+
export type Instance = (ComponentInstance | PageInstance) & InstanceInnerFields;
|
|
18
|
+
export type FuncOptions = Record<"pageLifetimes" | "lifetimes" | "watch" | "observers", Record<string, Func[]>>;
|
|
19
|
+
export type WatchOldValue = Record<string, unknown[]>;
|
|
20
|
+
export type OptionsInnerFields = {
|
|
21
|
+
data: {
|
|
22
|
+
__computedStatus__?: "待更新" | "更新完毕";
|
|
23
|
+
__computedCache__?: ComputedCache;
|
|
24
|
+
__storeConfig__?: StoreConstraint;
|
|
25
|
+
__watchOldValue__?: WatchOldValue;
|
|
26
|
+
};
|
|
27
|
+
methods: {
|
|
28
|
+
disposer?: Record<string, Func>;
|
|
29
|
+
__computedUpdater__?: Func;
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
export type FinalOptionsOfComponent = {
|
|
33
|
+
data: DataConstraint & OptionsInnerFields["data"];
|
|
34
|
+
observers: Record<string, Func>;
|
|
35
|
+
behaviors: string[];
|
|
36
|
+
methods: MethodsConstraint & OptionsInnerFields["methods"];
|
|
37
|
+
externalClasses: string[];
|
|
38
|
+
pageLifetimes: PageLifetimesOption<false, object>["pageLifetimes"] & {};
|
|
39
|
+
isPage?: boolean;
|
|
40
|
+
options?: WMComponent.Options;
|
|
41
|
+
properties?: PropertiesConstraint;
|
|
42
|
+
store?: StoreConstraint;
|
|
43
|
+
computed?: ComputedConstraint;
|
|
44
|
+
watch?: Record<string, Func>;
|
|
45
|
+
lifetimes?: LifetimesConstraint;
|
|
46
|
+
};
|
|
47
|
+
export declare function isPageCheck(isPage: boolean | undefined): (this: Instance) => void;
|
|
48
|
+
export declare function assignOptions(defineComponentOption: DefineComponentOption): FinalOptionsOfComponent;
|
|
49
|
+
export {};
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { BBeforeCreate } from "
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
1
|
+
import { BBeforeCreate } from "../../../behaviors/BbeforeCreated";
|
|
2
|
+
import { deepClone } from "../../../utils/deepClone";
|
|
3
|
+
import { INNERMARKER } from "../../../utils/InnerMarker";
|
|
4
|
+
import { isEmptyObject } from "../../../utils/isEmptyObject";
|
|
5
|
+
import { instanceConfig } from "../../InstanceInject/instanceConfig";
|
|
6
|
+
import { BStore } from "../../../behaviors/BStore";
|
|
7
|
+
import { computedWatchHandle } from "./computedWatchHandle";
|
|
8
|
+
import { initStore } from "./initStore";
|
|
8
9
|
export function isPageCheck(isPage) {
|
|
9
10
|
return function () {
|
|
10
11
|
const route = this.route;
|
|
@@ -62,7 +63,7 @@ function _funcOptionsHandle(config, configList) {
|
|
|
62
63
|
};
|
|
63
64
|
}
|
|
64
65
|
}
|
|
65
|
-
function
|
|
66
|
+
function assignFuncOptions(finalOptionsForComponent, isPage, funcOptions) {
|
|
66
67
|
if (isPage) {
|
|
67
68
|
!(isEmptyObject(funcOptions.pageLifetimes))
|
|
68
69
|
&& _funcOptionsHandle(finalOptionsForComponent.methods, funcOptions.pageLifetimes);
|
|
@@ -76,10 +77,12 @@ function funcOptionsHandle(finalOptionsForComponent, isPage, funcOptions) {
|
|
|
76
77
|
}
|
|
77
78
|
function funcFieldsCollect(options, funcOptions) {
|
|
78
79
|
var _a;
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
80
|
+
let key;
|
|
81
|
+
for (key in funcOptions) {
|
|
82
|
+
const optionsKeyConfig = options[key];
|
|
83
|
+
if (optionsKeyConfig) {
|
|
84
|
+
for (const _key in optionsKeyConfig) {
|
|
85
|
+
((_a = funcOptions[key])[_key] || (_a[_key] = [])).push(optionsKeyConfig[_key]);
|
|
83
86
|
}
|
|
84
87
|
}
|
|
85
88
|
}
|
|
@@ -101,7 +104,7 @@ function otherFieldsHandle(finalOptions, rootComponentOptions) {
|
|
|
101
104
|
function eventsHandle(methods, eventsConfig) {
|
|
102
105
|
Object.assign(methods, eventsConfig);
|
|
103
106
|
}
|
|
104
|
-
function
|
|
107
|
+
function assignSubComponentsOption(componentOptions, subComponents, funcOptions) {
|
|
105
108
|
subComponents.forEach((subOption) => {
|
|
106
109
|
subOption.events && eventsHandle(componentOptions.methods, subOption.events);
|
|
107
110
|
funcFieldsCollect(subOption, funcOptions);
|
|
@@ -126,7 +129,7 @@ function customEventsHandle(methods, customEventsConfig) {
|
|
|
126
129
|
}
|
|
127
130
|
}
|
|
128
131
|
}
|
|
129
|
-
function
|
|
132
|
+
function assignRootComponentOption(finalOptions, funcOptions, rootComponentOptions) {
|
|
130
133
|
rootComponentOptions.customEvents && customEventsHandle(finalOptions.methods, rootComponentOptions.customEvents);
|
|
131
134
|
rootComponentOptions.events && eventsHandle(finalOptions.methods, rootComponentOptions.events);
|
|
132
135
|
funcFieldsCollect(rootComponentOptions, funcOptions);
|
|
@@ -156,14 +159,14 @@ function merge(target, source) {
|
|
|
156
159
|
}
|
|
157
160
|
return target;
|
|
158
161
|
}
|
|
159
|
-
export function
|
|
162
|
+
export function assignOptions(defineComponentOption) {
|
|
160
163
|
const rootComponentOption = defineComponentOption.rootComponent;
|
|
161
|
-
const
|
|
164
|
+
const subComponentsOption = defineComponentOption.subComponents;
|
|
162
165
|
const finalOptionsForComponent = merge(Object.assign({}, deepClone(instanceConfig.injectInfo)), {
|
|
163
166
|
observers: {},
|
|
164
167
|
data: {},
|
|
165
168
|
methods: {},
|
|
166
|
-
behaviors: [BStore
|
|
169
|
+
behaviors: [BStore],
|
|
167
170
|
externalClasses: [],
|
|
168
171
|
pageLifetimes: {},
|
|
169
172
|
});
|
|
@@ -171,22 +174,31 @@ export function collectOptionsForComponent(defineComponentOption) {
|
|
|
171
174
|
pageLifetimes: {},
|
|
172
175
|
lifetimes: {},
|
|
173
176
|
watch: {},
|
|
177
|
+
observers: {},
|
|
174
178
|
};
|
|
175
179
|
if (rootComponentOption && !isEmptyObject(rootComponentOption)) {
|
|
176
|
-
|
|
180
|
+
assignRootComponentOption(finalOptionsForComponent, funcOptions, rootComponentOption);
|
|
177
181
|
}
|
|
178
|
-
if (
|
|
179
|
-
|
|
182
|
+
if (subComponentsOption && !isEmptyObject(subComponentsOption)) {
|
|
183
|
+
assignSubComponentsOption(finalOptionsForComponent, subComponentsOption, funcOptions);
|
|
180
184
|
}
|
|
181
|
-
|
|
182
|
-
InternalFieldProtection(finalOptionsForComponent.methods, ["disposer"]);
|
|
185
|
+
assignFuncOptions(finalOptionsForComponent, rootComponentOption === null || rootComponentOption === void 0 ? void 0 : rootComponentOption.isPage, funcOptions);
|
|
186
|
+
InternalFieldProtection(finalOptionsForComponent.methods, ["disposer", "__computedUpdater__"]);
|
|
187
|
+
InternalFieldProtection(finalOptionsForComponent.data, [
|
|
188
|
+
"__computedStatus__",
|
|
189
|
+
"__computedCache__",
|
|
190
|
+
"__storeConfig__",
|
|
191
|
+
"__watchOldValue__",
|
|
192
|
+
]);
|
|
183
193
|
finalOptionsForComponent.isPage
|
|
184
194
|
&& hijack(finalOptionsForComponent.pageLifetimes, "load", [loadReceivedDataHandle]);
|
|
185
195
|
hijack(finalOptionsForComponent.methods, "onLoad", [onLoadReceivedDataHandle]);
|
|
186
196
|
hijack(finalOptionsForComponent.lifetimes, "attached", [isPageCheck(rootComponentOption === null || rootComponentOption === void 0 ? void 0 : rootComponentOption.isPage)]);
|
|
187
197
|
finalOptionsForComponent.isPage
|
|
188
198
|
&& finalOptionsForComponent.options && Reflect.deleteProperty(finalOptionsForComponent.options, "virtualHost");
|
|
199
|
+
initStore(finalOptionsForComponent);
|
|
200
|
+
computedWatchHandle(finalOptionsForComponent);
|
|
189
201
|
finalOptionsForComponent.behaviors.push(BBeforeCreate);
|
|
190
202
|
return finalOptionsForComponent;
|
|
191
203
|
}
|
|
192
|
-
//# sourceMappingURL=
|
|
204
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/api/DefineComponent/assignOptions/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export function initStore(finalOptionsForComponent) {
|
|
2
|
+
const storeConfig = finalOptionsForComponent.store;
|
|
3
|
+
if (storeConfig) {
|
|
4
|
+
const { toJS } = require("mobx");
|
|
5
|
+
for (const key in storeConfig) {
|
|
6
|
+
finalOptionsForComponent.data[key] = toJS(storeConfig[key]());
|
|
7
|
+
}
|
|
8
|
+
finalOptionsForComponent.data.__storeConfig__ = storeConfig;
|
|
9
|
+
delete finalOptionsForComponent.store;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/api/DefineComponent/assignOptions/initStore/index.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,SAAS,CAAC,wBAAiD;IACzE,MAAM,WAAW,GAAG,wBAAwB,CAAC,KAAK,CAAC;IACnD,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAgB,CAAC;QAChD,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;YAC9B,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAGhE,CAAC;QACD,wBAAwB,CAAC,IAAI,CAAC,eAAe,GAAG,WAAW,CAAC;QAE5D,OAAO,wBAAwB,CAAC,KAAK,CAAC;IACxC,CAAC;AACH,CAAC"}
|
|
@@ -7,7 +7,7 @@ import type { CreatePageDoc } from "./ReturnType/CreatePageDoc";
|
|
|
7
7
|
import type { RootComponentOption } from "./RootComponent/RootComponentOption";
|
|
8
8
|
import type { SubComponentsOption } from "./SubComponents/SubComponentsOption";
|
|
9
9
|
import type { RootComponentTrueOptions } from "../RootComponent";
|
|
10
|
-
type Path = `/${string}`;
|
|
10
|
+
export type Path = `/${string}`;
|
|
11
11
|
type RootOptions<TRootComponentDoc extends RootComponentDoc, TSubComponentTuple extends SubComponentDoc[], TName extends string, TPath extends Path> = NameOrPathOption<TName, TPath, TRootComponentDoc["isPage"] & {}> & RootComponentOption<TRootComponentDoc> & SubComponentsOption<TSubComponentTuple>;
|
|
12
12
|
interface DefineComponentConstructor {
|
|
13
13
|
<TRootComponentDoc extends RootComponentDoc = {}, TSubComponentTuple extends SubComponentDoc[] = [], TName extends string = "", TPath extends Path = "/">(options: RootOptions<TRootComponentDoc, TSubComponentTuple, TName, TPath>): IfExtends<"", TName, CreatePageDoc<TRootComponentDoc, TPath>, CreateComponentDoc<TRootComponentDoc, TName, TSubComponentTuple>>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { assignOptions } from "./assignOptions";
|
|
2
2
|
export const DefineComponent = function (options) {
|
|
3
|
-
Component(
|
|
3
|
+
Component(assignOptions(options));
|
|
4
4
|
};
|
|
5
5
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/DefineComponent/index.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/DefineComponent/index.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AA0ChD,MAAM,CAAC,MAAM,eAAe,GAA+B,UAAS,OAAO;IACzE,SAAS,CACP,aAAa,CAAC,OAAgC,CAAQ,CACvD,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -13,7 +13,7 @@ interface BaseInjectInfo {
|
|
|
13
13
|
export interface IInjectInfo extends BaseInjectInfo {
|
|
14
14
|
}
|
|
15
15
|
export type IInjectData = IInjectInfo["data"] & ReturnTypeInObject<IInjectInfo["store"]>;
|
|
16
|
-
export type IInjectStore = ReturnTypeInObject<IInjectInfo["store"]>;
|
|
16
|
+
export type IInjectStore = StoreConstraint extends IInjectInfo["store"] ? unknown : ReturnTypeInObject<IInjectInfo["store"]>;
|
|
17
17
|
export type IInjectMethods = IInjectInfo["methods"];
|
|
18
18
|
declare class InstanceConfig {
|
|
19
19
|
private info;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instanceConfig.js","sourceRoot":"","sources":["../../../src/api/InstanceInject/instanceConfig.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"instanceConfig.js","sourceRoot":"","sources":["../../../src/api/InstanceInject/instanceConfig.ts"],"names":[],"mappings":"AA+BA,MAAM,cAAc;IAApB;QACU,SAAI,GAAiC,EAAE,CAAC;IAOlD,CAAC;IANC,IAAW,UAAU;QACnB,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;IAC9B,CAAC;IACM,aAAa,CAAC,IAA6B;QAChD,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;IACxC,CAAC;CACF;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { ComputeIntersection } from "hry-types/src/Object/ComputeIntersection";
|
|
2
2
|
import type { WMCompLifetimes } from "../../../types/OfficialTypeAlias";
|
|
3
|
-
import type { FinalOptionsOfComponent } from "../../DefineComponent/
|
|
3
|
+
import type { FinalOptionsOfComponent } from "../../DefineComponent/assignOptions";
|
|
4
4
|
export type LifetimesConstraint = ComputeIntersection<WMCompLifetimes["lifetimes"] & {
|
|
5
5
|
beforeCreate?: (this: void, options: FinalOptionsOfComponent) => void;
|
|
6
6
|
}>;
|
|
@@ -12,7 +12,7 @@ type AddFieldsOfObject<TWatchData extends object, _WatchKeys extends keyof TWatc
|
|
|
12
12
|
};
|
|
13
13
|
export type ObserversOption<TWatchData extends object, _WatchKeys extends keyof TWatchData = keyof TWatchData> = {
|
|
14
14
|
observers?: IfExtends<{}, TWatchData, EmptyObject, NoInfer<{
|
|
15
|
-
[k in _WatchKeys]?: (newValue: ReadonlyDeep<TWatchData[k]>) => void;
|
|
15
|
+
[k in _WatchKeys | "**"]?: (newValue: k extends keyof TWatchData ? ReadonlyDeep<TWatchData[k]> : unknown) => void;
|
|
16
16
|
} & {
|
|
17
17
|
[k in _WatchKeys as never]: unknown;
|
|
18
18
|
} & AddFieldsOfObject<TWatchData, _WatchKeys>>>;
|
|
@@ -5,6 +5,7 @@ import type { GetComponentPrefix } from "../../types/GetComponentPrefix";
|
|
|
5
5
|
import type { ReplacePrefix } from "../../types/ReplacePrefix";
|
|
6
6
|
import type { ComponentDoc } from "../DefineComponent/ReturnType/ComponentDoc";
|
|
7
7
|
import type { Func } from "hry-types/src/Misc/Func";
|
|
8
|
+
import type { AssignValues } from "../../types/AssignValues";
|
|
8
9
|
import type { WMCompOtherOption } from "../../types/OfficialTypeAlias";
|
|
9
10
|
import type { IInjectStore } from "../InstanceInject/instanceConfig";
|
|
10
11
|
import type { ComputedConstraint } from "../RootComponent/Computed/ComputedConstraint";
|
|
@@ -34,7 +35,7 @@ import type { CreateSubComponentDoc } from "./SubReturnType/CreateSubComponentDo
|
|
|
34
35
|
import type { SubStoreConstraint } from "./SubStore/SubStoreConstraint";
|
|
35
36
|
import type { SubStoreOption } from "./SubStore/SubStoreOption";
|
|
36
37
|
import type { SubWatchOption } from "./SubWatch/SubWatchOption";
|
|
37
|
-
type Options<RootDoc extends RootComponentDoc, IsPage extends boolean, CurrentCompDoc extends ComponentDoc, Prefix extends string, AllRootDataDoc extends object, TInherit extends object, TSubData extends object, TSubStore extends object, TSubComputed extends object, TEvents extends object, TSubMethods extends SubMethodsConstraint, InheritDoc extends object, SubDataDoc extends object, SubStoreDoc extends object, SubComputedDoc extends object, SubEventsDoc extends object, SubMethodsDoc extends object> = SubInheritOption<TInherit> & SubDataOption<TSubData, Exclude<keyof CurrentCompDoc["properties"], (keyof InheritDoc)>, Prefix> & SubStoreOption<TSubStore, Exclude<keyof CurrentCompDoc["properties"], (keyof (InheritDoc & SubDataDoc))>> & SubComputedOption<TSubComputed, Omit<CurrentCompDoc["properties"], (keyof (InheritDoc & SubDataDoc & SubStoreDoc))>> & SubEventsOption<TEvents, SubEventsDoc, keyof SubEventsConstraint<CurrentCompDoc>> & SubMethodsOption<TSubMethods, Prefix, keyof (CurrentCompDoc["customEvents"] & SubEventsDoc)> & SubPageLifetimesOption<IsPage, RootDoc["properties"] & {}> & SubLifetimesOption & SubWatchOption<SubComputedDoc & SubDataDoc & AllRootDataDoc & SubStoreDoc & IInjectStore> & Partial<Omit<WMCompOtherOption, "pageLifetimes" | "definitionFilter" | "export" | "observers" | "relations">> & SubObserversOption<SubComputedDoc & SubDataDoc & AllRootDataDoc & SubStoreDoc & IInjectStore> & ThisType<SubInstance<SubMethodsDoc & RootDoc["methods"],
|
|
38
|
+
type Options<RootDoc extends RootComponentDoc, IsPage extends boolean, CurrentCompDoc extends ComponentDoc, Prefix extends string, AllRootDataDoc extends object, TInherit extends object, TSubData extends object, TSubStore extends object, TSubComputed extends object, TEvents extends object, TSubMethods extends SubMethodsConstraint, InheritDoc extends object, SubDataDoc extends object, SubStoreDoc extends object, SubComputedDoc extends object, SubEventsDoc extends object, SubMethodsDoc extends object> = SubInheritOption<TInherit> & SubDataOption<TSubData, Exclude<keyof CurrentCompDoc["properties"], (keyof InheritDoc)>, Prefix> & SubStoreOption<TSubStore, Exclude<keyof CurrentCompDoc["properties"], (keyof (InheritDoc & SubDataDoc))>> & SubComputedOption<TSubComputed, Omit<CurrentCompDoc["properties"], (keyof (InheritDoc & SubDataDoc & SubStoreDoc))>> & SubEventsOption<TEvents, SubEventsDoc, keyof SubEventsConstraint<CurrentCompDoc>> & SubMethodsOption<TSubMethods, Prefix, keyof (CurrentCompDoc["customEvents"] & SubEventsDoc)> & SubPageLifetimesOption<IsPage, RootDoc["properties"] & {}> & SubLifetimesOption & SubWatchOption<SubComputedDoc & SubDataDoc & AllRootDataDoc & SubStoreDoc & IInjectStore> & Partial<Omit<WMCompOtherOption, "pageLifetimes" | "definitionFilter" | "export" | "observers" | "relations">> & SubObserversOption<SubComputedDoc & SubDataDoc & AllRootDataDoc & SubStoreDoc & IInjectStore> & ThisType<SubInstance<SubMethodsDoc & RootDoc["methods"], SubDataDoc, AllRootDataDoc & AssignValues<SubDataDoc & SubComputedDoc & SubStoreDoc, Required<CurrentCompDoc["properties"]>>, RootDoc["customEvents"] & {}, SubStoreDoc>>;
|
|
38
39
|
type SubComponentConstructor<TRootDoc extends RootComponentDoc, TOriginalCompDoc extends ComponentDoc, TSupplementalPrefix extends string = "", IsPage extends boolean = TRootDoc["isPage"] extends true ? true : false, CurrentPrefix extends string = `${GetComponentPrefix<TOriginalCompDoc>}${Capitalize<TSupplementalPrefix>}`, CurrentCompDoc extends ComponentDoc = IfExtends<TSupplementalPrefix, "", TOriginalCompDoc, ReplacePrefix<TOriginalCompDoc, CurrentPrefix>>, AllRootDataDoc extends object = Required<TRootDoc["properties"]> & TRootDoc["data"] & TRootDoc["computed"] & TRootDoc["store"]> = {
|
|
39
40
|
<TInherit extends InheritConstraint<AllRootDataDoc, CurrentCompDoc>, TSubData extends SubDataConstraint<Omit<Required<CurrentCompDoc["properties"]>, keyof InheritDoc>>, TSubStore extends SubStoreConstraint<Omit<Required<CurrentCompDoc["properties"]>, keyof (InheritDoc & SubDataDoc)>>, TEvents extends SubEventsConstraint<CurrentCompDoc>, TSubComputed extends SubComputedConstraint<Omit<Required<CurrentCompDoc["properties"]>, keyof (InheritDoc & SubDataDoc & SubStoreDoc)>> = {}, TSubMethods extends SubMethodsConstraint = {}, InheritDoc extends object = IfExtends<InheritConstraint<AllRootDataDoc, CurrentCompDoc>, TInherit, {}, TInherit>, SubDataDoc extends object = IfExtends<SubDataConstraint<Omit<Required<CurrentCompDoc["properties"]>, keyof InheritDoc>>, TSubData, {}, TSubData>, SubStoreDoc extends object = IfExtends<SubStoreConstraint<Omit<Required<CurrentCompDoc["properties"]>, keyof (InheritDoc & SubDataDoc)>>, TSubStore, {}, {
|
|
40
41
|
[k in keyof TSubStore]: ReturnType<TSubStore[k] & {}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/SubComponent/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/SubComponent/index.ts"],"names":[],"mappings":"AAkNA,MAAM,UAAU,YAAY;IAK1B,OAAO,CAAC,CAAC,OAAY,EAAE,EAAE,CAAC,OAAkC,CAAQ,CAAC;AACvE,CAAC"}
|
package/dist/behaviors/BStore.js
CHANGED
|
@@ -1,22 +1,9 @@
|
|
|
1
|
-
import { deleteProtoField } from "../utils/deleteProtoField";
|
|
2
1
|
export const BStore = Behavior({
|
|
3
|
-
definitionFilter(options) {
|
|
4
|
-
const storeConfig = options.store;
|
|
5
|
-
if (!storeConfig)
|
|
6
|
-
return;
|
|
7
|
-
const { toJS } = require("mobx");
|
|
8
|
-
for (const key in storeConfig) {
|
|
9
|
-
options.data[key] = toJS(storeConfig[key]());
|
|
10
|
-
options.methods.__storeConfig__ = () => storeConfig;
|
|
11
|
-
}
|
|
12
|
-
},
|
|
13
2
|
lifetimes: {
|
|
14
3
|
created() {
|
|
15
|
-
|
|
16
|
-
const storeConfig = (_a = this.__storeConfig__) === null || _a === void 0 ? void 0 : _a.call(this);
|
|
4
|
+
const storeConfig = this.data.__storeConfig__;
|
|
17
5
|
if (!storeConfig)
|
|
18
6
|
return;
|
|
19
|
-
deleteProtoField(this, "__storeConfig__");
|
|
20
7
|
const { comparer, reaction, toJS } = require("mobx");
|
|
21
8
|
this.disposer = {};
|
|
22
9
|
for (const key in storeConfig) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BStore.js","sourceRoot":"","sources":["../../src/behaviors/BStore.ts"],"names":[],"mappings":"AAGA,
|
|
1
|
+
{"version":3,"file":"BStore.js","sourceRoot":"","sources":["../../src/behaviors/BStore.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,MAAM,GAAG,QAAQ,CAAC;IAC7B,SAAS,EAAE;QACT,OAAO;YACL,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;YAC9C,IAAI,CAAC,WAAW;gBAAE,OAAO;YAEzB,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAgB,CAAC;YAEpE,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;YAEnB,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;gBAE9B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAC3B,WAAW,CAAC,GAAG,CAAC,EAChB,CAAC,KAAc,EAAE,EAAE;oBAEjB,IAAI,CAAC,OAAO,CAAC;wBACX,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC;qBACnB,CAAC,CAAC;gBACL,CAAC,EACD;oBACE,MAAM,EAAE,QAAQ,CAAC,UAAU;iBAC5B,CACF,CAAC;YACJ,CAAC;QACH,CAAC;QAED,QAAQ;YAEN,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAChC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,CAAC;QACH,CAAC;KACF;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { IfExtends } from "hry-types/src/Any/IfExtends";
|
|
2
|
+
import type { ComputeIntersection } from "hry-types/src/Object/ComputeIntersection";
|
|
3
|
+
type _AssignValues<Target, Source, UniqueKey extends keyof Target> = ComputeIntersection<{
|
|
4
|
+
[k in UniqueKey]: Target[k];
|
|
5
|
+
} & {
|
|
6
|
+
[k in Exclude<keyof Target, UniqueKey>]: Source[k];
|
|
7
|
+
}>;
|
|
8
|
+
export type AssignValues<Target, Source> = IfExtends<unknown, Target, unknown, _AssignValues<Target, Source, Exclude<keyof Target, keyof Source>>>;
|
|
9
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AssignValues.js","sourceRoot":"","sources":["../../src/types/AssignValues.ts"],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deepClone.js","sourceRoot":"","sources":["../../src/utils/deepClone.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,SAAS,CAAI,KAAQ;IACnC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,YAAY,MAAM,EAAE,CAAC;QAC3E,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAM,CAAC;IAEpD,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"deepClone.js","sourceRoot":"","sources":["../../src/utils/deepClone.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,SAAS,CAAI,KAAQ;IACnC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,YAAY,MAAM,EAAE,CAAC;QAC3E,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAM,CAAC;IAEpD,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;IAE3D,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;YACrD,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
|