annil 1.0.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 (769) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/LICENSE +21 -0
  3. package/README.md +4 -0
  4. package/dist/api/DefineComponent/NameOrPage/NameOrPathOption.d.ts +7 -0
  5. package/dist/api/DefineComponent/NameOrPage/NameOrPathOption.js +2 -0
  6. package/dist/api/DefineComponent/NameOrPage/NameOrPathOption.js.map +1 -0
  7. package/dist/api/DefineComponent/NameOrPage/test/error.test.d.ts +1 -0
  8. package/dist/api/DefineComponent/NameOrPage/test/error.test.js +18 -0
  9. package/dist/api/DefineComponent/NameOrPage/test/error.test.js.map +1 -0
  10. package/dist/api/DefineComponent/NameOrPage/test/normal.test.d.ts +1 -0
  11. package/dist/api/DefineComponent/NameOrPage/test/normal.test.js +10 -0
  12. package/dist/api/DefineComponent/NameOrPage/test/normal.test.js.map +1 -0
  13. package/dist/api/DefineComponent/ReturnType/ComponentDoc.d.ts +9 -0
  14. package/dist/api/DefineComponent/ReturnType/ComponentDoc.js +2 -0
  15. package/dist/api/DefineComponent/ReturnType/ComponentDoc.js.map +1 -0
  16. package/dist/api/DefineComponent/ReturnType/CreateComponentDoc.d.ts +19 -0
  17. package/dist/api/DefineComponent/ReturnType/CreateComponentDoc.js +2 -0
  18. package/dist/api/DefineComponent/ReturnType/CreateComponentDoc.js.map +1 -0
  19. package/dist/api/DefineComponent/ReturnType/CreatePageDoc.d.ts +11 -0
  20. package/dist/api/DefineComponent/ReturnType/CreatePageDoc.js +2 -0
  21. package/dist/api/DefineComponent/ReturnType/CreatePageDoc.js.map +1 -0
  22. package/dist/api/DefineComponent/ReturnType/GetCustomEventDocOfSubDoc.d.ts +7 -0
  23. package/dist/api/DefineComponent/ReturnType/GetCustomEventDocOfSubDoc.js +2 -0
  24. package/dist/api/DefineComponent/ReturnType/GetCustomEventDocOfSubDoc.js.map +1 -0
  25. package/dist/api/DefineComponent/ReturnType/GetPropertiesDocOfSubDoc.d.ts +5 -0
  26. package/dist/api/DefineComponent/ReturnType/GetPropertiesDocOfSubDoc.js +2 -0
  27. package/dist/api/DefineComponent/ReturnType/GetPropertiesDocOfSubDoc.js.map +1 -0
  28. package/dist/api/DefineComponent/ReturnType/PageDoc.d.ts +8 -0
  29. package/dist/api/DefineComponent/ReturnType/PageDoc.js +2 -0
  30. package/dist/api/DefineComponent/ReturnType/PageDoc.js.map +1 -0
  31. package/dist/api/DefineComponent/ReturnType/test/normalComponentDoc.test.d.ts +1 -0
  32. package/dist/api/DefineComponent/ReturnType/test/normalComponentDoc.test.js +93 -0
  33. package/dist/api/DefineComponent/ReturnType/test/normalComponentDoc.test.js.map +1 -0
  34. package/dist/api/DefineComponent/ReturnType/test/normalPageDoc.test.d.ts +1 -0
  35. package/dist/api/DefineComponent/ReturnType/test/normalPageDoc.test.js +25 -0
  36. package/dist/api/DefineComponent/ReturnType/test/normalPageDoc.test.js.map +1 -0
  37. package/dist/api/DefineComponent/RootComponent/RootComponentOption.d.ts +4 -0
  38. package/dist/api/DefineComponent/RootComponent/RootComponentOption.js +2 -0
  39. package/dist/api/DefineComponent/RootComponent/RootComponentOption.js.map +1 -0
  40. package/dist/api/DefineComponent/SubComponents/SubComponentsOption.d.ts +4 -0
  41. package/dist/api/DefineComponent/SubComponents/SubComponentsOption.js +2 -0
  42. package/dist/api/DefineComponent/SubComponents/SubComponentsOption.js.map +1 -0
  43. package/dist/api/DefineComponent/SubComponents/test/error.test.d.ts +0 -0
  44. package/dist/api/DefineComponent/SubComponents/test/error.test.js +2 -0
  45. package/dist/api/DefineComponent/SubComponents/test/error.test.js.map +1 -0
  46. package/dist/api/DefineComponent/SubComponents/test/normal.test.d.ts +1 -0
  47. package/dist/api/DefineComponent/SubComponents/test/normal.test.js +1022 -0
  48. package/dist/api/DefineComponent/SubComponents/test/normal.test.js.map +1 -0
  49. package/dist/api/DefineComponent/index.d.ts +61 -0
  50. package/dist/api/DefineComponent/index.js +35 -0
  51. package/dist/api/DefineComponent/index.js.map +1 -0
  52. package/dist/api/InstanceInject/InstanceInject.d.ts +0 -0
  53. package/dist/api/InstanceInject/InstanceInject.js +2 -0
  54. package/dist/api/InstanceInject/InstanceInject.js.map +1 -0
  55. package/dist/api/InstanceInject/test/InjectConfig.d.ts +0 -0
  56. package/dist/api/InstanceInject/test/InjectConfig.js +2 -0
  57. package/dist/api/InstanceInject/test/InjectConfig.js.map +1 -0
  58. package/dist/api/RootComponent/Computed/ComputedConstraint.d.ts +1 -0
  59. package/dist/api/RootComponent/Computed/ComputedConstraint.js +2 -0
  60. package/dist/api/RootComponent/Computed/ComputedConstraint.js.map +1 -0
  61. package/dist/api/RootComponent/Computed/ComputedOption.d.ts +5 -0
  62. package/dist/api/RootComponent/Computed/ComputedOption.js +2 -0
  63. package/dist/api/RootComponent/Computed/ComputedOption.js.map +1 -0
  64. package/dist/api/RootComponent/Computed/GetComputedDoc.d.ts +4 -0
  65. package/dist/api/RootComponent/Computed/GetComputedDoc.js +2 -0
  66. package/dist/api/RootComponent/Computed/GetComputedDoc.js.map +1 -0
  67. package/dist/api/RootComponent/Computed/test/GetComputedDoc.test.d.ts +1 -0
  68. package/dist/api/RootComponent/Computed/test/GetComputedDoc.test.js +4 -0
  69. package/dist/api/RootComponent/Computed/test/GetComputedDoc.test.js.map +1 -0
  70. package/dist/api/RootComponent/Computed/test/error.test.d.ts +1 -0
  71. package/dist/api/RootComponent/Computed/test/error.test.js +28 -0
  72. package/dist/api/RootComponent/Computed/test/error.test.js.map +1 -0
  73. package/dist/api/RootComponent/Computed/test/normal.test.d.ts +1 -0
  74. package/dist/api/RootComponent/Computed/test/normal.test.js +55 -0
  75. package/dist/api/RootComponent/Computed/test/normal.test.js.map +1 -0
  76. package/dist/api/RootComponent/CustomEvents/CustomEventConstraint.d.ts +35 -0
  77. package/dist/api/RootComponent/CustomEvents/CustomEventConstraint.js +2 -0
  78. package/dist/api/RootComponent/CustomEvents/CustomEventConstraint.js.map +1 -0
  79. package/dist/api/RootComponent/CustomEvents/CustomEventsDoc.d.ts +5 -0
  80. package/dist/api/RootComponent/CustomEvents/CustomEventsDoc.js +2 -0
  81. package/dist/api/RootComponent/CustomEvents/CustomEventsDoc.js.map +1 -0
  82. package/dist/api/RootComponent/CustomEvents/CustomEventsOption.d.ts +5 -0
  83. package/dist/api/RootComponent/CustomEvents/CustomEventsOption.js +2 -0
  84. package/dist/api/RootComponent/CustomEvents/CustomEventsOption.js.map +1 -0
  85. package/dist/api/RootComponent/CustomEvents/CustomEventsTag.d.ts +11 -0
  86. package/dist/api/RootComponent/CustomEvents/CustomEventsTag.js +2 -0
  87. package/dist/api/RootComponent/CustomEvents/CustomEventsTag.js.map +1 -0
  88. package/dist/api/RootComponent/CustomEvents/GetCustomEventDoc.d.ts +9 -0
  89. package/dist/api/RootComponent/CustomEvents/GetCustomEventDoc.js +2 -0
  90. package/dist/api/RootComponent/CustomEvents/GetCustomEventDoc.js.map +1 -0
  91. package/dist/api/RootComponent/CustomEvents/test/GetCustomEventDoc.test.d.ts +14 -0
  92. package/dist/api/RootComponent/CustomEvents/test/GetCustomEventDoc.test.js +4 -0
  93. package/dist/api/RootComponent/CustomEvents/test/GetCustomEventDoc.test.js.map +1 -0
  94. package/dist/api/RootComponent/CustomEvents/test/GetFullEventDoc.test.d.ts +7 -0
  95. package/dist/api/RootComponent/CustomEvents/test/GetFullEventDoc.test.js +9 -0
  96. package/dist/api/RootComponent/CustomEvents/test/GetFullEventDoc.test.js.map +1 -0
  97. package/dist/api/RootComponent/CustomEvents/test/GetShortEventDoc.test.d.ts +4 -0
  98. package/dist/api/RootComponent/CustomEvents/test/GetShortEventDoc.test.js +7 -0
  99. package/dist/api/RootComponent/CustomEvents/test/GetShortEventDoc.test.js.map +1 -0
  100. package/dist/api/RootComponent/CustomEvents/test/error.test.d.ts +1 -0
  101. package/dist/api/RootComponent/CustomEvents/test/error.test.js +73 -0
  102. package/dist/api/RootComponent/CustomEvents/test/error.test.js.map +1 -0
  103. package/dist/api/RootComponent/CustomEvents/test/normal.test.d.ts +97 -0
  104. package/dist/api/RootComponent/CustomEvents/test/normal.test.js +46 -0
  105. package/dist/api/RootComponent/CustomEvents/test/normal.test.js.map +1 -0
  106. package/dist/api/RootComponent/Data/DataOption.d.ts +4 -0
  107. package/dist/api/RootComponent/Data/DataOption.js +2 -0
  108. package/dist/api/RootComponent/Data/DataOption.js.map +1 -0
  109. package/dist/api/RootComponent/Data/GetDataDoc.d.ts +4 -0
  110. package/dist/api/RootComponent/Data/GetDataDoc.js +2 -0
  111. package/dist/api/RootComponent/Data/GetDataDoc.js.map +1 -0
  112. package/dist/api/RootComponent/Data/expected/error.d.ts +1 -0
  113. package/dist/api/RootComponent/Data/expected/error.js +10 -0
  114. package/dist/api/RootComponent/Data/expected/error.js.map +1 -0
  115. package/dist/api/RootComponent/Data/expected/normal.d.ts +1 -0
  116. package/dist/api/RootComponent/Data/expected/normal.js +33 -0
  117. package/dist/api/RootComponent/Data/expected/normal.js.map +1 -0
  118. package/dist/api/RootComponent/Data/test/GetDataDoc.test.d.ts +6 -0
  119. package/dist/api/RootComponent/Data/test/GetDataDoc.test.js +13 -0
  120. package/dist/api/RootComponent/Data/test/GetDataDoc.test.js.map +1 -0
  121. package/dist/api/RootComponent/Data/test/error.test.d.ts +1 -0
  122. package/dist/api/RootComponent/Data/test/error.test.js +10 -0
  123. package/dist/api/RootComponent/Data/test/error.test.js.map +1 -0
  124. package/dist/api/RootComponent/Data/test/normal.test.d.ts +1 -0
  125. package/dist/api/RootComponent/Data/test/normal.test.js +33 -0
  126. package/dist/api/RootComponent/Data/test/normal.test.js.map +1 -0
  127. package/dist/api/RootComponent/Events/EventsConstraint.d.ts +16 -0
  128. package/dist/api/RootComponent/Events/EventsConstraint.js +2 -0
  129. package/dist/api/RootComponent/Events/EventsConstraint.js.map +1 -0
  130. package/dist/api/RootComponent/Events/EventsOption.d.ts +4 -0
  131. package/dist/api/RootComponent/Events/EventsOption.js +2 -0
  132. package/dist/api/RootComponent/Events/EventsOption.js.map +1 -0
  133. package/dist/api/RootComponent/Events/test/normal.test.d.ts +1 -0
  134. package/dist/api/RootComponent/Events/test/normal.test.js +59 -0
  135. package/dist/api/RootComponent/Events/test/normal.test.js.map +1 -0
  136. package/dist/api/RootComponent/Instance/CustomEventMethods.d.ts +5 -0
  137. package/dist/api/RootComponent/Instance/CustomEventMethods.js +2 -0
  138. package/dist/api/RootComponent/Instance/CustomEventMethods.js.map +1 -0
  139. package/dist/api/RootComponent/Instance/CustomSetData.d.ts +7 -0
  140. package/dist/api/RootComponent/Instance/CustomSetData.js +2 -0
  141. package/dist/api/RootComponent/Instance/CustomSetData.js.map +1 -0
  142. package/dist/api/RootComponent/Instance/RootComponentInstance.d.ts +18 -0
  143. package/dist/api/RootComponent/Instance/RootComponentInstance.js +2 -0
  144. package/dist/api/RootComponent/Instance/RootComponentInstance.js.map +1 -0
  145. package/dist/api/RootComponent/Instance/test/CustomEventsDoc.test.d.ts +1 -0
  146. package/dist/api/RootComponent/Instance/test/CustomEventsDoc.test.js +58 -0
  147. package/dist/api/RootComponent/Instance/test/CustomEventsDoc.test.js.map +1 -0
  148. package/dist/api/RootComponent/Instance/test/CustomSetData.test.d.ts +1 -0
  149. package/dist/api/RootComponent/Instance/test/CustomSetData.test.js +42 -0
  150. package/dist/api/RootComponent/Instance/test/CustomSetData.test.js.map +1 -0
  151. package/dist/api/RootComponent/Instance/test/customEvents/error.test.d.ts +1 -0
  152. package/dist/api/RootComponent/Instance/test/customEvents/error.test.js +12 -0
  153. package/dist/api/RootComponent/Instance/test/customEvents/error.test.js.map +1 -0
  154. package/dist/api/RootComponent/Instance/test/customEvents/normal.test.d.ts +1 -0
  155. package/dist/api/RootComponent/Instance/test/customEvents/normal.test.js +58 -0
  156. package/dist/api/RootComponent/Instance/test/customEvents/normal.test.js.map +1 -0
  157. package/dist/api/RootComponent/Instance/test/methods/error.test.d.ts +1 -0
  158. package/dist/api/RootComponent/Instance/test/methods/error.test.js +12 -0
  159. package/dist/api/RootComponent/Instance/test/methods/error.test.js.map +1 -0
  160. package/dist/api/RootComponent/Instance/test/methods/mormal.test.d.ts +1 -0
  161. package/dist/api/RootComponent/Instance/test/methods/mormal.test.js +15 -0
  162. package/dist/api/RootComponent/Instance/test/methods/mormal.test.js.map +1 -0
  163. package/dist/api/RootComponent/Instance/test/properties/mormal.test.d.ts +1 -0
  164. package/dist/api/RootComponent/Instance/test/properties/mormal.test.js +34 -0
  165. package/dist/api/RootComponent/Instance/test/properties/mormal.test.js.map +1 -0
  166. package/dist/api/RootComponent/Instance/test/setData/error.test.d.ts +1 -0
  167. package/dist/api/RootComponent/Instance/test/setData/error.test.js +57 -0
  168. package/dist/api/RootComponent/Instance/test/setData/error.test.js.map +1 -0
  169. package/dist/api/RootComponent/Instance/test/setData/normal.test.d.ts +1 -0
  170. package/dist/api/RootComponent/Instance/test/setData/normal.test.js +47 -0
  171. package/dist/api/RootComponent/Instance/test/setData/normal.test.js.map +1 -0
  172. package/dist/api/RootComponent/IsPage/IsPageOption.d.ts +3 -0
  173. package/dist/api/RootComponent/IsPage/IsPageOption.js +2 -0
  174. package/dist/api/RootComponent/IsPage/IsPageOption.js.map +1 -0
  175. package/dist/api/RootComponent/IsPage/test/normal.test.d.ts +1 -0
  176. package/dist/api/RootComponent/IsPage/test/normal.test.js +13 -0
  177. package/dist/api/RootComponent/IsPage/test/normal.test.js.map +1 -0
  178. package/dist/api/RootComponent/Lifetimes/LifetimesConstraint.d.ts +2 -0
  179. package/dist/api/RootComponent/Lifetimes/LifetimesConstraint.js +2 -0
  180. package/dist/api/RootComponent/Lifetimes/LifetimesConstraint.js.map +1 -0
  181. package/dist/api/RootComponent/Lifetimes/LifetimesOption.d.ts +4 -0
  182. package/dist/api/RootComponent/Lifetimes/LifetimesOption.js +2 -0
  183. package/dist/api/RootComponent/Lifetimes/LifetimesOption.js.map +1 -0
  184. package/dist/api/RootComponent/Lifetimes/test/error.test.d.ts +1 -0
  185. package/dist/api/RootComponent/Lifetimes/test/error.test.js +19 -0
  186. package/dist/api/RootComponent/Lifetimes/test/error.test.js.map +1 -0
  187. package/dist/api/RootComponent/Lifetimes/test/normal.test.d.ts +1 -0
  188. package/dist/api/RootComponent/Lifetimes/test/normal.test.js +19 -0
  189. package/dist/api/RootComponent/Lifetimes/test/normal.test.js.map +1 -0
  190. package/dist/api/RootComponent/Methods/MethodsConstraint.d.ts +2 -0
  191. package/dist/api/RootComponent/Methods/MethodsConstraint.js +2 -0
  192. package/dist/api/RootComponent/Methods/MethodsConstraint.js.map +1 -0
  193. package/dist/api/RootComponent/Methods/MethodsOption.d.ts +5 -0
  194. package/dist/api/RootComponent/Methods/MethodsOption.js +2 -0
  195. package/dist/api/RootComponent/Methods/MethodsOption.js.map +1 -0
  196. package/dist/api/RootComponent/Methods/test/error.test.d.ts +1 -0
  197. package/dist/api/RootComponent/Methods/test/error.test.js +30 -0
  198. package/dist/api/RootComponent/Methods/test/error.test.js.map +1 -0
  199. package/dist/api/RootComponent/Methods/test/mormal.test.d.ts +1 -0
  200. package/dist/api/RootComponent/Methods/test/mormal.test.js +14 -0
  201. package/dist/api/RootComponent/Methods/test/mormal.test.js.map +1 -0
  202. package/dist/api/RootComponent/PageLifetimes/PageLifetimesOption.d.ts +13 -0
  203. package/dist/api/RootComponent/PageLifetimes/PageLifetimesOption.js +2 -0
  204. package/dist/api/RootComponent/PageLifetimes/PageLifetimesOption.js.map +1 -0
  205. package/dist/api/RootComponent/PageLifetimes/test/error.test.d.ts +1 -0
  206. package/dist/api/RootComponent/PageLifetimes/test/error.test.js +20 -0
  207. package/dist/api/RootComponent/PageLifetimes/test/error.test.js.map +1 -0
  208. package/dist/api/RootComponent/PageLifetimes/test/normal.test.d.ts +1 -0
  209. package/dist/api/RootComponent/PageLifetimes/test/normal.test.js +36 -0
  210. package/dist/api/RootComponent/PageLifetimes/test/normal.test.js.map +1 -0
  211. package/dist/api/RootComponent/Properties/GetOptionalDoc.d.ts +8 -0
  212. package/dist/api/RootComponent/Properties/GetOptionalDoc.js +2 -0
  213. package/dist/api/RootComponent/Properties/GetOptionalDoc.js.map +1 -0
  214. package/dist/api/RootComponent/Properties/GetPropertiesDoc.d.ts +9 -0
  215. package/dist/api/RootComponent/Properties/GetPropertiesDoc.js +2 -0
  216. package/dist/api/RootComponent/Properties/GetPropertiesDoc.js.map +1 -0
  217. package/dist/api/RootComponent/Properties/GetRequiredDoc.d.ts +8 -0
  218. package/dist/api/RootComponent/Properties/GetRequiredDoc.js +2 -0
  219. package/dist/api/RootComponent/Properties/GetRequiredDoc.js.map +1 -0
  220. package/dist/api/RootComponent/Properties/PropertiesConstraint.d.ts +14 -0
  221. package/dist/api/RootComponent/Properties/PropertiesConstraint.js +2 -0
  222. package/dist/api/RootComponent/Properties/PropertiesConstraint.js.map +1 -0
  223. package/dist/api/RootComponent/Properties/PropertiesOption.d.ts +10 -0
  224. package/dist/api/RootComponent/Properties/PropertiesOption.js +2 -0
  225. package/dist/api/RootComponent/Properties/PropertiesOption.js.map +1 -0
  226. package/dist/api/RootComponent/Properties/PropertiesValueValidator.d.ts +10 -0
  227. package/dist/api/RootComponent/Properties/PropertiesValueValidator.js +2 -0
  228. package/dist/api/RootComponent/Properties/PropertiesValueValidator.js.map +1 -0
  229. package/dist/api/RootComponent/Properties/expected/error.d.ts +1 -0
  230. package/dist/api/RootComponent/Properties/expected/error.js +38 -0
  231. package/dist/api/RootComponent/Properties/expected/error.js.map +1 -0
  232. package/dist/api/RootComponent/Properties/expected/normalEmpty.d.ts +1 -0
  233. package/dist/api/RootComponent/Properties/expected/normalEmpty.js +20 -0
  234. package/dist/api/RootComponent/Properties/expected/normalEmpty.js.map +1 -0
  235. package/dist/api/RootComponent/Properties/expected/normalOptional.d.ts +1 -0
  236. package/dist/api/RootComponent/Properties/expected/normalOptional.js +80 -0
  237. package/dist/api/RootComponent/Properties/expected/normalOptional.js.map +1 -0
  238. package/dist/api/RootComponent/Properties/expected/normalRequired.d.ts +69 -0
  239. package/dist/api/RootComponent/Properties/expected/normalRequired.js +44 -0
  240. package/dist/api/RootComponent/Properties/expected/normalRequired.js.map +1 -0
  241. package/dist/api/RootComponent/Properties/test/error.test.d.ts +1 -0
  242. package/dist/api/RootComponent/Properties/test/error.test.js +38 -0
  243. package/dist/api/RootComponent/Properties/test/error.test.js.map +1 -0
  244. package/dist/api/RootComponent/Properties/test/normalEmpty.test..d.ts +1 -0
  245. package/dist/api/RootComponent/Properties/test/normalEmpty.test..js +20 -0
  246. package/dist/api/RootComponent/Properties/test/normalEmpty.test..js.map +1 -0
  247. package/dist/api/RootComponent/Properties/test/normalOptional.test.d.ts +1 -0
  248. package/dist/api/RootComponent/Properties/test/normalOptional.test.js +41 -0
  249. package/dist/api/RootComponent/Properties/test/normalOptional.test.js.map +1 -0
  250. package/dist/api/RootComponent/Properties/test/normalRequired.test.d.ts +93 -0
  251. package/dist/api/RootComponent/Properties/test/normalRequired.test.js +44 -0
  252. package/dist/api/RootComponent/Properties/test/normalRequired.test.js.map +1 -0
  253. package/dist/api/RootComponent/RootComponentDoc.d.ts +21 -0
  254. package/dist/api/RootComponent/RootComponentDoc.js +2 -0
  255. package/dist/api/RootComponent/RootComponentDoc.js.map +1 -0
  256. package/dist/api/RootComponent/Store/GeTStoreDoc.d.ts +4 -0
  257. package/dist/api/RootComponent/Store/GeTStoreDoc.js +2 -0
  258. package/dist/api/RootComponent/Store/GeTStoreDoc.js.map +1 -0
  259. package/dist/api/RootComponent/Store/StoreConstraint.d.ts +1 -0
  260. package/dist/api/RootComponent/Store/StoreConstraint.js +2 -0
  261. package/dist/api/RootComponent/Store/StoreConstraint.js.map +1 -0
  262. package/dist/api/RootComponent/Store/StoreOption.d.ts +5 -0
  263. package/dist/api/RootComponent/Store/StoreOption.js +2 -0
  264. package/dist/api/RootComponent/Store/StoreOption.js.map +1 -0
  265. package/dist/api/RootComponent/Store/test/error.test.d.ts +1 -0
  266. package/dist/api/RootComponent/Store/test/error.test.js +24 -0
  267. package/dist/api/RootComponent/Store/test/error.test.js.map +1 -0
  268. package/dist/api/RootComponent/Store/test/normal.test.d.ts +1 -0
  269. package/dist/api/RootComponent/Store/test/normal.test.js +13 -0
  270. package/dist/api/RootComponent/Store/test/normal.test.js.map +1 -0
  271. package/dist/api/RootComponent/Watch/WatchOption.d.ts +22 -0
  272. package/dist/api/RootComponent/Watch/WatchOption.js +2 -0
  273. package/dist/api/RootComponent/Watch/WatchOption.js.map +1 -0
  274. package/dist/api/RootComponent/Watch/test/WatchComputed.test.d.ts +1 -0
  275. package/dist/api/RootComponent/Watch/test/WatchComputed.test.js +30 -0
  276. package/dist/api/RootComponent/Watch/test/WatchComputed.test.js.map +1 -0
  277. package/dist/api/RootComponent/Watch/test/WatchData.test.d.ts +1 -0
  278. package/dist/api/RootComponent/Watch/test/WatchData.test.js +40 -0
  279. package/dist/api/RootComponent/Watch/test/WatchData.test.js.map +1 -0
  280. package/dist/api/RootComponent/Watch/test/WatchProperties.test.d.ts +1 -0
  281. package/dist/api/RootComponent/Watch/test/WatchProperties.test.js +111 -0
  282. package/dist/api/RootComponent/Watch/test/WatchProperties.test.js.map +1 -0
  283. package/dist/api/RootComponent/Watch/test/error.test.d.ts +1 -0
  284. package/dist/api/RootComponent/Watch/test/error.test.js +25 -0
  285. package/dist/api/RootComponent/Watch/test/error.test.js.map +1 -0
  286. package/dist/api/RootComponent/index.d.ts +51 -0
  287. package/dist/api/RootComponent/index.js +4 -0
  288. package/dist/api/RootComponent/index.js.map +1 -0
  289. package/dist/api/SubComponent/SubComponentDoc.d.ts +8 -0
  290. package/dist/api/SubComponent/SubComponentDoc.js +2 -0
  291. package/dist/api/SubComponent/SubComponentDoc.js.map +1 -0
  292. package/dist/api/SubComponent/SubComputed/GetSubComputedDoc.d.ts +4 -0
  293. package/dist/api/SubComponent/SubComputed/GetSubComputedDoc.js +2 -0
  294. package/dist/api/SubComponent/SubComputed/GetSubComputedDoc.js.map +1 -0
  295. package/dist/api/SubComponent/SubComputed/SubComputedConstraint.d.ts +3 -0
  296. package/dist/api/SubComponent/SubComputed/SubComputedConstraint.js +2 -0
  297. package/dist/api/SubComponent/SubComputed/SubComputedConstraint.js.map +1 -0
  298. package/dist/api/SubComponent/SubComputed/SubComputedOption.d.ts +4 -0
  299. package/dist/api/SubComponent/SubComputed/SubComputedOption.js +2 -0
  300. package/dist/api/SubComponent/SubComputed/SubComputedOption.js.map +1 -0
  301. package/dist/api/SubComponent/SubComputed/test/error.test.d.ts +1 -0
  302. package/dist/api/SubComponent/SubComputed/test/error.test.js +30 -0
  303. package/dist/api/SubComponent/SubComputed/test/error.test.js.map +1 -0
  304. package/dist/api/SubComponent/SubComputed/test/normal.test.d.ts +1 -0
  305. package/dist/api/SubComponent/SubComputed/test/normal.test.js +61 -0
  306. package/dist/api/SubComponent/SubComputed/test/normal.test.js.map +1 -0
  307. package/dist/api/SubComponent/SubData/SubDataConstraint.d.ts +3 -0
  308. package/dist/api/SubComponent/SubData/SubDataConstraint.js +2 -0
  309. package/dist/api/SubComponent/SubData/SubDataConstraint.js.map +1 -0
  310. package/dist/api/SubComponent/SubData/SubDataOption.d.ts +4 -0
  311. package/dist/api/SubComponent/SubData/SubDataOption.js +2 -0
  312. package/dist/api/SubComponent/SubData/SubDataOption.js.map +1 -0
  313. package/dist/api/SubComponent/SubData/test/error.test.d.ts +1 -0
  314. package/dist/api/SubComponent/SubData/test/error.test.js +32 -0
  315. package/dist/api/SubComponent/SubData/test/error.test.js.map +1 -0
  316. package/dist/api/SubComponent/SubData/test/normal.test.d.ts +1 -0
  317. package/dist/api/SubComponent/SubData/test/normal.test.js +51 -0
  318. package/dist/api/SubComponent/SubData/test/normal.test.js.map +1 -0
  319. package/dist/api/SubComponent/SubEvents/SubEventsConstraint.d.ts +8 -0
  320. package/dist/api/SubComponent/SubEvents/SubEventsConstraint.js +2 -0
  321. package/dist/api/SubComponent/SubEvents/SubEventsConstraint.js.map +1 -0
  322. package/dist/api/SubComponent/SubEvents/SubEventsOptions.d.ts +4 -0
  323. package/dist/api/SubComponent/SubEvents/SubEventsOptions.js +2 -0
  324. package/dist/api/SubComponent/SubEvents/SubEventsOptions.js.map +1 -0
  325. package/dist/api/SubComponent/SubEvents/test/error.test.d.ts +1 -0
  326. package/dist/api/SubComponent/SubEvents/test/error.test.js +15 -0
  327. package/dist/api/SubComponent/SubEvents/test/error.test.js.map +1 -0
  328. package/dist/api/SubComponent/SubEvents/test/normal.test.d.ts +1 -0
  329. package/dist/api/SubComponent/SubEvents/test/normal.test.js +71 -0
  330. package/dist/api/SubComponent/SubEvents/test/normal.test.js.map +1 -0
  331. package/dist/api/SubComponent/SubInherit/SubInheritConstraint.d.ts +7 -0
  332. package/dist/api/SubComponent/SubInherit/SubInheritConstraint.js +2 -0
  333. package/dist/api/SubComponent/SubInherit/SubInheritConstraint.js.map +1 -0
  334. package/dist/api/SubComponent/SubInherit/test/error.test.d.ts +1 -0
  335. package/dist/api/SubComponent/SubInherit/test/error.test.js +21 -0
  336. package/dist/api/SubComponent/SubInherit/test/error.test.js.map +1 -0
  337. package/dist/api/SubComponent/SubInherit/test/normal.test.d.ts +1 -0
  338. package/dist/api/SubComponent/SubInherit/test/normal.test.js +19 -0
  339. package/dist/api/SubComponent/SubInherit/test/normal.test.js.map +1 -0
  340. package/dist/api/SubComponent/SubInstance/SubInstance.d.ts +2 -0
  341. package/dist/api/SubComponent/SubInstance/SubInstance.js +2 -0
  342. package/dist/api/SubComponent/SubInstance/SubInstance.js.map +1 -0
  343. package/dist/api/SubComponent/SubInstance/test/error.test.d.ts +1 -0
  344. package/dist/api/SubComponent/SubInstance/test/error.test.js +10 -0
  345. package/dist/api/SubComponent/SubInstance/test/error.test.js.map +1 -0
  346. package/dist/api/SubComponent/SubInstance/test/normal.test.d.ts +1 -0
  347. package/dist/api/SubComponent/SubInstance/test/normal.test.js +26 -0
  348. package/dist/api/SubComponent/SubInstance/test/normal.test.js.map +1 -0
  349. package/dist/api/SubComponent/SubLifetimes/SubLifetimesOption.d.ts +2 -0
  350. package/dist/api/SubComponent/SubLifetimes/SubLifetimesOption.js +2 -0
  351. package/dist/api/SubComponent/SubLifetimes/SubLifetimesOption.js.map +1 -0
  352. package/dist/api/SubComponent/SubMethods/SubMethodsConstraint.d.ts +4 -0
  353. package/dist/api/SubComponent/SubMethods/SubMethodsConstraint.js +2 -0
  354. package/dist/api/SubComponent/SubMethods/SubMethodsConstraint.js.map +1 -0
  355. package/dist/api/SubComponent/SubMethods/SubMethodsOption.d.ts +5 -0
  356. package/dist/api/SubComponent/SubMethods/SubMethodsOption.js +2 -0
  357. package/dist/api/SubComponent/SubMethods/SubMethodsOption.js.map +1 -0
  358. package/dist/api/SubComponent/SubMethods/test/error.test.d.ts +1 -0
  359. package/dist/api/SubComponent/SubMethods/test/error.test.js +12 -0
  360. package/dist/api/SubComponent/SubMethods/test/error.test.js.map +1 -0
  361. package/dist/api/SubComponent/SubMethods/test/normarl.test.d.ts +1 -0
  362. package/dist/api/SubComponent/SubMethods/test/normarl.test.js +11 -0
  363. package/dist/api/SubComponent/SubMethods/test/normarl.test.js.map +1 -0
  364. package/dist/api/SubComponent/SubPageLifetimes/SubPageLifetimesOption.d.ts +2 -0
  365. package/dist/api/SubComponent/SubPageLifetimes/SubPageLifetimesOption.js +2 -0
  366. package/dist/api/SubComponent/SubPageLifetimes/SubPageLifetimesOption.js.map +1 -0
  367. package/dist/api/SubComponent/SubPageLifetimes/test/error.test.d.ts +1 -0
  368. package/dist/api/SubComponent/SubPageLifetimes/test/error.test.js +12 -0
  369. package/dist/api/SubComponent/SubPageLifetimes/test/error.test.js.map +1 -0
  370. package/dist/api/SubComponent/SubPageLifetimes/test/normal.test.d.ts +1 -0
  371. package/dist/api/SubComponent/SubPageLifetimes/test/normal.test.js +26 -0
  372. package/dist/api/SubComponent/SubPageLifetimes/test/normal.test.js.map +1 -0
  373. package/dist/api/SubComponent/SubReturnType/CreateSubComponentDoc.d.ts +12 -0
  374. package/dist/api/SubComponent/SubReturnType/CreateSubComponentDoc.js +2 -0
  375. package/dist/api/SubComponent/SubReturnType/CreateSubComponentDoc.js.map +1 -0
  376. package/dist/api/SubComponent/SubReturnType/test/error.test.d.ts +1 -0
  377. package/dist/api/SubComponent/SubReturnType/test/error.test.js +5 -0
  378. package/dist/api/SubComponent/SubReturnType/test/error.test.js.map +1 -0
  379. package/dist/api/SubComponent/SubReturnType/test/normal.test.d.ts +1 -0
  380. package/dist/api/SubComponent/SubReturnType/test/normal.test.js +9 -0
  381. package/dist/api/SubComponent/SubReturnType/test/normal.test.js.map +1 -0
  382. package/dist/api/SubComponent/SubStore/SubDataConstraint.d.ts +3 -0
  383. package/dist/api/SubComponent/SubStore/SubDataConstraint.js +2 -0
  384. package/dist/api/SubComponent/SubStore/SubDataConstraint.js.map +1 -0
  385. package/dist/api/SubComponent/SubStore/SubStoreOption.d.ts +4 -0
  386. package/dist/api/SubComponent/SubStore/SubStoreOption.js +2 -0
  387. package/dist/api/SubComponent/SubStore/SubStoreOption.js.map +1 -0
  388. package/dist/api/SubComponent/SubStore/test/error.test.d.ts +1 -0
  389. package/dist/api/SubComponent/SubStore/test/error.test.js +19 -0
  390. package/dist/api/SubComponent/SubStore/test/error.test.js.map +1 -0
  391. package/dist/api/SubComponent/SubStore/test/normal.test.d.ts +1 -0
  392. package/dist/api/SubComponent/SubStore/test/normal.test.js +13 -0
  393. package/dist/api/SubComponent/SubStore/test/normal.test.js.map +1 -0
  394. package/dist/api/SubComponent/SubWatch/SubWatchOption.d.ts +2 -0
  395. package/dist/api/SubComponent/SubWatch/SubWatchOption.js +2 -0
  396. package/dist/api/SubComponent/SubWatch/SubWatchOption.js.map +1 -0
  397. package/dist/api/SubComponent/SubWatch/test/WatchComputed.test.d.ts +0 -0
  398. package/dist/api/SubComponent/SubWatch/test/WatchComputed.test.js +2 -0
  399. package/dist/api/SubComponent/SubWatch/test/WatchComputed.test.js.map +1 -0
  400. package/dist/api/SubComponent/SubWatch/test/WatchRootData.test.d.ts +1 -0
  401. package/dist/api/SubComponent/SubWatch/test/WatchRootData.test.js +63 -0
  402. package/dist/api/SubComponent/SubWatch/test/WatchRootData.test.js.map +1 -0
  403. package/dist/api/SubComponent/SubWatch/test/WatchSubData.test.d.ts +1 -0
  404. package/dist/api/SubComponent/SubWatch/test/WatchSubData.test.js +29 -0
  405. package/dist/api/SubComponent/SubWatch/test/WatchSubData.test.js.map +1 -0
  406. package/dist/api/SubComponent/SubWatch/test/error.test.d.ts +1 -0
  407. package/dist/api/SubComponent/SubWatch/test/error.test.js +12 -0
  408. package/dist/api/SubComponent/SubWatch/test/error.test.js.map +1 -0
  409. package/dist/api/SubComponent/index.d.ts +48 -0
  410. package/dist/api/SubComponent/index.js +4 -0
  411. package/dist/api/SubComponent/index.js.map +1 -0
  412. package/dist/api/navigateTo.d.ts +16 -0
  413. package/dist/api/navigateTo.js +18 -0
  414. package/dist/api/navigateTo.js.map +1 -0
  415. package/dist/behaviors/BComputedAndWatch/IsPage.d.ts +2 -0
  416. package/dist/behaviors/BComputedAndWatch/IsPage.js +4 -0
  417. package/dist/behaviors/BComputedAndWatch/IsPage.js.map +1 -0
  418. package/dist/behaviors/BComputedAndWatch/data-tracer.d.ts +3 -0
  419. package/dist/behaviors/BComputedAndWatch/data-tracer.js +38 -0
  420. package/dist/behaviors/BComputedAndWatch/data-tracer.js.map +1 -0
  421. package/dist/behaviors/BComputedAndWatch/index.d.ts +1 -0
  422. package/dist/behaviors/BComputedAndWatch/index.js +78 -0
  423. package/dist/behaviors/BComputedAndWatch/index.js.map +1 -0
  424. package/dist/behaviors/BComputedAndWatch/initComputed.d.ts +13 -0
  425. package/dist/behaviors/BComputedAndWatch/initComputed.js +87 -0
  426. package/dist/behaviors/BComputedAndWatch/initComputed.js.map +1 -0
  427. package/dist/behaviors/BComputedAndWatch/isEqual.d.ts +1 -0
  428. package/dist/behaviors/BComputedAndWatch/isEqual.js +20 -0
  429. package/dist/behaviors/BComputedAndWatch/isEqual.js.map +1 -0
  430. package/dist/behaviors/BComputedAndWatch/types.d.ts +21 -0
  431. package/dist/behaviors/BComputedAndWatch/types.js +2 -0
  432. package/dist/behaviors/BComputedAndWatch/types.js.map +1 -0
  433. package/dist/behaviors/BStore.d.ts +1 -0
  434. package/dist/behaviors/BStore.js +42 -0
  435. package/dist/behaviors/BStore.js.map +1 -0
  436. package/dist/behaviors/BbeforeCreated.d.ts +1 -0
  437. package/dist/behaviors/BbeforeCreated.js +8 -0
  438. package/dist/behaviors/BbeforeCreated.js.map +1 -0
  439. package/dist/index.d.ts +9 -0
  440. package/dist/index.js +6 -0
  441. package/dist/index.js.map +1 -0
  442. package/dist/thirdLib/index.d.ts +3 -0
  443. package/dist/thirdLib/index.js +3 -0
  444. package/dist/thirdLib/index.js.map +1 -0
  445. package/dist/thirdLib/vant/Button.d.ts +9 -0
  446. package/dist/thirdLib/vant/Button.js +2 -0
  447. package/dist/thirdLib/vant/Button.js.map +1 -0
  448. package/dist/thirdLib/vant/NoticeBar.d.ts +23 -0
  449. package/dist/thirdLib/vant/NoticeBar.js +2 -0
  450. package/dist/thirdLib/vant/NoticeBar.js.map +1 -0
  451. package/dist/thirdLib/vant/Popup.d.ts +25 -0
  452. package/dist/thirdLib/vant/Popup.js +2 -0
  453. package/dist/thirdLib/vant/Popup.js.map +1 -0
  454. package/dist/thirdLib/vant/index.d.ts +3 -0
  455. package/dist/thirdLib/vant/index.js +2 -0
  456. package/dist/thirdLib/vant/index.js.map +1 -0
  457. package/dist/thirdLib/wm/Textarea.d.ts +19 -0
  458. package/dist/thirdLib/wm/Textarea.js +2 -0
  459. package/dist/thirdLib/wm/Textarea.js.map +1 -0
  460. package/dist/thirdLib/wm/baseEvents.d.ts +16 -0
  461. package/dist/thirdLib/wm/baseEvents.js +2 -0
  462. package/dist/thirdLib/wm/baseEvents.js.map +1 -0
  463. package/dist/thirdLib/wm/index.d.ts +4 -0
  464. package/dist/thirdLib/wm/index.js +2 -0
  465. package/dist/thirdLib/wm/index.js.map +1 -0
  466. package/dist/thirdLib/wm/scrollView.d.ts +58 -0
  467. package/dist/thirdLib/wm/scrollView.js +2 -0
  468. package/dist/thirdLib/wm/scrollView.js.map +1 -0
  469. package/dist/thirdLib/wm/swiper.d.ts +39 -0
  470. package/dist/thirdLib/wm/swiper.js +2 -0
  471. package/dist/thirdLib/wm/swiper.js.map +1 -0
  472. package/dist/thirdLib/wm/view.d.ts +11 -0
  473. package/dist/thirdLib/wm/view.js +2 -0
  474. package/dist/thirdLib/wm/view.js.map +1 -0
  475. package/dist/types/AddNullForObject.d.ts +2 -0
  476. package/dist/types/AddNullForObject.js +2 -0
  477. package/dist/types/AddNullForObject.js.map +1 -0
  478. package/dist/types/AddPrefix.d.ts +3 -0
  479. package/dist/types/AddPrefix.js +2 -0
  480. package/dist/types/AddPrefix.js.map +1 -0
  481. package/dist/types/CompDocExtends.d.ts +8 -0
  482. package/dist/types/CompDocExtends.js +2 -0
  483. package/dist/types/CompDocExtends.js.map +1 -0
  484. package/dist/types/CreateComponentDoc.d.ts +10 -0
  485. package/dist/types/CreateComponentDoc.js +2 -0
  486. package/dist/types/CreateComponentDoc.js.map +1 -0
  487. package/dist/types/Drop.d.ts +2 -0
  488. package/dist/types/Drop.js +2 -0
  489. package/dist/types/Drop.js.map +1 -0
  490. package/dist/types/DropStr.d.ts +1 -0
  491. package/dist/types/DropStr.js +2 -0
  492. package/dist/types/DropStr.js.map +1 -0
  493. package/dist/types/GetComponentPrefix.d.ts +3 -0
  494. package/dist/types/GetComponentPrefix.js +5 -0
  495. package/dist/types/GetComponentPrefix.js.map +1 -0
  496. package/dist/types/GetPropertiesDuplicatedKeys.d.ts +2 -0
  497. package/dist/types/GetPropertiesDuplicatedKeys.js +2 -0
  498. package/dist/types/GetPropertiesDuplicatedKeys.js.map +1 -0
  499. package/dist/types/Has.d.ts +1 -0
  500. package/dist/types/Has.js +2 -0
  501. package/dist/types/Has.js.map +1 -0
  502. package/dist/types/InferSpecificType.d.ts +2 -0
  503. package/dist/types/InferSpecificType.js +2 -0
  504. package/dist/types/InferSpecificType.js.map +1 -0
  505. package/dist/types/InferSpecificType.test.d.ts +1 -0
  506. package/dist/types/InferSpecificType.test.js +9 -0
  507. package/dist/types/InferSpecificType.test.js.map +1 -0
  508. package/dist/types/ListOfSamePrimitive.d.ts +8 -0
  509. package/dist/types/ListOfSamePrimitive.js +2 -0
  510. package/dist/types/ListOfSamePrimitive.js.map +1 -0
  511. package/dist/types/OfficialTypeAlias.d.ts +31 -0
  512. package/dist/types/OfficialTypeAlias.js +2 -0
  513. package/dist/types/OfficialTypeAlias.js.map +1 -0
  514. package/dist/types/PrefixValidator.d.ts +4 -0
  515. package/dist/types/PrefixValidator.js +2 -0
  516. package/dist/types/PrefixValidator.js.map +1 -0
  517. package/dist/types/RemoveNever.d.ts +4 -0
  518. package/dist/types/RemoveNever.js +2 -0
  519. package/dist/types/RemoveNever.js.map +1 -0
  520. package/dist/types/RemoveNullOfRequired.d.ts +4 -0
  521. package/dist/types/RemoveNullOfRequired.js +2 -0
  522. package/dist/types/RemoveNullOfRequired.js.map +1 -0
  523. package/dist/types/RemovePrefix.d.ts +3 -0
  524. package/dist/types/RemovePrefix.js +2 -0
  525. package/dist/types/RemovePrefix.js.map +1 -0
  526. package/dist/types/ReplacePrefix.d.ts +11 -0
  527. package/dist/types/ReplacePrefix.js +5 -0
  528. package/dist/types/ReplacePrefix.js.map +1 -0
  529. package/dist/types/RequiredKeys.d.ts +3 -0
  530. package/dist/types/RequiredKeys.js +2 -0
  531. package/dist/types/RequiredKeys.js.map +1 -0
  532. package/dist/types/RestorePropTypeOfList.d.ts +2 -0
  533. package/dist/types/RestorePropTypeOfList.js +3 -0
  534. package/dist/types/RestorePropTypeOfList.js.map +1 -0
  535. package/dist/types/RestorePropertiesDoc.d.ts +0 -0
  536. package/dist/types/RestorePropertiesDoc.js +2 -0
  537. package/dist/types/RestorePropertiesDoc.js.map +1 -0
  538. package/dist/types/Shift.d.ts +1 -0
  539. package/dist/types/Shift.js +2 -0
  540. package/dist/types/Shift.js.map +1 -0
  541. package/dist/types/SpecificType.d.ts +5 -0
  542. package/dist/types/SpecificType.js +2 -0
  543. package/dist/types/SpecificType.js.map +1 -0
  544. package/dist/types/TwoParamsEqual.d.ts +2 -0
  545. package/dist/types/TwoParamsEqual.js +2 -0
  546. package/dist/types/TwoParamsEqual.js.map +1 -0
  547. package/dist/types/UnionToComma.test.d.ts +5 -0
  548. package/dist/types/UnionToComma.test.js +2 -0
  549. package/dist/types/UnionToComma.test.js.map +1 -0
  550. package/dist/types/Validators.d.ts +1 -0
  551. package/dist/types/Validators.js +2 -0
  552. package/dist/types/Validators.js.map +1 -0
  553. package/dist/utils/InnerMarker.d.ts +3 -0
  554. package/dist/utils/InnerMarker.js +4 -0
  555. package/dist/utils/InnerMarker.js.map +1 -0
  556. package/dist/utils/computedUpdater.d.ts +2 -0
  557. package/dist/utils/computedUpdater.js +30 -0
  558. package/dist/utils/computedUpdater.js.map +1 -0
  559. package/dist/utils/deepClone.d.ts +1 -0
  560. package/dist/utils/deepClone.js +14 -0
  561. package/dist/utils/deepClone.js.map +1 -0
  562. package/dist/utils/deleteProtoField.d.ts +1 -0
  563. package/dist/utils/deleteProtoField.js +4 -0
  564. package/dist/utils/deleteProtoField.js.map +1 -0
  565. package/dist/utils/getPathsValue.d.ts +2 -0
  566. package/dist/utils/getPathsValue.js +11 -0
  567. package/dist/utils/getPathsValue.js.map +1 -0
  568. package/dist/utils/initWatchOldValue.d.ts +2 -0
  569. package/dist/utils/initWatchOldValue.js +10 -0
  570. package/dist/utils/initWatchOldValue.js.map +1 -0
  571. package/dist/utils/isEmptyObject.d.ts +1 -0
  572. package/dist/utils/isEmptyObject.js +8 -0
  573. package/dist/utils/isEmptyObject.js.map +1 -0
  574. package/dist/utils/preprocessingOptions.d.ts +18 -0
  575. package/dist/utils/preprocessingOptions.js +184 -0
  576. package/dist/utils/preprocessingOptions.js.map +1 -0
  577. package/package.json +52 -0
  578. package/src/api/DefineComponent/NameOrPage/NameOrPathOption.ts +24 -0
  579. package/src/api/DefineComponent/NameOrPage/test/error.test.ts +26 -0
  580. package/src/api/DefineComponent/NameOrPage/test/normal.test.ts +13 -0
  581. package/src/api/DefineComponent/ReturnType/ComponentDoc.ts +25 -0
  582. package/src/api/DefineComponent/ReturnType/CreateComponentDoc.ts +46 -0
  583. package/src/api/DefineComponent/ReturnType/CreatePageDoc.ts +26 -0
  584. package/src/api/DefineComponent/ReturnType/GetCustomEventDocOfSubDoc.ts +20 -0
  585. package/src/api/DefineComponent/ReturnType/GetPropertiesDocOfSubDoc.ts +7 -0
  586. package/src/api/DefineComponent/ReturnType/PageDoc.ts +19 -0
  587. package/src/api/DefineComponent/ReturnType/test/normalComponentDoc.test.ts +226 -0
  588. package/src/api/DefineComponent/ReturnType/test/normalPageDoc.test.ts +39 -0
  589. package/src/api/DefineComponent/RootComponent/RootComponentOption.ts +8 -0
  590. package/src/api/DefineComponent/SubComponents/SubComponentsOption.ts +24 -0
  591. package/src/api/DefineComponent/SubComponents/test/error.test.ts +14 -0
  592. package/src/api/DefineComponent/SubComponents/test/normal.test.ts +1046 -0
  593. package/src/api/DefineComponent/index.ts +144 -0
  594. package/src/api/InstanceInject/InstanceInject.ts +25 -0
  595. package/src/api/InstanceInject/test/InjectConfig.ts +50 -0
  596. package/src/api/RootComponent/Computed/ComputedConstraint.ts +4 -0
  597. package/src/api/RootComponent/Computed/ComputedOption.ts +12 -0
  598. package/src/api/RootComponent/Computed/GetComputedDoc.ts +10 -0
  599. package/src/api/RootComponent/Computed/test/GetComputedDoc.test.ts +24 -0
  600. package/src/api/RootComponent/Computed/test/error.test.ts +37 -0
  601. package/src/api/RootComponent/Computed/test/normal.test.ts +99 -0
  602. package/src/api/RootComponent/CustomEvents/CustomEventConstraint.ts +50 -0
  603. package/src/api/RootComponent/CustomEvents/CustomEventsDoc.ts +4 -0
  604. package/src/api/RootComponent/CustomEvents/CustomEventsOption.ts +37 -0
  605. package/src/api/RootComponent/CustomEvents/CustomEventsTag.ts +59 -0
  606. package/src/api/RootComponent/CustomEvents/GetCustomEventDoc.ts +46 -0
  607. package/src/api/RootComponent/CustomEvents/test/GetCustomEventDoc.test.ts +30 -0
  608. package/src/api/RootComponent/CustomEvents/test/GetFullEventDoc.test.ts +56 -0
  609. package/src/api/RootComponent/CustomEvents/test/GetShortEventDoc.test.ts +28 -0
  610. package/src/api/RootComponent/CustomEvents/test/error.test.ts +101 -0
  611. package/src/api/RootComponent/CustomEvents/test/normal.test.ts +92 -0
  612. package/src/api/RootComponent/Data/DataOption.ts +19 -0
  613. package/src/api/RootComponent/Data/GetDataDoc.ts +25 -0
  614. package/src/api/RootComponent/Data/expected/error.ts +14 -0
  615. package/src/api/RootComponent/Data/expected/normal.ts +68 -0
  616. package/src/api/RootComponent/Data/test/GetDataDoc.test.ts +43 -0
  617. package/src/api/RootComponent/Data/test/error.test.ts +14 -0
  618. package/src/api/RootComponent/Data/test/normal.test.ts +63 -0
  619. package/src/api/RootComponent/Events/EventsConstraint.ts +69 -0
  620. package/src/api/RootComponent/Events/EventsOption.ts +7 -0
  621. package/src/api/RootComponent/Events/test/normal.test.ts +142 -0
  622. package/src/api/RootComponent/Instance/CustomEventMethods.ts +11 -0
  623. package/src/api/RootComponent/Instance/CustomSetData.ts +17 -0
  624. package/src/api/RootComponent/Instance/RootComponentInstance.ts +34 -0
  625. package/src/api/RootComponent/Instance/test/CustomEventsDoc.test.ts +66 -0
  626. package/src/api/RootComponent/Instance/test/CustomSetData.test.ts +44 -0
  627. package/src/api/RootComponent/Instance/test/customEvents/error.test.ts +13 -0
  628. package/src/api/RootComponent/Instance/test/customEvents/normal.test.ts +67 -0
  629. package/src/api/RootComponent/Instance/test/methods/error.test.ts +14 -0
  630. package/src/api/RootComponent/Instance/test/methods/mormal.test.ts +18 -0
  631. package/src/api/RootComponent/Instance/test/properties/mormal.test.ts +48 -0
  632. package/src/api/RootComponent/Instance/test/setData/error.test.ts +75 -0
  633. package/src/api/RootComponent/Instance/test/setData/normal.test.ts +54 -0
  634. package/src/api/RootComponent/IsPage/IsPageOption.ts +1 -0
  635. package/src/api/RootComponent/IsPage/test/normal.test.ts +27 -0
  636. package/src/api/RootComponent/Lifetimes/LifetimesConstraint.ts +10 -0
  637. package/src/api/RootComponent/Lifetimes/LifetimesOption.ts +8 -0
  638. package/src/api/RootComponent/Lifetimes/test/error.test.ts +33 -0
  639. package/src/api/RootComponent/Lifetimes/test/normal.test.ts +26 -0
  640. package/src/api/RootComponent/Methods/MethodsConstraint.ts +3 -0
  641. package/src/api/RootComponent/Methods/MethodsOption.ts +12 -0
  642. package/src/api/RootComponent/Methods/test/error.test.ts +41 -0
  643. package/src/api/RootComponent/Methods/test/mormal.test.ts +25 -0
  644. package/src/api/RootComponent/PageLifetimes/PageLifetimesOption.ts +31 -0
  645. package/src/api/RootComponent/PageLifetimes/test/error.test.ts +28 -0
  646. package/src/api/RootComponent/PageLifetimes/test/normal.test.ts +61 -0
  647. package/src/api/RootComponent/Properties/GetOptionalDoc.ts +38 -0
  648. package/src/api/RootComponent/Properties/GetPropertiesDoc.ts +33 -0
  649. package/src/api/RootComponent/Properties/GetRequiredDoc.ts +32 -0
  650. package/src/api/RootComponent/Properties/PropertiesConstraint.ts +38 -0
  651. package/src/api/RootComponent/Properties/PropertiesOption.ts +39 -0
  652. package/src/api/RootComponent/Properties/PropertiesValueValidator.ts +20 -0
  653. package/src/api/RootComponent/Properties/expected/error.ts +49 -0
  654. package/src/api/RootComponent/Properties/expected/normalEmpty.ts +33 -0
  655. package/src/api/RootComponent/Properties/expected/normalOptional.ts +136 -0
  656. package/src/api/RootComponent/Properties/expected/normalRequired.ts +100 -0
  657. package/src/api/RootComponent/Properties/test/error.test.ts +49 -0
  658. package/src/api/RootComponent/Properties/test/normalEmpty.test..ts +41 -0
  659. package/src/api/RootComponent/Properties/test/normalOptional.test.ts +75 -0
  660. package/src/api/RootComponent/Properties/test/normalRequired.test.ts +106 -0
  661. package/src/api/RootComponent/RootComponentDoc.ts +38 -0
  662. package/src/api/RootComponent/Store/GeTStoreDoc.ts +3 -0
  663. package/src/api/RootComponent/Store/StoreConstraint.ts +1 -0
  664. package/src/api/RootComponent/Store/StoreOption.ts +8 -0
  665. package/src/api/RootComponent/Store/test/error.test.ts +30 -0
  666. package/src/api/RootComponent/Store/test/normal.test.ts +13 -0
  667. package/src/api/RootComponent/Watch/WatchOption.ts +64 -0
  668. package/src/api/RootComponent/Watch/test/WatchComputed.test.ts +38 -0
  669. package/src/api/RootComponent/Watch/test/WatchData.test.ts +52 -0
  670. package/src/api/RootComponent/Watch/test/WatchProperties.test.ts +156 -0
  671. package/src/api/RootComponent/Watch/test/error.test.ts +31 -0
  672. package/src/api/RootComponent/index.ts +139 -0
  673. package/src/api/SubComponent/SubComponentDoc.ts +30 -0
  674. package/src/api/SubComponent/SubComputed/GetSubComputedDoc.ts +3 -0
  675. package/src/api/SubComponent/SubComputed/SubComputedConstraint.ts +1 -0
  676. package/src/api/SubComponent/SubComputed/SubComputedOption.ts +10 -0
  677. package/src/api/SubComponent/SubComputed/test/error.test.ts +50 -0
  678. package/src/api/SubComponent/SubComputed/test/normal.test.ts +132 -0
  679. package/src/api/SubComponent/SubData/SubDataConstraint.ts +10 -0
  680. package/src/api/SubComponent/SubData/SubDataOption.ts +13 -0
  681. package/src/api/SubComponent/SubData/test/error.test.ts +56 -0
  682. package/src/api/SubComponent/SubData/test/normal.test.ts +91 -0
  683. package/src/api/SubComponent/SubEvents/SubEventsConstraint.ts +22 -0
  684. package/src/api/SubComponent/SubEvents/SubEventsOptions.ts +7 -0
  685. package/src/api/SubComponent/SubEvents/test/error.test.ts +33 -0
  686. package/src/api/SubComponent/SubEvents/test/normal.test.ts +128 -0
  687. package/src/api/SubComponent/SubInherit/SubInheritConstraint.ts +12 -0
  688. package/src/api/SubComponent/SubInherit/test/error.test.ts +62 -0
  689. package/src/api/SubComponent/SubInherit/test/normal.test.ts +55 -0
  690. package/src/api/SubComponent/SubInstance/SubInstance.ts +9 -0
  691. package/src/api/SubComponent/SubInstance/test/error.test.ts +22 -0
  692. package/src/api/SubComponent/SubInstance/test/normal.test.ts +83 -0
  693. package/src/api/SubComponent/SubLifetimes/SubLifetimesOption.ts +3 -0
  694. package/src/api/SubComponent/SubMethods/SubMethodsConstraint.ts +5 -0
  695. package/src/api/SubComponent/SubMethods/SubMethodsOption.ts +13 -0
  696. package/src/api/SubComponent/SubMethods/test/error.test.ts +37 -0
  697. package/src/api/SubComponent/SubMethods/test/normarl.test.ts +35 -0
  698. package/src/api/SubComponent/SubPageLifetimes/SubPageLifetimesOption.ts +6 -0
  699. package/src/api/SubComponent/SubPageLifetimes/test/error.test.ts +32 -0
  700. package/src/api/SubComponent/SubPageLifetimes/test/normal.test.ts +73 -0
  701. package/src/api/SubComponent/SubReturnType/CreateSubComponentDoc.ts +37 -0
  702. package/src/api/SubComponent/SubReturnType/test/error.test.ts +18 -0
  703. package/src/api/SubComponent/SubReturnType/test/normal.test.ts +39 -0
  704. package/src/api/SubComponent/SubStore/SubDataConstraint.ts +9 -0
  705. package/src/api/SubComponent/SubStore/SubStoreOption.ts +13 -0
  706. package/src/api/SubComponent/SubStore/test/error.test.ts +35 -0
  707. package/src/api/SubComponent/SubStore/test/normal.test.ts +23 -0
  708. package/src/api/SubComponent/SubWatch/SubWatchOption.ts +3 -0
  709. package/src/api/SubComponent/SubWatch/test/WatchComputed.test.ts +46 -0
  710. package/src/api/SubComponent/SubWatch/test/WatchRootData.test.ts +118 -0
  711. package/src/api/SubComponent/SubWatch/test/WatchSubData.test.ts +46 -0
  712. package/src/api/SubComponent/SubWatch/test/error.test.ts +20 -0
  713. package/src/api/SubComponent/index.ts +204 -0
  714. package/src/api/navigateTo.ts +66 -0
  715. package/src/behaviors/BComputedAndWatch/IsPage.ts +5 -0
  716. package/src/behaviors/BComputedAndWatch/data-tracer.ts +63 -0
  717. package/src/behaviors/BComputedAndWatch/index.ts +122 -0
  718. package/src/behaviors/BComputedAndWatch/initComputed.ts +166 -0
  719. package/src/behaviors/BComputedAndWatch/isEqual.ts +26 -0
  720. package/src/behaviors/BComputedAndWatch/types.ts +28 -0
  721. package/src/behaviors/BStore.ts +59 -0
  722. package/src/behaviors/BbeforeCreated.ts +8 -0
  723. package/src/index.ts +17 -0
  724. package/src/thirdLib/index.ts +3 -0
  725. package/src/thirdLib/vant/Button.ts +23 -0
  726. package/src/thirdLib/vant/NoticeBar.ts +32 -0
  727. package/src/thirdLib/vant/Popup.ts +70 -0
  728. package/src/thirdLib/vant/index.ts +5 -0
  729. package/src/thirdLib/wm/Textarea.ts +22 -0
  730. package/src/thirdLib/wm/baseEvents.ts +53 -0
  731. package/src/thirdLib/wm/index.ts +7 -0
  732. package/src/thirdLib/wm/scrollView.ts +86 -0
  733. package/src/thirdLib/wm/swiper.ts +106 -0
  734. package/src/thirdLib/wm/view.ts +28 -0
  735. package/src/types/AddNullForObject.ts +6 -0
  736. package/src/types/AddPrefix.ts +10 -0
  737. package/src/types/CompDocExtends.ts +14 -0
  738. package/src/types/CreateComponentDoc.ts +17 -0
  739. package/src/types/Drop.ts +18 -0
  740. package/src/types/DropStr.ts +5 -0
  741. package/src/types/GetComponentPrefix.ts +34 -0
  742. package/src/types/GetPropertiesDuplicatedKeys.ts +14 -0
  743. package/src/types/Has.ts +1 -0
  744. package/src/types/InferSpecificType.test.ts +18 -0
  745. package/src/types/InferSpecificType.ts +12 -0
  746. package/src/types/ListOfSamePrimitive.ts +20 -0
  747. package/src/types/OfficialTypeAlias.ts +111 -0
  748. package/src/types/PrefixValidator.ts +56 -0
  749. package/src/types/RemoveNever.ts +6 -0
  750. package/src/types/RemoveNullOfRequired.ts +8 -0
  751. package/src/types/RemovePrefix.ts +3 -0
  752. package/src/types/ReplacePrefix.ts +47 -0
  753. package/src/types/RequiredKeys.ts +8 -0
  754. package/src/types/RestorePropTypeOfList.ts +20 -0
  755. package/src/types/RestorePropertiesDoc.ts +26 -0
  756. package/src/types/Shift.ts +2 -0
  757. package/src/types/SpecificType.ts +19 -0
  758. package/src/types/TwoParamsEqual.ts +3 -0
  759. package/src/types/UnionToComma.test.ts +9 -0
  760. package/src/types/Validators.ts +17 -0
  761. package/src/utils/InnerMarker.ts +4 -0
  762. package/src/utils/computedUpdater.ts +51 -0
  763. package/src/utils/deepClone.ts +19 -0
  764. package/src/utils/deleteProtoField.ts +6 -0
  765. package/src/utils/getPathsValue.ts +12 -0
  766. package/src/utils/initWatchOldValue.ts +12 -0
  767. package/src/utils/isEmptyObject.ts +13 -0
  768. package/src/utils/preprocessingOptions.ts +334 -0
  769. package/tsconfig.json +38 -0
