wevu 6.18.6 → 6.19.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 (585) hide show
  1. package/dist/_virtual/_@oxc-project_runtime@0.139.0/helpers/esm/defineProperty.mjs +1 -0
  2. package/dist/_virtual/_@oxc-project_runtime@0.139.0/helpers/esm/toPrimitive.mjs +1 -0
  3. package/dist/_virtual/_@oxc-project_runtime@0.139.0/helpers/esm/toPropertyKey.mjs +1 -0
  4. package/dist/_virtual/_@oxc-project_runtime@0.139.0/helpers/esm/typeof.mjs +1 -0
  5. package/dist/{rolldown-runtime-CenpyGzJ.mjs → _virtual/_rolldown/runtime.mjs} +1 -1
  6. package/dist/dev/_virtual/_@oxc-project_runtime@0.139.0/helpers/esm/defineProperty.mjs +14 -0
  7. package/dist/dev/_virtual/_@oxc-project_runtime@0.139.0/helpers/esm/toPrimitive.mjs +16 -0
  8. package/dist/dev/_virtual/_@oxc-project_runtime@0.139.0/helpers/esm/toPropertyKey.mjs +11 -0
  9. package/dist/dev/_virtual/_@oxc-project_runtime@0.139.0/helpers/esm/typeof.mjs +12 -0
  10. package/dist/dev/{rolldown-runtime-BUUfjzRC.mjs → _virtual/_rolldown/runtime.mjs} +1 -1
  11. package/dist/dev/index.mjs +49 -10
  12. package/dist/dev/internal-reactivity.mjs +15 -5
  13. package/dist/dev/internal-runtime.mjs +32 -4
  14. package/dist/dev/internal-template.mjs +1 -1
  15. package/dist/dev/package.mjs +6 -0
  16. package/dist/dev/package.mjs.map +1 -0
  17. package/dist/dev/reactivity/computed.mjs +49 -0
  18. package/dist/dev/reactivity/computed.mjs.map +1 -0
  19. package/dist/dev/reactivity/core.mjs +184 -0
  20. package/dist/dev/reactivity/core.mjs.map +1 -0
  21. package/dist/dev/reactivity/reactive/mutation.mjs +12 -0
  22. package/dist/dev/reactivity/reactive/mutation.mjs.map +1 -0
  23. package/dist/dev/{computed-BxRsUJgi.mjs → reactivity/reactive/patch.mjs} +6 -48
  24. package/dist/dev/reactivity/reactive/patch.mjs.map +1 -0
  25. package/dist/dev/reactivity/reactive/patchState.mjs +138 -0
  26. package/dist/dev/reactivity/reactive/patchState.mjs.map +1 -0
  27. package/dist/dev/reactivity/reactive/shallow.mjs +77 -0
  28. package/dist/dev/reactivity/reactive/shallow.mjs.map +1 -0
  29. package/dist/dev/reactivity/reactive/shared.mjs +40 -0
  30. package/dist/dev/reactivity/reactive/shared.mjs.map +1 -0
  31. package/dist/dev/reactivity/reactive/state.mjs +8 -0
  32. package/dist/dev/reactivity/reactive/state.mjs.map +1 -0
  33. package/dist/dev/reactivity/reactive.mjs +212 -0
  34. package/dist/dev/reactivity/reactive.mjs.map +1 -0
  35. package/dist/dev/reactivity/readonly.mjs +69 -0
  36. package/dist/dev/reactivity/readonly.mjs.map +1 -0
  37. package/dist/dev/reactivity/ref.mjs +97 -0
  38. package/dist/dev/reactivity/ref.mjs.map +1 -0
  39. package/dist/dev/reactivity/shallowRef.mjs +71 -0
  40. package/dist/dev/reactivity/shallowRef.mjs.map +1 -0
  41. package/dist/dev/{toRefs-D06VmFK2.mjs → reactivity/toRefs.mjs} +4 -3
  42. package/dist/dev/reactivity/toRefs.mjs.map +1 -0
  43. package/dist/dev/reactivity/traverse.mjs +40 -0
  44. package/dist/dev/reactivity/traverse.mjs.map +1 -0
  45. package/dist/dev/reactivity/watch/helpers.mjs +78 -0
  46. package/dist/dev/reactivity/watch/helpers.mjs.map +1 -0
  47. package/dist/dev/reactivity/watch/types.mjs +20 -0
  48. package/dist/dev/reactivity/watch/types.mjs.map +1 -0
  49. package/dist/dev/reactivity/watch.mjs +167 -0
  50. package/dist/dev/reactivity/watch.mjs.map +1 -0
  51. package/dist/dev/router/backNavigation.mjs +32 -0
  52. package/dist/dev/router/backNavigation.mjs.map +1 -0
  53. package/dist/dev/router/createRouter.mjs +176 -0
  54. package/dist/dev/router/createRouter.mjs.map +1 -0
  55. package/dist/dev/router/instance.mjs +17 -0
  56. package/dist/dev/router/instance.mjs.map +1 -0
  57. package/dist/dev/router/navigationApi.mjs +94 -0
  58. package/dist/dev/router/navigationApi.mjs.map +1 -0
  59. package/dist/dev/router/navigationCore.mjs +139 -0
  60. package/dist/dev/router/navigationCore.mjs.map +1 -0
  61. package/dist/dev/router/navigationResult.mjs +54 -0
  62. package/dist/dev/router/navigationResult.mjs.map +1 -0
  63. package/dist/dev/router/navigationTarget.mjs +121 -0
  64. package/dist/dev/router/navigationTarget.mjs.map +1 -0
  65. package/dist/dev/router/navigationTargetHelpers.mjs +38 -0
  66. package/dist/dev/router/navigationTargetHelpers.mjs.map +1 -0
  67. package/dist/dev/router/resolve.mjs +22 -0
  68. package/dist/dev/router/resolve.mjs.map +1 -0
  69. package/dist/dev/router/routeRegistry.mjs +78 -0
  70. package/dist/dev/router/routeRegistry.mjs.map +1 -0
  71. package/dist/dev/router/routeSync.mjs +72 -0
  72. package/dist/dev/router/routeSync.mjs.map +1 -0
  73. package/dist/dev/router/types.mjs +11 -0
  74. package/dist/dev/router/types.mjs.map +1 -0
  75. package/dist/dev/router/useRoute.mjs +106 -0
  76. package/dist/dev/router/useRoute.mjs.map +1 -0
  77. package/dist/dev/router/useRouter.mjs +15 -0
  78. package/dist/dev/router/useRouter.mjs.map +1 -0
  79. package/dist/dev/router.mjs +9 -1316
  80. package/dist/dev/routerInternal/location.mjs +66 -0
  81. package/dist/dev/routerInternal/location.mjs.map +1 -0
  82. package/dist/dev/routerInternal/matching.mjs +149 -0
  83. package/dist/dev/routerInternal/matching.mjs.map +1 -0
  84. package/dist/dev/routerInternal/params.mjs +95 -0
  85. package/dist/dev/routerInternal/params.mjs.map +1 -0
  86. package/dist/dev/routerInternal/path.mjs +42 -0
  87. package/dist/dev/routerInternal/path.mjs.map +1 -0
  88. package/dist/dev/routerInternal/query.mjs +113 -0
  89. package/dist/dev/routerInternal/query.mjs.map +1 -0
  90. package/dist/dev/routerInternal/records.mjs +172 -0
  91. package/dist/dev/routerInternal/records.mjs.map +1 -0
  92. package/dist/dev/routerInternal/recordsWarnings.mjs +49 -0
  93. package/dist/dev/routerInternal/recordsWarnings.mjs.map +1 -0
  94. package/dist/dev/routerInternal/snapshots.mjs +126 -0
  95. package/dist/dev/routerInternal/snapshots.mjs.map +1 -0
  96. package/dist/dev/runtime/app/computed.mjs +68 -0
  97. package/dist/dev/runtime/app/computed.mjs.map +1 -0
  98. package/dist/dev/runtime/app/context.mjs +275 -0
  99. package/dist/dev/runtime/app/context.mjs.map +1 -0
  100. package/dist/dev/runtime/app/diagnostics.mjs +34 -0
  101. package/dist/dev/runtime/app/diagnostics.mjs.map +1 -0
  102. package/dist/dev/runtime/app/mount.mjs +269 -0
  103. package/dist/dev/runtime/app/mount.mjs.map +1 -0
  104. package/dist/dev/runtime/app/pending.mjs +14 -0
  105. package/dist/dev/runtime/app/pending.mjs.map +1 -0
  106. package/dist/dev/runtime/app/setData/patchScheduler.mjs +158 -0
  107. package/dist/dev/runtime/app/setData/patchScheduler.mjs.map +1 -0
  108. package/dist/dev/runtime/app/setData/payload.mjs +161 -0
  109. package/dist/dev/runtime/app/setData/payload.mjs.map +1 -0
  110. package/dist/dev/runtime/app/setData/scheduler.mjs +313 -0
  111. package/dist/dev/runtime/app/setData/scheduler.mjs.map +1 -0
  112. package/dist/dev/runtime/app/setData/snapshot.mjs +129 -0
  113. package/dist/dev/runtime/app/setData/snapshot.mjs.map +1 -0
  114. package/dist/dev/runtime/app/setDataOptions.mjs +73 -0
  115. package/dist/dev/runtime/app/setDataOptions.mjs.map +1 -0
  116. package/dist/dev/runtime/app.mjs +93 -0
  117. package/dist/dev/runtime/app.mjs.map +1 -0
  118. package/dist/dev/runtime/bindModel.mjs +92 -0
  119. package/dist/dev/runtime/bindModel.mjs.map +1 -0
  120. package/dist/dev/runtime/defaults.mjs +61 -0
  121. package/dist/dev/runtime/defaults.mjs.map +1 -0
  122. package/dist/dev/runtime/define/initialComputed.mjs +125 -0
  123. package/dist/dev/runtime/define/initialComputed.mjs.map +1 -0
  124. package/dist/dev/runtime/define/options.mjs +169 -0
  125. package/dist/dev/runtime/define/options.mjs.map +1 -0
  126. package/dist/dev/runtime/define/optionsApi.mjs +48 -0
  127. package/dist/dev/runtime/define/optionsApi.mjs.map +1 -0
  128. package/dist/dev/runtime/define/props.mjs +194 -0
  129. package/dist/dev/runtime/define/props.mjs.map +1 -0
  130. package/dist/dev/runtime/define/scopedSlotOptions.mjs +313 -0
  131. package/dist/dev/runtime/define/scopedSlotOptions.mjs.map +1 -0
  132. package/dist/dev/runtime/define/setupResult.mjs +78 -0
  133. package/dist/dev/runtime/define/setupResult.mjs.map +1 -0
  134. package/dist/dev/runtime/define.mjs +140 -0
  135. package/dist/dev/runtime/define.mjs.map +1 -0
  136. package/dist/dev/runtime/diff.mjs +193 -0
  137. package/dist/dev/runtime/diff.mjs.map +1 -0
  138. package/dist/dev/runtime/disposables.mjs +81 -0
  139. package/dist/dev/runtime/disposables.mjs.map +1 -0
  140. package/dist/dev/runtime/elementIntersectionObserver.mjs +80 -0
  141. package/dist/dev/runtime/elementIntersectionObserver.mjs.map +1 -0
  142. package/dist/dev/runtime/emit.mjs +36 -0
  143. package/dist/dev/runtime/emit.mjs.map +1 -0
  144. package/dist/dev/{base-CYkvI7w8.mjs → runtime/hooks/base.mjs} +3 -140
  145. package/dist/dev/runtime/hooks/base.mjs.map +1 -0
  146. package/dist/dev/runtime/hooks/register.mjs +92 -0
  147. package/dist/dev/runtime/hooks/register.mjs.map +1 -0
  148. package/dist/dev/runtime/hooks/vue.mjs +81 -0
  149. package/dist/dev/runtime/hooks/vue.mjs.map +1 -0
  150. package/dist/dev/runtime/internal.mjs +18 -0
  151. package/dist/dev/runtime/internal.mjs.map +1 -0
  152. package/dist/dev/runtime/intersectionObserver.mjs +46 -0
  153. package/dist/dev/runtime/intersectionObserver.mjs.map +1 -0
  154. package/dist/dev/runtime/layoutBridge.mjs +303 -0
  155. package/dist/dev/runtime/layoutBridge.mjs.map +1 -0
  156. package/dist/dev/runtime/layoutComponentMatcher.mjs +11 -0
  157. package/dist/dev/runtime/layoutComponentMatcher.mjs.map +1 -0
  158. package/dist/dev/runtime/nativeBridge.mjs +21 -0
  159. package/dist/dev/runtime/nativeBridge.mjs.map +1 -0
  160. package/dist/dev/runtime/noSetData.mjs +18 -0
  161. package/dist/dev/runtime/noSetData.mjs.map +1 -0
  162. package/dist/dev/runtime/pageEnvironment.mjs +100 -0
  163. package/dist/dev/runtime/pageEnvironment.mjs.map +1 -0
  164. package/dist/dev/runtime/pageLayout.mjs +71 -0
  165. package/dist/dev/runtime/pageLayout.mjs.map +1 -0
  166. package/dist/dev/runtime/pageScroll.mjs +110 -0
  167. package/dist/dev/runtime/pageScroll.mjs.map +1 -0
  168. package/dist/dev/runtime/platform.mjs +77 -0
  169. package/dist/dev/runtime/platform.mjs.map +1 -0
  170. package/dist/dev/runtime/provide.mjs +71 -0
  171. package/dist/dev/runtime/provide.mjs.map +1 -0
  172. package/dist/dev/runtime/provideContext.mjs +101 -0
  173. package/dist/dev/runtime/provideContext.mjs.map +1 -0
  174. package/dist/dev/runtime/provideStore.mjs +18 -0
  175. package/dist/dev/runtime/provideStore.mjs.map +1 -0
  176. package/dist/dev/runtime/pullDownRefresh.mjs +24 -0
  177. package/dist/dev/runtime/pullDownRefresh.mjs.map +1 -0
  178. package/dist/dev/runtime/register/app.mjs +159 -0
  179. package/dist/dev/runtime/register/app.mjs.map +1 -0
  180. package/dist/dev/runtime/register/component/features.mjs +43 -0
  181. package/dist/dev/runtime/register/component/features.mjs.map +1 -0
  182. package/dist/dev/runtime/register/component/lifecycle/optionalHooks.mjs +64 -0
  183. package/dist/dev/runtime/register/component/lifecycle/optionalHooks.mjs.map +1 -0
  184. package/dist/dev/runtime/register/component/lifecycle/platform.mjs +95 -0
  185. package/dist/dev/runtime/register/component/lifecycle/platform.mjs.map +1 -0
  186. package/dist/dev/runtime/register/component/lifecycle.mjs +122 -0
  187. package/dist/dev/runtime/register/component/lifecycle.mjs.map +1 -0
  188. package/dist/dev/runtime/register/component/methods.mjs +80 -0
  189. package/dist/dev/runtime/register/component/methods.mjs.map +1 -0
  190. package/dist/dev/runtime/register/component/options.mjs +204 -0
  191. package/dist/dev/runtime/register/component/options.mjs.map +1 -0
  192. package/dist/dev/runtime/register/component/props.mjs +218 -0
  193. package/dist/dev/runtime/register/component/props.mjs.map +1 -0
  194. package/dist/dev/runtime/register/component/registerDefinition.mjs +290 -0
  195. package/dist/dev/runtime/register/component/registerDefinition.mjs.map +1 -0
  196. package/dist/dev/runtime/register/component.mjs +128 -0
  197. package/dist/dev/runtime/register/component.mjs.map +1 -0
  198. package/dist/dev/runtime/register/inline.mjs +145 -0
  199. package/dist/dev/runtime/register/inline.mjs.map +1 -0
  200. package/dist/dev/runtime/register/runtimeInstance/methodBridge.mjs +53 -0
  201. package/dist/dev/runtime/register/runtimeInstance/methodBridge.mjs.map +1 -0
  202. package/dist/dev/runtime/register/runtimeInstance/provideContext.mjs +34 -0
  203. package/dist/dev/runtime/register/runtimeInstance/provideContext.mjs.map +1 -0
  204. package/dist/dev/runtime/register/runtimeInstance/setupContext.mjs +230 -0
  205. package/dist/dev/runtime/register/runtimeInstance/setupContext.mjs.map +1 -0
  206. package/dist/dev/runtime/register/runtimeInstance/setupPhase.mjs +164 -0
  207. package/dist/dev/runtime/register/runtimeInstance/setupPhase.mjs.map +1 -0
  208. package/dist/dev/runtime/register/runtimeInstance/utils.mjs +122 -0
  209. package/dist/dev/runtime/register/runtimeInstance/utils.mjs.map +1 -0
  210. package/dist/dev/runtime/register/runtimeInstance.mjs +438 -0
  211. package/dist/dev/runtime/register/runtimeInstance.mjs.map +1 -0
  212. package/dist/dev/runtime/register/setDataFrequencyWarning.mjs +95 -0
  213. package/dist/dev/runtime/register/setDataFrequencyWarning.mjs.map +1 -0
  214. package/dist/dev/runtime/register/setup.mjs +22 -0
  215. package/dist/dev/runtime/register/setup.mjs.map +1 -0
  216. package/dist/dev/runtime/register/snapshot.mjs +17 -0
  217. package/dist/dev/runtime/register/snapshot.mjs.map +1 -0
  218. package/dist/dev/runtime/register/watch.mjs +57 -0
  219. package/dist/dev/runtime/register/watch.mjs.map +1 -0
  220. package/dist/dev/runtime/scopedSlots.mjs +115 -0
  221. package/dist/dev/runtime/scopedSlots.mjs.map +1 -0
  222. package/dist/dev/runtime/selectorQuery.mjs +49 -0
  223. package/dist/dev/runtime/selectorQuery.mjs.map +1 -0
  224. package/dist/dev/runtime/setupTracking.mjs +59 -0
  225. package/dist/dev/runtime/setupTracking.mjs.map +1 -0
  226. package/dist/dev/{template-n_iVr0ey.mjs → runtime/template.mjs} +7 -4
  227. package/dist/dev/runtime/template.mjs.map +1 -0
  228. package/dist/dev/runtime/templateRefs/helpers.mjs +254 -0
  229. package/dist/dev/runtime/templateRefs/helpers.mjs.map +1 -0
  230. package/dist/dev/runtime/templateRefs.mjs +162 -0
  231. package/dist/dev/runtime/templateRefs.mjs.map +1 -0
  232. package/dist/dev/runtime/uniAppHost.mjs +119 -0
  233. package/dist/dev/runtime/uniAppHost.mjs.map +1 -0
  234. package/dist/dev/runtime/updatePerformance.mjs +41 -0
  235. package/dist/dev/runtime/updatePerformance.mjs.map +1 -0
  236. package/dist/dev/runtime/use.mjs +25 -0
  237. package/dist/dev/runtime/use.mjs.map +1 -0
  238. package/dist/dev/runtime/vueCompat/context.mjs +25 -0
  239. package/dist/dev/runtime/vueCompat/context.mjs.map +1 -0
  240. package/dist/dev/runtime/vueCompat/model.mjs +118 -0
  241. package/dist/dev/runtime/vueCompat/model.mjs.map +1 -0
  242. package/dist/dev/runtime/vueCompat/router.mjs +124 -0
  243. package/dist/dev/runtime/vueCompat/router.mjs.map +1 -0
  244. package/dist/dev/runtime/vueCompat/templateRef.mjs +37 -0
  245. package/dist/dev/runtime/vueCompat/templateRef.mjs.map +1 -0
  246. package/dist/dev/scheduler.mjs +75 -0
  247. package/dist/dev/scheduler.mjs.map +1 -0
  248. package/dist/dev/store/actions.mjs +40 -0
  249. package/dist/dev/store/actions.mjs.map +1 -0
  250. package/dist/dev/store/base.mjs +56 -0
  251. package/dist/dev/store/base.mjs.map +1 -0
  252. package/dist/dev/store/define/optionsStyle.mjs +125 -0
  253. package/dist/dev/store/define/optionsStyle.mjs.map +1 -0
  254. package/dist/dev/store/define/setupStyle.mjs +145 -0
  255. package/dist/dev/store/define/setupStyle.mjs.map +1 -0
  256. package/dist/dev/store/define/shared.mjs +38 -0
  257. package/dist/dev/store/define/shared.mjs.map +1 -0
  258. package/dist/dev/store/define.mjs +23 -0
  259. package/dist/dev/store/define.mjs.map +1 -0
  260. package/dist/dev/store/manager.mjs +21 -0
  261. package/dist/dev/store/manager.mjs.map +1 -0
  262. package/dist/dev/store/storeToRefs.mjs +29 -0
  263. package/dist/dev/store/storeToRefs.mjs.map +1 -0
  264. package/dist/dev/store/utils.mjs +49 -0
  265. package/dist/dev/store/utils.mjs.map +1 -0
  266. package/dist/dev/store.mjs +3 -1
  267. package/dist/dev/utils.mjs +16 -0
  268. package/dist/dev/utils.mjs.map +1 -0
  269. package/dist/dev/version.mjs +8 -0
  270. package/dist/dev/version.mjs.map +1 -0
  271. package/dist/dev/vue-demi.mjs +49 -11
  272. package/dist/dev/vue-demi.mjs.map +1 -1
  273. package/dist/index.d.mts +71 -7
  274. package/dist/index.mjs +1 -1
  275. package/dist/internal-reactivity.d.mts +16 -2
  276. package/dist/internal-reactivity.mjs +1 -1
  277. package/dist/internal-runtime.d.mts +35 -2
  278. package/dist/internal-runtime.mjs +1 -1
  279. package/dist/internal-template.d.mts +1 -1
  280. package/dist/internal-template.mjs +1 -1
  281. package/dist/jsx-runtime.d.mts +1 -1
  282. package/dist/macros/shared.d.mts +81 -0
  283. package/dist/macros.d.mts +70 -0
  284. package/dist/package.mjs +1 -0
  285. package/dist/reactivity/computed.d.mts +21 -0
  286. package/dist/reactivity/computed.mjs +1 -0
  287. package/dist/reactivity/core.d.mts +34 -0
  288. package/dist/reactivity/core.mjs +1 -0
  289. package/dist/reactivity/index.d.mts +15 -0
  290. package/dist/reactivity/reactive/mutation.d.mts +21 -0
  291. package/dist/reactivity/reactive/mutation.mjs +1 -0
  292. package/dist/reactivity/reactive/patch.d.mts +18 -0
  293. package/dist/reactivity/reactive/patch.mjs +1 -0
  294. package/dist/reactivity/reactive/patchState.mjs +1 -0
  295. package/dist/reactivity/reactive/shallow.d.mts +22 -0
  296. package/dist/reactivity/reactive/shallow.mjs +1 -0
  297. package/dist/reactivity/reactive/shared.d.mts +4 -0
  298. package/dist/reactivity/reactive/shared.mjs +1 -0
  299. package/dist/reactivity/reactive/state.mjs +1 -0
  300. package/dist/reactivity/reactive.d.mts +41 -0
  301. package/dist/reactivity/reactive.mjs +1 -0
  302. package/dist/reactivity/readonly.d.mts +27 -0
  303. package/dist/reactivity/readonly.mjs +1 -0
  304. package/dist/reactivity/ref.d.mts +27 -0
  305. package/dist/reactivity/ref.mjs +1 -0
  306. package/dist/reactivity/shallowRef.d.mts +19 -0
  307. package/dist/reactivity/shallowRef.mjs +1 -0
  308. package/dist/reactivity/toRefs.d.mts +43 -0
  309. package/dist/reactivity/toRefs.mjs +1 -0
  310. package/dist/reactivity/traverse.d.mts +8 -0
  311. package/dist/reactivity/traverse.mjs +1 -0
  312. package/dist/reactivity/watch/helpers.mjs +1 -0
  313. package/dist/reactivity/watch/types.d.mts +43 -0
  314. package/dist/reactivity/watch/types.mjs +1 -0
  315. package/dist/reactivity/watch.d.mts +21 -0
  316. package/dist/reactivity/watch.mjs +1 -0
  317. package/dist/router/backNavigation.mjs +1 -0
  318. package/dist/router/createRouter.d.mts +8 -0
  319. package/dist/router/createRouter.mjs +1 -0
  320. package/dist/router/instance.mjs +1 -0
  321. package/dist/router/navigationApi.mjs +1 -0
  322. package/dist/router/navigationCore.d.mts +6 -0
  323. package/dist/router/navigationCore.mjs +1 -0
  324. package/dist/router/navigationResult.mjs +1 -0
  325. package/dist/router/navigationTarget.mjs +1 -0
  326. package/dist/router/navigationTargetHelpers.mjs +1 -0
  327. package/dist/router/resolve.d.mts +6 -0
  328. package/dist/router/resolve.mjs +1 -0
  329. package/dist/router/routeRegistry.mjs +1 -0
  330. package/dist/router/routeSync.d.mts +1 -0
  331. package/dist/router/routeSync.mjs +1 -0
  332. package/dist/router/types.d.mts +163 -0
  333. package/dist/router/types.mjs +1 -0
  334. package/dist/router/useRoute.d.mts +19 -0
  335. package/dist/router/useRoute.mjs +1 -0
  336. package/dist/router/useRouter.d.mts +8 -0
  337. package/dist/router/useRouter.mjs +1 -0
  338. package/dist/router.d.mts +9 -204
  339. package/dist/router.mjs +1 -1
  340. package/dist/routerInternal/location.mjs +1 -0
  341. package/dist/routerInternal/matching.mjs +1 -0
  342. package/dist/routerInternal/params.mjs +1 -0
  343. package/dist/routerInternal/path.mjs +1 -0
  344. package/dist/routerInternal/query.d.mts +7 -0
  345. package/dist/routerInternal/query.mjs +1 -0
  346. package/dist/routerInternal/records.mjs +1 -0
  347. package/dist/routerInternal/recordsWarnings.mjs +1 -0
  348. package/dist/routerInternal/snapshots.mjs +1 -0
  349. package/dist/routerInternal/types.d.mts +9 -0
  350. package/dist/runtime/app/computed.mjs +1 -0
  351. package/dist/runtime/app/context.mjs +1 -0
  352. package/dist/runtime/app/diagnostics.mjs +1 -0
  353. package/dist/runtime/app/mount.mjs +1 -0
  354. package/dist/runtime/app/pending.d.mts +10 -0
  355. package/dist/runtime/app/pending.mjs +1 -0
  356. package/dist/runtime/app/setData/patchScheduler.mjs +1 -0
  357. package/dist/runtime/app/setData/payload.mjs +1 -0
  358. package/dist/runtime/app/setData/scheduler.mjs +1 -0
  359. package/dist/runtime/app/setData/snapshot.mjs +1 -0
  360. package/dist/runtime/app/setDataOptions.mjs +1 -0
  361. package/dist/runtime/app.d.mts +8 -0
  362. package/dist/runtime/app.mjs +1 -0
  363. package/dist/runtime/bindModel.mjs +1 -0
  364. package/dist/runtime/defaults.d.mts +11 -0
  365. package/dist/runtime/defaults.mjs +1 -0
  366. package/dist/runtime/define/initialComputed.mjs +1 -0
  367. package/dist/runtime/define/options.mjs +1 -0
  368. package/dist/runtime/define/optionsApi.mjs +1 -0
  369. package/dist/runtime/define/props.mjs +1 -0
  370. package/dist/runtime/define/scopedSlotOptions.mjs +1 -0
  371. package/dist/runtime/define/setupResult.mjs +1 -0
  372. package/dist/runtime/define.d.mts +105 -0
  373. package/dist/runtime/define.mjs +1 -0
  374. package/dist/runtime/diff.mjs +1 -0
  375. package/dist/runtime/disposables.d.mts +31 -0
  376. package/dist/runtime/disposables.mjs +1 -0
  377. package/dist/runtime/elementIntersectionObserver.d.mts +26 -0
  378. package/dist/runtime/elementIntersectionObserver.mjs +1 -0
  379. package/dist/runtime/emit.mjs +1 -0
  380. package/dist/runtime/hooks/base.d.mts +27 -0
  381. package/dist/runtime/hooks/base.mjs +1 -0
  382. package/dist/runtime/hooks/register.d.mts +30 -0
  383. package/dist/runtime/hooks/register.mjs +1 -0
  384. package/dist/runtime/hooks/vue.d.mts +53 -0
  385. package/dist/runtime/hooks/vue.mjs +1 -0
  386. package/dist/runtime/hooks.d.mts +4 -0
  387. package/dist/runtime/index.d.mts +47 -0
  388. package/dist/runtime/internal.mjs +1 -0
  389. package/dist/runtime/intersectionObserver.d.mts +14 -0
  390. package/dist/runtime/intersectionObserver.mjs +1 -0
  391. package/dist/runtime/layoutBridge.d.mts +59 -0
  392. package/dist/runtime/layoutBridge.mjs +1 -0
  393. package/dist/runtime/layoutComponentMatcher.mjs +1 -0
  394. package/dist/runtime/nativeBridge.mjs +1 -0
  395. package/dist/runtime/noSetData.d.mts +5 -0
  396. package/dist/runtime/noSetData.mjs +1 -0
  397. package/dist/runtime/pageEnvironment.d.mts +50 -0
  398. package/dist/runtime/pageEnvironment.mjs +1 -0
  399. package/dist/runtime/pageLayout.d.mts +26 -0
  400. package/dist/runtime/pageLayout.mjs +1 -0
  401. package/dist/runtime/pageScroll.d.mts +29 -0
  402. package/dist/runtime/pageScroll.mjs +1 -0
  403. package/dist/runtime/platform.mjs +1 -0
  404. package/dist/runtime/provide.d.mts +59 -0
  405. package/dist/runtime/provide.mjs +1 -0
  406. package/dist/runtime/provideContext.mjs +1 -0
  407. package/dist/runtime/provideStore.d.mts +7 -0
  408. package/dist/runtime/provideStore.mjs +1 -0
  409. package/dist/runtime/pullDownRefresh.d.mts +12 -0
  410. package/dist/runtime/pullDownRefresh.mjs +1 -0
  411. package/dist/runtime/register/app.d.mts +14 -0
  412. package/dist/runtime/register/app.mjs +1 -0
  413. package/dist/runtime/register/component/features.mjs +1 -0
  414. package/dist/runtime/register/component/lifecycle/optionalHooks.mjs +1 -0
  415. package/dist/runtime/register/component/lifecycle/platform.mjs +1 -0
  416. package/dist/runtime/register/component/lifecycle.mjs +1 -0
  417. package/dist/runtime/register/component/methods.mjs +1 -0
  418. package/dist/runtime/register/component/options.mjs +1 -0
  419. package/dist/runtime/register/component/props.mjs +1 -0
  420. package/dist/runtime/register/component/registerDefinition.mjs +1 -0
  421. package/dist/runtime/register/component.d.mts +15 -0
  422. package/dist/runtime/register/component.mjs +1 -0
  423. package/dist/runtime/register/inline.d.mts +15 -0
  424. package/dist/runtime/register/inline.mjs +1 -0
  425. package/dist/runtime/register/runtimeInstance/methodBridge.mjs +1 -0
  426. package/dist/runtime/register/runtimeInstance/provideContext.mjs +1 -0
  427. package/dist/runtime/register/runtimeInstance/setupContext.mjs +1 -0
  428. package/dist/runtime/register/runtimeInstance/setupPhase.mjs +1 -0
  429. package/dist/runtime/register/runtimeInstance/utils.mjs +1 -0
  430. package/dist/runtime/register/runtimeInstance.d.mts +26 -0
  431. package/dist/runtime/register/runtimeInstance.mjs +1 -0
  432. package/dist/runtime/register/setDataFrequencyWarning.mjs +1 -0
  433. package/dist/runtime/register/setup.d.mts +11 -0
  434. package/dist/runtime/register/setup.mjs +1 -0
  435. package/dist/runtime/register/snapshot.mjs +1 -0
  436. package/dist/runtime/register/watch.d.mts +12 -0
  437. package/dist/runtime/register/watch.mjs +1 -0
  438. package/dist/runtime/register.d.mts +5 -0
  439. package/dist/runtime/scopedSlots.mjs +1 -0
  440. package/dist/runtime/selectorQuery.d.mts +54 -0
  441. package/dist/runtime/selectorQuery.mjs +1 -0
  442. package/dist/runtime/setupTracking.mjs +1 -0
  443. package/dist/{template-DE8e5dj_.d.mts → runtime/template.d.mts} +1 -1
  444. package/dist/runtime/template.mjs +1 -0
  445. package/dist/runtime/templateRefTypes.d.mts +7 -0
  446. package/dist/runtime/templateRefs/helpers.mjs +1 -0
  447. package/dist/runtime/templateRefs.d.mts +11 -0
  448. package/dist/runtime/templateRefs.mjs +1 -0
  449. package/dist/runtime/types/core.d.mts +35 -0
  450. package/dist/runtime/types/miniprogram.d.mts +80 -0
  451. package/dist/runtime/types/miniprogramHost.d.mts +44 -0
  452. package/dist/runtime/types/miniprogramHostSources.d.mts +112 -0
  453. package/dist/runtime/types/options.d.mts +136 -0
  454. package/dist/runtime/types/props/propTypes.d.mts +79 -0
  455. package/dist/runtime/types/props/router.d.mts +51 -0
  456. package/dist/runtime/types/props/setup.d.mts +96 -0
  457. package/dist/runtime/types/props.d.mts +4 -0
  458. package/dist/runtime/types/runtime.d.mts +59 -0
  459. package/dist/runtime/types/setData.d.mts +220 -0
  460. package/dist/runtime/types.d.mts +28 -0
  461. package/dist/runtime/uniAppHost.d.mts +8 -0
  462. package/dist/runtime/uniAppHost.mjs +1 -0
  463. package/dist/runtime/updatePerformance.d.mts +13 -0
  464. package/dist/runtime/updatePerformance.mjs +1 -0
  465. package/dist/runtime/use.d.mts +13 -0
  466. package/dist/runtime/use.mjs +1 -0
  467. package/dist/runtime/vueCompat/context.d.mts +8 -0
  468. package/dist/runtime/vueCompat/context.mjs +1 -0
  469. package/dist/runtime/vueCompat/model.d.mts +30 -0
  470. package/dist/runtime/vueCompat/model.mjs +1 -0
  471. package/dist/runtime/vueCompat/router.d.mts +28 -0
  472. package/dist/runtime/vueCompat/router.mjs +1 -0
  473. package/dist/runtime/vueCompat/templateRef.d.mts +9 -0
  474. package/dist/runtime/vueCompat/templateRef.mjs +1 -0
  475. package/dist/runtime/vueCompat.d.mts +5 -0
  476. package/dist/scheduler.d.mts +4 -0
  477. package/dist/scheduler.mjs +1 -0
  478. package/dist/store/actions.mjs +1 -0
  479. package/dist/store/base.mjs +1 -0
  480. package/dist/store/define/optionsStyle.mjs +1 -0
  481. package/dist/store/define/setupStyle.mjs +1 -0
  482. package/dist/store/define/shared.mjs +1 -0
  483. package/dist/store/define.d.mts +26 -0
  484. package/dist/store/define.mjs +1 -0
  485. package/dist/store/manager.d.mts +8 -0
  486. package/dist/store/manager.mjs +1 -0
  487. package/dist/store/storeToRefs.d.mts +13 -0
  488. package/dist/store/storeToRefs.mjs +1 -0
  489. package/dist/store/types.d.mts +70 -0
  490. package/dist/store/utils.mjs +1 -0
  491. package/dist/store.d.mts +4 -1
  492. package/dist/store.mjs +1 -1
  493. package/dist/utils.mjs +1 -0
  494. package/dist/version.d.mts +4 -0
  495. package/dist/version.mjs +1 -0
  496. package/dist/vue-augment.d.mts +6 -0
  497. package/dist/vue-demi.d.mts +67 -7
  498. package/dist/vue-demi.mjs +1 -1
  499. package/dist/vue-types.d.mts +18 -0
  500. package/dist/weappIntrinsicElements/base.d.mts +22 -0
  501. package/dist/weappIntrinsicElements/elements/ad-custom.d.mts +13 -0
  502. package/dist/weappIntrinsicElements/elements/ad.d.mts +16 -0
  503. package/dist/weappIntrinsicElements/elements/audio.d.mts +20 -0
  504. package/dist/weappIntrinsicElements/elements/block.d.mts +8 -0
  505. package/dist/weappIntrinsicElements/elements/button.d.mts +40 -0
  506. package/dist/weappIntrinsicElements/elements/camera.d.mts +18 -0
  507. package/dist/weappIntrinsicElements/elements/canvas.d.mts +18 -0
  508. package/dist/weappIntrinsicElements/elements/checkbox-group.d.mts +13 -0
  509. package/dist/weappIntrinsicElements/elements/checkbox.d.mts +13 -0
  510. package/dist/weappIntrinsicElements/elements/cover-image.d.mts +10 -0
  511. package/dist/weappIntrinsicElements/elements/cover-view.d.mts +10 -0
  512. package/dist/weappIntrinsicElements/elements/editor.d.mts +22 -0
  513. package/dist/weappIntrinsicElements/elements/form.d.mts +16 -0
  514. package/dist/weappIntrinsicElements/elements/functional-page-navigator.d.mts +15 -0
  515. package/dist/weappIntrinsicElements/elements/icon.d.mts +12 -0
  516. package/dist/weappIntrinsicElements/elements/image.d.mts +18 -0
  517. package/dist/weappIntrinsicElements/elements/import.d.mts +10 -0
  518. package/dist/weappIntrinsicElements/elements/include.d.mts +10 -0
  519. package/dist/weappIntrinsicElements/elements/input.d.mts +47 -0
  520. package/dist/weappIntrinsicElements/elements/keyboard-accessory.d.mts +8 -0
  521. package/dist/weappIntrinsicElements/elements/label.d.mts +10 -0
  522. package/dist/weappIntrinsicElements/elements/live-player.d.mts +35 -0
  523. package/dist/weappIntrinsicElements/elements/live-pusher.d.mts +57 -0
  524. package/dist/weappIntrinsicElements/elements/map.d.mts +105 -0
  525. package/dist/weappIntrinsicElements/elements/match-media.d.mts +16 -0
  526. package/dist/weappIntrinsicElements/elements/movable-area.d.mts +26 -0
  527. package/dist/weappIntrinsicElements/elements/movable-view.d.mts +26 -0
  528. package/dist/weappIntrinsicElements/elements/navigation-bar.d.mts +15 -0
  529. package/dist/weappIntrinsicElements/elements/navigator.d.mts +25 -0
  530. package/dist/weappIntrinsicElements/elements/official-account.d.mts +13 -0
  531. package/dist/weappIntrinsicElements/elements/open-data.d.mts +15 -0
  532. package/dist/weappIntrinsicElements/elements/page-container.d.mts +25 -0
  533. package/dist/weappIntrinsicElements/elements/page-meta.d.mts +23 -0
  534. package/dist/weappIntrinsicElements/elements/picker-view-column.d.mts +18 -0
  535. package/dist/weappIntrinsicElements/elements/picker-view.d.mts +18 -0
  536. package/dist/weappIntrinsicElements/elements/picker.d.mts +23 -0
  537. package/dist/weappIntrinsicElements/elements/progress.d.mts +21 -0
  538. package/dist/weappIntrinsicElements/elements/radio-group.d.mts +13 -0
  539. package/dist/weappIntrinsicElements/elements/radio.d.mts +13 -0
  540. package/dist/weappIntrinsicElements/elements/rich-text.d.mts +17 -0
  541. package/dist/weappIntrinsicElements/elements/scroll-view.d.mts +68 -0
  542. package/dist/weappIntrinsicElements/elements/share-element.d.mts +18 -0
  543. package/dist/weappIntrinsicElements/elements/slider.d.mts +23 -0
  544. package/dist/weappIntrinsicElements/elements/slot.d.mts +10 -0
  545. package/dist/weappIntrinsicElements/elements/swiper-item.d.mts +42 -0
  546. package/dist/weappIntrinsicElements/elements/swiper.d.mts +42 -0
  547. package/dist/weappIntrinsicElements/elements/switch.d.mts +14 -0
  548. package/dist/weappIntrinsicElements/elements/template.d.mts +12 -0
  549. package/dist/weappIntrinsicElements/elements/text.d.mts +15 -0
  550. package/dist/weappIntrinsicElements/elements/textarea.d.mts +40 -0
  551. package/dist/weappIntrinsicElements/elements/video.d.mts +71 -0
  552. package/dist/weappIntrinsicElements/elements/view.d.mts +13 -0
  553. package/dist/weappIntrinsicElements/elements/voip-room.d.mts +14 -0
  554. package/dist/weappIntrinsicElements/elements/web-view.d.mts +13 -0
  555. package/dist/weappIntrinsicElements.d.mts +153 -0
  556. package/package.json +6 -6
  557. package/dist/base-BxKbbKVO.mjs +0 -1
  558. package/dist/computed-Xoi9XEUx.mjs +0 -1
  559. package/dist/dev/base-CYkvI7w8.mjs.map +0 -1
  560. package/dist/dev/computed-BxRsUJgi.mjs.map +0 -1
  561. package/dist/dev/ref-DRZC3Kc5.mjs +0 -695
  562. package/dist/dev/ref-DRZC3Kc5.mjs.map +0 -1
  563. package/dist/dev/router-DjGhTM7A.mjs +0 -739
  564. package/dist/dev/router-DjGhTM7A.mjs.map +0 -1
  565. package/dist/dev/router.mjs.map +0 -1
  566. package/dist/dev/store-HNsiQJ4d.mjs +0 -479
  567. package/dist/dev/store-HNsiQJ4d.mjs.map +0 -1
  568. package/dist/dev/template-n_iVr0ey.mjs.map +0 -1
  569. package/dist/dev/templateRef-Dyo45y5v.mjs +0 -6436
  570. package/dist/dev/templateRef-Dyo45y5v.mjs.map +0 -1
  571. package/dist/dev/toRefs-D06VmFK2.mjs.map +0 -1
  572. package/dist/dev/watch-jrgL5ald.mjs +0 -445
  573. package/dist/dev/watch-jrgL5ald.mjs.map +0 -1
  574. package/dist/index-BiHILcmb.d.mts +0 -1215
  575. package/dist/index-CCET_bCY.d.mts +0 -111
  576. package/dist/ref-D37CknuD.mjs +0 -1
  577. package/dist/router-DJOmKqXb.mjs +0 -1
  578. package/dist/store-eHrHBQiv.mjs +0 -1
  579. package/dist/template-CNzlwH-E.mjs +0 -1
  580. package/dist/templateRef-L_qeTIeS.mjs +0 -1
  581. package/dist/toRefs-CoytPyo0.mjs +0 -1
  582. package/dist/traverse-B4Ez44Gd.d.mts +0 -108
  583. package/dist/vue-types-B3N60cGV.d.mts +0 -757
  584. package/dist/watch-Bbd-gmEg.mjs +0 -1
  585. package/dist/weappIntrinsicElements-BgDtC53_.d.mts +0 -1257
