annil 1.1.1 → 1.2.0-beta.0

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.
Files changed (164) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/api/DefineComponent/collectOptionsForComponent.d.ts +2 -2
  3. package/dist/api/DefineComponent/collectOptionsForComponent.js +24 -28
  4. package/dist/api/DefineComponent/collectOptionsForComponent.js.map +1 -1
  5. package/dist/api/DefineComponent/index.d.ts +12 -12
  6. package/dist/api/DefineComponent/index.js.map +1 -1
  7. package/dist/api/RootComponent/Computed/ComputedOption.d.ts +2 -2
  8. package/dist/api/RootComponent/Computed/GetComputedDoc.d.ts +2 -2
  9. package/dist/api/RootComponent/Computed/test/normal.test.js +5 -12
  10. package/dist/api/RootComponent/Computed/test/normal.test.js.map +1 -1
  11. package/dist/api/RootComponent/CustomEvents/CustomEventsOption.d.ts +2 -2
  12. package/dist/api/RootComponent/Data/DataConstraint.d.ts +1 -1
  13. package/dist/api/RootComponent/Data/DataOption.d.ts +2 -2
  14. package/dist/api/RootComponent/Data/GetDataDoc.d.ts +1 -4
  15. package/dist/api/RootComponent/Data/test/GetDataDoc.test.d.ts +3 -2
  16. package/dist/api/RootComponent/Data/test/GetDataDoc.test.js +5 -5
  17. package/dist/api/RootComponent/Data/test/GetDataDoc.test.js.map +1 -1
  18. package/dist/api/RootComponent/Data/test/normal.test.js.map +1 -1
  19. package/dist/api/RootComponent/Events/EventsConstraint.d.ts +6 -5
  20. package/dist/api/RootComponent/Events/EventsOption.d.ts +2 -3
  21. package/dist/api/RootComponent/Events/test/normal.test.js +1 -1
  22. package/dist/api/RootComponent/Events/test/normal.test.js.map +1 -1
  23. package/dist/api/RootComponent/Lifetimes/LifetimesConstraint.d.ts +5 -4
  24. package/dist/api/RootComponent/Lifetimes/test/error.test.js.map +1 -1
  25. package/dist/api/RootComponent/PageLifetimes/PageLifetimesOption.d.ts +6 -7
  26. package/dist/api/RootComponent/PageLifetimes/test/error.test.js +3 -1
  27. package/dist/api/RootComponent/PageLifetimes/test/error.test.js.map +1 -1
  28. package/dist/api/RootComponent/PageLifetimes/test/normal.test.js +3 -1
  29. package/dist/api/RootComponent/PageLifetimes/test/normal.test.js.map +1 -1
  30. package/dist/api/RootComponent/RootComponentDoc.d.ts +17 -3
  31. package/dist/api/RootComponent/Store/GeTStoreDoc.d.ts +1 -1
  32. package/dist/api/RootComponent/Store/StoreOption.d.ts +2 -2
  33. package/dist/api/RootComponent/Store/test/normal.test.js.map +1 -1
  34. package/dist/api/RootComponent/Watch/test/WatchProperties.test.js +0 -2
  35. package/dist/api/RootComponent/Watch/test/WatchProperties.test.js.map +1 -1
  36. package/dist/api/RootComponent/index.d.ts +9 -10
  37. package/dist/api/RootComponent/index.js.map +1 -1
  38. package/dist/api/SubComponent/SubData/SubDataConstraint.d.ts +2 -2
  39. package/dist/api/SubComponent/SubData/test/normal.test.js +0 -15
  40. package/dist/api/SubComponent/SubData/test/normal.test.js.map +1 -1
  41. package/dist/api/SubComponent/SubEvents/SubEventsConstraint.d.ts +2 -2
  42. package/dist/api/SubComponent/SubEvents/SubEventsOptions.d.ts +2 -2
  43. package/dist/api/SubComponent/SubEvents/test/error.test.js.map +1 -1
  44. package/dist/api/SubComponent/SubEvents/test/normal.test.js +20 -0
  45. package/dist/api/SubComponent/SubEvents/test/normal.test.js.map +1 -1
  46. package/dist/api/SubComponent/SubInherit/SubInheritConstraint.d.ts +3 -2
  47. package/dist/api/SubComponent/SubInherit/SubInheritOption.d.ts +3 -0
  48. package/dist/api/SubComponent/SubInherit/SubInheritOption.js +2 -0
  49. package/dist/api/SubComponent/SubInherit/SubInheritOption.js.map +1 -0
  50. package/dist/api/SubComponent/SubInherit/test/error.test.js +1 -1
  51. package/dist/api/SubComponent/SubInherit/test/error.test.js.map +1 -1
  52. package/dist/api/SubComponent/SubInherit/test/normal.test.js.map +1 -1
  53. package/dist/api/SubComponent/SubMethods/SubMethodsOption.d.ts +3 -2
  54. package/dist/api/SubComponent/SubMethods/test/error.test.js +6 -0
  55. package/dist/api/SubComponent/SubMethods/test/error.test.js.map +1 -1
  56. package/dist/api/SubComponent/SubMethods/test/normarl.test.js +3 -3
  57. package/dist/api/SubComponent/SubMethods/test/normarl.test.js.map +1 -1
  58. package/dist/api/SubComponent/SubPageLifetimes/SubPageLifetimesOption.d.ts +1 -1
  59. package/dist/api/SubComponent/SubPageLifetimes/test/error.test.d.ts +0 -1
  60. package/dist/api/SubComponent/SubPageLifetimes/test/error.test.js +1 -11
  61. package/dist/api/SubComponent/SubPageLifetimes/test/error.test.js.map +1 -1
  62. package/dist/api/SubComponent/SubPageLifetimes/test/normal.test.d.ts +0 -1
  63. package/dist/api/SubComponent/SubPageLifetimes/test/normal.test.js +1 -25
  64. package/dist/api/SubComponent/SubPageLifetimes/test/normal.test.js.map +1 -1
  65. package/dist/api/SubComponent/SubStore/SubDataConstraint.d.ts +2 -2
  66. package/dist/api/SubComponent/SubStore/SubStoreOption.d.ts +1 -1
  67. package/dist/api/SubComponent/SubStore/test/error.test.js +2 -0
  68. package/dist/api/SubComponent/SubStore/test/error.test.js.map +1 -1
  69. package/dist/api/SubComponent/SubStore/test/normal.test.js +1 -0
  70. package/dist/api/SubComponent/SubStore/test/normal.test.js.map +1 -1
  71. package/dist/api/SubComponent/SubWatch/SubWatchOption.d.ts +2 -1
  72. package/dist/api/SubComponent/SubWatch/test/WatchComputed.test.d.ts +1 -0
  73. package/dist/api/SubComponent/SubWatch/test/WatchComputed.test.js +44 -1
  74. package/dist/api/SubComponent/SubWatch/test/WatchComputed.test.js.map +1 -1
  75. package/dist/api/SubComponent/SubWatch/test/error.test.js +10 -2
  76. package/dist/api/SubComponent/SubWatch/test/error.test.js.map +1 -1
  77. package/dist/api/SubComponent/index.d.ts +19 -13
  78. package/dist/api/SubComponent/index.js.map +1 -1
  79. package/dist/behaviors/BComputedAndWatch/index.js.map +1 -1
  80. package/dist/behaviors/BComputedAndWatch/types.d.ts +1 -0
  81. package/dist/behaviors/BStore.js.map +1 -1
  82. package/dist/behaviors/BbeforeCreated.js.map +1 -1
  83. package/dist/index.d.ts +3 -3
  84. package/dist/index.js +1 -1
  85. package/dist/index.js.map +1 -1
  86. package/dist/types/OfficialTypeAlias.d.ts +1 -1
  87. package/dist/types/RemoveInnerData.d.ts +1 -0
  88. package/dist/types/RemoveInnerData.js +2 -0
  89. package/dist/types/RemoveInnerData.js.map +1 -0
  90. package/dist/utils/InnerMarker.js +1 -1
  91. package/dist/utils/InnerMarker.js.map +1 -1
  92. package/dist/utils/deepClone.js.map +1 -1
  93. package/package.json +4 -2
  94. package/src/api/DefineComponent/collectOptionsForComponent.ts +176 -66
  95. package/src/api/DefineComponent/index.ts +13 -9
  96. package/src/api/RootComponent/Computed/ComputedOption.ts +23 -3
  97. package/src/api/RootComponent/Computed/GetComputedDoc.ts +1 -3
  98. package/src/api/RootComponent/Computed/test/normal.test.ts +9 -19
  99. package/src/api/RootComponent/CustomEvents/CustomEventsOption.ts +26 -22
  100. package/src/api/RootComponent/CustomEvents/test/error.test.ts +5 -5
  101. package/src/api/RootComponent/CustomEvents/test/normal.test.ts +1 -1
  102. package/src/api/RootComponent/Data/DataConstraint.ts +1 -1
  103. package/src/api/RootComponent/Data/DataOption.ts +6 -4
  104. package/src/api/RootComponent/Data/GetDataDoc.ts +1 -18
  105. package/src/api/RootComponent/Data/test/GetDataDoc.test.ts +14 -25
  106. package/src/api/RootComponent/Data/test/error.test.ts +2 -2
  107. package/src/api/RootComponent/Data/test/normal.test.ts +5 -8
  108. package/src/api/RootComponent/Events/EventsConstraint.ts +24 -19
  109. package/src/api/RootComponent/Events/EventsOption.ts +54 -6
  110. package/src/api/RootComponent/Events/test/normal.test.ts +16 -16
  111. package/src/api/RootComponent/Instance/test/properties/mormal.test.ts +1 -1
  112. package/src/api/RootComponent/IsPage/IsPageOption.ts +1 -1
  113. package/src/api/RootComponent/Lifetimes/LifetimesConstraint.ts +11 -8
  114. package/src/api/RootComponent/Lifetimes/LifetimesOption.ts +26 -0
  115. package/src/api/RootComponent/Lifetimes/test/error.test.ts +3 -13
  116. package/src/api/RootComponent/Lifetimes/test/normal.test.ts +1 -1
  117. package/src/api/RootComponent/Methods/MethodsOption.ts +3 -0
  118. package/src/api/RootComponent/PageLifetimes/PageLifetimesOption.ts +21 -10
  119. package/src/api/RootComponent/PageLifetimes/test/error.test.ts +7 -5
  120. package/src/api/RootComponent/PageLifetimes/test/normal.test.ts +9 -10
  121. package/src/api/RootComponent/Properties/PropertiesOption.ts +19 -32
  122. package/src/api/RootComponent/RootComponentDoc.ts +19 -3
  123. package/src/api/RootComponent/Store/GeTStoreDoc.ts +1 -1
  124. package/src/api/RootComponent/Store/StoreOption.ts +14 -2
  125. package/src/api/RootComponent/Store/test/error.test.ts +5 -5
  126. package/src/api/RootComponent/Store/test/normal.test.ts +1 -0
  127. package/src/api/RootComponent/Watch/test/WatchProperties.test.ts +1 -12
  128. package/src/api/RootComponent/index.ts +20 -19
  129. package/src/api/SubComponent/SubComputed/SubComputedOption.ts +0 -1
  130. package/src/api/SubComponent/SubData/SubDataConstraint.ts +2 -3
  131. package/src/api/SubComponent/SubData/SubDataOption.ts +4 -0
  132. package/src/api/SubComponent/SubData/test/error.test.ts +1 -1
  133. package/src/api/SubComponent/SubData/test/normal.test.ts +6 -37
  134. package/src/api/SubComponent/SubEvents/SubEventsConstraint.ts +7 -2
  135. package/src/api/SubComponent/SubEvents/SubEventsOptions.ts +7 -2
  136. package/src/api/SubComponent/SubEvents/test/error.test.ts +5 -4
  137. package/src/api/SubComponent/SubEvents/test/normal.test.ts +31 -4
  138. package/src/api/SubComponent/SubInherit/SubInheritConstraint.ts +6 -3
  139. package/src/api/SubComponent/SubInherit/SubInheritOption.ts +8 -0
  140. package/src/api/SubComponent/SubInherit/test/error.test.ts +9 -7
  141. package/src/api/SubComponent/SubInherit/test/normal.test.ts +5 -4
  142. package/src/api/SubComponent/SubMethods/SubMethodsOption.ts +7 -3
  143. package/src/api/SubComponent/SubMethods/test/error.test.ts +13 -5
  144. package/src/api/SubComponent/SubMethods/test/normarl.test.ts +6 -12
  145. package/src/api/SubComponent/SubPageLifetimes/SubPageLifetimesOption.ts +2 -2
  146. package/src/api/SubComponent/SubPageLifetimes/test/error.test.ts +1 -32
  147. package/src/api/SubComponent/SubPageLifetimes/test/normal.test.ts +1 -74
  148. package/src/api/SubComponent/SubStore/SubDataConstraint.ts +2 -2
  149. package/src/api/SubComponent/SubStore/SubStoreOption.ts +15 -1
  150. package/src/api/SubComponent/SubStore/test/error.test.ts +4 -0
  151. package/src/api/SubComponent/SubStore/test/normal.test.ts +2 -0
  152. package/src/api/SubComponent/SubWatch/SubWatchOption.ts +2 -1
  153. package/src/api/SubComponent/SubWatch/test/WatchComputed.test.ts +75 -43
  154. package/src/api/SubComponent/SubWatch/test/error.test.ts +12 -3
  155. package/src/api/SubComponent/index.ts +28 -17
  156. package/src/behaviors/BComputedAndWatch/index.ts +2 -2
  157. package/src/behaviors/BComputedAndWatch/types.ts +1 -0
  158. package/src/behaviors/BStore.ts +4 -6
  159. package/src/behaviors/BbeforeCreated.ts +2 -2
  160. package/src/index.ts +12 -8
  161. package/src/types/OfficialTypeAlias.ts +7 -11
  162. package/src/types/RemoveInnerData.ts +5 -0
  163. package/src/utils/InnerMarker.ts +1 -1
  164. package/src/utils/deepClone.ts +1 -0