@@ -0,0 +1,204 @@
1
+ import type { IfExtends } from "hry-types/src/Any/IfExtends";
2
+ import type { EmptyObject } from "hry-types/src/Misc/EmptyObject";
3
+ import type { RequiredKeys } from "hry-types/src/Object/RequiredKeys";
4
+ import type { ExtractDocPrefix } from "../../types/GetComponentPrefix";
5
+ import type { ReplacePrefix } from "../../types/ReplacePrefix";
6
+ import type { ComponentDoc } from "../DefineComponent/ReturnType/ComponentDoc";
7
+
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";
15
+ import type { RootComponentDoc } from "../RootComponent/RootComponentDoc";
16
+ import type { GetSubComputedDoc } from "./SubComputed/GetSubComputedDoc";
17
+ import type { SubComputedConstraint } from "./SubComputed/SubComputedConstraint";
18
+ import type { SubComputedOption } from "./SubComputed/SubComputedOption";
19
+ import type { SubDataConstraint } from "./SubData/SubDataConstraint";
20
+ import type { SubDataOption } from "./SubData/SubDataOption";
21
+ import type { SubEventsConstraint } from "./SubEvents/SubEventsConstraint";
22
+ import type { SubEventsOption } from "./SubEvents/SubEventsOptions";
23
+ import type { InheritConstraint } from "./SubInherit/SubInheritConstraint";
24
+ import type { SubInstance } from "./SubInstance/SubInstance";
25
+ import type { SubLifetimesOption } from "./SubLifetimes/SubLifetimesOption";
26
+ import type { SubMethodsConstraint } from "./SubMethods/SubMethodsConstraint";
27
+ import type { SubMethodsOption } from "./SubMethods/SubMethodsOption";
28
+ import type { SubPageLifetimesOption } from "./SubPageLifetimes/SubPageLifetimesOption";
29
+ import type { CreateSubComponentDoc } from "./SubReturnType/CreateSubComponentDoc";
30
+ import type { SubStoreConstraint } from "./SubStore/SubDataConstraint";
31
+ import type { SubStoreOption } from "./SubStore/SubStoreOption";
32
+ import type { SubWatchOption } from "./SubWatch/SubWatchOption";
33
+
34
+ type Options<
35
+ RootDoc extends RootComponentDoc,
36
+ IsPage extends boolean,
37
+ CurrentCompDoc extends ComponentDoc,
38
+ Prefix extends string,
39
+ AllRootDataDoc extends object,
40
+ TInherit extends object,
41
+ TSubData extends object,
42
+ TSubStore extends object,
43
+ TSubComputed extends object,
44
+ TEvents extends object,
45
+ TSubMethods extends object,
46
+ InheritDoc extends object,
47
+ SubDataDoc extends object,
48
+ SubStoreDoc extends object,
49
+ SubComputedDoc extends object,
50
+ SubEventsDoc extends object,
51
+ SubMethodsDoc extends object,
52
+ > =
53
+ & { inherit?: TInherit }
54
+ & SubDataOption<
55
+ TSubData,
56
+ Exclude<keyof CurrentCompDoc["properties"], (keyof InheritDoc)>,
57
+ Prefix
58
+ >
59
+ & SubStoreOption<
60
+ TSubStore,
61
+ Exclude<keyof CurrentCompDoc["properties"], (keyof (InheritDoc & SubDataDoc))>,
62
+ Prefix
63
+ >
64
+ & SubComputedOption<
65
+ TSubComputed,
66
+ // AllRootDataDoc & SubDataDoc & SubDataDoc & SubComputedDoc,
67
+ // 合法的配置
68
+ Omit<CurrentCompDoc["properties"], (keyof (InheritDoc & SubDataDoc & SubStoreDoc))>
69
+ >
70
+ & SubEventsOption<TEvents, SubEventsDoc, keyof SubEventsConstraint<CurrentCompDoc>>
71
+ & SubMethodsOption<TSubMethods, Prefix, keyof CurrentCompDoc["customEvents"]>
72
+ & SubPageLifetimesOption<IsPage, RootDoc["properties"] & {}>
73
+ & SubLifetimesOption
74
+ & SubWatchOption<
75
+ & SubComputedDoc
76
+ & SubDataDoc
77
+ & AllRootDataDoc
78
+ & SubStoreDoc
79
+ >
80
+ & Partial<Omit<WMCompOtherOption, "pageLifetimes">>
81
+ & ThisType<
82
+ SubInstance<
83
+ SubMethodsDoc & RootDoc["methods"],
84
+ TSubData,
85
+ AllRootDataDoc & SubDataDoc & SubComputedDoc & SubStoreDoc,
86
+ RootDoc["customEvents"] & {},
87
+ SubStoreDoc
88
+ >
89
+ >;
90
+
91
+ type SubComponentConstructor<
92
+ TRootDoc extends RootComponentDoc,
93
+ TOriginalCompDoc extends ComponentDoc,
94
+ // 补充的前缀
95
+ TSupplementalPrefix extends string = "",
96
+ IsPage extends boolean = TRootDoc["isPage"] extends true ? true : false,
97
+ // 重构子组件的前缀
98
+ CurrentPrefix extends string = `${ExtractDocPrefix<TOriginalCompDoc>}${Capitalize<TSupplementalPrefix>}`,
99
+ // 更新原始文档的前缀为Prefix
100
+ CurrentCompDoc extends ComponentDoc = IfExtends<
101
+ TSupplementalPrefix,
102
+ "",
103
+ TOriginalCompDoc,
104
+ ReplacePrefix<TOriginalCompDoc, CurrentPrefix>
105
+ >,
106
+ AllRootDataDoc extends object =
107
+ & Required<TRootDoc["properties"]>
108
+ & TRootDoc["data"]
109
+ & TRootDoc["computed"],
110
+ > = {
111
+ <
112
+ TInherit extends InheritConstraint<AllRootDataDoc, CurrentCompDoc>,
113
+ TSubData extends SubDataConstraint<Omit<Required<CurrentCompDoc["properties"]>, keyof InheritDoc>>,
114
+ TSubStore extends SubStoreConstraint<Omit<Required<CurrentCompDoc["properties"]>, keyof (InheritDoc & SubDataDoc)>>,
115
+ TEvents extends SubEventsConstraint<CurrentCompDoc>,
116
+ TSubComputed extends SubComputedConstraint<
117
+ Omit<Required<CurrentCompDoc["properties"]>, keyof (InheritDoc & SubDataDoc & SubStoreDoc)>
118
+ >,
119
+ TSubMethods extends SubMethodsConstraint = {},
120
+ InheritDoc extends object = IfExtends<InheritConstraint<AllRootDataDoc, CurrentCompDoc>, TInherit, {}, TInherit>,
121
+ SubDataDoc extends object = IfExtends<
122
+ SubDataConstraint<Omit<Required<CurrentCompDoc["properties"]>, keyof InheritDoc>>,
123
+ TSubData,
124
+ {},
125
+ TSubData
126
+ >,
127
+ SubStoreDoc extends object = IfExtends<
128
+ SubStoreConstraint<Omit<Required<CurrentCompDoc["properties"]>, keyof (InheritDoc & SubDataDoc)>>,
129
+ TSubStore,
130
+ {},
131
+ { [k in keyof TSubStore]: ReturnType<TSubStore[k] & {}> }
132
+ >,
133
+ // 无效的计算
134
+ SubComputedDoc extends object = IfExtends<
135
+ SubComputedConstraint<
136
+ Omit<Required<CurrentCompDoc["properties"]>, keyof (InheritDoc & SubDataDoc & SubStoreDoc)>
137
+ >,
138
+ TSubComputed,
139
+ {},
140
+ GetSubComputedDoc<TSubComputed>
141
+ >,
142
+ SubEventsDoc extends object = IfExtends<
143
+ SubEventsConstraint<CurrentCompDoc>,
144
+ TEvents,
145
+ {},
146
+ TEvents
147
+ >,
148
+ SubMethodsDoc extends object = TSubMethods,
149
+ // 缺失的必传字段(配置中inhrit,data,computed的字段不包含的必传字段)
150
+ MissingRequiredField extends PropertyKey = Exclude<
151
+ RequiredKeys<CurrentCompDoc["properties"] & {}>,
152
+ keyof (
153
+ & InheritDoc
154
+ & SubDataDoc
155
+ & SubStoreDoc
156
+ & SubComputedDoc
157
+ )
158
+ >,
159
+ >(
160
+ options: Options<
161
+ TRootDoc,
162
+ IsPage,
163
+ CurrentCompDoc,
164
+ CurrentPrefix,
165
+ AllRootDataDoc,
166
+ TInherit,
167
+ TSubData,
168
+ TSubStore,
169
+ TSubComputed,
170
+ TEvents,
171
+ TSubMethods,
172
+ InheritDoc,
173
+ SubDataDoc,
174
+ SubStoreDoc,
175
+ SubComputedDoc,
176
+ SubEventsDoc,
177
+ SubMethodsDoc
178
+ >,
179
+ ): CreateSubComponentDoc<TOriginalCompDoc["customEvents"] & {}, SubEventsDoc, MissingRequiredField>;
180
+ };
181
+
182
+ /**
183
+ * 子组件构建函数
184
+ * @returns `(options:) => SubComponentDoc`
185
+ */
186
+ export function SubComponent<
187
+ RootDoc extends RootComponentDoc,
188
+ CompDoc extends ComponentDoc,
189
+ Prefix extends string = "",
190
+ >(): IfExtends<EmptyObject, CompDoc, (opt: EmptyObject) => never, SubComponentConstructor<RootDoc, CompDoc, Prefix>> {
191
+ return ((options: any) => options) as any;
192
+ }
193
+
194
+ // 相比与 export type TrivialOption = Options<{},...>,更直观字段和类型,但断耦合,注意类型是否正确.这是为最终生成官方Component API 的options参数而生。
195
+ export type SubComponentOptions = {
196
+ inhrit?: string;
197
+ data?: Record<string, unknown>;
198
+ computed?: Record<string, Func>;
199
+ events?: Record<string, Func>;
200
+ methods?: Record<string, Func>;
201
+ watch?: Record<string, Func>;
202
+ lifetimes?: WMCompLifetimes["lifetimes"];
203
+ pageLifetimes?: Partial<WMCompPageLifetimes & { load: Func } & WMPageLifetimes>;
204
+ };
@@ -0,0 +1,66 @@
1
+ import type { IfEquals } from "hry-types/src/Any/IfEquals";
2
+ import type { IfExtends } from "hry-types/src/Any/IfExtends";
3
+ import type { NoInfer } from "hry-types/src/Generic/NoInfer";
4
+ import type { WMNavigateToOption } from "../types/OfficialTypeAlias";
5
+ import type { RequiredKeys } from "../types/RequiredKeys";
6
+ import { INNERMARKER } from "../utils/InnerMarker";
7
+ import type { PageDoc } from "./DefineComponent/ReturnType/PageDoc";
8
+
9
+ type NavigateToOption<T extends PageDoc> =
10
+ & {
11
+ url: T["path"];
12
+ }
13
+ & IfExtends<
14
+ unknown,
15
+ T["properties"],
16
+ unknown,
17
+ IfEquals<
18
+ RequiredKeys<NonNullable<T["properties"]>>,
19
+ never,
20
+ {
21
+ data?: T["properties"];
22
+ },
23
+ {
24
+ data: T["properties"];
25
+ }
26
+ >
27
+ >
28
+ & Omit<WMNavigateToOption, "url">;
29
+
30
+ /**
31
+ * 对象中可以使用 `"; / ? : @ & = + $ `, #"做为数据的一部分
32
+ */
33
+ function _encodeURIComponent(
34
+ option: Omit<WMNavigateToOption, "url"> & { url: string; data: object },
35
+ ): WechatMiniprogram.NavigateToOption {
36
+ const result: WMNavigateToOption = {
37
+ url: `${option.url}?${INNERMARKER.url}=${
38
+ encodeURIComponent(
39
+ JSON.stringify(option.data),
40
+ )
41
+ }`,
42
+ };
43
+
44
+ Reflect.deleteProperty(option, "url");
45
+
46
+ Reflect.deleteProperty(option, "data");
47
+
48
+ return Object.assign(result, option);
49
+ }
50
+
51
+ /**
52
+ * 页面onload参数中接受的数据值是传递的url解析后的字符串。例如:A页面通过`wx.navigateTo({url:'/pages/test/test?num=123&obj={"name":"zhao"}'})`
53
+ * test页面onLoad(data)的参数data接受内容为` data = {num:"123",obj:"{"name":"zhao"}"}`即默认的url传的数据值为字符串,需要在接收时自行解析(JSON.parse)。且url采取ASCII编码只能接受0x20-0x7e区间的符号。无法使用一些特殊符号 如 ` :/?#[]@!$&'()*+,;= `。
54
+ * navigateTo API 为 wx.navigateTo的语法糖,增加了data字段,最终的url数据拼接了通过encodeURIComponent编码(支持默认忽略的特殊符号)的data字段,在跳转页面的onload中通过decodeURIComponent解析url赋值给实例的data对象。为求使用时更加方便(无需对参数data解析再赋值)。且有ts类型提示。
55
+ */
56
+ export function navigateTo<TPageDoc extends PageDoc = never>(
57
+ option: NoInfer<NavigateToOption<TPageDoc>>,
58
+ ) {
59
+ if (!option["data"]) {
60
+ return wx.navigateTo(option);
61
+ } else {
62
+ return wx.navigateTo(
63
+ _encodeURIComponent(option as NavigateToOption<TPageDoc> & { data: object }),
64
+ );
65
+ }
66
+ }
@@ -0,0 +1,5 @@
1
+ import type { ComponentInstance, PageInstance } from "../../api/RootComponent/Instance/RootComponentInstance";
2
+
3
+ export function isPage(Ins: ComponentInstance | PageInstance): Ins is PageInstance {
4
+ return typeof (Ins as PageInstance).route === "string";
5
+ }
@@ -0,0 +1,63 @@
1
+ import type { ComputedDependence } from "./initComputed";
2
+
3
+ export function deepProxy(
4
+ data: object,
5
+ dependences: ComputedDependence[],
6
+ basePath: string[] = [],
7
+ ): object {
8
+ const handler = {
9
+ set() {
10
+ throw Error("计算属性中不可以改变data对象的值");
11
+ },
12
+ get(target: object, prop: string) {
13
+ // // 得到原始的对象 在unwrap时使用
14
+ // console.log(target, prop);
15
+
16
+ if (prop === "__rawObject__") return target;
17
+
18
+ const val = target[prop];
19
+
20
+ // console.log("获取依赖", prop, val);
21
+
22
+ // 依赖长度不为0时 去重
23
+ if (basePath.length !== 0) {
24
+ // 依赖去重
25
+ const lastDependences = dependences[dependences.length - 1]; // 倒数第一个是当前依赖。2022 at(-1)
26
+ // 只留最后一个路径。比如 return this.data.obj.user.name 得到的是最后1个路径 ['obj','user','name'] 减少无效依赖,提高性能。 而非3个 ['obj'], ['obj','user'],['obj','user','name']
27
+ if (lastDependences.paths.toString() === basePath.toString()) {
28
+ // console.log('删除', lastDependences)
29
+ dependences.pop();
30
+ }
31
+ }
32
+ const curPath = basePath.concat(prop);
33
+
34
+ dependences.push({ paths: curPath, val: unwrap(val) });
35
+
36
+ // 自身方法或原型属性不代理
37
+ if (!Object.prototype.hasOwnProperty.call(target, prop) || typeof val === "function") {
38
+ // 原型链上的属性不代理,函数加bind。如 this.data.arr.slice() this.data.arr.forEach(...)
39
+ return typeof val === "function" ? val.bind(target) : val;
40
+ }
41
+ // 非对象不代理
42
+ if (typeof val !== "object" || val === null) return val;
43
+
44
+ return deepProxy(val, dependences, curPath);
45
+ },
46
+ };
47
+
48
+ return new Proxy(data, handler);
49
+ }
50
+
51
+ export function unwrap(wrapped: any): unknown {
52
+ // 非引用值 直接返回
53
+ if (typeof wrapped !== "object" || wrapped === null) {
54
+ return wrapped;
55
+ }
56
+ // 是引用值 取原值
57
+ const originalValue = wrapped.__rawObject__;
58
+ if (originalValue) {
59
+ wrapped = originalValue;
60
+ }
61
+
62
+ return wrapped;
63
+ }
@@ -0,0 +1,122 @@
1
+ import type { Func } from "hry-types/src/Misc/Func";
2
+ import type { ComponentOptions } from "../../api/DefineComponent";
3
+ import { deepClone } from "../../utils/deepClone";
4
+ import { deleteProtoField } from "../../utils/deleteProtoField";
5
+ import { initWatchOldValue } from "../../utils/initWatchOldValue";
6
+ import { isEmptyObject } from "../../utils/isEmptyObject";
7
+ import { initComputed } from "./initComputed";
8
+ import { isEqual } from "./isEqual";
9
+ import { isPage } from "./IsPage";
10
+ import type { Instance } from "./types";
11
+ /**
12
+ * 实现
13
+ * 1. 计算属性初始化在attached之后(前版本在beforeCreate)
14
+ * 2. 通过observers.**(前版本劫持setData)更新计算属性。
15
+ * 原因
16
+ * 1. 之前版本放在beforeCreate好处是符合正常思维,即组件建立后(created)包含计算属性的data就应该都存在了。
17
+ * 但由于properties字段数据实际有效是发生在attached之后。所以之前版本计算属性在挂载到上级组件时,依赖properties的计算属性更新有可能是无意义的。因为上级组件传递的properties有可能由它的上级组件传递而来。根本愿意是组件实例挂载是由内而外,而properties是由外到内传递数据。虽然这些无意义更新只发生在一次(onload之前).
18
+ * 2 当properties中有内部字段时(例如设置了pureDataPattern: /^_/,),无法通过设置properties下的observer属性来获知属性更新通知,从而无法劫持setData。才导致有这个最新版本出现。
19
+ * 3. 子组件计算属性若依赖properties字段,当子组件挂载到父组件时,就会触发observers.**字段,从而进行一次无效的计算属性更新。解决方案是:实例默认一个__computedStatus__字段,当observers.**变化时,如果__computedStatus__为'初始化中'(表示计算属性还未初始化完毕),就不会进行计算属性更新。当attached周期后(计算属性初始化完毕)把__computedStatus__变为'待更新',再次触发observers.**字段则更新计算属性。
20
+ */
21
+ /**
22
+ * computed初始化值在组件建立后,这样能保证计算属性依赖properties字段时,properties必传字段一定有值,减少计算属性代码(不必考虑properties无值时的情况)。坏处是增加了组件初始化时运行的代码量。
23
+ */
24
+
25
+ export const BComputedAndWatch = Behavior({
26
+ definitionFilter(options: ComponentOptions) {
27
+ const computedConfig = options.computed;
28
+
29
+ // computed handle
30
+ if (computedConfig && !isEmptyObject(computedConfig)) {
31
+ const methodsConfig = options.methods ||= {};
32
+
33
+ // 把计算属性配置保留在methods的__computedConfig__字段下带入到组件实例中。
34
+ methodsConfig.__computedConfig__ = () => computedConfig;
35
+
36
+ const observersConfig = options.observers ||= {};
37
+ // 通过observers加入`**`字段来触发计算属性更新
38
+ const originalFunc = observersConfig["**"] as Func | undefined;
39
+
40
+ observersConfig["**"] = function(this: Instance): undefined {
41
+ const computedStatus = this.__computedStatus__;
42
+ switch (computedStatus) {
43
+ case undefined:
44
+ // 1 触发来自attach时或没有计算属性时
45
+ originalFunc && originalFunc.call(this);
46
+
47
+ break;
48
+ case "初始化中":
49
+ // 2 触发来自计算属性初始化时的setData,什么都不需要做。 初始化后__computedStatus__变为待更新
50
+
51
+ break;
52
+ case "待更新":
53
+ // 3. 触发来自attached后的setData或properties更新
54
+ {
55
+ const isUpdated = this.__computedUpdater__();
56
+ if (isUpdated) {
57
+ // 更新了会再次触发自身转到 4
58
+ this.__computedStatus__ = "更新完毕";
59
+ } else {
60
+ // 无需更新计算属性
61
+ originalFunc && originalFunc.call(this);
62
+ }
63
+ }
64
+ break;
65
+ case "更新完毕":
66
+ {
67
+ // 4 来自计算属性更新后的自身回调
68
+ // console.log("来自计算属性更新后的自身回调");
69
+ this.__computedStatus__ = "待更新";
70
+
71
+ originalFunc && originalFunc.call(this);
72
+ }
73
+ break;
74
+ }
75
+ };
76
+ }
77
+
78
+ // watch handle
79
+ const watchConfig = options.watch;
80
+ if (watchConfig && !isEmptyObject(watchConfig)) {
81
+ const methodsConfig = options.methods ||= {};
82
+
83
+ // 把watch配置保留在methods的__watchConfig__字段下带入到组件实例中。
84
+ methodsConfig.__watchConfig__ = () => watchConfig;
85
+
86
+ const observersConfig = options.observers ||= {};
87
+ for (const key in watchConfig) {
88
+ const watchHadle = watchConfig[key];
89
+
90
+ observersConfig[key] = function(this: Instance, newValue: unknown) {
91
+ const watchOldValue = this.__watchOldValue__!;
92
+ const oldValue = watchOldValue[key];
93
+ // 当watch对象的子属性时,有可能对象为null(properties默认值)
94
+ if ((newValue === undefined) || isEqual(newValue, oldValue)) return;
95
+ watchOldValue[key] = deepClone(newValue);
96
+
97
+ watchHadle.call(this, newValue, oldValue);
98
+ };
99
+ }
100
+ }
101
+ },
102
+ lifetimes: {
103
+ created(this: Instance) {
104
+ // 初始化watch 生成OldValue
105
+ const watchConfig = this.__watchConfig__?.();
106
+
107
+ deleteProtoField(this, "__watchConfig__");
108
+
109
+ if (watchConfig) {
110
+ // 此时计算属性还未初始化,properties还未第一次传入
111
+ this.__watchOldValue__ = initWatchOldValue.call(this, watchConfig);
112
+ }
113
+ },
114
+ attached(this: Instance) {
115
+ if (!isPage(this)) {
116
+ // 组件此时properties已传入
117
+ initComputed.call(this);
118
+ }
119
+ // else 页面在onLoad时传入properties 计算属性初始化逻辑通过onLoadHijack函数完成
120
+ },
121
+ },
122
+ });
@@ -0,0 +1,166 @@
1
+ // import type { ComponentInstance } from "../../api/RootComponent/Instance/RootComponentInstance";
2
+ // import type { IsDependOnOthers } from "./data-tracer";
3
+
4
+ import type { Func } from "hry-types/src/Misc/Func";
5
+ import { computedUpdater } from "../../utils/computedUpdater";
6
+ import { deleteProtoField } from "../../utils/deleteProtoField";
7
+ import { deepProxy, unwrap } from "./data-tracer";
8
+ import type { ComputedCache, Instance } from "./types";
9
+ export type ComputedDependence = { paths: string[]; val: unknown };
10
+
11
+ type ComputedInfo = {
12
+ dependences: ComputedDependence[];
13
+ value: unknown;
14
+ };
15
+
16
+ /**
17
+ * 如果依赖列表某项的首个字段值为undefined并且字段为其他计算属性字段 返回false(即被依赖的计算字段写在了依赖他的计算字段后面), 否则返回ComputedInfo。
18
+ */
19
+ function isValidDependences(dependences: ComputedDependence[], computedKeys: string[]): boolean {
20
+ for (const { paths: path, val } of dependences) {
21
+ // 引用值为undefined时
22
+ // console.log(path[0]);
23
+ if (val === undefined && computedKeys.includes(path[0])) {
24
+ return false;
25
+ }
26
+ }
27
+
28
+ return true; // 依赖有效
29
+ }
30
+
31
+ export function getComputedInfo(
32
+ this: Instance,
33
+ computedKeys: string[],
34
+ computedFunc: Func,
35
+ key: string,
36
+ ): false | ComputedInfo {
37
+ // 建立当前计算字段的依赖
38
+ const dependences: ComputedDependence[] = [];
39
+ let initValue: unknown;
40
+ try {
41
+ initValue = computedFunc.call({
42
+ data: deepProxy(this.data, dependences),
43
+ });
44
+ } catch (error) {
45
+ // 为js开发考虑使用了 this.data.xxx.age 当xxx为undefined时
46
+ if (!isValidDependences(dependences, computedKeys)) {
47
+ // 情况2 依赖了未初始化的计算属性的子属性(会报错) 见computed测试文件
48
+ return false;
49
+ }
50
+ // 其他错误正常报错
51
+ throw error;
52
+ }
53
+ if (isValidDependences(dependences, computedKeys)) {
54
+ // 有效的依赖
55
+ initValue = unwrap(initValue);
56
+
57
+ this.setData({
58
+ [key]: initValue,
59
+ });
60
+
61
+ return { dependences, value: initValue };
62
+ } else {
63
+ // 情况1 依赖了其他未初始化的计算属性(不报错) 见computed测试文件
64
+ return false;
65
+ }
66
+ }
67
+
68
+ /**
69
+ * 依赖去重
70
+ * @example
71
+ * ```ts
72
+ * const dependences = [{path:['a','b']}, {path:['a','b','c']}, {path:['d','e']}, {path:['d']}]
73
+ * const result = uniqueDependences(dependences)
74
+ * // result = [{path:['a','b'] } ,{ path:['d'] }]
75
+ * ```
76
+ */
77
+ function uniqueDependences(dependences: ComputedDependence[]): ComputedDependence[] {
78
+ if (dependences.length === 1) return dependences;
79
+
80
+ for (let f = 0; f < dependences.length; f++) {
81
+ const firstPath = dependences[f].paths.join(".") + ".";
82
+ for (let i = f + 1; i < dependences.length; i++) {
83
+ const curPath = dependences[i].paths.join(".") + ".";
84
+ // console.log(firstPath,curPath)
85
+ if (firstPath.startsWith(curPath)) {
86
+ // console.log('删除:',f)
87
+ // 例如 path[0] = 'a.b.c',curPath = 'a.b'
88
+ dependences.splice(f, 1);
89
+
90
+ return uniqueDependences(dependences);
91
+ }
92
+ if (curPath.startsWith(firstPath)) {
93
+ // console.log('删除:',i)
94
+ // 例如 curPath = 'a.b.c' path[0] = 'a.b',
95
+ dependences.splice(i, 1);
96
+
97
+ return uniqueDependences(dependences);
98
+ }
99
+ }
100
+ }
101
+
102
+ return dependences;
103
+ }
104
+ /**
105
+ * 初始化计算属性配置返回计算属性缓存
106
+ * @param computedConfig - 计算属性配置
107
+ * @param uninitedkeys - 未初始的计算属性keys
108
+ * @param computedCache - 计算属性缓存默认=`{}`
109
+ * @returns 计算属性缓存
110
+ */
111
+ function _initComputed(
112
+ this: Instance,
113
+ computedConfig: Record<string, Func>,
114
+ uninitedkeys: string[], //
115
+ computedCache: ComputedCache = {},
116
+ ): ComputedCache {
117
+ // 收集依赖
118
+ for (const key of uninitedkeys) {
119
+ const computedInfo = getComputedInfo.call(this, uninitedkeys, computedConfig[key], key);
120
+
121
+ // 去除完成的依赖key
122
+ uninitedkeys = uninitedkeys.filter(ele => ele !== key);
123
+
124
+ if (computedInfo === false) {
125
+ // 把当前依赖不正确的key放到后面去
126
+ uninitedkeys.push(key);
127
+ } else {
128
+ computedCache[key] = {
129
+ // 去重 避免 如: ` age(){ return this.data.xxx.num + this.data.xxx.str + this.data.xxx} ` 造成的多个依赖相同情况。应就要一个 xxx
130
+ dependences: uniqueDependences(computedInfo.dependences),
131
+ method: computedConfig[key],
132
+ value: computedInfo.value, // 为了watch的oldValue
133
+ };
134
+ }
135
+ }
136
+ // 看uninitedkey是否未空,空表示所有依赖收集完毕直接返回
137
+ if (uninitedkeys.length === 0) {
138
+ return computedCache;
139
+ }
140
+
141
+ // uninitedkey不为空,递归
142
+ return _initComputed.call(this, computedConfig, uninitedkeys, computedCache);
143
+ }
144
+ export function initComputed(this: Instance) {
145
+ const computedConfig = this.__computedConfig__?.();
146
+
147
+ deleteProtoField(this, "__computedConfig__");
148
+
149
+ if (computedConfig) {
150
+ // 实例加入 __computedUpdateStatus__ 提高性能
151
+ this.__computedStatus__ = "初始化中";
152
+
153
+ // 初始化计算属性(返回缓存)
154
+ this.__computedCache__ = _initComputed.call(
155
+ this,
156
+ computedConfig,
157
+ Object.keys(computedConfig),
158
+ );
159
+
160
+ // 给原型上加入__computedUpdater__方法 在observers下的'**'配置中触发
161
+
162
+ this.__computedUpdater__ = computedUpdater.bind(this);
163
+
164
+ this.__computedStatus__ = "待更新";
165
+ }
166
+ }
@@ -0,0 +1,26 @@
1
+ /**
2
+ * 深度判断2个值是否相等,NaN与NaN不等,+0与-0相等。
3
+ */
4
+ export function isEqual(value: unknown, other: unknown) {
5
+ if (value === other) {
6
+ return true;
7
+ }
8
+ // value和other有一个为null或不是对象 一定不相等
9
+ if (typeof value !== "object" || value === null || typeof other !== "object" || other === null) {
10
+ return false;
11
+ }
12
+ const keys1 = Object.keys(value);
13
+ const keys2 = Object.keys(other);
14
+ // 对象类型长度不等,一定不相等
15
+ if (keys1.length !== keys2.length) {
16
+ return false;
17
+ }
18
+ // 递归比较存在的相同key是否相等
19
+ for (const key of keys1) {
20
+ if (!keys2.includes(key) || !isEqual(value[key], other[key])) {
21
+ return false;
22
+ }
23
+ }
24
+
25
+ return true;
26
+ }
@@ -0,0 +1,28 @@
1
+ import type { Func } from "hry-types/src/Misc/Func";
2
+ import type { ComponentInstance, PageInstance } from "../../api/RootComponent/Instance/RootComponentInstance";
3
+ import type { ComputedDependence } from "./initComputed";
4
+
5
+ export type InstanceCustomFields = {
6
+ __pendingSetData__?: object | null;
7
+ __storeConfig__?: () => Record<string, () => unknown>;
8
+ __computedStatus__?: "初始化中" | "待更新" | "更新完毕";
9
+ __computedUpdater__: Func;
10
+ __computedConfig__?: () => Record<string, Func>;
11
+ __computedCache__?: ComputedCache;
12
+ __watchOldValue__?: WatchOldValue;
13
+ __watchConfig__?: () => Record<string, Func>;
14
+ disposer: Record<string, Func>;
15
+ };
16
+
17
+ export type Instance = (ComponentInstance | PageInstance) & InstanceCustomFields;
18
+
19
+ export type ComputedCache = Record<
20
+ string,
21
+ {
22
+ dependences: ComputedDependence[];
23
+ method: Func;
24
+ value: unknown;
25
+ }
26
+ >;
27
+
28
+ export type WatchOldValue = Record<string, unknown>;