@@ -0,0 +1,80 @@
1
+ import { toValue } from "../reactivity/ref.mjs";
2
+ import { getCurrentMiniProgramRuntimeCapabilities, getMiniProgramGlobalObject, supportsCurrentMiniProgramRuntimeCapability } from "./platform.mjs";
3
+ import { getCurrentInstance, getCurrentSetupContext } from "./hooks/base.mjs";
4
+ import { onDetached, onUnload } from "./hooks/register.mjs";
5
+ import { onMounted, onUnmounted } from "./hooks/vue.mjs";
6
+ import { watch } from "../reactivity/watch.mjs";
7
+
8
+ //#region src/runtime/elementIntersectionObserver.ts
9
+ function createObserverFromContext(context, options) {
10
+ const nativeContext = context;
11
+ const creator = nativeContext.createIntersectionObserver;
12
+ if (typeof creator === "function") return creator.call(nativeContext, options);
13
+ if (!supportsCurrentMiniProgramRuntimeCapability("globalCreateIntersectionObserver")) return;
14
+ const miniProgramGlobal = getMiniProgramGlobalObject();
15
+ const globalCreator = miniProgramGlobal === null || miniProgramGlobal === void 0 ? void 0 : miniProgramGlobal.createIntersectionObserver;
16
+ if (typeof globalCreator !== "function") return;
17
+ return getCurrentMiniProgramRuntimeCapabilities().intersectionObserverScopeByParameter ? globalCreator.call(miniProgramGlobal, context, options) : globalCreator.call(miniProgramGlobal, options);
18
+ }
19
+ function applyRelativeToViewport(observer, relativeToViewport) {
20
+ var _observer$relativeToV;
21
+ if (relativeToViewport === false || typeof observer.relativeToViewport !== "function") return observer;
22
+ const margins = relativeToViewport && typeof relativeToViewport === "object" ? relativeToViewport : void 0;
23
+ return (_observer$relativeToV = observer.relativeToViewport(margins)) !== null && _observer$relativeToV !== void 0 ? _observer$relativeToV : observer;
24
+ }
25
+ /**
26
+ * 观察当前组件或页面内的节点可见性,并在卸载时自动断开。
27
+ */
28
+ function useElementIntersectionObserver(options) {
29
+ var _options$context;
30
+ const context = (_options$context = options.context) !== null && _options$context !== void 0 ? _options$context : getCurrentInstance();
31
+ if (!context || !getCurrentSetupContext()) throw new Error("useElementIntersectionObserver() 必须在 setup() 的同步阶段调用");
32
+ let observer = null;
33
+ const disconnect = () => {
34
+ if (!observer) return;
35
+ try {
36
+ observer.disconnect();
37
+ } catch (_unused) {}
38
+ observer = null;
39
+ };
40
+ const observe = () => {
41
+ var _options$observerOpti, _options$relativeToVi;
42
+ disconnect();
43
+ const selector = toValue(options.selector);
44
+ if (!(options.enabled == null ? true : toValue(options.enabled)) || !selector) return null;
45
+ const nextObserver = createObserverFromContext(context, toValue((_options$observerOpti = options.observerOptions) !== null && _options$observerOpti !== void 0 ? _options$observerOpti : {}));
46
+ if (!nextObserver || typeof nextObserver.observe !== "function") return null;
47
+ observer = applyRelativeToViewport(nextObserver, (_options$relativeToVi = options.relativeToViewport) !== null && _options$relativeToVi !== void 0 ? _options$relativeToVi : true);
48
+ observer.observe(selector, (result) => {
49
+ var _options$onObserve;
50
+ return (_options$onObserve = options.onObserve) === null || _options$onObserve === void 0 ? void 0 : _options$onObserve.call(options, result);
51
+ });
52
+ return observer;
53
+ };
54
+ watch(() => {
55
+ var _options$observerOpti2;
56
+ return [
57
+ toValue(options.selector),
58
+ options.enabled == null ? true : toValue(options.enabled),
59
+ toValue((_options$observerOpti2 = options.observerOptions) !== null && _options$observerOpti2 !== void 0 ? _options$observerOpti2 : {}),
60
+ options.relativeToViewport
61
+ ];
62
+ }, () => {
63
+ observe();
64
+ }, { deep: true });
65
+ onMounted(observe);
66
+ onUnmounted(disconnect);
67
+ onUnload(disconnect);
68
+ onDetached(disconnect);
69
+ return {
70
+ disconnect,
71
+ observe,
72
+ get observer() {
73
+ return observer;
74
+ }
75
+ };
76
+ }
77
+
78
+ //#endregion
79
+ export { useElementIntersectionObserver };
80
+ //# sourceMappingURL=elementIntersectionObserver.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"elementIntersectionObserver.mjs","names":[],"sources":["../../../src/runtime/elementIntersectionObserver.ts"],"sourcesContent":["import type { MaybeRefOrGetter } from '../reactivity'\nimport type {\n InternalRuntimeState,\n MiniProgramIntersectionObserver,\n MiniProgramIntersectionObserverOptions,\n} from './types'\nimport { toValue, watch } from '../reactivity'\nimport { getCurrentInstance, getCurrentSetupContext, onDetached, onMounted, onUnload, onUnmounted } from './hooks'\nimport { getCurrentMiniProgramRuntimeCapabilities, getMiniProgramGlobalObject, supportsCurrentMiniProgramRuntimeCapability } from './platform'\n\nexport type ElementIntersectionObserverCallback<T = unknown> = (result: T) => void\n\nexport interface UseElementIntersectionObserverOptions<T = unknown> {\n context?: InternalRuntimeState | null\n enabled?: MaybeRefOrGetter<boolean>\n observerOptions?: MaybeRefOrGetter<MiniProgramIntersectionObserverOptions>\n onObserve?: ElementIntersectionObserverCallback<T>\n relativeToViewport?: boolean | Record<string, number>\n selector: MaybeRefOrGetter<string | null | undefined>\n}\n\nexport interface UseElementIntersectionObserverReturn {\n disconnect: () => void\n observe: () => MiniProgramIntersectionObserver | null\n readonly observer: MiniProgramIntersectionObserver | null\n}\n\nfunction createObserverFromContext(\n context: InternalRuntimeState,\n options: MiniProgramIntersectionObserverOptions,\n) {\n const nativeContext = context as Record<string, any>\n const creator = nativeContext.createIntersectionObserver\n if (typeof creator === 'function') {\n return creator.call(nativeContext, options) as MiniProgramIntersectionObserver | undefined\n }\n\n if (!supportsCurrentMiniProgramRuntimeCapability('globalCreateIntersectionObserver')) {\n return undefined\n }\n\n const miniProgramGlobal = getMiniProgramGlobalObject()\n const globalCreator = miniProgramGlobal?.createIntersectionObserver\n if (typeof globalCreator !== 'function') {\n return undefined\n }\n\n return getCurrentMiniProgramRuntimeCapabilities().intersectionObserverScopeByParameter\n ? globalCreator.call(miniProgramGlobal, context, options)\n : globalCreator.call(miniProgramGlobal, options)\n}\n\nfunction applyRelativeToViewport(\n observer: MiniProgramIntersectionObserver,\n relativeToViewport: UseElementIntersectionObserverOptions['relativeToViewport'],\n) {\n if (relativeToViewport === false || typeof observer.relativeToViewport !== 'function') {\n return observer\n }\n const margins = relativeToViewport && typeof relativeToViewport === 'object'\n ? relativeToViewport\n : undefined\n return observer.relativeToViewport(margins as any) ?? observer\n}\n\n/**\n * 观察当前组件或页面内的节点可见性,并在卸载时自动断开。\n */\nexport function useElementIntersectionObserver<T = unknown>(\n options: UseElementIntersectionObserverOptions<T>,\n): UseElementIntersectionObserverReturn {\n const context = options.context ?? getCurrentInstance<InternalRuntimeState>()\n if (!context || !getCurrentSetupContext()) {\n throw new Error('useElementIntersectionObserver() 必须在 setup() 的同步阶段调用')\n }\n\n let observer: MiniProgramIntersectionObserver | null = null\n\n const disconnect = () => {\n if (!observer) {\n return\n }\n try {\n observer.disconnect()\n }\n catch {\n // 忽略平台差异导致的断开异常,避免影响页面卸载流程\n }\n observer = null\n }\n\n const observe = () => {\n disconnect()\n\n const selector = toValue(options.selector)\n const enabled = options.enabled == null ? true : toValue(options.enabled)\n if (!enabled || !selector) {\n return null\n }\n\n const nextObserver = createObserverFromContext(\n context,\n toValue(options.observerOptions ?? {}),\n )\n if (!nextObserver || typeof nextObserver.observe !== 'function') {\n return null\n }\n\n observer = applyRelativeToViewport(\n nextObserver,\n options.relativeToViewport ?? true,\n )\n observer.observe(selector, result => options.onObserve?.(result as T))\n return observer\n }\n\n watch(\n () => [\n toValue(options.selector),\n options.enabled == null ? true : toValue(options.enabled),\n toValue(options.observerOptions ?? {}),\n options.relativeToViewport,\n ],\n () => {\n observe()\n },\n {\n deep: true,\n },\n )\n\n onMounted(observe)\n onUnmounted(disconnect)\n onUnload(disconnect)\n onDetached(disconnect)\n\n return {\n disconnect,\n observe,\n get observer() {\n return observer\n },\n }\n}\n"],"mappings":";;;;;;;;AA2BA,SAAS,0BACP,SACA,SACA;CACA,MAAM,gBAAgB;CACtB,MAAM,UAAU,cAAc;CAC9B,IAAI,OAAO,YAAY,YACrB,OAAO,QAAQ,KAAK,eAAe,OAAO;CAG5C,IAAI,CAAC,4CAA4C,kCAAkC,GACjF;CAGF,MAAM,oBAAoB,2BAA2B;CACrD,MAAM,sFAAgB,kBAAmB;CACzC,IAAI,OAAO,kBAAkB,YAC3B;CAGF,OAAO,yCAAyC,CAAC,CAAC,uCAC9C,cAAc,KAAK,mBAAmB,SAAS,OAAO,IACtD,cAAc,KAAK,mBAAmB,OAAO;AACnD;AAEA,SAAS,wBACP,UACA,oBACA;;CACA,IAAI,uBAAuB,SAAS,OAAO,SAAS,uBAAuB,YACzE,OAAO;CAET,MAAM,UAAU,sBAAsB,OAAO,uBAAuB,WAChE,qBACA;CACJ,gCAAO,SAAS,mBAAmB,OAAc,0EAAK;AACxD;;;;AAKA,SAAgB,+BACd,SACsC;;CACtC,MAAM,8BAAU,QAAQ,sEAAW,mBAAyC;CAC5E,IAAI,CAAC,WAAW,CAAC,uBAAuB,GACtC,MAAM,IAAI,MAAM,sDAAsD;CAGxE,IAAI,WAAmD;CAEvD,MAAM,mBAAmB;EACvB,IAAI,CAAC,UACH;EAEF,IAAI;GACF,SAAS,WAAW;EACtB,kBACM,CAEN;EACA,WAAW;CACb;CAEA,MAAM,gBAAgB;;EACpB,WAAW;EAEX,MAAM,WAAW,QAAQ,QAAQ,QAAQ;EAEzC,IAAI,EADY,QAAQ,WAAW,OAAO,OAAO,QAAQ,QAAQ,OAAO,MACxD,CAAC,UACf,OAAO;EAGT,MAAM,eAAe,0BACnB,SACA,iCAAQ,QAAQ,wFAAmB,CAAC,CAAC,CACvC;EACA,IAAI,CAAC,gBAAgB,OAAO,aAAa,YAAY,YACnD,OAAO;EAGT,WAAW,wBACT,uCACA,QAAQ,2FAAsB,IAChC;EACA,SAAS,QAAQ,WAAU,WAAU;;wCAAQ,iGAAY,MAAW;GAAC;EACrE,OAAO;CACT;CAEA,YACQ;;;GACJ,QAAQ,QAAQ,QAAQ;GACxB,QAAQ,WAAW,OAAO,OAAO,QAAQ,QAAQ,OAAO;GACxD,kCAAQ,QAAQ,0FAAmB,CAAC,CAAC;GACrC,QAAQ;EACV;UACM;EACJ,QAAQ;CACV,GACA,EACE,MAAM,KACR,CACF;CAEA,UAAU,OAAO;CACjB,YAAY,UAAU;CACtB,SAAS,UAAU;CACnB,WAAW,UAAU;CAErB,OAAO;EACL;EACA;EACA,IAAI,WAAW;GACb,OAAO;EACT;CACF;AACF"}
@@ -0,0 +1,36 @@
1
+ import { hasOwn } from "../utils.mjs";
2
+
3
+ //#region src/runtime/emit.ts
4
+ function isTriggerEventOptions(value) {
5
+ if (!value || typeof value !== "object" || Array.isArray(value)) return false;
6
+ return hasOwn(value, "bubbles") || hasOwn(value, "composed") || hasOwn(value, "capturePhase");
7
+ }
8
+ function normalizeEmitEventName(eventName) {
9
+ return eventName.includes(":") ? eventName.replaceAll(":", "-").toLowerCase() : eventName;
10
+ }
11
+ function normalizeEmitPayload(args) {
12
+ if (args.length === 0) return {
13
+ detail: void 0,
14
+ options: void 0
15
+ };
16
+ if (args.length === 1) return {
17
+ detail: args[0],
18
+ options: void 0
19
+ };
20
+ const maybeOptions = args[args.length - 1];
21
+ if (isTriggerEventOptions(maybeOptions)) {
22
+ const detailArgs = args.slice(0, -1);
23
+ return {
24
+ detail: detailArgs.length <= 1 ? detailArgs[0] : detailArgs,
25
+ options: maybeOptions
26
+ };
27
+ }
28
+ return {
29
+ detail: args,
30
+ options: void 0
31
+ };
32
+ }
33
+
34
+ //#endregion
35
+ export { normalizeEmitEventName, normalizeEmitPayload };
36
+ //# sourceMappingURL=emit.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emit.mjs","names":[],"sources":["../../../src/runtime/emit.ts"],"sourcesContent":["import type { TriggerEventOptions } from './types'\nimport { hasOwn } from '../utils'\n\nfunction isTriggerEventOptions(value: unknown): value is TriggerEventOptions {\n if (!value || typeof value !== 'object' || Array.isArray(value)) {\n return false\n }\n return (\n hasOwn(value, 'bubbles')\n || hasOwn(value, 'composed')\n || hasOwn(value, 'capturePhase')\n )\n}\n\nexport function normalizeEmitEventName(eventName: string) {\n return eventName.includes(':') ? eventName.replaceAll(':', '-').toLowerCase() : eventName\n}\n\nexport function normalizeEmitPayload(args: any[]): { detail: any, options: TriggerEventOptions | undefined } {\n if (args.length === 0) {\n return {\n detail: undefined,\n options: undefined,\n }\n }\n\n if (args.length === 1) {\n return {\n detail: args[0],\n options: undefined,\n }\n }\n\n const maybeOptions = args[args.length - 1]\n if (isTriggerEventOptions(maybeOptions)) {\n const detailArgs = args.slice(0, -1)\n return {\n detail: detailArgs.length <= 1 ? detailArgs[0] : detailArgs,\n options: maybeOptions,\n }\n }\n\n return {\n detail: args,\n options: undefined,\n }\n}\n"],"mappings":";;;AAGA,SAAS,sBAAsB,OAA8C;CAC3E,IAAI,CAAC,SAAS,OAAO,UAAU,YAAY,MAAM,QAAQ,KAAK,GAC5D,OAAO;CAET,OACE,OAAO,OAAO,SAAS,KACpB,OAAO,OAAO,UAAU,KACxB,OAAO,OAAO,cAAc;AAEnC;AAEA,SAAgB,uBAAuB,WAAmB;CACxD,OAAO,UAAU,SAAS,GAAG,IAAI,UAAU,WAAW,KAAK,GAAG,CAAC,CAAC,YAAY,IAAI;AAClF;AAEA,SAAgB,qBAAqB,MAAwE;CAC3G,IAAI,KAAK,WAAW,GAClB,OAAO;EACL,QAAQ;EACR,SAAS;CACX;CAGF,IAAI,KAAK,WAAW,GAClB,OAAO;EACL,QAAQ,KAAK;EACb,SAAS;CACX;CAGF,MAAM,eAAe,KAAK,KAAK,SAAS;CACxC,IAAI,sBAAsB,YAAY,GAAG;EACvC,MAAM,aAAa,KAAK,MAAM,GAAG,EAAE;EACnC,OAAO;GACL,QAAQ,WAAW,UAAU,IAAI,WAAW,KAAK;GACjD,SAAS;EACX;CACF;CAEA,OAAO;EACL,QAAQ;EACR,SAAS;CACX;AACF"}
@@ -1,143 +1,6 @@
1
- import { _ as isObject, h as getTargetType, l as isReactive, n as isRef, r as markAsRef } from "./ref-DRZC3Kc5.mjs";
1
+ import { getCurrentMiniProgramRuntimeCapabilities, getMiniProgramGlobalObject, supportsCurrentMiniProgramRuntimeCapability } from "../platform.mjs";
2
2
  import { WEVU_HOOKS_KEY } from "@weapp-core/constants";