@@ -6,13 +6,15 @@ import type { ReplacePrefix } from "../../types/ReplacePrefix";
6
6
  import type { ComponentDoc } from "../DefineComponent/ReturnType/ComponentDoc";
7
7
 
8
8
  import type { Func } from "hry-types/src/Misc/Func";
9
- import type {
10
- WMCompLifetimes,
11
- WMCompOtherOption,
12
- WMCompPageLifetimes,
13
- WMPageLifetimes,
14
- } from "../../types/OfficialTypeAlias";
9
+ import type { WMCompOtherOption } from "../../types/OfficialTypeAlias";
10
+ import type { ComputedConstraint } from "../RootComponent/Computed/ComputedConstraint";
11
+ import type { DataConstraint } from "../RootComponent/Data/DataConstraint";
12
+ import type { EventsConstraint } from "../RootComponent/Events/EventsConstraint";
13
+ import type { LifetimesConstraint } from "../RootComponent/Lifetimes/LifetimesConstraint";
14
+ import type { MethodsConstraint } from "../RootComponent/Methods/MethodsConstraint";
15
+ import type { PageLifetimesOption } from "../RootComponent/PageLifetimes/PageLifetimesOption";
15
16
  import type { RootComponentDoc } from "../RootComponent/RootComponentDoc";
