annil 1.0.1 → 1.0.4
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 +12 -0
- package/README.md +36 -6
- package/dist/api/DefineComponent/collectOptionsForComponent.d.ts +4 -0
- package/dist/api/DefineComponent/collectOptionsForComponent.js +152 -0
- package/dist/api/DefineComponent/collectOptionsForComponent.js.map +1 -0
- package/dist/api/DefineComponent/index.d.ts +4 -28
- package/dist/api/DefineComponent/index.js +2 -37
- package/dist/api/DefineComponent/index.js.map +1 -1
- package/dist/api/RootComponent/CustomEvents/CustomEventConstraint.d.ts +2 -1
- package/dist/api/RootComponent/Data/DataConstraint.d.ts +1 -0
- package/dist/api/RootComponent/Data/DataConstraint.js +2 -0
- package/dist/api/RootComponent/Data/DataConstraint.js.map +1 -0
- package/dist/api/RootComponent/Lifetimes/LifetimesConstraint.d.ts +2 -2
- package/dist/api/RootComponent/Lifetimes/test/error.test.js +1 -0
- package/dist/api/RootComponent/Lifetimes/test/error.test.js.map +1 -1
- package/dist/api/RootComponent/Lifetimes/test/normal.test.js +3 -0
- package/dist/api/RootComponent/Lifetimes/test/normal.test.js.map +1 -1
- package/dist/api/RootComponent/Properties/test/normalOptional.test.js +15 -0
- package/dist/api/RootComponent/Properties/test/normalOptional.test.js.map +1 -1
- package/dist/api/RootComponent/index.d.ts +19 -2
- package/dist/api/RootComponent/index.js +1 -1
- package/dist/api/RootComponent/index.js.map +1 -1
- package/dist/api/SubComponent/index.d.ts +1 -1
- package/dist/api/SubComponent/index.js.map +1 -1
- package/dist/{utils → behaviors/BComputedAndWatch}/computedUpdater.d.ts +1 -1
- package/dist/{utils → behaviors/BComputedAndWatch}/computedUpdater.js +2 -2
- package/dist/behaviors/BComputedAndWatch/computedUpdater.js.map +1 -0
- package/dist/{utils → behaviors/BComputedAndWatch}/getPathsValue.d.ts +1 -1
- package/dist/behaviors/BComputedAndWatch/getPathsValue.js.map +1 -0
- package/dist/behaviors/BComputedAndWatch/index.js +8 -1
- package/dist/behaviors/BComputedAndWatch/index.js.map +1 -1
- package/dist/behaviors/BComputedAndWatch/initComputed.js +1 -1
- package/dist/behaviors/BComputedAndWatch/initComputed.js.map +1 -1
- package/dist/behaviors/BStore.js.map +1 -1
- package/dist/behaviors/BbeforeCreated.js +1 -2
- package/dist/behaviors/BbeforeCreated.js.map +1 -1
- package/dist/types/OfficialTypeAlias.d.ts +2 -2
- package/package.json +3 -3
- package/src/api/DefineComponent/collectOptionsForComponent.ts +290 -0
- package/src/api/DefineComponent/index.ts +12 -85
- package/src/api/RootComponent/CustomEvents/CustomEventConstraint.ts +3 -1
- package/src/api/RootComponent/Data/DataConstraint.ts +1 -0
- package/src/api/RootComponent/IsPage/IsPageOption.ts +6 -1
- package/src/api/RootComponent/Lifetimes/LifetimesConstraint.ts +2 -2
- package/src/api/RootComponent/Lifetimes/test/error.test.ts +1 -1
- package/src/api/RootComponent/Lifetimes/test/normal.test.ts +3 -3
- package/src/api/RootComponent/Properties/test/normalOptional.test.ts +20 -0
- package/src/api/RootComponent/index.ts +19 -3
- package/src/api/SubComponent/index.ts +2 -3
- package/src/{utils → behaviors/BComputedAndWatch}/computedUpdater.ts +5 -4
- package/src/{utils → behaviors/BComputedAndWatch}/getPathsValue.ts +1 -1
- package/src/behaviors/BComputedAndWatch/index.ts +13 -4
- package/src/behaviors/BComputedAndWatch/initComputed.ts +1 -1
- package/src/behaviors/BStore.ts +2 -2
- package/src/behaviors/BbeforeCreated.ts +3 -3
- package/src/types/OfficialTypeAlias.ts +2 -2
- package/src/types/SpecificType.ts +0 -4
- package/tsconfig.json +6 -15
- package/dist/utils/InternalFieldProtection.d.ts +0 -2
- package/dist/utils/InternalFieldProtection.js +0 -11
- package/dist/utils/InternalFieldProtection.js.map +0 -1
- package/dist/utils/collector.d.ts +0 -5
- package/dist/utils/collector.js +0 -21
- package/dist/utils/collector.js.map +0 -1
- package/dist/utils/computedUpdater.js.map +0 -1
- package/dist/utils/createdHijack.d.ts +0 -0
- package/dist/utils/createdHijack.js +0 -2
- package/dist/utils/createdHijack.js.map +0 -1
- package/dist/utils/customEventsHandle.d.ts +0 -2
- package/dist/utils/customEventsHandle.js +0 -20
- package/dist/utils/customEventsHandle.js.map +0 -1
- package/dist/utils/eventsHandle.d.ts +0 -2
- package/dist/utils/eventsHandle.js +0 -5
- package/dist/utils/eventsHandle.js.map +0 -1
- package/dist/utils/funcConfigHandle.d.ts +0 -2
- package/dist/utils/funcConfigHandle.js +0 -18
- package/dist/utils/funcConfigHandle.js.map +0 -1
- package/dist/utils/getPathsValue.js.map +0 -1
- package/dist/utils/initWatchOldValue.d.ts +0 -2
- package/dist/utils/initWatchOldValue.js +0 -10
- package/dist/utils/initWatchOldValue.js.map +0 -1
- package/dist/utils/onLoadHijack.d.ts +0 -3
- package/dist/utils/onLoadHijack.js +0 -16
- package/dist/utils/onLoadHijack.js.map +0 -1
- package/dist/utils/onLoadReceivedDataHandle.d.ts +0 -3
- package/dist/utils/onLoadReceivedDataHandle.js +0 -14
- package/dist/utils/onLoadReceivedDataHandle.js.map +0 -1
- package/dist/utils/rootComponentFieldHandle.d.ts +0 -3
- package/dist/utils/rootComponentFieldHandle.js +0 -13
- package/dist/utils/rootComponentFieldHandle.js.map +0 -1
- package/dist/utils/subComponentsHandle.d.ts +0 -3
- package/dist/utils/subComponentsHandle.js +0 -12
- package/dist/utils/subComponentsHandle.js.map +0 -1
- package/src/utils/InternalFieldProtection.ts +0 -18
- package/src/utils/collector.ts +0 -41
- package/src/utils/createdHijack.ts +0 -21
- package/src/utils/customEventsHandle.ts +0 -31
- package/src/utils/eventsHandle.ts +0 -10
- package/src/utils/funcConfigHandle.ts +0 -30
- package/src/utils/initWatchOldValue.ts +0 -12
- package/src/utils/onLoadHijack.ts +0 -30
- package/src/utils/onLoadReceivedDataHandle.ts +0 -31
- package/src/utils/rootComponentFieldHandle.ts +0 -27
- package/src/utils/subComponentsHandle.ts +0 -25
- /package/dist/{utils → behaviors/BComputedAndWatch}/getPathsValue.js +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
### Bug Fixes
|
|
4
|
+
|
|
5
|
+
* 解决SpecificType不接收接口类型的错误 ([ae8acbf](https://github.com/missannil/annil/commit/ae8acbfc2e62f99db565c448ad9253aa549e78bb))
|
|
6
|
+
|
|
7
|
+
## [1.0.4](https://github.com/missannil/annil/compare/v1.0.3...v1.0.4) (2023-11-30)
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
### Bug Fixes
|
|
11
|
+
|
|
12
|
+
* release.yml ([c8b68b6](https://github.com/missannil/annil/commit/c8b68b66a50f5834756ab9f0d926bc7f1be2f90e))
|
|
13
|
+
* yml ([e51c002](https://github.com/missannil/annil/commit/e51c00290d24d9372766e66e9c807e0c3d65429f))
|
|
14
|
+
|
|
3
15
|
## [1.0.1](https://github.com/missannil/annil/compare/v1.0.0...v1.0.1) (2023-11-27)
|
|
4
16
|
|
|
5
17
|
|
package/README.md
CHANGED
|
@@ -1,10 +1,40 @@
|
|
|
1
|
-
|
|
1
|
+
<h1 align="center">Annil</h1>
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
<p align="center">
|
|
4
|
+
<a href="https://www.npmjs.com/package/annil" >
|
|
5
|
+
<img src="https://img.shields.io/npm/v/annil?style=flat"/>
|
|
6
|
+
</a>
|
|
7
|
+
<a href="https://github.com/missannil/annil/blob/main/.github/workflows/test.yml" >
|
|
8
|
+
<img src="https://github.com/missannil/annil/actions/workflows/test.yml/badge.svg?branch=miss"/>
|
|
9
|
+
</a>
|
|
10
|
+
<a href="https://github.com/missannil/annil/blob/main/.github/workflows/release-please.yml" >
|
|
11
|
+
<img src="https://github.com/missannil/annil/actions/workflows/release-please.yml/badge.svg?branch=main"/>
|
|
12
|
+
</a>
|
|
13
|
+
<a href="https://github.com/missannil/annil/blob/main/LICENSE" >
|
|
14
|
+
<img src="https://img.shields.io/github/license/missannil/annil"/>
|
|
15
|
+
</a>
|
|
16
|
+
<a href="https://codecov.io/gh/missannil/annil" >
|
|
17
|
+
<img src="https://codecov.io/gh/missannil/annil/graph/badge.svg?token=4CFCHGST79"/>
|
|
18
|
+
</a>
|
|
19
|
+
<a href="https://www.npmjs.com/package/annil" >
|
|
20
|
+
<img src="https://img.shields.io/npm/dependency-version/annil/dev/typescript"/>
|
|
21
|
+
</a>
|
|
22
|
+
</p>
|
|
4
23
|
|
|
5
|
-
|
|
24
|
+
### 简介
|
|
6
25
|
|
|
7
|
-
|
|
26
|
+
annil(安奈儿)是微信小程序原生开发插件,她把组件的逻辑部分解耦为根组件和子组件,与wxml元素一一对应,提高了组件的可读性,更方便拓展和维护。另外annil的类型系统无与伦比,一个页面好比一个类型,无论嵌套多少层组件,无论哪层数据类型发生改变,所有相关类型都会得到感知。当您修改,拓展,重构代码时,只要无类型报错就不会有运行时报错。
|
|
8
27
|
|
|
9
|
-
|
|
10
|
-
|
|
28
|
+
### 特点
|
|
29
|
+
|
|
30
|
+
- API功能更全面
|
|
31
|
+
- 极致的类型约束
|
|
32
|
+
- 更严格的书写规范
|
|
33
|
+
- 子组件逻辑分离
|
|
34
|
+
- 渐进式更新
|
|
35
|
+
|
|
36
|
+
## 安装
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
npm i annil --save-dev
|
|
40
|
+
```
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { RootComponentTrueOptions } from "../RootComponent";
|
|
2
|
+
import type { SubComponentTrueOptions } from "../SubComponent";
|
|
3
|
+
import type { FinalOptionsForComponent } from ".";
|
|
4
|
+
export declare function collectOptionsForComponent(rootComponentOption: RootComponentTrueOptions | undefined, subComponentsList: SubComponentTrueOptions[] | undefined): FinalOptionsForComponent;
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import { BBeforeCreate } from "../../behaviors/BbeforeCreated";
|
|
2
|
+
import { BComputedAndWatch } from "../../behaviors/BComputedAndWatch";
|
|
3
|
+
import { initComputed } from "../../behaviors/BComputedAndWatch/initComputed";
|
|
4
|
+
import { BStore } from "../../behaviors/BStore";
|
|
5
|
+
import { deepClone } from "../../utils/deepClone";
|
|
6
|
+
import { INNERMARKER } from "../../utils/InnerMarker";
|
|
7
|
+
import { isEmptyObject } from "../../utils/isEmptyObject";
|
|
8
|
+
function onLoadReceivedDataHandle(option) {
|
|
9
|
+
const innerData = option[INNERMARKER.url];
|
|
10
|
+
if (innerData === undefined)
|
|
11
|
+
return;
|
|
12
|
+
const optionData = JSON.parse(decodeURIComponent(innerData));
|
|
13
|
+
for (const key in optionData) {
|
|
14
|
+
option[key] = optionData[key];
|
|
15
|
+
}
|
|
16
|
+
this.setData(option);
|
|
17
|
+
delete option[INNERMARKER.url];
|
|
18
|
+
Reflect.deleteProperty(this.data, INNERMARKER.url);
|
|
19
|
+
}
|
|
20
|
+
function onLoadHijack(options, before, after = []) {
|
|
21
|
+
options.methods || (options.methods = {});
|
|
22
|
+
const cloneOpt = deepClone(options);
|
|
23
|
+
const originalOnLoad = options.methods.onLoad;
|
|
24
|
+
options.methods.onLoad = function (props) {
|
|
25
|
+
before.forEach((func) => {
|
|
26
|
+
func.call(this, props, cloneOpt);
|
|
27
|
+
});
|
|
28
|
+
originalOnLoad === null || originalOnLoad === void 0 ? void 0 : originalOnLoad.call(this, props);
|
|
29
|
+
after.forEach((func) => {
|
|
30
|
+
func.call(this, props, cloneOpt);
|
|
31
|
+
});
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
const INNERFIELDS = ["disposer"];
|
|
35
|
+
function InternalFieldProtection(methodsConfig) {
|
|
36
|
+
const methodsConfigKeys = Object.keys(methodsConfig);
|
|
37
|
+
for (const key of INNERFIELDS) {
|
|
38
|
+
if (methodsConfigKeys.includes(key)) {
|
|
39
|
+
throw Error(`${key}已被内部字段占用`);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
function _funcConfigHandle(methodsConfig, configList) {
|
|
44
|
+
for (const key in configList) {
|
|
45
|
+
methodsConfig[key] = function (...args) {
|
|
46
|
+
configList[key].forEach(ele => ele.call(this, ...args));
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
function funcConfigHandle(finalOptionsForComponent, isPage, funcOptions) {
|
|
51
|
+
if (isPage) {
|
|
52
|
+
funcOptions.pageLifetimes && _funcConfigHandle(finalOptionsForComponent.methods || (finalOptionsForComponent.methods = {}), funcOptions.pageLifetimes);
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
funcOptions.pageLifetimes
|
|
56
|
+
&& _funcConfigHandle(finalOptionsForComponent.pageLifetimes || (finalOptionsForComponent.pageLifetimes = {}), funcOptions.pageLifetimes);
|
|
57
|
+
}
|
|
58
|
+
funcOptions.lifetimes && _funcConfigHandle(finalOptionsForComponent.lifetimes || (finalOptionsForComponent.lifetimes = {}), funcOptions.lifetimes);
|
|
59
|
+
funcOptions.watch && _funcConfigHandle(finalOptionsForComponent.watch || (finalOptionsForComponent.watch = {}), funcOptions.watch);
|
|
60
|
+
}
|
|
61
|
+
function funcFieldsCollect(options, funcOptions) {
|
|
62
|
+
var _a;
|
|
63
|
+
for (const key in funcOptions) {
|
|
64
|
+
if (options[key]) {
|
|
65
|
+
for (const _key in options[key]) {
|
|
66
|
+
((_a = funcOptions[key])[_key] || (_a[_key] = [])).push(options[key][_key]);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
Reflect.deleteProperty(options, key);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
function otherFieldsHandle(finalOptions, rootComponentOptions) {
|
|
73
|
+
for (const key in rootComponentOptions) {
|
|
74
|
+
const config = rootComponentOptions[key];
|
|
75
|
+
if (Array.isArray(config)) {
|
|
76
|
+
(finalOptions[key] || (finalOptions[key] = [])).push(...config);
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
Object.assign(finalOptions[key] || (finalOptions[key] = {}), config);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
function eventsHandle(componentOptions, eventsConfig) {
|
|
84
|
+
componentOptions.methods || (componentOptions.methods = {});
|
|
85
|
+
Object.assign(componentOptions.methods, eventsConfig);
|
|
86
|
+
}
|
|
87
|
+
function subComponentsHandle(componentOptions, subComponents, funcOptions) {
|
|
88
|
+
subComponents.forEach((subOption) => {
|
|
89
|
+
subOption.events && eventsHandle(componentOptions, subOption.events);
|
|
90
|
+
funcFieldsCollect(subOption, funcOptions);
|
|
91
|
+
otherFieldsHandle(componentOptions, subOption);
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
function IsFullCustomEvents(customEventOptions) {
|
|
95
|
+
return Object.prototype.toString.call(customEventOptions) === "[object Object]";
|
|
96
|
+
}
|
|
97
|
+
function customEventsHandle(componentOptions, customEventsConfig) {
|
|
98
|
+
componentOptions.methods || (componentOptions.methods = {});
|
|
99
|
+
for (const key in customEventsConfig) {
|
|
100
|
+
const customEventOptions = customEventsConfig[key];
|
|
101
|
+
if (IsFullCustomEvents(customEventOptions)) {
|
|
102
|
+
componentOptions.methods[key] = function (detail) {
|
|
103
|
+
this.triggerEvent(key, detail, customEventOptions.options);
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
else {
|
|
107
|
+
componentOptions.methods[key] = function (detail) {
|
|
108
|
+
this.triggerEvent(key, detail);
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
function collectRootComponentOption(finalOptions, funcOptions, rootComponentOptions) {
|
|
114
|
+
rootComponentOptions.customEvents && customEventsHandle(finalOptions, rootComponentOptions.customEvents);
|
|
115
|
+
delete rootComponentOptions.customEvents;
|
|
116
|
+
rootComponentOptions.events && eventsHandle(finalOptions, rootComponentOptions.events);
|
|
117
|
+
delete rootComponentOptions.events;
|
|
118
|
+
funcFieldsCollect(rootComponentOptions, funcOptions);
|
|
119
|
+
otherFieldsHandle(finalOptions, rootComponentOptions);
|
|
120
|
+
}
|
|
121
|
+
export function collectOptionsForComponent(rootComponentOption, subComponentsList) {
|
|
122
|
+
const finalOptionsForComponent = {
|
|
123
|
+
options: {
|
|
124
|
+
multipleSlots: true,
|
|
125
|
+
pureDataPattern: /^_/,
|
|
126
|
+
virtualHost: true,
|
|
127
|
+
},
|
|
128
|
+
behaviors: [BStore, BComputedAndWatch],
|
|
129
|
+
};
|
|
130
|
+
const funcOptions = {
|
|
131
|
+
pageLifetimes: {},
|
|
132
|
+
lifetimes: {},
|
|
133
|
+
watch: {},
|
|
134
|
+
};
|
|
135
|
+
if (rootComponentOption && !isEmptyObject(rootComponentOption)) {
|
|
136
|
+
collectRootComponentOption(finalOptionsForComponent, funcOptions, rootComponentOption);
|
|
137
|
+
}
|
|
138
|
+
if (subComponentsList && !isEmptyObject(subComponentsList)) {
|
|
139
|
+
subComponentsHandle(finalOptionsForComponent, subComponentsList, funcOptions);
|
|
140
|
+
}
|
|
141
|
+
if (!isEmptyObject(funcOptions)) {
|
|
142
|
+
funcConfigHandle(finalOptionsForComponent, rootComponentOption === null || rootComponentOption === void 0 ? void 0 : rootComponentOption.isPage, funcOptions);
|
|
143
|
+
}
|
|
144
|
+
finalOptionsForComponent.methods && InternalFieldProtection(finalOptionsForComponent.methods);
|
|
145
|
+
finalOptionsForComponent.behaviors.push(BBeforeCreate);
|
|
146
|
+
onLoadHijack(finalOptionsForComponent, [onLoadReceivedDataHandle, initComputed], []);
|
|
147
|
+
if (finalOptionsForComponent.isPage) {
|
|
148
|
+
Reflect.deleteProperty(finalOptionsForComponent.options, "virtualHost");
|
|
149
|
+
}
|
|
150
|
+
return finalOptionsForComponent;
|
|
151
|
+
}
|
|
152
|
+
//# sourceMappingURL=collectOptionsForComponent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collectOptionsForComponent.js","sourceRoot":"","sources":["../../../src/api/DefineComponent/collectOptionsForComponent.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,19 +9,16 @@ import type { CreateComponentDoc } from "./ReturnType/CreateComponentDoc";
|
|
|
9
9
|
import type { CreatePageDoc } from "./ReturnType/CreatePageDoc";
|
|
10
10
|
import type { RootComponentOption } from "./RootComponent/RootComponentOption";
|
|
11
11
|
import type { SubComponentsOption } from "./SubComponents/SubComponentsOption";
|
|
12
|
+
type Path = `/${string}`;
|
|
12
13
|
type RootOptions<TRootComponentDoc extends RootComponentDoc, TSubComponentTuple extends SubComponentDoc[], TName extends string, TPath extends Path> = NameOrPathOption<TName, TPath, TRootComponentDoc> & RootComponentOption<TRootComponentDoc> & SubComponentsOption<TSubComponentTuple>;
|
|
13
14
|
interface DefineComponentConstructor {
|
|
14
15
|
<TRootComponentDoc extends RootComponentDoc = {}, TSubComponentTuple extends SubComponentDoc[] = [], TName extends string = "", TPath extends Path = "/">(options: RootOptions<TRootComponentDoc, TSubComponentTuple, TName, TPath>): IfExtends<"", TName, CreatePageDoc<TRootComponentDoc, TPath, TSubComponentTuple>, CreateComponentDoc<TRootComponentDoc, TName, TSubComponentTuple>>;
|
|
15
16
|
}
|
|
16
|
-
export type
|
|
17
|
-
|
|
18
|
-
lifetimes?: Record<string, Func[]>;
|
|
19
|
-
watch?: Record<string, Func[]>;
|
|
20
|
-
};
|
|
21
|
-
export type ComponentOptions = {
|
|
17
|
+
export type FuncOptions = Record<"pageLifetimes" | "lifetimes" | "watch", Record<string, Func[]>>;
|
|
18
|
+
export type FinalOptionsForComponent = {
|
|
22
19
|
isPage?: boolean;
|
|
23
20
|
options?: WMComponent.Options;
|
|
24
|
-
properties?:
|
|
21
|
+
properties?: Record<string, any>;
|
|
25
22
|
data?: object;
|
|
26
23
|
store?: object;
|
|
27
24
|
computed?: Record<string, Func>;
|
|
@@ -36,26 +33,5 @@ export type ComponentOptions = {
|
|
|
36
33
|
load: Func;
|
|
37
34
|
} & WMPageLifetimes>;
|
|
38
35
|
};
|
|
39
|
-
export type Path = `/${string}`;
|
|
40
|
-
export type DefineComponentOptions = {
|
|
41
|
-
path?: Path;
|
|
42
|
-
name?: string;
|
|
43
|
-
rootComponent?: RootComponentDoc;
|
|
44
|
-
subComponents?: SubComponentDoc[];
|
|
45
|
-
};
|
|
46
36
|
export declare const DefineComponent: DefineComponentConstructor;
|
|
47
|
-
export type PageOptions = {
|
|
48
|
-
path: Path;
|
|
49
|
-
rootComponent: RootComponentDoc & {
|
|
50
|
-
isPage: true;
|
|
51
|
-
};
|
|
52
|
-
subComponents: SubComponentDoc[];
|
|
53
|
-
};
|
|
54
|
-
export type CompOptions = {
|
|
55
|
-
name: string;
|
|
56
|
-
rootComponent: RootComponentDoc & {
|
|
57
|
-
isPage: undefined;
|
|
58
|
-
};
|
|
59
|
-
subComponents: SubComponentDoc[];
|
|
60
|
-
};
|
|
61
37
|
export {};
|
|
@@ -1,40 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { BComputedAndWatch } from "../../behaviors/BComputedAndWatch";
|
|
3
|
-
import { initComputed } from "../../behaviors/BComputedAndWatch/initComputed";
|
|
4
|
-
import { BStore } from "../../behaviors/BStore";
|
|
5
|
-
import { funcConfigHandle } from "../../utils/funcConfigHandle";
|
|
6
|
-
import { isEmptyObject } from "../../utils/isEmptyObject";
|
|
7
|
-
import { onLoadReceivedDataHandle } from "../../utils/onLoadReceivedDataHandle";
|
|
8
|
-
import { rootComponentFieldHandle } from "../../utils/rootComponentFieldHandle";
|
|
9
|
-
import { subComponentsHandle } from "../../utils/subComponentsHandle";
|
|
10
|
-
import { InternalFieldProtection } from "../../utils/InternalFieldProtection";
|
|
11
|
-
import { onLoadHijack } from "../../utils/onLoadHijack";
|
|
1
|
+
import { collectOptionsForComponent } from "./collectOptionsForComponent";
|
|
12
2
|
export const DefineComponent = function (options) {
|
|
13
|
-
|
|
14
|
-
const finalOptions = {
|
|
15
|
-
options: {
|
|
16
|
-
multipleSlots: true,
|
|
17
|
-
pureDataPattern: /^_/,
|
|
18
|
-
virtualHost: true,
|
|
19
|
-
},
|
|
20
|
-
behaviors: [BStore, BComputedAndWatch],
|
|
21
|
-
};
|
|
22
|
-
const allFuncConfig = {};
|
|
23
|
-
if (options.rootComponent && !isEmptyObject(options.rootComponent)) {
|
|
24
|
-
rootComponentFieldHandle(options.rootComponent, finalOptions, allFuncConfig);
|
|
25
|
-
}
|
|
26
|
-
if (options.subComponents && !isEmptyObject(options.subComponents)) {
|
|
27
|
-
subComponentsHandle(finalOptions, options.subComponents, allFuncConfig);
|
|
28
|
-
}
|
|
29
|
-
if (!isEmptyObject(allFuncConfig)) {
|
|
30
|
-
funcConfigHandle(finalOptions, (_a = options.rootComponent) === null || _a === void 0 ? void 0 : _a.isPage, allFuncConfig);
|
|
31
|
-
}
|
|
32
|
-
finalOptions.methods && InternalFieldProtection(finalOptions.methods);
|
|
33
|
-
finalOptions.behaviors.push(BBeforeCreate);
|
|
34
|
-
onLoadHijack(finalOptions, [onLoadReceivedDataHandle, initComputed], []);
|
|
35
|
-
if (finalOptions.isPage) {
|
|
36
|
-
Reflect.deleteProperty(finalOptions.options, "virtualHost");
|
|
37
|
-
}
|
|
38
|
-
Component(finalOptions);
|
|
3
|
+
Component(collectOptionsForComponent(options.rootComponent, options.subComponents));
|
|
39
4
|
};
|
|
40
5
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/DefineComponent/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/DefineComponent/index.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAyD1E,MAAM,CAAC,MAAM,eAAe,GAA+B,UAAS,OAAO;IACzE,SAAS,CACP,0BAA0B,CAAC,OAAO,CAAC,aAAqD,EAAE,OAAO,CAAC,aAAa,CAAC,CACjH,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -31,5 +31,6 @@ export type FullCustomEvents = {
|
|
|
31
31
|
detailType: ShortCustomeEvents;
|
|
32
32
|
options: OptionsFieldsConfigOfCustomEvents;
|
|
33
33
|
};
|
|
34
|
-
export type
|
|
34
|
+
export type CustomEvents = FullCustomEvents | ShortCustomeEvents;
|
|
35
|
+
export type CustomEventConstraint = Record<string, CustomEvents>;
|
|
35
36
|
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type DataConstraint = Record<string, any>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataConstraint.js","sourceRoot":"","sources":["../../../../src/api/RootComponent/Data/DataConstraint.ts"],"names":[],"mappings":""}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { WMCompLifetimes } from "../../../types/OfficialTypeAlias";
|
|
2
|
-
import type {
|
|
2
|
+
import type { FinalOptionsForComponent } from "../../DefineComponent";
|
|
3
3
|
export type LifetimesConstraint = WMCompLifetimes["lifetimes"] & {
|
|
4
|
-
beforeCreate?: (options:
|
|
4
|
+
beforeCreate?: (options: FinalOptionsForComponent) => void;
|
|
5
5
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error.test.js","sourceRoot":"","sources":["../../../../../src/api/RootComponent/Lifetimes/test/error.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAItC,aAAa,EAAE,CAAC;IACd,SAAS,EAAE;
|
|
1
|
+
{"version":3,"file":"error.test.js","sourceRoot":"","sources":["../../../../../src/api/RootComponent/Lifetimes/test/error.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAItC,aAAa,EAAE,CAAC;IACd,SAAS,EAAE;QACT,YAAY,KAAI,CAAC;QAEjB,OAAO,KAAI,CAAC;QAEZ,QAAQ,KAAI,CAAC;QAEb,KAAK,KAAI,CAAC;QAEV,QAAQ,KAAI,CAAC;QAEb,KAAK,CAAC,GAAG;YACP,GAAG,CAAC,KAAK,CAAC;QACZ,CAAC;QACD,KAAK,KAAI,CAAC;QAEV,GAAG,KAAI,CAAC;KACT;CACF,CAAC,CAAC;AAKH,aAAa,EAAE,CAAC;IACd,MAAM,EAAE,IAAI;IAEZ,SAAS,EAAE,EAAE;CACd,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normal.test.js","sourceRoot":"","sources":["../../../../../src/api/RootComponent/Lifetimes/test/normal.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAK5C,aAAa,EAAE,CAAC;IACd,SAAS,EAAE;
|
|
1
|
+
{"version":3,"file":"normal.test.js","sourceRoot":"","sources":["../../../../../src/api/RootComponent/Lifetimes/test/normal.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAK5C,aAAa,EAAE,CAAC;IACd,SAAS,EAAE;QAET,YAAY,CAAC,OAAO;YAClB,OAAO,CAAC;QACV,CAAC;QACD,OAAO;QACP,CAAC;QACD,QAAQ;QACR,CAAC;QACD,KAAK;QACL,CAAC;QACD,QAAQ;QACR,CAAC;QACD,KAAK,CAAC,GAAG;YACP,GAAG,CAAC,KAAK,CAAC;QACZ,CAAC;QACD,KAAK;QACL,CAAC;KACF;CACF,CAAC,CAAC"}
|
|
@@ -38,4 +38,19 @@ const OptionalDoc = RootComponent()({
|
|
|
38
38
|
},
|
|
39
39
|
});
|
|
40
40
|
Checking;
|
|
41
|
+
RootComponent()({
|
|
42
|
+
properties: {
|
|
43
|
+
xxx: Object,
|
|
44
|
+
user: {
|
|
45
|
+
type: Object,
|
|
46
|
+
value: { name: "zhao" },
|
|
47
|
+
},
|
|
48
|
+
},
|
|
49
|
+
computed: {
|
|
50
|
+
ddd() {
|
|
51
|
+
var _a;
|
|
52
|
+
(_a = this.data.user) === null || _a === void 0 ? void 0 : _a.name;
|
|
53
|
+
},
|
|
54
|
+
},
|
|
55
|
+
});
|
|
41
56
|
//# sourceMappingURL=normalOptional.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normalOptional.test.js","sourceRoot":"","sources":["../../../../../src/api/RootComponent/Properties/test/normalOptional.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAa,MAAM,WAAW,CAAC;AAGhD,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAMtC,MAAM,WAAW,GAAG,aAAa,EAAE,CAAC;IAClC,UAAU,EAAE;QACV,YAAY,EAAE;YACZ,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,GAAG;SACX;QACD,eAAe,EAAE;YACf,IAAI,EAAE,MAAyC;YAC/C,KAAK,EAAE,MAAM;SACd;QACD,cAAc,EAAE;YACd,IAAI,EAAE,KAA2D;YACjE,KAAK,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAA8B;SACnD;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,MAAiC;YACvC,KAAK,EAAE;gBACL,EAAE,EAAE,IAAI;gBACR,GAAG,EAAE,EAAE;aACR;SACF;QACD,kBAAkB,EAAE;YAClB,IAAI,EAAE,MAAwC;YAC9C,KAAK,EAAE,IAAI;SACZ;QACD,cAAc,EAAE;YACd,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,QAAQ;YACf,aAAa,EAAE,CAAC,MAAM,CAAC;SACxB;KACF;IACD,OAAO,EAAE;QACP,GAAG;YAED,QAWC,CAAC;QACJ,CAAC;KACF;CACF,CAAC,CAAC;AAiBH,QAA4D,CAAC"}
|
|
1
|
+
{"version":3,"file":"normalOptional.test.js","sourceRoot":"","sources":["../../../../../src/api/RootComponent/Properties/test/normalOptional.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAa,MAAM,WAAW,CAAC;AAGhD,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAMtC,MAAM,WAAW,GAAG,aAAa,EAAE,CAAC;IAClC,UAAU,EAAE;QACV,YAAY,EAAE;YACZ,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,GAAG;SACX;QACD,eAAe,EAAE;YACf,IAAI,EAAE,MAAyC;YAC/C,KAAK,EAAE,MAAM;SACd;QACD,cAAc,EAAE;YACd,IAAI,EAAE,KAA2D;YACjE,KAAK,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAA8B;SACnD;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,MAAiC;YACvC,KAAK,EAAE;gBACL,EAAE,EAAE,IAAI;gBACR,GAAG,EAAE,EAAE;aACR;SACF;QACD,kBAAkB,EAAE;YAClB,IAAI,EAAE,MAAwC;YAC9C,KAAK,EAAE,IAAI;SACZ;QACD,cAAc,EAAE;YACd,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,QAAQ;YACf,aAAa,EAAE,CAAC,MAAM,CAAC;SACxB;KACF;IACD,OAAO,EAAE;QACP,GAAG;YAED,QAWC,CAAC;QACJ,CAAC;KACF;CACF,CAAC,CAAC;AAiBH,QAA4D,CAAC;AAO7D,aAAa,EAAE,CAAC;IACd,UAAU,EAAE;QACV,GAAG,EAAE,MAAmC;QACxC,IAAI,EAAE;YACJ,IAAI,EAAE,MAA2B;YACjC,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;SACxB;KACF;IACD,QAAQ,EAAE;QACR,GAAG;;YACD,MAAA,IAAI,CAAC,IAAI,CAAC,IAAI,0CAAE,IAAI,CAAC;QACvB,CAAC;KACF;CACF,CAAC,CAAC"}
|
|
@@ -3,7 +3,7 @@ import type { NoInfer } from "hry-types/src/Generic/NoInfer";
|
|
|
3
3
|
import type { EmptyObject } from "hry-types/src/Misc/EmptyObject";
|
|
4
4
|
import type { Func } from "hry-types/src/Misc/Func";
|
|
5
5
|
import type { ComputeIntersectionDeep } from "hry-types/src/Object/_api";
|
|
6
|
-
import type { WMCompOtherOption } from "../../types/OfficialTypeAlias";
|
|
6
|
+
import type { WMCompOtherOption, WMCompPageLifetimes, WMPageLifetimes } from "../../types/OfficialTypeAlias";
|
|
7
7
|
import type { ComponentDoc } from "../DefineComponent/ReturnType/ComponentDoc";
|
|
8
8
|
import type { ComputedConstraint } from "./Computed/ComputedConstraint";
|
|
9
9
|
import type { ComputedOption } from "./Computed/ComputedOption";
|
|
@@ -11,11 +11,13 @@ import type { GetComputedDoc } from "./Computed/GetComputedDoc";
|
|
|
11
11
|
import type { CustomEventConstraint } from "./CustomEvents/CustomEventConstraint";
|
|
12
12
|
import type { CustomEventsOption } from "./CustomEvents/CustomEventsOption";
|
|
13
13
|
import type { GetCustomEventDoc } from "./CustomEvents/GetCustomEventDoc";
|
|
14
|
+
import type { DataConstraint } from "./Data/DataConstraint";
|
|
14
15
|
import type { DataOption } from "./Data/DataOption";
|
|
15
16
|
import type { EventsConstraint } from "./Events/EventsConstraint";
|
|
16
17
|
import type { EventsOption } from "./Events/EventsOption";
|
|
17
18
|
import type { RootComponentInstance } from "./Instance/RootComponentInstance";
|
|
18
19
|
import type { IsPageOption } from "./IsPage/IsPageOption";
|
|
20
|
+
import type { LifetimesConstraint } from "./Lifetimes/LifetimesConstraint";
|
|
19
21
|
import type { LifetimesOption } from "./Lifetimes/LifetimesOption";
|
|
20
22
|
import type { MethodsConstraint } from "./Methods/MethodsConstraint";
|
|
21
23
|
import type { MethodsOption } from "./Methods/MethodsOption";
|
|
@@ -29,7 +31,7 @@ import type { StoreOption } from "./Store/StoreOption";
|
|
|
29
31
|
import type { WatchOption } from "./Watch/WatchOption";
|
|
30
32
|
type RootComponentOptions<TReceivedComponentDoc extends object, TEvents extends object, TIsPage extends boolean, TCustomEvents extends CustomEventConstraint, TMethods extends MethodsConstraint, TProperties extends PropertiesConstraint, TData extends object, TStore extends StoreConstraint, TComputed extends Record<string, Func>, EventsDoc extends object, CustomEventsDoc extends object, PropertiesDoc extends object, DataDoc extends object, StoreDoc extends object, ComputedDoc extends object> = MethodsOption<TMethods, keyof (EventsDoc & CustomEventsDoc)> & PropertiesOption<TProperties> & IsPageOption<TIsPage> & CustomEventsOption<TCustomEvents, EventsDoc> & EventsOption<TEvents, EventsConstraint<TReceivedComponentDoc>> & DataOption<TData, PropertiesDoc> & StoreOption<TStore, PropertiesDoc & DataDoc> & ComputedOption<TComputed, Required<PropertiesDoc> & DataDoc & StoreDoc> & PageLifetimesOption<TIsPage, NoInfer<PropertiesDoc>> & LifetimesOption<TIsPage> & WatchOption<ComputedDoc & Required<PropertiesDoc> & DataDoc & StoreDoc> & Partial<Omit<WMCompOtherOption, "pageLifetimes">> & ThisType<RootComponentInstance<TIsPage, TMethods, DataDoc, DataDoc & Required<PropertiesDoc> & StoreDoc & ComputedDoc, CustomEventsDoc, StoreDoc>>;
|
|
31
33
|
type RootComponentConstructor<TReceivedComponentDoc extends ComponentDoc[] | ComponentDoc> = {
|
|
32
|
-
<Literal extends string | number | boolean | null | Literal[] |
|
|
34
|
+
<Literal extends string | number | boolean | null | Literal[] | object, TEvents extends EventsConstraint<TReceivedComponentDoc>, TIsPage extends boolean = false, TProperties extends PropertiesConstraint<Literal> = {}, TData extends object = {}, TStore extends StoreConstraint = {}, TComputed extends ComputedConstraint = {}, TCustomEvents extends IfExtends<TIsPage, false, CustomEventConstraint, EmptyObject> = {}, TMethods extends MethodsConstraint = {}, EventsDoc extends object = IfExtends<EventsConstraint<TReceivedComponentDoc>, TEvents, {}, TEvents>, CustomEventsDoc extends object = GetCustomEventDoc<TCustomEvents>, PropertiesDoc extends object = GetPropertiesDoc<TProperties, TIsPage>, DataDoc extends object = TData, StoreDoc extends object = GeTStoreDoc<TStore>, ComputedDoc extends object = GetComputedDoc<TComputed>>(options: RootComponentOptions<TReceivedComponentDoc, TEvents, TIsPage, TCustomEvents, TMethods, TProperties, TData, TStore, TComputed, EventsDoc, CustomEventsDoc, PropertiesDoc, DataDoc, StoreDoc, ComputedDoc>): ComputeIntersectionDeep<IfExtends<TIsPage, false, {}, {
|
|
33
35
|
isPage: true;
|
|
34
36
|
}> & IfExtends<EmptyObject, PropertiesDoc, {}, {
|
|
35
37
|
properties: PropertiesDoc;
|
|
@@ -48,4 +50,19 @@ type RootComponentConstructor<TReceivedComponentDoc extends ComponentDoc[] | Com
|
|
|
48
50
|
}>>;
|
|
49
51
|
};
|
|
50
52
|
export declare function RootComponent<TReceivedComponentDoc extends ComponentDoc[] | ComponentDoc = {}>(): RootComponentConstructor<TReceivedComponentDoc>;
|
|
53
|
+
export type RootComponentTrueOptions = {
|
|
54
|
+
isPage?: boolean;
|
|
55
|
+
properties?: PropertiesConstraint;
|
|
56
|
+
data?: DataConstraint;
|
|
57
|
+
computed?: ComputedConstraint;
|
|
58
|
+
customEvents?: CustomEventConstraint;
|
|
59
|
+
methods?: MethodsConstraint;
|
|
60
|
+
events?: EventsConstraint;
|
|
61
|
+
store?: StoreConstraint;
|
|
62
|
+
watch?: Record<string, Func>;
|
|
63
|
+
lifetimes?: LifetimesConstraint;
|
|
64
|
+
pageLifetimes?: Partial<WMCompPageLifetimes & {
|
|
65
|
+
load: Func;
|
|
66
|
+
} & WMPageLifetimes>;
|
|
67
|
+
};
|
|
51
68
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/RootComponent/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/RootComponent/index.ts"],"names":[],"mappings":"AAqIA,MAAM,UAAU,aAAa;IAM3B,OAAO,CAAC,CAAC,OAAY,EAAE,EAAE,CAAC,OAAmC,CAAQ,CAAC;AACxE,CAAC"}
|
|
@@ -33,7 +33,7 @@ type SubComponentConstructor<TRootDoc extends RootComponentDoc, TOriginalCompDoc
|
|
|
33
33
|
}>, SubComputedDoc extends object = IfExtends<SubComputedConstraint<Omit<Required<CurrentCompDoc["properties"]>, keyof (InheritDoc & SubDataDoc & SubStoreDoc)>>, TSubComputed, {}, GetSubComputedDoc<TSubComputed>>, SubEventsDoc extends object = IfExtends<SubEventsConstraint<CurrentCompDoc>, TEvents, {}, TEvents>, SubMethodsDoc extends object = TSubMethods, MissingRequiredField extends PropertyKey = Exclude<RequiredKeys<CurrentCompDoc["properties"] & {}>, keyof (InheritDoc & SubDataDoc & SubStoreDoc & IfExtends<SubComputedConstraint<Omit<Required<CurrentCompDoc["properties"]>, keyof (InheritDoc & SubDataDoc & SubStoreDoc)>>, TSubComputed, {}, GetSubComputedDoc<TSubComputed>>)>>(options: Options<TRootDoc, IsPage, CurrentCompDoc, CurrentPrefix, AllRootDataDoc, TInherit, TSubData, TSubStore, TSubComputed, TEvents, TSubMethods, InheritDoc, SubDataDoc, SubStoreDoc, SubComputedDoc, SubEventsDoc, SubMethodsDoc>): CreateSubComponentDoc<TOriginalCompDoc["customEvents"] & {}, SubEventsDoc, MissingRequiredField>;
|
|
34
34
|
};
|
|
35
35
|
export declare function SubComponent<RootDoc extends RootComponentDoc, CompDoc extends ComponentDoc, Prefix extends string = "">(): IfExtends<EmptyObject, CompDoc, (opt: EmptyObject) => never, SubComponentConstructor<RootDoc, CompDoc, Prefix>>;
|
|
36
|
-
export type
|
|
36
|
+
export type SubComponentTrueOptions = {
|
|
37
37
|
inhrit?: string;
|
|
38
38
|
data?: Record<string, unknown>;
|
|
39
39
|
computed?: Record<string, Func>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/SubComponent/index.ts"],"names":[],"mappings":"AAiMA,MAAM,UAAU,YAAY;IAK1B,OAAO,CAAC,CAAC,OAAY,EAAE,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/SubComponent/index.ts"],"names":[],"mappings":"AAiMA,MAAM,UAAU,YAAY;IAK1B,OAAO,CAAC,CAAC,OAAY,EAAE,EAAE,CAAC,OAAkC,CAAQ,CAAC;AACvE,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type { Instance } from "
|
|
1
|
+
import type { Instance } from "./types";
|
|
2
2
|
export declare function computedUpdater(this: Instance, isUpdated?: boolean): boolean;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { deepProxy, unwrap } from "
|
|
2
|
-
import { isEqual } from "../behaviors/BComputedAndWatch/isEqual";
|
|
1
|
+
import { deepProxy, unwrap } from "./data-tracer";
|
|
3
2
|
import { getPathsValue } from "./getPathsValue";
|
|
3
|
+
import { isEqual } from "./isEqual";
|
|
4
4
|
export function computedUpdater(isUpdated = false) {
|
|
5
5
|
for (const key in this.__computedCache__) {
|
|
6
6
|
const itemCache = this.__computedCache__[key];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"computedUpdater.js","sourceRoot":"","sources":["../../../src/behaviors/BComputedAndWatch/computedUpdater.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,MAAM,UAAU,eAAe,CAAiB,SAAS,GAAG,KAAK;IAK/D,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAGzC,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAC9C,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,KAAK,MAAM,GAAG,IAAI,SAAS,CAAC,WAAW,EAAE,CAAC;YACxC,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;YAGnD,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC9B,OAAO,GAAG,IAAI,CAAC;gBAEf,MAAM;YACR,CAAC;QACH,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,cAAc,GAAyB,EAAE,CAAC;YAEhD,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;gBACrC,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC;aAC3C,CAAC,CAAC;YAGH,IAAI,CAAC,OAAO,CAAC;gBACX,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC;aACxB,CAAC,CAAC;YAEH,SAAS,GAAG,IAAI,CAAC;YAGjB,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,WAAW,GAAG,cAAc,CAAC;YAGzD,OAAO,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type { Instance } from "
|
|
1
|
+
import type { Instance } from "./types";
|
|
2
2
|
export declare function getPathsValue(this: Instance, paths: string[]): any;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getPathsValue.js","sourceRoot":"","sources":["../../../src/behaviors/BComputedAndWatch/getPathsValue.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,aAAa,CAAiB,KAAe;IAC3D,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,GAAQ,EAAE,IAAI,EAAE,EAAE;QAErC,IAAI,CAAC;YACH,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC"}
|
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
import { deepClone } from "../../utils/deepClone";
|
|
2
2
|
import { deleteProtoField } from "../../utils/deleteProtoField";
|
|
3
|
-
import { initWatchOldValue } from "../../utils/initWatchOldValue";
|
|
4
3
|
import { isEmptyObject } from "../../utils/isEmptyObject";
|
|
4
|
+
import { getPathsValue } from "./getPathsValue";
|
|
5
5
|
import { initComputed } from "./initComputed";
|
|
6
6
|
import { isEqual } from "./isEqual";
|
|
7
7
|
import { isPage } from "./IsPage";
|
|
8
|
+
function initWatchOldValue(watchConfig) {
|
|
9
|
+
const watchOldValue = {};
|
|
10
|
+
for (const key in watchConfig) {
|
|
11
|
+
watchOldValue[key] = deepClone(getPathsValue.call(this, key.split(".")));
|
|
12
|
+
}
|
|
13
|
+
return watchOldValue;
|
|
14
|
+
}
|
|
8
15
|
export const BComputedAndWatch = Behavior({
|
|
9
16
|
definitionFilter(options) {
|
|
10
17
|
const computedConfig = options.computed;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/behaviors/BComputedAndWatch/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/behaviors/BComputedAndWatch/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { computedUpdater } from "../../utils/computedUpdater";
|
|
2
1
|
import { deleteProtoField } from "../../utils/deleteProtoField";
|
|
2
|
+
import { computedUpdater } from "./computedUpdater";
|
|
3
3
|
import { deepProxy, unwrap } from "./data-tracer";
|
|
4
4
|
function isValidDependences(dependences, computedKeys) {
|
|
5
5
|
for (const { paths: path, val } of dependences) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initComputed.js","sourceRoot":"","sources":["../../../src/behaviors/BComputedAndWatch/initComputed.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"initComputed.js","sourceRoot":"","sources":["../../../src/behaviors/BComputedAndWatch/initComputed.ts"],"names":[],"mappings":"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"}
|