3
- import { getMiniProgramPlatformByRuntimeGlobalKey, getMiniProgramRuntimeCapabilities, getMiniProgramRuntimeGlobalKey, getMiniProgramRuntimeGlobalKeys, getMiniProgramRuntimeHostConfigKey, resolveMiniProgramPlatform, supportsMiniProgramRuntimeCapability } from "@weapp-core/shared";
4
3
 
5
- //#region src/reactivity/readonly.ts
6
- function createReadonlyWrapper(target) {
7
- if (isRef(target)) {
8
- const source = target;
9
- const readonlyRef = markAsRef({
10
- get value() {
11
- return source.value;
12
- },
13
- set value(_v) {
14
- throw new Error("无法给只读 ref 赋值");
15
- }
16
- });
17
- Object.defineProperties(readonlyRef, {
18
- ["__r_isReadonly"]: {
19
- value: true,
20
- configurable: true
21
- },
22
- ["__r_raw"]: {
23
- value: source,
24
- configurable: true
25
- }
26
- });
27
- return readonlyRef;
28
- }
29
- if (!isObject(target)) return target;
30
- if (getTargetType(target) === 0) return target;
31
- return new Proxy(target, {
32
- set() {
33
- throw new Error("无法在只读对象上设置属性");
34
- },
35
- deleteProperty() {
36
- throw new Error("无法在只读对象上删除属性");
37
- },
38
- defineProperty() {
39
- throw new Error("无法在只读对象上定义属性");
40
- },
41
- get(target, key, receiver) {
42
- if (key === "__r_isReadonly") return true;
43
- if (key === "__r_raw") return target;
44
- return Reflect.get(target, key, receiver);
45
- }
46
- });
47
- }
48
- function readonly(target) {
49
- return createReadonlyWrapper(target);
50
- }
51
- function shallowReadonly(target) {
52
- return createReadonlyWrapper(target);
53
- }
54
- /**
55
- * 判断值是否为只读代理或只读 ref 包装。
56
- */
57
- function isReadonly(value) {
58
- return Boolean(value && value["__r_isReadonly"]);
59
- }
60
- /**
61
- * 判断值是否为响应式代理或只读代理。
62
- */
63
- function isProxy(value) {
64
- return isReactive(value) || isReadonly(value);
65
- }
66
-
67
- //#endregion
68
- //#region src/runtime/platform.ts
69
- const MINI_PROGRAM_GLOBAL_ROUTER_METHODS = [
70
- "switchTab",
71
- "reLaunch",
72
- "redirectTo",
73
- "navigateTo",
74
- "navigateBack"
75
- ];
76
- function getGlobalRuntime() {
77
- if (typeof globalThis === "undefined") return;
78
- return globalThis;
79
- }
80
- function resolveCurrentMiniProgramPlatform() {
81
- var _env;
82
- const globalRuntime = getGlobalRuntime();
83
- const resolvedCompiledPlatform = resolveMiniProgramPlatform((_env = import.meta.env) === null || _env === void 0 ? void 0 : _env.PLATFORM);
84
- if (resolvedCompiledPlatform) return resolvedCompiledPlatform;
85
- for (const globalKey of getMiniProgramRuntimeGlobalKeys()) if (globalRuntime === null || globalRuntime === void 0 ? void 0 : globalRuntime[globalKey]) return getMiniProgramPlatformByRuntimeGlobalKey(globalKey);
86
- }
87
- function getCurrentMiniProgramRuntimeCapabilities() {
88
- return getMiniProgramRuntimeCapabilities(resolveCurrentMiniProgramPlatform());
89
- }
90
- function supportsCurrentMiniProgramRuntimeCapability(capabilityName) {
91
- return supportsMiniProgramRuntimeCapability(resolveCurrentMiniProgramPlatform(), capabilityName);
92
- }
93
- function getCurrentMiniProgramPages() {
94
- if (!supportsCurrentMiniProgramRuntimeCapability("globalPageStack")) return [];
95
- const getCurrentPagesFn = globalThis.getCurrentPages;
96
- if (typeof getCurrentPagesFn !== "function") return [];
97
- try {
98
- const pages = getCurrentPagesFn();
99
- return Array.isArray(pages) ? pages : [];
100
- } catch (_unused) {
101
- return [];
102
- }
103
- }
104
- function getCurrentMiniProgramHostConfig() {
105
- const globalRuntime = getGlobalRuntime();
106
- const hostConfigKey = getMiniProgramRuntimeHostConfigKey(resolveCurrentMiniProgramPlatform());
107
- const hostConfig = globalRuntime === null || globalRuntime === void 0 ? void 0 : globalRuntime[hostConfigKey];
108
- return hostConfig && typeof hostConfig === "object" ? hostConfig : void 0;
109
- }
110
- function getMiniProgramGlobalObject(platformInput) {
111
- var _env2;
112
- const globalRuntime = getGlobalRuntime();
113
- const resolvedCompiledPlatform = resolveMiniProgramPlatform(platformInput !== null && platformInput !== void 0 ? platformInput : (_env2 = import.meta.env) === null || _env2 === void 0 ? void 0 : _env2.PLATFORM);
114
- if (resolvedCompiledPlatform) {
115
- const globalKey = getMiniProgramRuntimeGlobalKey(resolvedCompiledPlatform);
116
- return globalRuntime === null || globalRuntime === void 0 ? void 0 : globalRuntime[globalKey];
117
- }
118
- for (const globalKey of getMiniProgramRuntimeGlobalKeys()) {
119
- const candidate = globalRuntime === null || globalRuntime === void 0 ? void 0 : globalRuntime[globalKey];
120
- if (candidate) return candidate;
121
- }
122
- }
123
- function getCurrentMiniProgramGlobalRouter() {
124
- if (!supportsCurrentMiniProgramRuntimeCapability("globalRouterApi")) return;
125
- const miniProgramGlobal = getMiniProgramGlobalObject();
126
- if (!miniProgramGlobal) return;
127
- const routerMethods = Object.create(null);
128
- for (const methodName of MINI_PROGRAM_GLOBAL_ROUTER_METHODS) {
129
- const handler = miniProgramGlobal[methodName];
130
- if (typeof handler !== "function") return;
131
- routerMethods[methodName] = (...args) => handler.apply(miniProgramGlobal, args);
132
- }
133
- return routerMethods;
134
- }
135
- function getScopedSlotHostGlobalObject() {
136
- var _getMiniProgramGlobal;
137
- return (_getMiniProgramGlobal = getMiniProgramGlobalObject()) !== null && _getMiniProgramGlobal !== void 0 ? _getMiniProgramGlobal : getGlobalRuntime();
138
- }
139
-
140
- //#endregion
141
4
  //#region src/runtime/hooks/base.ts