17
+ import type { StoreConstraint } from "../RootComponent/Store/StoreConstraint";
16
18
  import type { GetSubComputedDoc } from "./SubComputed/GetSubComputedDoc";
17
19
  import type { SubComputedConstraint } from "./SubComputed/SubComputedConstraint";
18
20
  import type { SubComputedOption } from "./SubComputed/SubComputedOption";
@@ -21,6 +23,7 @@ import type { SubDataOption } from "./SubData/SubDataOption";
21
23
  import type { SubEventsConstraint } from "./SubEvents/SubEventsConstraint";
22
24
  import type { SubEventsOption } from "./SubEvents/SubEventsOptions";
23
25
  import type { InheritConstraint } from "./SubInherit/SubInheritConstraint";
26
+ import type { SubInheritOption } from "./SubInherit/SubInheritOption";
24
27
  import type { SubInstance } from "./SubInstance/SubInstance";
25
28
  import type { SubLifetimesOption } from "./SubLifetimes/SubLifetimesOption";
26
29
  import type { SubMethodsConstraint } from "./SubMethods/SubMethodsConstraint";
@@ -42,7 +45,7 @@ type Options<
42
45
  TSubStore extends object,
43
46
  TSubComputed extends object,
44
47
  TEvents extends object,
45
- TSubMethods extends object,
48
+ TSubMethods extends SubMethodsConstraint,
46
49
  InheritDoc extends object,
47
50
  SubDataDoc extends object,
48
51
  SubStoreDoc extends object,
@@ -50,7 +53,7 @@ type Options<
50
53
  SubEventsDoc extends object,
51
54
  SubMethodsDoc extends object,
52
55
  > =
53
- & { inherit?: TInherit }
56
+ & SubInheritOption<TInherit>
54
57
  & SubDataOption<
55
58
  TSubData,
56
59
  Exclude<keyof CurrentCompDoc["properties"], (keyof InheritDoc)>,
@@ -67,8 +70,9 @@ type Options<
67
70
  // 合法的配置
68
71
  Omit<CurrentCompDoc["properties"], (keyof (InheritDoc & SubDataDoc & SubStoreDoc))>
69
72
  >
73
+ // 无需与根组件的events字段重复检测,因为根组件多了bubbles字段,一定不会重复
70
74
  & SubEventsOption<TEvents, SubEventsDoc, keyof SubEventsConstraint<CurrentCompDoc>>
71
- & SubMethodsOption<TSubMethods, Prefix, keyof CurrentCompDoc["customEvents"]>
75
+ & SubMethodsOption<TSubMethods, Prefix, keyof (CurrentCompDoc["customEvents"] & SubEventsDoc)>
72
76
  & SubPageLifetimesOption<IsPage, RootDoc["properties"] & {}>