142
5
  let __currentInstance;
143
6
  let __currentSetupContext;
@@ -298,5 +161,5 @@ function callHookReturn(target, name, args = []) {
298
161
  }
299
162
 
300
163
  //#endregion
301
- export { shallowReadonly as S, getScopedSlotHostGlobalObject as _, ensurePageShareMenusOnSetup as a, isReadonly as b, getCurrentSetupContext as c, setCurrentSetupContext as d, getCurrentMiniProgramGlobalRouter as f, getMiniProgramGlobalObject as g, getCurrentMiniProgramRuntimeCapabilities as h, ensurePageHookOnInstance as i, pushHook as l, getCurrentMiniProgramPages as m, callHookList as n, ensureSinglePageHookOnInstance as o, getCurrentMiniProgramHostConfig as p, callHookReturn as r, getCurrentInstance as s, assertInSetup as t, setCurrentInstance as u, supportsCurrentMiniProgramRuntimeCapability as v, readonly as x, isProxy as y };
302
- //# sourceMappingURL=base-CYkvI7w8.mjs.map
164
+ export { assertInSetup, callHookList, callHookReturn, ensurePageHookOnInstance, ensurePageShareMenusOnSetup, ensureSinglePageHookOnInstance, getCurrentInstance, getCurrentSetupContext, pushHook, setCurrentInstance, setCurrentSetupContext };
165
+ //# sourceMappingURL=base.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.mjs","names":[],"sources":["../../../../src/runtime/hooks/base.ts"],"sourcesContent":["import type { InternalRuntimeState } from '../types'\nimport { WEVU_HOOKS_KEY } from '@weapp-core/constants'\nimport { getCurrentMiniProgramRuntimeCapabilities, getMiniProgramGlobalObject, supportsCurrentMiniProgramRuntimeCapability } from '../platform'\n\n// 仅供同步 setup() 调用期间使用的当前实例引用\nlet __currentInstance: InternalRuntimeState | undefined\nlet __currentSetupContext: any | undefined\n\nexport function getCurrentInstance<T extends InternalRuntimeState = InternalRuntimeState>(): T | undefined {\n return __currentInstance as T | undefined\n}\n\n/**\n * 设置当前运行时实例(框架内部使用)。\n * @internal\n */\nexport function setCurrentInstance(inst: InternalRuntimeState | undefined) {\n __currentInstance = inst\n}\n\nexport function getCurrentSetupContext<T = any>(): T | undefined {\n return __currentSetupContext as T | undefined\n}\n\n/**\n * 设置当前 setup 上下文(框架内部使用)。\n * @internal\n */\nexport function setCurrentSetupContext(ctx: any | undefined) {\n __currentSetupContext = ctx\n}\n\nexport function assertInSetup(name: string): InternalRuntimeState {\n if (!__currentInstance) {\n throw new Error(`${name}() 必须在 setup() 的同步阶段调用`)\n }\n return __currentInstance\n}\n\nfunction ensureHookBucket(target: InternalRuntimeState): Record<string, any> {\n if (!target[WEVU_HOOKS_KEY]) {\n target[WEVU_HOOKS_KEY] = Object.create(null)\n }\n return target[WEVU_HOOKS_KEY] as Record<string, any>\n}\n\ntype ShareMenuName = 'shareAppMessage' | 'shareTimeline'\n\nfunction buildShareMenus(\n enableOnShareAppMessage: boolean,\n enableOnShareTimeline: boolean,\n): ShareMenuName[] {\n const runtimeCapabilities = getCurrentMiniProgramRuntimeCapabilities()\n const shouldShowShareAppMessage = runtimeCapabilities.shareTimelineRequiresShareAppMessage\n ? (enableOnShareAppMessage || enableOnShareTimeline)\n : enableOnShareAppMessage\n\n const menus: ShareMenuName[] = []\n if (shouldShowShareAppMessage) {\n menus.push('shareAppMessage')\n }\n if (enableOnShareTimeline) {\n menus.push('shareTimeline')\n }\n return menus\n}\n\nfunction tryShowShareMenu(showShareMenu: (...args: any[]) => unknown, menus: ShareMenuName[]) {\n const payloads = [\n { withShareTicket: true, menus },\n { menus },\n menus.includes('shareTimeline') ? { withShareTicket: true } : undefined,\n menus.includes('shareTimeline') ? {} : undefined,\n undefined,\n ]\n\n for (const payload of payloads) {\n try {\n if (payload === undefined) {\n showShareMenu()\n }\n else {\n showShareMenu(payload as any)\n }\n return\n }\n catch {\n // 继续尝试更保守的 payload,兼容不同宿主的 showShareMenu 参数形态。\n }\n }\n}\n\nexport function pushHook(\n target: InternalRuntimeState,\n name: string,\n handler: (...args: any[]) => any,\n { single = false } = {},\n) {\n const bucket = ensureHookBucket(target)\n if (single) {\n bucket[name] = handler\n }\n else {\n const list: Array<(...args: any[]) => any> = bucket[name] ?? (bucket[name] = [])\n list.push(handler)\n }\n}\n\nexport function ensureSinglePageHookOnInstance(target: InternalRuntimeState, name: 'onShareAppMessage' | 'onShareTimeline' | 'onAddToFavorites') {\n const bridges = ((target as any).__wevuShareHookBridges ??= Object.create(null)) as Record<string, (...args: any[]) => any>\n if (typeof bridges[name] === 'function') {\n return\n }\n\n const original = (target as any)[name]\n const bridge = function onWevuShareHookBridge(this: InternalRuntimeState, ...args: any[]) {\n const hooks = this[WEVU_HOOKS_KEY] as Record<string, any> | undefined\n const entry = hooks?.[name]\n const runtime = this.__wevu\n const ctx = runtime?.proxy ?? this\n let ret: any\n\n if (typeof entry === 'function') {\n try {\n ret = entry.apply(ctx, args)\n }\n catch {\n ret = undefined\n }\n }\n else if (Array.isArray(entry)) {\n for (const fn of entry) {\n try {\n ret = fn.apply(ctx, args)\n }\n catch {\n // 忽略单个 hook 抛出的异常,继续执行后续 hook\n }\n }\n }\n\n if (ret !== undefined) {\n return ret\n }\n if (typeof original === 'function') {\n return original.apply(this, args)\n }\n return undefined\n }\n\n bridges[name] = bridge\n ;(target as any)[name] = bridge\n}\n\nexport function ensurePageShareMenusOnSetup(target: InternalRuntimeState) {\n if (!supportsCurrentMiniProgramRuntimeCapability('pageShareMenu')) {\n return\n }\n const miniProgramGlobal = getMiniProgramGlobalObject()\n if (!miniProgramGlobal || typeof miniProgramGlobal.showShareMenu !== 'function') {\n return\n }\n\n const hooks = (target[WEVU_HOOKS_KEY] ?? {}) as Record<string, any>\n const hasShareAppMessage = typeof hooks.onShareAppMessage === 'function'\n const hasShareTimeline = typeof hooks.onShareTimeline === 'function'\n\n if (!hasShareAppMessage && !hasShareTimeline) {\n return\n }\n\n const menus = buildShareMenus(hasShareAppMessage, hasShareTimeline)\n if (!menus.length) {\n return\n }\n\n tryShowShareMenu(miniProgramGlobal.showShareMenu.bind(miniProgramGlobal), menus)\n}\n\n/**\n * 调用批量 hook(框架内部调度入口)。\n * @internal\n */\nexport function callHookList(target: InternalRuntimeState, name: string, args: any[] = []) {\n const hooks = target[WEVU_HOOKS_KEY]\n if (!hooks) {\n return\n }\n const list = hooks[name]\n if (!list) {\n return\n }\n const runtime = target.__wevu\n const ctx = runtime?.proxy ?? target\n if (Array.isArray(list)) {\n for (const fn of list) {\n try {\n fn.apply(ctx, args)\n }\n catch {\n // 忽略单个 hook 抛出的异常,防止阻塞其他监听\n }\n }\n }\n else if (typeof list === 'function') {\n try {\n list.apply(ctx, args)\n }\n catch {\n // 忽略单个 hook 抛出的异常,防止阻塞其他监听\n }\n }\n}\n\nexport function ensurePageHookOnInstance(target: InternalRuntimeState, name: 'onPageScroll') {\n const bridges = ((target as any).__wevuPageHookBridges ??= Object.create(null)) as Record<string, (...args: any[]) => any>\n if (typeof bridges[name] === 'function') {\n return\n }\n\n const original = (target as any)[name]\n const bridge = function onWevuPageHookBridge(this: InternalRuntimeState, ...args: any[]) {\n callHookList(this, name, args)\n if (typeof original === 'function') {\n return original.apply(this, args)\n }\n return undefined\n }\n\n bridges[name] = bridge\n ;(target as any)[name] = bridge\n}\n\n/**\n * 调用返回值型 hook(框架内部调度入口)。\n * @internal\n */\nexport function callHookReturn(target: InternalRuntimeState, name: string, args: any[] = []) {\n const hooks = target[WEVU_HOOKS_KEY]\n if (!hooks) {\n return undefined\n }\n const entry = hooks[name]\n if (!entry) {\n return undefined\n }\n const runtime = target.__wevu\n const ctx = runtime?.proxy ?? target\n if (typeof entry === 'function') {\n try {\n return entry.apply(ctx, args)\n }\n catch {\n return undefined\n }\n }\n if (Array.isArray(entry)) {\n let out: any\n for (const fn of entry) {\n try {\n out = fn.apply(ctx, args)\n }\n catch {\n // 忽略单个 hook 抛出的异常,继续执行后续 hook\n }\n }\n return out\n }\n return undefined\n}\n"],"mappings":";;;;AAKA,IAAI;AACJ,IAAI;AAEJ,SAAgB,qBAA2F;CACzG,OAAO;AACT;;;;;AAMA,SAAgB,mBAAmB,MAAwC;CACzE,oBAAoB;AACtB;AAEA,SAAgB,yBAAiD;CAC/D,OAAO;AACT;;;;;AAMA,SAAgB,uBAAuB,KAAsB;CAC3D,wBAAwB;AAC1B;AAEA,SAAgB,cAAc,MAAoC;CAChE,IAAI,CAAC,mBACH,MAAM,IAAI,MAAM,GAAG,KAAK,uBAAuB;CAEjD,OAAO;AACT;AAEA,SAAS,iBAAiB,QAAmD;CAC3E,IAAI,CAAC,OAAO,iBACV,OAAO,kBAAkB,OAAO,OAAO,IAAI;CAE7C,OAAO,OAAO;AAChB;AAIA,SAAS,gBACP,yBACA,uBACiB;CAEjB,MAAM,4BADsB,yCACwB,CAAC,CAAC,uCACjD,2BAA2B,wBAC5B;CAEJ,MAAM,QAAyB,CAAC;CAChC,IAAI,2BACF,MAAM,KAAK,iBAAiB;CAE9B,IAAI,uBACF,MAAM,KAAK,eAAe;CAE5B,OAAO;AACT;AAEA,SAAS,iBAAiB,eAA4C,OAAwB;CAC5F,MAAM,WAAW;EACf;GAAE,iBAAiB;GAAM;EAAM;EAC/B,EAAE,MAAM;EACR,MAAM,SAAS,eAAe,IAAI,EAAE,iBAAiB,KAAK,IAAI;EAC9D,MAAM,SAAS,eAAe,IAAI,CAAC,IAAI;EACvC;CACF;CAEA,KAAK,MAAM,WAAW,UACpB,IAAI;EACF,IAAI,YAAY,QACd,cAAc;OAGd,cAAc,OAAc;EAE9B;CACF,kBACM,CAEN;AAEJ;AAEA,SAAgB,SACd,QACA,MACA,SACA,EAAE,SAAS,UAAU,CAAC,GACtB;CACA,MAAM,SAAS,iBAAiB,MAAM;CACtC,IAAI,QACF,OAAO,QAAQ;MAEZ;;EAEH,iBAD6C,OAAO,4DAAU,OAAO,QAAQ,CAAC,EAC1E,CAAC,KAAK,OAAO;CACnB;AACF;AAEA,SAAgB,+BAA+B,QAA8B,MAAoE;;CAC/I,MAAM,2CAAY,QAAe,6HAA2B,OAAO,OAAO,IAAI;CAC9E,IAAI,OAAO,QAAQ,UAAU,YAC3B;CAGF,MAAM,WAAY,OAAe;CACjC,MAAM,SAAS,SAAS,sBAAkD,GAAG,MAAa;;EACxF,MAAM,QAAQ,KAAK;EACnB,MAAM,sDAAQ,MAAQ;EACtB,MAAM,UAAU,KAAK;EACrB,MAAM,0EAAM,QAAS,gEAAS;EAC9B,IAAI;EAEJ,IAAI,OAAO,UAAU,YACnB,IAAI;GACF,MAAM,MAAM,MAAM,KAAK,IAAI;EAC7B,mBACM;GACJ,MAAM;EACR;OAEG,IAAI,MAAM,QAAQ,KAAK,GAC1B,KAAK,MAAM,MAAM,OACf,IAAI;GACF,MAAM,GAAG,MAAM,KAAK,IAAI;EAC1B,mBACM,CAEN;EAIJ,IAAI,QAAQ,QACV,OAAO;EAET,IAAI,OAAO,aAAa,YACtB,OAAO,SAAS,MAAM,MAAM,IAAI;CAGpC;CAEA,QAAQ,QAAQ;CACf,AAAC,OAAe,QAAQ;AAC3B;AAEA,SAAgB,4BAA4B,QAA8B;;CACxE,IAAI,CAAC,4CAA4C,eAAe,GAC9D;CAEF,MAAM,oBAAoB,2BAA2B;CACrD,IAAI,CAAC,qBAAqB,OAAO,kBAAkB,kBAAkB,YACnE;CAGF,MAAM,iCAAS,OAAO,wFAAmB,CAAC;CAC1C,MAAM,qBAAqB,OAAO,MAAM,sBAAsB;CAC9D,MAAM,mBAAmB,OAAO,MAAM,oBAAoB;CAE1D,IAAI,CAAC,sBAAsB,CAAC,kBAC1B;CAGF,MAAM,QAAQ,gBAAgB,oBAAoB,gBAAgB;CAClE,IAAI,CAAC,MAAM,QACT;CAGF,iBAAiB,kBAAkB,cAAc,KAAK,iBAAiB,GAAG,KAAK;AACjF;;;;;AAMA,SAAgB,aAAa,QAA8B,MAAc,OAAc,CAAC,GAAG;;CACzF,MAAM,QAAQ,OAAO;CACrB,IAAI,CAAC,OACH;CAEF,MAAM,OAAO,MAAM;CACnB,IAAI,CAAC,MACH;CAEF,MAAM,UAAU,OAAO;CACvB,MAAM,2EAAM,QAAS,kEAAS;CAC9B,IAAI,MAAM,QAAQ,IAAI,GACpB,KAAK,MAAM,MAAM,MACf,IAAI;EACF,GAAG,MAAM,KAAK,IAAI;CACpB,mBACM,CAEN;MAGC,IAAI,OAAO,SAAS,YACvB,IAAI;EACF,KAAK,MAAM,KAAK,IAAI;CACtB,mBACM,CAEN;AAEJ;AAEA,SAAgB,yBAAyB,QAA8B,MAAsB;;CAC3F,MAAM,4CAAY,QAAe,4HAA0B,OAAO,OAAO,IAAI;CAC7E,IAAI,OAAO,QAAQ,UAAU,YAC3B;CAGF,MAAM,WAAY,OAAe;CACjC,MAAM,SAAS,SAAS,qBAAiD,GAAG,MAAa;EACvF,aAAa,MAAM,MAAM,IAAI;EAC7B,IAAI,OAAO,aAAa,YACtB,OAAO,SAAS,MAAM,MAAM,IAAI;CAGpC;CAEA,QAAQ,QAAQ;CACf,AAAC,OAAe,QAAQ;AAC3B;;;;;AAMA,SAAgB,eAAe,QAA8B,MAAc,OAAc,CAAC,GAAG;;CAC3F,MAAM,QAAQ,OAAO;CACrB,IAAI,CAAC,OACH;CAEF,MAAM,QAAQ,MAAM;CACpB,IAAI,CAAC,OACH;CAEF,MAAM,UAAU,OAAO;CACvB,MAAM,2EAAM,QAAS,kEAAS;CAC9B,IAAI,OAAO,UAAU,YACnB,IAAI;EACF,OAAO,MAAM,MAAM,KAAK,IAAI;CAC9B,mBACM;EACJ;CACF;CAEF,IAAI,MAAM,QAAQ,KAAK,GAAG;EACxB,IAAI;EACJ,KAAK,MAAM,MAAM,OACf,IAAI;GACF,MAAM,GAAG,MAAM,KAAK,IAAI;EAC1B,mBACM,CAEN;EAEF,OAAO;CACT;AAEF"}
@@ -0,0 +1,92 @@
1
+ import { assertInSetup, ensurePageHookOnInstance, ensurePageShareMenusOnSetup, ensureSinglePageHookOnInstance, pushHook } from "./base.mjs";
2
+
3
+ //#region src/runtime/hooks/register.ts
4
+ function registerHook(name, handler, options) {
5
+ pushHook(assertInSetup(name), name, handler, options);
6
+ }
7
+ function onLaunch(handler) {
8
+ registerHook("onLaunch", handler);
9
+ }
10
+ function onPageNotFound(handler) {
11
+ registerHook("onPageNotFound", handler);
12
+ }
13
+ function onUnhandledRejection(handler) {
14
+ registerHook("onUnhandledRejection", handler);
15
+ }
16
+ function onThemeChange(handler) {
17
+ registerHook("onThemeChange", handler);
18
+ }
19
+ function onMemoryWarning(handler) {
20
+ registerHook("onMemoryWarning", handler);
21
+ }
22
+ function onShow(handler) {
23
+ registerHook("onShow", handler);
24
+ }
25
+ function onLoad(handler) {
26
+ registerHook("onLoad", handler);
27
+ }
28
+ function onHide(handler) {
29
+ registerHook("onHide", handler);
30
+ }
31
+ function onUnload(handler) {
32
+ registerHook("onUnload", handler);
33
+ }
34
+ function onReady(handler) {
35
+ registerHook("onReady", handler);
36
+ }
37
+ function onPullDownRefresh(handler) {
38
+ registerHook("onPullDownRefresh", handler);
39
+ }
40
+ function onReachBottom(handler) {
41
+ registerHook("onReachBottom", handler);
42
+ }
43
+ function onPageScroll(handler) {
44
+ const instance = assertInSetup("onPageScroll");
45
+ pushHook(instance, "onPageScroll", handler);
46
+ ensurePageHookOnInstance(instance, "onPageScroll");
47
+ }
48
+ function onRouteDone(handler) {
49
+ registerHook("onRouteDone", handler);
50
+ }
51
+ function onTabItemTap(handler) {
52
+ registerHook("onTabItemTap", handler);
53
+ }
54
+ function onResize(handler) {
55
+ registerHook("onResize", handler);
56
+ }
57
+ function onMoved(handler) {
58
+ registerHook("onMoved", handler);
59
+ }
60
+ function onAttached(handler) {
61
+ registerHook("onAttached", handler);
62
+ }
63
+ function onDetached(handler) {
64
+ registerHook("onDetached", handler);
65
+ }
66
+ function onError(handler) {
67
+ registerHook("onError", handler);
68
+ }
69
+ function onSaveExitState(handler) {
70
+ registerHook("onSaveExitState", handler, { single: true });
71
+ }
72
+ function onShareAppMessage(handler) {
73
+ const instance = assertInSetup("onShareAppMessage");
74
+ pushHook(instance, "onShareAppMessage", handler, { single: true });
75
+ ensureSinglePageHookOnInstance(instance, "onShareAppMessage");
76
+ ensurePageShareMenusOnSetup(instance);
77
+ }
78
+ function onShareTimeline(handler) {
79
+ const instance = assertInSetup("onShareTimeline");
80
+ pushHook(instance, "onShareTimeline", handler, { single: true });
81
+ ensureSinglePageHookOnInstance(instance, "onShareTimeline");
82
+ ensurePageShareMenusOnSetup(instance);
83
+ }
84
+ function onAddToFavorites(handler) {
85
+ const instance = assertInSetup("onAddToFavorites");
86
+ pushHook(instance, "onAddToFavorites", handler, { single: true });
87
+ ensureSinglePageHookOnInstance(instance, "onAddToFavorites");
88
+ }
89
+
90
+ //#endregion
91
+ export { onAddToFavorites, onAttached, onDetached, onError, onHide, onLaunch, onLoad, onMemoryWarning, onMoved, onPageNotFound, onPageScroll, onPullDownRefresh, onReachBottom, onReady, onResize, onRouteDone, onSaveExitState, onShareAppMessage, onShareTimeline, onShow, onTabItemTap, onThemeChange, onUnhandledRejection, onUnload };
92
+ //# sourceMappingURL=register.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register.mjs","names":[],"sources":["../../../../src/runtime/hooks/register.ts"],"sourcesContent":["import type {\n MiniProgramAddToFavoritesOption,\n MiniProgramLaunchOptions,\n MiniProgramMemoryWarningResult,\n MiniProgramPageLifetime,\n MiniProgramPageNotFoundOptions,\n MiniProgramPageResizeOption,\n MiniProgramPageScrollOption,\n MiniProgramSaveExitState,\n MiniProgramShareAppMessageOption,\n MiniProgramTabItemTapOption,\n MiniProgramThemeChangeResult,\n MiniProgramUnhandledRejectionResult,\n} from '../types'\nimport { assertInSetup, ensurePageHookOnInstance, ensurePageShareMenusOnSetup, ensureSinglePageHookOnInstance, pushHook } from './base'\n\nfunction registerHook(name: string, handler: (...args: any[]) => any, options?: { single?: boolean }) {\n pushHook(assertInSetup(name), name, handler as any, options as any)\n}\n\n// 生命周期注册辅助方法:必须在 setup() 同步执行阶段调用\nexport function onLaunch(handler: (options: MiniProgramLaunchOptions) => void) {\n registerHook('onLaunch', handler as any)\n}\n\nexport function onPageNotFound(handler: (options: MiniProgramPageNotFoundOptions) => void) {\n registerHook('onPageNotFound', handler as any)\n}\n\nexport function onUnhandledRejection(handler: (options: MiniProgramUnhandledRejectionResult) => void) {\n registerHook('onUnhandledRejection', handler as any)\n}\n\nexport function onThemeChange(handler: (options: MiniProgramThemeChangeResult) => void) {\n registerHook('onThemeChange', handler as any)\n}\n\nexport function onMemoryWarning(handler: (options: MiniProgramMemoryWarningResult) => void) {\n registerHook('onMemoryWarning', handler as any)\n}\n\nexport function onShow(handler: () => void): void\nexport function onShow(handler: (options: MiniProgramLaunchOptions) => void): void\nexport function onShow(handler: ((options?: any) => void)) {\n registerHook('onShow', handler as any)\n}\n\nexport function onLoad(handler: MiniProgramPageLifetime['onLoad']) {\n registerHook('onLoad', handler as any)\n}\n\nexport function onHide(handler: () => void) {\n registerHook('onHide', handler as any)\n}\n\nexport function onUnload(handler: () => void) {\n registerHook('onUnload', handler as any)\n}\n\nexport function onReady(handler: () => void) {\n registerHook('onReady', handler as any)\n}\n\nexport function onPullDownRefresh(handler: MiniProgramPageLifetime['onPullDownRefresh']) {\n registerHook('onPullDownRefresh', handler as any)\n}\n\nexport function onReachBottom(handler: MiniProgramPageLifetime['onReachBottom']) {\n registerHook('onReachBottom', handler as any)\n}\n\nexport function onPageScroll(handler: (opt: MiniProgramPageScrollOption) => void) {\n const instance = assertInSetup('onPageScroll')\n pushHook(instance, 'onPageScroll', handler as any)\n ensurePageHookOnInstance(instance, 'onPageScroll')\n}\n\nexport function onRouteDone(handler: MiniProgramPageLifetime['onRouteDone'] | ((opt?: unknown) => void)) {\n registerHook('onRouteDone', handler as any)\n}\n\nexport function onTabItemTap(handler: (opt: MiniProgramTabItemTapOption) => void) {\n registerHook('onTabItemTap', handler as any)\n}\n\nexport function onResize(handler: (opt: MiniProgramPageResizeOption) => void) {\n registerHook('onResize', handler as any)\n}\n\nexport function onMoved(handler: () => void) {\n registerHook('onMoved', handler as any)\n}\n\nexport function onAttached(handler: () => void) {\n registerHook('onAttached', handler as any)\n}\n\nexport function onDetached(handler: () => void) {\n registerHook('onDetached', handler as any)\n}\n\nexport function onError(handler: (err: any) => void) {\n registerHook('onError', handler as any)\n}\n\nexport function onSaveExitState(handler: () => MiniProgramSaveExitState) {\n registerHook('onSaveExitState', handler as any, { single: true })\n}\n\nexport function onShareAppMessage(handler: (options: MiniProgramShareAppMessageOption) => Record<string, any> | void) {\n const instance = assertInSetup('onShareAppMessage')\n pushHook(instance, 'onShareAppMessage', handler as any, { single: true } as any)\n ensureSinglePageHookOnInstance(instance, 'onShareAppMessage')\n ensurePageShareMenusOnSetup(instance)\n}\n\nexport function onShareTimeline(handler: MiniProgramPageLifetime['onShareTimeline']) {\n const instance = assertInSetup('onShareTimeline')\n pushHook(instance, 'onShareTimeline', handler as any, { single: true } as any)\n ensureSinglePageHookOnInstance(instance, 'onShareTimeline')\n ensurePageShareMenusOnSetup(instance)\n}\n\nexport function onAddToFavorites(handler: (options: MiniProgramAddToFavoritesOption) => Record<string, any> | void) {\n const instance = assertInSetup('onAddToFavorites')\n pushHook(instance, 'onAddToFavorites', handler as any, { single: true } as any)\n ensureSinglePageHookOnInstance(instance, 'onAddToFavorites')\n}\n"],"mappings":";;;AAgBA,SAAS,aAAa,MAAc,SAAkC,SAAgC;CACpG,SAAS,cAAc,IAAI,GAAG,MAAM,SAAgB,OAAc;AACpE;AAGA,SAAgB,SAAS,SAAsD;CAC7E,aAAa,YAAY,OAAc;AACzC;AAEA,SAAgB,eAAe,SAA4D;CACzF,aAAa,kBAAkB,OAAc;AAC/C;AAEA,SAAgB,qBAAqB,SAAiE;CACpG,aAAa,wBAAwB,OAAc;AACrD;AAEA,SAAgB,cAAc,SAA0D;CACtF,aAAa,iBAAiB,OAAc;AAC9C;AAEA,SAAgB,gBAAgB,SAA4D;CAC1F,aAAa,mBAAmB,OAAc;AAChD;AAIA,SAAgB,OAAO,SAAoC;CACzD,aAAa,UAAU,OAAc;AACvC;AAEA,SAAgB,OAAO,SAA4C;CACjE,aAAa,UAAU,OAAc;AACvC;AAEA,SAAgB,OAAO,SAAqB;CAC1C,aAAa,UAAU,OAAc;AACvC;AAEA,SAAgB,SAAS,SAAqB;CAC5C,aAAa,YAAY,OAAc;AACzC;AAEA,SAAgB,QAAQ,SAAqB;CAC3C,aAAa,WAAW,OAAc;AACxC;AAEA,SAAgB,kBAAkB,SAAuD;CACvF,aAAa,qBAAqB,OAAc;AAClD;AAEA,SAAgB,cAAc,SAAmD;CAC/E,aAAa,iBAAiB,OAAc;AAC9C;AAEA,SAAgB,aAAa,SAAqD;CAChF,MAAM,WAAW,cAAc,cAAc;CAC7C,SAAS,UAAU,gBAAgB,OAAc;CACjD,yBAAyB,UAAU,cAAc;AACnD;AAEA,SAAgB,YAAY,SAA6E;CACvG,aAAa,eAAe,OAAc;AAC5C;AAEA,SAAgB,aAAa,SAAqD;CAChF,aAAa,gBAAgB,OAAc;AAC7C;AAEA,SAAgB,SAAS,SAAqD;CAC5E,aAAa,YAAY,OAAc;AACzC;AAEA,SAAgB,QAAQ,SAAqB;CAC3C,aAAa,WAAW,OAAc;AACxC;AAEA,SAAgB,WAAW,SAAqB;CAC9C,aAAa,cAAc,OAAc;AAC3C;AAEA,SAAgB,WAAW,SAAqB;CAC9C,aAAa,cAAc,OAAc;AAC3C;AAEA,SAAgB,QAAQ,SAA6B;CACnD,aAAa,WAAW,OAAc;AACxC;AAEA,SAAgB,gBAAgB,SAAyC;CACvE,aAAa,mBAAmB,SAAgB,EAAE,QAAQ,KAAK,CAAC;AAClE;AAEA,SAAgB,kBAAkB,SAAoF;CACpH,MAAM,WAAW,cAAc,mBAAmB;CAClD,SAAS,UAAU,qBAAqB,SAAgB,EAAE,QAAQ,KAAK,CAAQ;CAC/E,+BAA+B,UAAU,mBAAmB;CAC5D,4BAA4B,QAAQ;AACtC;AAEA,SAAgB,gBAAgB,SAAqD;CACnF,MAAM,WAAW,cAAc,iBAAiB;CAChD,SAAS,UAAU,mBAAmB,SAAgB,EAAE,QAAQ,KAAK,CAAQ;CAC7E,+BAA+B,UAAU,iBAAiB;CAC1D,4BAA4B,QAAQ;AACtC;AAEA,SAAgB,iBAAiB,SAAmF;CAClH,MAAM,WAAW,cAAc,kBAAkB;CACjD,SAAS,UAAU,oBAAoB,SAAgB,EAAE,QAAQ,KAAK,CAAQ;CAC9E,+BAA+B,UAAU,kBAAkB;AAC7D"}
@@ -0,0 +1,81 @@
1
+ import { assertInSetup, callHookList, pushHook } from "./base.mjs";
2
+ import { WEVU_ON_BEFORE_UPDATE_HOOK, WEVU_ON_UPDATED_HOOK } from "@weapp-core/constants";
3
+
4
+ //#region src/runtime/hooks/vue.ts
5
+ /**
6
+ * Vue 3 对齐:组件/页面已挂载,映射小程序 onReady
7
+ */
8
+ function onMounted(handler) {
9
+ pushHook(assertInSetup("onMounted"), "onReady", handler);
10
+ }
11
+ /**
12
+ * Vue 3 对齐:组件/页面更新后触发。
13
+ * 小程序没有专用 update 生命周期,这里在每次 setData 完成后调用。
14
+ */
15
+ function onUpdated(handler) {
16
+ pushHook(assertInSetup("onUpdated"), WEVU_ON_UPDATED_HOOK, handler);
17
+ }
18
+ /**
19
+ * Vue 3 对齐:卸载前触发。
20
+ * 小程序无 before-unload 生命周期,setup 时同步执行以保持语义。
21
+ */
22
+ function onBeforeUnmount(handler) {
23
+ assertInSetup("onBeforeUnmount");
24
+ handler();
25
+ }
26
+ /**
27
+ * Vue 3 对齐:组件/页面卸载;映射到页面 onUnload 或组件 detached
28
+ */
29
+ function onUnmounted(handler) {
30
+ pushHook(assertInSetup("onUnmounted"), "onUnload", handler);
31
+ }
32
+ /**
33
+ * Vue 3 对齐:挂载前;setup 时同步触发以模拟 beforeMount 语义
34
+ */
35
+ function onBeforeMount(handler) {
36
+ assertInSetup("onBeforeMount");
37
+ handler();
38
+ }
39
+ /**
40
+ * Vue 3 对齐:更新前;在每次 setData 前触发
41
+ */
42
+ function onBeforeUpdate(handler) {
43
+ pushHook(assertInSetup("onBeforeUpdate"), WEVU_ON_BEFORE_UPDATE_HOOK, handler);
44
+ }
45
+ /**
46
+ * Vue 3 对齐:错误捕获;映射到小程序 onError
47
+ */
48
+ function onErrorCaptured(handler) {
49
+ const instance = assertInSetup("onErrorCaptured");
50
+ pushHook(instance, "onError", (err) => handler(err, instance, ""));
51
+ }
52
+ /**
53
+ * Vue 3 对齐:组件激活;映射到小程序 onShow
54
+ */
55
+ function onActivated(handler) {
56
+ pushHook(assertInSetup("onActivated"), "onShow", handler);
57
+ }
58
+ /**
59
+ * Vue 3 对齐:组件失活;映射到小程序 onHide
60
+ */
61
+ function onDeactivated(handler) {
62
+ pushHook(assertInSetup("onDeactivated"), "onHide", handler);
63
+ }
64
+ /**
65
+ * Vue 3 对齐:服务端渲染前置钩子。
66
+ * 小程序无此场景,保留空实现以保持 API 兼容。
67
+ */
68
+ function onServerPrefetch(_handler) {
69
+ assertInSetup("onServerPrefetch");
70
+ }
71
+ /**
72
+ * 派发更新阶段钩子(框架内部调度入口)。
73
+ * @internal
74
+ */
75
+ function callUpdateHooks(target, phase) {
76
+ callHookList(target, phase === "before" ? WEVU_ON_BEFORE_UPDATE_HOOK : WEVU_ON_UPDATED_HOOK);
77
+ }
78
+
79
+ //#endregion
80
+ export { callUpdateHooks, onActivated, onBeforeMount, onBeforeUnmount, onBeforeUpdate, onDeactivated, onErrorCaptured, onMounted, onServerPrefetch, onUnmounted, onUpdated };
81
+ //# sourceMappingURL=vue.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vue.mjs","names":[],"sources":["../../../../src/runtime/hooks/vue.ts"],"sourcesContent":["import type { InternalRuntimeState } from '../types'\nimport {\n WEVU_ON_BEFORE_UPDATE_HOOK,\n WEVU_ON_UPDATED_HOOK,\n} from '@weapp-core/constants'\nimport { assertInSetup, callHookList, pushHook } from './base'\n\n// ============================================================================\n// 与 Vue 3 对齐的生命周期别名\n// 将 Vue 3 的生命周期名称映射到小程序对应的钩子\n// ============================================================================\n\n/**\n * Vue 3 对齐:组件/页面已挂载,映射小程序 onReady\n */\nexport function onMounted(handler: () => void) {\n pushHook(assertInSetup('onMounted'), 'onReady', handler)\n}\n\n/**\n * Vue 3 对齐:组件/页面更新后触发。\n * 小程序没有专用 update 生命周期,这里在每次 setData 完成后调用。\n */\nexport function onUpdated(handler: () => void) {\n pushHook(assertInSetup('onUpdated'), WEVU_ON_UPDATED_HOOK, handler)\n}\n\n/**\n * Vue 3 对齐:卸载前触发。\n * 小程序无 before-unload 生命周期,setup 时同步执行以保持语义。\n */\nexport function onBeforeUnmount(handler: () => void) {\n assertInSetup('onBeforeUnmount')\n // 在 setup 期间立即执行,等价于“已进入挂载流程”\n handler()\n}\n\n/**\n * Vue 3 对齐:组件/页面卸载;映射到页面 onUnload 或组件 detached\n */\nexport function onUnmounted(handler: () => void) {\n pushHook(assertInSetup('onUnmounted'), 'onUnload', handler)\n}\n\n/**\n * Vue 3 对齐:挂载前;setup 时同步触发以模拟 beforeMount 语义\n */\nexport function onBeforeMount(handler: () => void) {\n assertInSetup('onBeforeMount')\n // 在 setup 期间立即执行\n handler()\n}\n\n/**\n * Vue 3 对齐:更新前;在每次 setData 前触发\n */\nexport function onBeforeUpdate(handler: () => void) {\n pushHook(assertInSetup('onBeforeUpdate'), WEVU_ON_BEFORE_UPDATE_HOOK, handler)\n}\n\n/**\n * Vue 3 对齐:错误捕获;映射到小程序 onError\n */\nexport function onErrorCaptured(handler: (err: any, instance: any, info: string) => void) {\n const instance = assertInSetup('onErrorCaptured')\n pushHook(instance, 'onError', (err?: any) => handler(err, instance, ''))\n}\n\n/**\n * Vue 3 对齐:组件激活;映射到小程序 onShow\n */\nexport function onActivated(handler: () => void) {\n pushHook(assertInSetup('onActivated'), 'onShow', handler)\n}\n\n/**\n * Vue 3 对齐:组件失活;映射到小程序 onHide\n */\nexport function onDeactivated(handler: () => void) {\n pushHook(assertInSetup('onDeactivated'), 'onHide', handler)\n}\n\n/**\n * Vue 3 对齐:服务端渲染前置钩子。\n * 小程序无此场景,保留空实现以保持 API 兼容。\n */\nexport function onServerPrefetch(_handler: () => void) {\n // 小程序环境不执行任何逻辑\n assertInSetup('onServerPrefetch')\n}\n\n// 内部更新钩子派发:before/after 阶段统一入口\n/**\n * 派发更新阶段钩子(框架内部调度入口)。\n * @internal\n */\nexport function callUpdateHooks(target: InternalRuntimeState, phase: 'before' | 'after') {\n const hookName = phase === 'before' ? WEVU_ON_BEFORE_UPDATE_HOOK : WEVU_ON_UPDATED_HOOK\n callHookList(target, hookName)\n}\n"],"mappings":";;;;;;;AAeA,SAAgB,UAAU,SAAqB;CAC7C,SAAS,cAAc,WAAW,GAAG,WAAW,OAAO;AACzD;;;;;AAMA,SAAgB,UAAU,SAAqB;CAC7C,SAAS,cAAc,WAAW,GAAG,sBAAsB,OAAO;AACpE;;;;;AAMA,SAAgB,gBAAgB,SAAqB;CACnD,cAAc,iBAAiB;CAE/B,QAAQ;AACV;;;;AAKA,SAAgB,YAAY,SAAqB;CAC/C,SAAS,cAAc,aAAa,GAAG,YAAY,OAAO;AAC5D;;;;AAKA,SAAgB,cAAc,SAAqB;CACjD,cAAc,eAAe;CAE7B,QAAQ;AACV;;;;AAKA,SAAgB,eAAe,SAAqB;CAClD,SAAS,cAAc,gBAAgB,GAAG,4BAA4B,OAAO;AAC/E;;;;AAKA,SAAgB,gBAAgB,SAA0D;CACxF,MAAM,WAAW,cAAc,iBAAiB;CAChD,SAAS,UAAU,YAAY,QAAc,QAAQ,KAAK,UAAU,EAAE,CAAC;AACzE;;;;AAKA,SAAgB,YAAY,SAAqB;CAC/C,SAAS,cAAc,aAAa,GAAG,UAAU,OAAO;AAC1D;;;;AAKA,SAAgB,cAAc,SAAqB;CACjD,SAAS,cAAc,eAAe,GAAG,UAAU,OAAO;AAC5D;;;;;AAMA,SAAgB,iBAAiB,UAAsB;CAErD,cAAc,kBAAkB;AAClC;;;;;AAOA,SAAgB,gBAAgB,QAA8B,OAA2B;CAEvF,aAAa,QADI,UAAU,WAAW,6BAA6B,oBACtC;AAC/B"}
@@ -0,0 +1,18 @@
1
+ //#region src/runtime/internal.ts
2
+ function setComputedValue(setters, key, value) {
3
+ const setter = setters[key];
4
+ if (!setter) throw new Error(`计算属性 "${key}" 是只读的`);
5
+ setter(value);
6
+ }
7
+ function parseModelEventValue(event) {
8
+ if (event == null) return event;
9
+ if (typeof event === "object") {
10
+ if ("detail" in event && event.detail && "value" in event.detail) return event.detail.value;
11
+ if ("target" in event && event.target && "value" in event.target) return event.target.value;
12
+ }
13
+ return event;
14
+ }
15
+
16
+ //#endregion
17
+ export { parseModelEventValue, setComputedValue };
18
+ //# sourceMappingURL=internal.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internal.mjs","names":[],"sources":["../../../src/runtime/internal.ts"],"sourcesContent":["export function setComputedValue(\n setters: Record<string, (value: any) => void>,\n key: string,\n value: any,\n) {\n const setter = setters[key]\n if (!setter) {\n throw new Error(`计算属性 \"${key}\" 是只读的`)\n }\n setter(value)\n}\n\nexport function parseModelEventValue(event: any) {\n if (event == null) {\n return event\n }\n if (typeof event === 'object') {\n if ('detail' in event && event.detail && 'value' in event.detail) {\n return event.detail.value\n }\n if ('target' in event && event.target && 'value' in event.target) {\n return event.target.value\n }\n }\n return event\n}\n"],"mappings":";AAAA,SAAgB,iBACd,SACA,KACA,OACA;CACA,MAAM,SAAS,QAAQ;CACvB,IAAI,CAAC,QACH,MAAM,IAAI,MAAM,SAAS,IAAI,OAAO;CAEtC,OAAO,KAAK;AACd;AAEA,SAAgB,qBAAqB,OAAY;CAC/C,IAAI,SAAS,MACX,OAAO;CAET,IAAI,OAAO,UAAU,UAAU;EAC7B,IAAI,YAAY,SAAS,MAAM,UAAU,WAAW,MAAM,QACxD,OAAO,MAAM,OAAO;EAEtB,IAAI,YAAY,SAAS,MAAM,UAAU,WAAW,MAAM,QACxD,OAAO,MAAM,OAAO;CAExB;CACA,OAAO;AACT"}
@@ -0,0 +1,46 @@
1
+ import { getCurrentMiniProgramRuntimeCapabilities, getMiniProgramGlobalObject, supportsCurrentMiniProgramRuntimeCapability } from "./platform.mjs";
2
+ import { getCurrentInstance } from "./hooks/base.mjs";
3
+ import { onDetached, onUnload } from "./hooks/register.mjs";
4
+
5
+ //#region src/runtime/intersectionObserver.ts
6
+ function createObserverFromInstance(instance, options) {
7
+ const nativeInstance = instance;
8
+ const creator = nativeInstance.createIntersectionObserver;
9
+ if (typeof creator !== "function") return;
10
+ return creator.call(nativeInstance, options);
11
+ }
12
+ function createObserverFromGlobal(instance, options) {
13
+ if (!supportsCurrentMiniProgramRuntimeCapability("globalCreateIntersectionObserver")) return;
14
+ const miniProgramGlobal = getMiniProgramGlobalObject();
15
+ const creator = miniProgramGlobal === null || miniProgramGlobal === void 0 ? void 0 : miniProgramGlobal.createIntersectionObserver;
16
+ if (typeof creator !== "function") return;
17
+ return getCurrentMiniProgramRuntimeCapabilities().intersectionObserverScopeByParameter ? creator.call(miniProgramGlobal, instance, options) : creator.call(miniProgramGlobal, options);
18
+ }
19
+ /**
20
+ * 在 setup 中创建 IntersectionObserver,并在卸载时自动断开。
21
+ *
22
+ * - 优先使用 `ctx.instance.createIntersectionObserver(options)`。
23
+ * - 不可用时回退到宿主全局对象的 `createIntersectionObserver(...)`。
24
+ */
25
+ function useIntersectionObserver(options = {}) {
26
+ var _createObserverFromIn;
27
+ const instance = getCurrentInstance();
28
+ if (!instance) throw new Error("useIntersectionObserver() 必须在 setup() 的同步阶段调用");
29
+ const observer = (_createObserverFromIn = createObserverFromInstance(instance, options)) !== null && _createObserverFromIn !== void 0 ? _createObserverFromIn : createObserverFromGlobal(instance, options);
30
+ if (!observer || typeof observer.disconnect !== "function") throw new Error("当前运行环境不支持 IntersectionObserver,请检查基础库版本或平台能力");
31
+ let disconnected = false;
32
+ const disconnect = () => {
33
+ if (disconnected) return;
34
+ disconnected = true;
35
+ try {
36
+ observer.disconnect();
37
+ } catch (_unused) {}
38
+ };
39
+ onUnload(disconnect);
40
+ onDetached(disconnect);
41
+ return observer;
42
+ }
43
+
44
+ //#endregion
45
+ export { useIntersectionObserver };
46
+ //# sourceMappingURL=intersectionObserver.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intersectionObserver.mjs","names":[],"sources":["../../../src/runtime/intersectionObserver.ts"],"sourcesContent":["import type {\n InternalRuntimeState,\n MiniProgramIntersectionObserver,\n MiniProgramIntersectionObserverOptions,\n} from './types'\nimport { getCurrentInstance, onDetached, onUnload } from './hooks'\nimport { getCurrentMiniProgramRuntimeCapabilities, getMiniProgramGlobalObject, supportsCurrentMiniProgramRuntimeCapability } from './platform'\n\nexport type UseIntersectionObserverOptions = MiniProgramIntersectionObserverOptions\nexport type UseIntersectionObserverResult = MiniProgramIntersectionObserver\n\nfunction createObserverFromInstance(\n instance: InternalRuntimeState,\n options: UseIntersectionObserverOptions,\n): UseIntersectionObserverResult | undefined {\n const nativeInstance = instance as Record<string, any>\n const creator = nativeInstance.createIntersectionObserver\n if (typeof creator !== 'function') {\n return undefined\n }\n const observer = creator.call(nativeInstance, options)\n return observer as UseIntersectionObserverResult | undefined\n}\n\nfunction createObserverFromGlobal(\n instance: InternalRuntimeState,\n options: UseIntersectionObserverOptions,\n): UseIntersectionObserverResult | undefined {\n if (!supportsCurrentMiniProgramRuntimeCapability('globalCreateIntersectionObserver')) {\n return undefined\n }\n const miniProgramGlobal = getMiniProgramGlobalObject()\n const creator = miniProgramGlobal?.createIntersectionObserver\n if (typeof creator !== 'function') {\n return undefined\n }\n const observer = getCurrentMiniProgramRuntimeCapabilities().intersectionObserverScopeByParameter\n ? creator.call(miniProgramGlobal, instance, options)\n : creator.call(miniProgramGlobal, options)\n return observer as UseIntersectionObserverResult | undefined\n}\n\n/**\n * 在 setup 中创建 IntersectionObserver,并在卸载时自动断开。\n *\n * - 优先使用 `ctx.instance.createIntersectionObserver(options)`。\n * - 不可用时回退到宿主全局对象的 `createIntersectionObserver(...)`。\n */\nexport function useIntersectionObserver(\n options: UseIntersectionObserverOptions = {},\n): UseIntersectionObserverResult {\n const instance = getCurrentInstance()\n if (!instance) {\n throw new Error('useIntersectionObserver() 必须在 setup() 的同步阶段调用')\n }\n\n const observer = createObserverFromInstance(instance, options)\n ?? createObserverFromGlobal(instance, options)\n\n if (!observer || typeof observer.disconnect !== 'function') {\n throw new Error('当前运行环境不支持 IntersectionObserver,请检查基础库版本或平台能力')\n }\n\n let disconnected = false\n const disconnect = () => {\n if (disconnected) {\n return\n }\n disconnected = true\n try {\n observer.disconnect()\n }\n catch {\n // 忽略平台差异导致的断开异常,避免影响页面卸载流程\n }\n }\n\n onUnload(disconnect)\n onDetached(disconnect)\n\n return observer\n}\n"],"mappings":";;;;;AAWA,SAAS,2BACP,UACA,SAC2C;CAC3C,MAAM,iBAAiB;CACvB,MAAM,UAAU,eAAe;CAC/B,IAAI,OAAO,YAAY,YACrB;CAGF,OADiB,QAAQ,KAAK,gBAAgB,OAChC;AAChB;AAEA,SAAS,yBACP,UACA,SAC2C;CAC3C,IAAI,CAAC,4CAA4C,kCAAkC,GACjF;CAEF,MAAM,oBAAoB,2BAA2B;CACrD,MAAM,gFAAU,kBAAmB;CACnC,IAAI,OAAO,YAAY,YACrB;CAKF,OAHiB,yCAAyC,CAAC,CAAC,uCACxD,QAAQ,KAAK,mBAAmB,UAAU,OAAO,IACjD,QAAQ,KAAK,mBAAmB,OAAO;AAE7C;;;;;;;AAQA,SAAgB,wBACd,UAA0C,CAAC,GACZ;;CAC/B,MAAM,WAAW,mBAAmB;CACpC,IAAI,CAAC,UACH,MAAM,IAAI,MAAM,+CAA+C;CAGjE,MAAM,oCAAW,2BAA2B,UAAU,OAAO,0EACxD,yBAAyB,UAAU,OAAO;CAE/C,IAAI,CAAC,YAAY,OAAO,SAAS,eAAe,YAC9C,MAAM,IAAI,MAAM,8CAA8C;CAGhE,IAAI,eAAe;CACnB,MAAM,mBAAmB;EACvB,IAAI,cACF;EAEF,eAAe;EACf,IAAI;GACF,SAAS,WAAW;EACtB,kBACM,CAEN;CACF;CAEA,SAAS,UAAU;CACnB,WAAW,UAAU;CAErB,OAAO;AACT"}