73
77
  & SubLifetimesOption
74
78
  & SubWatchOption<
@@ -104,7 +108,8 @@ type SubComponentConstructor<
104
108
  ReplacePrefix<TOriginalCompDoc, CurrentPrefix>
105
109
  >,
106
110
  AllRootDataDoc extends object =
107
- & Required<TRootDoc["properties"]>
111
+ // rootDoc中的properties是带有可选的,这是为了给使用者(上层组件)提示,而在自身组件实例中并不存在可选状态,故加了Required,正因加了Required使得最终结果不可能为unknown而是`{}`,满足object约束
112
+ & Required<TRootDoc["properties"]> // Required<unknown> = {}
108
113
  & TRootDoc["data"]
109
114
  & TRootDoc["computed"]
110
115
  & TRootDoc["store"],
@@ -114,9 +119,10 @@ type SubComponentConstructor<
114
119
  TSubData extends SubDataConstraint<Omit<Required<CurrentCompDoc["properties"]>, keyof InheritDoc>>,
115
120
  TSubStore extends SubStoreConstraint<Omit<Required<CurrentCompDoc["properties"]>, keyof (InheritDoc & SubDataDoc)>>,
116
121
  TEvents extends SubEventsConstraint<CurrentCompDoc>,
122
+ // 加默认值计算字段无提示且需要手写返回类型,不加watch无法对computed监控
117
123
  TSubComputed extends SubComputedConstraint<
118
124
  Omit<Required<CurrentCompDoc["properties"]>, keyof (InheritDoc & SubDataDoc & SubStoreDoc)>
119
- >,
125
+ > = {},
120
126
  TSubMethods extends SubMethodsConstraint = {},
121
127
  InheritDoc extends object = IfExtends<InheritConstraint<AllRootDataDoc, CurrentCompDoc>, TInherit, {}, TInherit>,
122
128
  SubDataDoc extends object = IfExtends<
@@ -202,11 +208,16 @@ export function SubComponent<
202
208
 
203
209
  export type SubComponentTrueOptions = {
204
210
  inhrit?: string;
205
- data?: Record<string, unknown>;
206
- computed?: Record<string, Func>;
207
- events?: Record<string, Func>;
208
- methods?: Record<string, Func>;
211
+ data?: DataConstraint;
212
+ computed?: ComputedConstraint;
213
+ store?: StoreConstraint;
214
+ events?: EventsConstraint;
215
+ methods?: MethodsConstraint;
216
+ // behaviors?: string[];
217
+ observers?: Record<string, Func>;
209
218
  watch?: Record<string, Func>;
210
- lifetimes?: WMCompLifetimes["lifetimes"];
211
- pageLifetimes?: Partial<WMCompPageLifetimes & { load: Func } & WMPageLifetimes>;
219
+ lifetimes?: LifetimesConstraint;
220
+ pageLifetimes?:
221
+ | PageLifetimesOption<false, object>["pageLifetimes"]
222
+ | PageLifetimesOption<true, object>["pageLifetimes"];
212
223
  };
@@ -1,5 +1,5 @@
1
1
  import type { Func } from "hry-types/src/Misc/Func";
2
- import type { FinalOptionsForComponent } from "../../api/DefineComponent";
2
+ import type { FinalOptionsOfComponent } from "../../api/DefineComponent";
3
3
  import { deepClone } from "../../utils/deepClone";
4
4
  import { deleteProtoField } from "../../utils/deleteProtoField";
5
5
 
@@ -32,7 +32,7 @@ function initWatchOldValue(this: Instance, watchConfig: object): WatchOldValue {
32
32
  */
33
33
 
34
34
  export const BComputedAndWatch = Behavior({
35
- definitionFilter(options: FinalOptionsForComponent) {
35
+ definitionFilter(options: FinalOptionsOfComponent) {
36
36
  const computedConfig = options.computed;
37
37
 
38
38
  // computed handle
@@ -11,6 +11,7 @@ export type InstanceCustomFields = {
11
11
  __computedCache__?: ComputedCache;
12
12
  __watchOldValue__?: WatchOldValue;
13
13
  __watchConfig__?: () => Record<string, Func>;
14
+ __compLoadList__?: Func[];
14
15
  disposer: Record<string, Func>;
15
16
  };
16
17
 
@@ -1,10 +1,10 @@
1
1
  import type mobx from "mobx";
2
- import type { FinalOptionsForComponent } from "../api/DefineComponent";
2
+ import type { FinalOptionsOfComponent } from "../api/DefineComponent";
3
3
  import { deleteProtoField } from "../utils/deleteProtoField";
4
4
  import type { Instance } from "./BComputedAndWatch/types";
5
5
 
6
6
  export const BStore = Behavior({
7
- definitionFilter(options: FinalOptionsForComponent) {
7
+ definitionFilter(options: FinalOptionsOfComponent) {
8
8
  // 初始化store
9
9
  const storeConfig = options.store;
10
10
  if (!storeConfig) return;
@@ -15,7 +15,6 @@ export const BStore = Behavior({
15
15
  options.data[key] = toJS(storeConfig[key]());
16
16
 
17
17
  // 把响应式数据配置保留在methods的__storeConfig__字段下带入到组件实例中(不用函数返回方式也可以,但不符合methods字段类型),后续再从原型上删除。
18
- /* istanbul ignore next */
19
18
  options.methods ||= {};
20
19
 
21
20
  options.methods.__storeConfig__ = () => storeConfig;
@@ -23,7 +22,6 @@ export const BStore = Behavior({
23
22
  delete options.store;
24
23
  }
25
24
  },
26
-
27
25
  lifetimes: {
28
26
  created(this: Instance) {
29
27
  // 取出通过addStoreConfigToMethods函数带入的storeConfig
@@ -50,9 +48,9 @@ export const BStore = Behavior({
50
48
  }
51
49
  deleteProtoField(this, "__storeConfig__");
52
50
  },
51
+ /* istanbul ignore next */
53
52
  detached(this: Instance) {
54
- // 清除store数据 test中模拟了测试,所以忽略 框架不支持 issue {@link https://github.com/wechat-miniprogram/miniprogram-simulate/issues/110}
55
- /* istanbul ignore next */
53
+ // 清除store数据 test中模拟了测试,所以忽略 框架(1.6.1)不支持 issue {@link https://github.com/wechat-miniprogram/miniprogram-simulate/issues/110}
56
54
  for (const key in this.disposer) {
57
55
  this.disposer[key]();
58
56
  }
@@ -1,7 +1,7 @@
1
- import type { FinalOptionsForComponent } from "../api/DefineComponent";
1
+ import type { FinalOptionsOfComponent } from "../api/DefineComponent";
2
2
 
3
3
  export const BBeforeCreate = Behavior({
4
- definitionFilter(options: FinalOptionsForComponent) {
4
+ definitionFilter(options: FinalOptionsOfComponent) {
5
5
  // 触发beforeCreate生命周期函数
6
6
  const beforeCreateFunc = options.lifetimes!.beforeCreate;
7
7
 
package/src/index.ts CHANGED
@@ -1,25 +1,29 @@
1
- import { navigateTo } from "./api/navigateTo";
2
-
3
1
  import { DefineComponent } from "./api/DefineComponent";
4
-
2
+ import { navigateTo } from "./api/navigateTo";
5
3
  import { RootComponent } from "./api/RootComponent";
6
-
7
4
  import { SubComponent } from "./api/SubComponent";
8
-
9
- import type { DetailedType } from "./types/DetailedType";
10
-
11
5
  import type { ComponentDocExtension } from "./types/ComponentDocExtension";
6
+ import type { DetailedType } from "./types/DetailedType";
12
7
  import type { GenerateDoc } from "./types/GenerateDoc";
13
8
  import type { ParamsEqual } from "./types/TwoParamsEqual";
14
9
  export type { Vant, Wm } from "./thirdLib";
15
10
 
16
- export type { Dataset, Detail, WMBaseEvent, WMCustomEvent } from "./types/OfficialTypeAlias";
11
+ export type {
12
+ CurrentTargetDataset,
13
+ Dataset,
14
+ Detail,
15
+ Mark,
16
+ TargetDataset,
17
+ WMBaseEvent,
18
+ WMCustomEvent,
19
+ } from "./types/OfficialTypeAlias";
17
20
 
18
21
  export {
19
22
  type ComponentDocExtension,
20
23
  DefineComponent,
21
24
  type DetailedType,
22
25
  type GenerateDoc,
26
+ /* istanbul ignore next */
23
27
  navigateTo,
24
28
  type ParamsEqual,
25
29
  RootComponent,
@@ -31,11 +31,13 @@ export type Dataset<
31
31
  /**
32
32
  * 自定义事件Detail类型
33
33
  */
34
- export type Mark<TMark extends object> = WechatMiniprogram.CustomEvent<
35
- {},
36
- TMark,
37
- {},
38
- {}
34
+ export type Mark<TMark extends object> = Required<
35
+ WechatMiniprogram.CustomEvent<
36
+ object,
37
+ TMark,
38
+ object,
39
+ object
40
+ >
39
41
  >;
40
42
 
41
43
  /**
@@ -53,12 +55,6 @@ export type CurrentTargetDataset<T extends object> = WMCustomEvent<{}, {}, T>;
53
55
  */
54
56
  export type TargetDataset<TargetDataset extends object> = WMCustomEvent<{}, {}, {}, TargetDataset>;
55
57
 
56
- // export type WMTrivialOption<
57
- // TData extends WechatMiniprogram.Component.DataOption,
58
- // TProperty extends WechatMiniprogram.Component.PropertyOption,
59
- // TMethod extends WechatMiniprogram.Component.MethodOption,
60
- // TCustomInstanceProperty extends WechatMiniprogram.IAnyObject = {},
61
- // TIsPage extends boolean = false,
62
58
  export type WMComponentOption = WechatMiniprogram.Component.TrivialOption;
63
59
 
64
60
  export type WMNavigateToSuccessCallbackResult = WechatMiniprogram.NavigateToSuccessCallbackResult;
@@ -0,0 +1,5 @@
1
+ /**
2
+ * 去除前缀为`_`的字符串
3
+ */
4
+ export type RemoveInnerData<S extends string> = S extends unknown ? S extends `_${string}` ? never : S
5
+ : never;
@@ -1,4 +1,4 @@
1
1
  export const INNERMARKER = {
2
- url: "__missannil__" satisfies `_${string}`, // url默认传值Data字段 必须是内部字段,因为会加入到实例的data下。
2
+ url: "__annil__" satisfies `_${string}`, // url默认传值Data字段 必须是内部字段,因为会加入到实例的data下。
3
3
  // defUrl: "/xx&xx", // 标记 组件默认的的url类型
4
4
  };
@@ -5,6 +5,7 @@ export function deepClone<T>(value: T): T {
5
5
  if (typeof value !== "object" || value === null) {
6
6
  return value;
7
7
  }
8
+ /* istanbul ignore next */
8
9
  const clone = (Array.isArray(value) ? [] : {}) as T;
9
10
 
10
11
  Object.setPrototypeOf(clone, Object.getPrototypeOf(value));