wevu 7.2.1 → 7.3.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 (466) hide show
  1. package/README.md +6 -0
  2. package/dist/dev/_virtual/{_@oxc-project_runtime@0.150.0 → _@oxc-project_runtime@0.151.0}/helpers/esm/defineProperty.mjs +1 -1
  3. package/dist/dev/_virtual/{_@oxc-project_runtime@0.150.0 → _@oxc-project_runtime@0.151.0}/helpers/esm/toPrimitive.mjs +1 -1
  4. package/dist/dev/_virtual/{_@oxc-project_runtime@0.150.0 → _@oxc-project_runtime@0.151.0}/helpers/esm/toPropertyKey.mjs +1 -1
  5. package/dist/dev/_virtual/{_@oxc-project_runtime@0.150.0 → _@oxc-project_runtime@0.151.0}/helpers/esm/typeof.mjs +1 -1
  6. package/dist/dev/api/vitest/setup.d.mts +1 -0
  7. package/dist/dev/api/vitest.d.mts +1 -0
  8. package/dist/dev/api.d.mts +1 -0
  9. package/dist/dev/compiler.d.mts +1 -0
  10. package/dist/dev/fetch.d.mts +9 -0
  11. package/dist/dev/index.d.mts +72 -0
  12. package/dist/dev/internal-reactivity.d.mts +18 -0
  13. package/dist/dev/internal-runtime.d.mts +45 -0
  14. package/dist/dev/internal-runtime.mjs +3 -2
  15. package/dist/dev/internal-template.d.mts +2 -0
  16. package/dist/dev/jsxTypes.d.mts +9 -0
  17. package/dist/dev/macros/shared.d.mts +83 -0
  18. package/dist/dev/macros.d.mts +71 -0
  19. package/dist/dev/package.mjs +1 -1
  20. package/dist/dev/reactivity/asyncDerivation.d.mts +41 -0
  21. package/dist/dev/reactivity/asyncDerivation.mjs +8 -10
  22. package/dist/dev/reactivity/asyncDerivation.mjs.map +1 -1
  23. package/dist/dev/reactivity/computed.d.mts +25 -0
  24. package/dist/dev/reactivity/core.d.mts +35 -0
  25. package/dist/dev/reactivity/core.mjs +5 -8
  26. package/dist/dev/reactivity/core.mjs.map +1 -1
  27. package/dist/dev/reactivity/index.d.mts +16 -0
  28. package/dist/dev/reactivity/reactive/mutation.d.mts +21 -0
  29. package/dist/dev/reactivity/reactive/patch.d.mts +18 -0
  30. package/dist/dev/reactivity/reactive/patch.mjs +3 -3
  31. package/dist/dev/reactivity/reactive/patch.mjs.map +1 -1
  32. package/dist/dev/reactivity/reactive/patchState.mjs +4 -8
  33. package/dist/dev/reactivity/reactive/patchState.mjs.map +1 -1
  34. package/dist/dev/reactivity/reactive/shallow.d.mts +22 -0
  35. package/dist/dev/reactivity/reactive/shared.d.mts +4 -0
  36. package/dist/dev/reactivity/reactive/shared.mjs +1 -2
  37. package/dist/dev/reactivity/reactive/shared.mjs.map +1 -1
  38. package/dist/dev/reactivity/reactive.d.mts +42 -0
  39. package/dist/dev/reactivity/reactive.mjs +5 -10
  40. package/dist/dev/reactivity/reactive.mjs.map +1 -1
  41. package/dist/dev/reactivity/readonly.d.mts +27 -0
  42. package/dist/dev/reactivity/ref.d.mts +27 -0
  43. package/dist/dev/reactivity/ref.mjs +2 -2
  44. package/dist/dev/reactivity/ref.mjs.map +1 -1
  45. package/dist/dev/reactivity/shallowRef.d.mts +19 -0
  46. package/dist/dev/reactivity/shallowRef.mjs +1 -1
  47. package/dist/dev/reactivity/shallowRef.mjs.map +1 -1
  48. package/dist/dev/reactivity/toRefs.d.mts +43 -0
  49. package/dist/dev/reactivity/traverse.d.mts +8 -0
  50. package/dist/dev/reactivity/watch/helpers.mjs +1 -1
  51. package/dist/dev/reactivity/watch/helpers.mjs.map +1 -1
  52. package/dist/dev/reactivity/watch/types.d.mts +43 -0
  53. package/dist/dev/reactivity/watch.d.mts +22 -0
  54. package/dist/dev/reactivity/watch.mjs +6 -8
  55. package/dist/dev/reactivity/watch.mjs.map +1 -1
  56. package/dist/dev/router/auto-routes.d.mts +8 -0
  57. package/dist/dev/router/createRouter.d.mts +9 -0
  58. package/dist/dev/router/createRouter.mjs +17 -24
  59. package/dist/dev/router/createRouter.mjs.map +1 -1
  60. package/dist/dev/router/initialNavigation.mjs +18 -16
  61. package/dist/dev/router/initialNavigation.mjs.map +1 -1
  62. package/dist/dev/router/instance.mjs +1 -2
  63. package/dist/dev/router/instance.mjs.map +1 -1
  64. package/dist/dev/router/navigationCore.d.mts +7 -0
  65. package/dist/dev/router/navigationCore.mjs +2 -2
  66. package/dist/dev/router/navigationCore.mjs.map +1 -1
  67. package/dist/dev/router/navigationResult.mjs +7 -10
  68. package/dist/dev/router/navigationResult.mjs.map +1 -1
  69. package/dist/dev/router/navigationTarget.mjs +1 -3
  70. package/dist/dev/router/navigationTarget.mjs.map +1 -1
  71. package/dist/dev/router/resolve.d.mts +7 -0
  72. package/dist/dev/router/resolve.mjs +3 -4
  73. package/dist/dev/router/resolve.mjs.map +1 -1
  74. package/dist/dev/router/routeRegistry.mjs +1 -1
  75. package/dist/dev/router/routeRegistry.mjs.map +1 -1
  76. package/dist/dev/router/routeSync.d.mts +2 -0
  77. package/dist/dev/router/routeSync.mjs +1 -1
  78. package/dist/dev/router/routeSync.mjs.map +1 -1
  79. package/dist/dev/router/types.d.mts +267 -0
  80. package/dist/dev/router/useRoute.d.mts +20 -0
  81. package/dist/dev/router/useRoute.mjs +12 -19
  82. package/dist/dev/router/useRoute.mjs.map +1 -1
  83. package/dist/dev/router/useRouter.d.mts +9 -0
  84. package/dist/dev/router.d.mts +26 -0
  85. package/dist/dev/routerInternal/location.d.mts +2 -0
  86. package/dist/dev/routerInternal/location.mjs +2 -3
  87. package/dist/dev/routerInternal/location.mjs.map +1 -1
  88. package/dist/dev/routerInternal/matching.d.mts +2 -0
  89. package/dist/dev/routerInternal/params.d.mts +2 -0
  90. package/dist/dev/routerInternal/params.mjs +2 -3
  91. package/dist/dev/routerInternal/params.mjs.map +1 -1
  92. package/dist/dev/routerInternal/query.d.mts +7 -0
  93. package/dist/dev/routerInternal/records.d.mts +2 -0
  94. package/dist/dev/routerInternal/records.mjs +1 -1
  95. package/dist/dev/routerInternal/records.mjs.map +1 -1
  96. package/dist/dev/routerInternal/recordsWarnings.d.mts +2 -0
  97. package/dist/dev/routerInternal/recordsWarnings.mjs +1 -2
  98. package/dist/dev/routerInternal/recordsWarnings.mjs.map +1 -1
  99. package/dist/dev/routerInternal/shared.d.mts +9 -0
  100. package/dist/dev/routerInternal/snapshots.d.mts +2 -0
  101. package/dist/dev/routerInternal/types.d.mts +9 -0
  102. package/dist/dev/runtime/app/context.mjs +13 -26
  103. package/dist/dev/runtime/app/context.mjs.map +1 -1
  104. package/dist/dev/runtime/app/diagnostics.mjs +2 -4
  105. package/dist/dev/runtime/app/diagnostics.mjs.map +1 -1
  106. package/dist/dev/runtime/app/mount.mjs +27 -33
  107. package/dist/dev/runtime/app/mount.mjs.map +1 -1
  108. package/dist/dev/runtime/app/pending.d.mts +10 -0
  109. package/dist/dev/runtime/app/setData/commitTracker.d.mts +13 -0
  110. package/dist/dev/runtime/app/setData/commitTracker.mjs +5 -9
  111. package/dist/dev/runtime/app/setData/commitTracker.mjs.map +1 -1
  112. package/dist/dev/runtime/app/setData/patchScheduler.mjs +2 -4
  113. package/dist/dev/runtime/app/setData/patchScheduler.mjs.map +1 -1
  114. package/dist/dev/runtime/app/setData/payload.mjs +2 -3
  115. package/dist/dev/runtime/app/setData/payload.mjs.map +1 -1
  116. package/dist/dev/runtime/app/setData/scheduler.d.mts +51 -0
  117. package/dist/dev/runtime/app/setData/scheduler.mjs +7 -9
  118. package/dist/dev/runtime/app/setData/scheduler.mjs.map +1 -1
  119. package/dist/dev/runtime/app/setData/snapshot.mjs +5 -6
  120. package/dist/dev/runtime/app/setData/snapshot.mjs.map +1 -1
  121. package/dist/dev/runtime/app/setDataOptions.mjs +26 -27
  122. package/dist/dev/runtime/app/setDataOptions.mjs.map +1 -1
  123. package/dist/dev/runtime/app.d.mts +8 -0
  124. package/dist/dev/runtime/app.mjs +9 -9
  125. package/dist/dev/runtime/app.mjs.map +1 -1
  126. package/dist/dev/runtime/bindingManifest.mjs +6 -14
  127. package/dist/dev/runtime/bindingManifest.mjs.map +1 -1
  128. package/dist/dev/runtime/capabilities.d.mts +78 -0
  129. package/dist/dev/runtime/capabilities.mjs.map +1 -1
  130. package/dist/dev/runtime/css.d.mts +14 -0
  131. package/dist/dev/runtime/css.mjs +4 -8
  132. package/dist/dev/runtime/css.mjs.map +1 -1
  133. package/dist/dev/runtime/defaults.d.mts +12 -0
  134. package/dist/dev/runtime/defaults.mjs +4 -4
  135. package/dist/dev/runtime/defaults.mjs.map +1 -1
  136. package/dist/dev/runtime/define/initialComputed.mjs +5 -5
  137. package/dist/dev/runtime/define/initialComputed.mjs.map +1 -1
  138. package/dist/dev/runtime/define/options.mjs +10 -12
  139. package/dist/dev/runtime/define/options.mjs.map +1 -1
  140. package/dist/dev/runtime/define/props.mjs +4 -5
  141. package/dist/dev/runtime/define/props.mjs.map +1 -1
  142. package/dist/dev/runtime/define/scopedSlotOptions.mjs +43 -61
  143. package/dist/dev/runtime/define/scopedSlotOptions.mjs.map +1 -1
  144. package/dist/dev/runtime/define/setupResult.mjs +17 -28
  145. package/dist/dev/runtime/define/setupResult.mjs.map +1 -1
  146. package/dist/dev/runtime/define.d.mts +118 -0
  147. package/dist/dev/runtime/define.mjs +9 -12
  148. package/dist/dev/runtime/define.mjs.map +1 -1
  149. package/dist/dev/runtime/diff.mjs +9 -11
  150. package/dist/dev/runtime/diff.mjs.map +1 -1
  151. package/dist/dev/runtime/disposables.d.mts +31 -0
  152. package/dist/dev/runtime/disposables.mjs +2 -2
  153. package/dist/dev/runtime/disposables.mjs.map +1 -1
  154. package/dist/dev/runtime/elementIntersectionObserver.d.mts +26 -0
  155. package/dist/dev/runtime/elementIntersectionObserver.mjs +16 -24
  156. package/dist/dev/runtime/elementIntersectionObserver.mjs.map +1 -1
  157. package/dist/dev/runtime/features/inlineEvents.d.mts +7 -0
  158. package/dist/dev/runtime/features/inlineEvents.mjs +2 -3
  159. package/dist/dev/runtime/features/inlineEvents.mjs.map +1 -1
  160. package/dist/dev/runtime/features/jsxIslands.d.mts +7 -0
  161. package/dist/dev/runtime/features/jsxIslands.mjs +20 -0
  162. package/dist/dev/runtime/features/jsxIslands.mjs.map +1 -0
  163. package/dist/dev/runtime/features/layout.d.mts +7 -0
  164. package/dist/dev/runtime/features/layout.mjs +2 -3
  165. package/dist/dev/runtime/features/layout.mjs.map +1 -1
  166. package/dist/dev/runtime/features/patchStrategy.d.mts +7 -0
  167. package/dist/dev/runtime/features/publicLayout.d.mts +24 -0
  168. package/dist/dev/runtime/features/publicLayout.mjs +2 -6
  169. package/dist/dev/runtime/features/publicLayout.mjs.map +1 -1
  170. package/dist/dev/runtime/features/scopedSlots.d.mts +23 -0
  171. package/dist/dev/runtime/features/scopedSlots.mjs +5 -9
  172. package/dist/dev/runtime/features/scopedSlots.mjs.map +1 -1
  173. package/dist/dev/runtime/features/setDataHighFrequencyWarning.d.mts +7 -0
  174. package/dist/dev/runtime/features/templateRefs.d.mts +7 -0
  175. package/dist/dev/runtime/features/templateRefs.mjs +1 -1
  176. package/dist/dev/runtime/features/templateRefs.mjs.map +1 -1
  177. package/dist/dev/runtime/hooks/base.d.mts +27 -0
  178. package/dist/dev/runtime/hooks/base.mjs +21 -32
  179. package/dist/dev/runtime/hooks/base.mjs.map +1 -1
  180. package/dist/dev/runtime/hooks/register.d.mts +30 -0
  181. package/dist/dev/runtime/hooks/vue.d.mts +52 -0
  182. package/dist/dev/runtime/hooks.d.mts +4 -0
  183. package/dist/dev/runtime/index.d.mts +46 -0
  184. package/dist/dev/runtime/inlineDataset.mjs +1 -2
  185. package/dist/dev/runtime/inlineDataset.mjs.map +1 -1
  186. package/dist/dev/runtime/intersectionObserver.d.mts +14 -0
  187. package/dist/dev/runtime/intersectionObserver.mjs +6 -6
  188. package/dist/dev/runtime/intersectionObserver.mjs.map +1 -1
  189. package/dist/dev/runtime/jsxIsland.d.mts +37 -0
  190. package/dist/dev/runtime/jsxIsland.mjs +16 -33
  191. package/dist/dev/runtime/jsxIsland.mjs.map +1 -1
  192. package/dist/dev/runtime/layoutBridge.d.mts +55 -0
  193. package/dist/dev/runtime/layoutBridge.mjs +32 -62
  194. package/dist/dev/runtime/layoutBridge.mjs.map +1 -1
  195. package/dist/dev/runtime/nativeBridge.mjs +1 -1
  196. package/dist/dev/runtime/nativeBridge.mjs.map +1 -1
  197. package/dist/dev/runtime/navigationLifecycle.mjs +24 -0
  198. package/dist/dev/runtime/navigationLifecycle.mjs.map +1 -0
  199. package/dist/dev/runtime/noSetData.d.mts +5 -0
  200. package/dist/dev/runtime/pageEnvironment.d.mts +50 -0
  201. package/dist/dev/runtime/pageEnvironment.mjs +15 -18
  202. package/dist/dev/runtime/pageEnvironment.mjs.map +1 -1
  203. package/dist/dev/runtime/pageLayout.d.mts +25 -0
  204. package/dist/dev/runtime/pageLayout.mjs +7 -11
  205. package/dist/dev/runtime/pageLayout.mjs.map +1 -1
  206. package/dist/dev/runtime/pageScroll.d.mts +29 -0
  207. package/dist/dev/runtime/pageScroll.mjs +2 -3
  208. package/dist/dev/runtime/pageScroll.mjs.map +1 -1
  209. package/dist/dev/runtime/platform/current.mjs +12 -0
  210. package/dist/dev/runtime/platform/current.mjs.map +1 -0
  211. package/dist/dev/runtime/platform/generic.mjs +36 -0
  212. package/dist/dev/runtime/platform/generic.mjs.map +1 -0
  213. package/dist/dev/runtime/platform/globals.mjs +29 -0
  214. package/dist/dev/runtime/platform/globals.mjs.map +1 -0
  215. package/dist/dev/runtime/platform.mjs +15 -60
  216. package/dist/dev/runtime/platform.mjs.map +1 -1
  217. package/dist/dev/runtime/provide.d.mts +60 -0
  218. package/dist/dev/runtime/provideContext.mjs +7 -9
  219. package/dist/dev/runtime/provideContext.mjs.map +1 -1
  220. package/dist/dev/runtime/provideStore.d.mts +7 -0
  221. package/dist/dev/runtime/publicRuntime.d.mts +22 -0
  222. package/dist/dev/runtime/publicRuntime.mjs +4 -0
  223. package/dist/dev/runtime/publicRuntime.mjs.map +1 -1
  224. package/dist/dev/runtime/pullDownRefresh.d.mts +12 -0
  225. package/dist/dev/runtime/pullDownRefresh.mjs +2 -4
  226. package/dist/dev/runtime/pullDownRefresh.mjs.map +1 -1
  227. package/dist/dev/runtime/register/app.d.mts +14 -0
  228. package/dist/dev/runtime/register/app.mjs +18 -19
  229. package/dist/dev/runtime/register/app.mjs.map +1 -1
  230. package/dist/dev/runtime/register/component/alipay.mjs +9 -18
  231. package/dist/dev/runtime/register/component/alipay.mjs.map +1 -1
  232. package/dist/dev/runtime/register/component/alipayRegistration.mjs +60 -0
  233. package/dist/dev/runtime/register/component/alipayRegistration.mjs.map +1 -0
  234. package/dist/dev/runtime/register/component/lifecycle/platform.mjs +8 -9
  235. package/dist/dev/runtime/register/component/lifecycle/platform.mjs.map +1 -1
  236. package/dist/dev/runtime/register/component/lifecycle.mjs +7 -12
  237. package/dist/dev/runtime/register/component/lifecycle.mjs.map +1 -1
  238. package/dist/dev/runtime/register/component/methods.mjs +13 -18
  239. package/dist/dev/runtime/register/component/methods.mjs.map +1 -1
  240. package/dist/dev/runtime/register/component/options.mjs +3 -4
  241. package/dist/dev/runtime/register/component/options.mjs.map +1 -1
  242. package/dist/dev/runtime/register/component/props.mjs +25 -31
  243. package/dist/dev/runtime/register/component/props.mjs.map +1 -1
  244. package/dist/dev/runtime/register/component/registerDefinition.mjs +18 -40
  245. package/dist/dev/runtime/register/component/registerDefinition.mjs.map +1 -1
  246. package/dist/dev/runtime/register/component/registerNativeDefinition.mjs +18 -60
  247. package/dist/dev/runtime/register/component/registerNativeDefinition.mjs.map +1 -1
  248. package/dist/dev/runtime/register/component.d.mts +17 -0
  249. package/dist/dev/runtime/register/component.mjs +3 -5
  250. package/dist/dev/runtime/register/component.mjs.map +1 -1
  251. package/dist/dev/runtime/register/inline.d.mts +15 -0
  252. package/dist/dev/runtime/register/inline.mjs +8 -10
  253. package/dist/dev/runtime/register/inline.mjs.map +1 -1
  254. package/dist/dev/runtime/register/runtimeInstance/methodBridge.mjs +7 -8
  255. package/dist/dev/runtime/register/runtimeInstance/methodBridge.mjs.map +1 -1
  256. package/dist/dev/runtime/register/runtimeInstance/provideContext.mjs +1 -1
  257. package/dist/dev/runtime/register/runtimeInstance/provideContext.mjs.map +1 -1
  258. package/dist/dev/runtime/register/runtimeInstance/setupContext.mjs +25 -34
  259. package/dist/dev/runtime/register/runtimeInstance/setupContext.mjs.map +1 -1
  260. package/dist/dev/runtime/register/runtimeInstance/setupPhase.mjs +6 -13
  261. package/dist/dev/runtime/register/runtimeInstance/setupPhase.mjs.map +1 -1
  262. package/dist/dev/runtime/register/runtimeInstance/setupSnapshot.mjs +2 -2
  263. package/dist/dev/runtime/register/runtimeInstance/setupSnapshot.mjs.map +1 -1
  264. package/dist/dev/runtime/register/runtimeInstance/utils.mjs +9 -9
  265. package/dist/dev/runtime/register/runtimeInstance/utils.mjs.map +1 -1
  266. package/dist/dev/runtime/register/runtimeInstance.d.mts +26 -0
  267. package/dist/dev/runtime/register/runtimeInstance.mjs +74 -100
  268. package/dist/dev/runtime/register/runtimeInstance.mjs.map +1 -1
  269. package/dist/dev/runtime/register/setDataFrequencyWarning.mjs +12 -15
  270. package/dist/dev/runtime/register/setDataFrequencyWarning.mjs.map +1 -1
  271. package/dist/dev/runtime/register/setup.d.mts +11 -0
  272. package/dist/dev/runtime/register/setup.mjs +2 -3
  273. package/dist/dev/runtime/register/setup.mjs.map +1 -1
  274. package/dist/dev/runtime/register/snapshot.mjs +1 -4
  275. package/dist/dev/runtime/register/snapshot.mjs.map +1 -1
  276. package/dist/dev/runtime/register/watch.d.mts +12 -0
  277. package/dist/dev/runtime/register/watch.mjs +3 -5
  278. package/dist/dev/runtime/register/watch.mjs.map +1 -1
  279. package/dist/dev/runtime/register.d.mts +5 -0
  280. package/dist/dev/runtime/scopedSlots.mjs +14 -21
  281. package/dist/dev/runtime/scopedSlots.mjs.map +1 -1
  282. package/dist/dev/runtime/selectorQuery.d.mts +54 -0
  283. package/dist/dev/runtime/selectorQuery.mjs +5 -9
  284. package/dist/dev/runtime/selectorQuery.mjs.map +1 -1
  285. package/dist/dev/runtime/template.d.mts +6 -0
  286. package/dist/dev/runtime/template.mjs +1 -1
  287. package/dist/dev/runtime/template.mjs.map +1 -1
  288. package/dist/dev/runtime/templateRefTypes.d.mts +12 -0
  289. package/dist/dev/runtime/templateRefs/helpers.mjs +14 -24
  290. package/dist/dev/runtime/templateRefs/helpers.mjs.map +1 -1
  291. package/dist/dev/runtime/templateRefs.mjs +8 -15
  292. package/dist/dev/runtime/templateRefs.mjs.map +1 -1
  293. package/dist/dev/runtime/types/core.d.mts +35 -0
  294. package/dist/dev/runtime/types/miniprogram.d.mts +84 -0
  295. package/dist/dev/runtime/types/miniprogramHost.d.mts +45 -0
  296. package/dist/dev/runtime/types/miniprogramHostSources.d.mts +112 -0
  297. package/dist/dev/runtime/types/options.d.mts +138 -0
  298. package/dist/dev/runtime/types/props/propTypes.d.mts +79 -0
  299. package/dist/dev/runtime/types/props/router.d.mts +51 -0
  300. package/dist/dev/runtime/types/props/setup.d.mts +96 -0
  301. package/dist/dev/runtime/types/props.d.mts +4 -0
  302. package/dist/dev/runtime/types/runtime.d.mts +59 -0
  303. package/dist/dev/runtime/types/setData.d.mts +237 -0
  304. package/dist/dev/runtime/types.d.mts +29 -0
  305. package/dist/dev/runtime/uniAppHost.d.mts +8 -0
  306. package/dist/dev/runtime/uniAppHost.mjs +6 -14
  307. package/dist/dev/runtime/uniAppHost.mjs.map +1 -1
  308. package/dist/dev/runtime/updatePerformance.d.mts +13 -0
  309. package/dist/dev/runtime/updatePerformance.mjs +1 -1
  310. package/dist/dev/runtime/updatePerformance.mjs.map +1 -1
  311. package/dist/dev/runtime/use.d.mts +13 -0
  312. package/dist/dev/runtime/use.mjs +1 -1
  313. package/dist/dev/runtime/use.mjs.map +1 -1
  314. package/dist/dev/runtime/vueCompat/context.d.mts +8 -0
  315. package/dist/dev/runtime/vueCompat/context.mjs +3 -5
  316. package/dist/dev/runtime/vueCompat/context.mjs.map +1 -1
  317. package/dist/dev/runtime/vueCompat/model.d.mts +30 -0
  318. package/dist/dev/runtime/vueCompat/model.mjs +9 -13
  319. package/dist/dev/runtime/vueCompat/model.mjs.map +1 -1
  320. package/dist/dev/runtime/vueCompat/router.d.mts +29 -0
  321. package/dist/dev/runtime/vueCompat/router.mjs +4 -4
  322. package/dist/dev/runtime/vueCompat/router.mjs.map +1 -1
  323. package/dist/dev/runtime/vueCompat/templateRef.d.mts +9 -0
  324. package/dist/dev/runtime/vueCompat/templateRef.mjs +1 -1
  325. package/dist/dev/runtime/vueCompat/templateRef.mjs.map +1 -1
  326. package/dist/dev/runtime/vueCompat.d.mts +5 -0
  327. package/dist/dev/scheduler.d.mts +4 -0
  328. package/dist/dev/scheduler.mjs +3 -4
  329. package/dist/dev/scheduler.mjs.map +1 -1
  330. package/dist/dev/store/base.mjs +1 -2
  331. package/dist/dev/store/base.mjs.map +1 -1
  332. package/dist/dev/store/define/create.mjs +11 -22
  333. package/dist/dev/store/define/create.mjs.map +1 -1
  334. package/dist/dev/store/define.d.mts +8 -0
  335. package/dist/dev/store/define.mjs +1 -1
  336. package/dist/dev/store/define.mjs.map +1 -1
  337. package/dist/dev/store/manager.d.mts +16 -0
  338. package/dist/dev/store/storeToRefs.d.mts +11 -0
  339. package/dist/dev/store/types.d.mts +106 -0
  340. package/dist/dev/store/view.mjs +1 -1
  341. package/dist/dev/store/view.mjs.map +1 -1
  342. package/dist/dev/store.d.mts +5 -0
  343. package/dist/dev/version.d.mts +4 -0
  344. package/dist/dev/vue-augment.d.mts +8 -0
  345. package/dist/dev/vue-demi.d.mts +87 -0
  346. package/dist/dev/vue-types.d.mts +19 -0
  347. package/dist/dev/web-apis.d.mts +3 -0
  348. package/dist/internal-runtime.d.mts +2 -1
  349. package/dist/internal-runtime.mjs +1 -1
  350. package/dist/package.mjs +1 -1
  351. package/dist/reactivity/asyncDerivation.mjs +1 -1
  352. package/dist/reactivity/core.mjs +1 -1
  353. package/dist/reactivity/reactive/patch.mjs +1 -1
  354. package/dist/reactivity/reactive/patchState.mjs +1 -1
  355. package/dist/reactivity/reactive/shared.mjs +1 -1
  356. package/dist/reactivity/reactive.mjs +1 -1
  357. package/dist/reactivity/ref.mjs +1 -1
  358. package/dist/reactivity/shallowRef.mjs +1 -1
  359. package/dist/reactivity/watch/helpers.mjs +1 -1
  360. package/dist/reactivity/watch.mjs +1 -1
  361. package/dist/router/createRouter.mjs +1 -1
  362. package/dist/router/initialNavigation.mjs +1 -1
  363. package/dist/router/instance.mjs +1 -1
  364. package/dist/router/navigationCore.mjs +1 -1
  365. package/dist/router/navigationResult.mjs +1 -1
  366. package/dist/router/navigationTarget.mjs +1 -1
  367. package/dist/router/resolve.mjs +1 -1
  368. package/dist/router/routeRegistry.mjs +1 -1
  369. package/dist/router/routeSync.mjs +1 -1
  370. package/dist/router/useRoute.mjs +1 -1
  371. package/dist/routerInternal/location.mjs +1 -1
  372. package/dist/routerInternal/params.mjs +1 -1
  373. package/dist/routerInternal/records.mjs +1 -1
  374. package/dist/routerInternal/recordsWarnings.mjs +1 -1
  375. package/dist/runtime/app/context.mjs +1 -1
  376. package/dist/runtime/app/diagnostics.mjs +1 -1
  377. package/dist/runtime/app/mount.mjs +1 -1
  378. package/dist/runtime/app/setData/commitTracker.mjs +1 -1
  379. package/dist/runtime/app/setData/patchScheduler.mjs +1 -1
  380. package/dist/runtime/app/setData/payload.mjs +1 -1
  381. package/dist/runtime/app/setData/scheduler.mjs +1 -1
  382. package/dist/runtime/app/setData/snapshot.mjs +1 -1
  383. package/dist/runtime/app/setDataOptions.mjs +1 -1
  384. package/dist/runtime/app.mjs +1 -1
  385. package/dist/runtime/bindingManifest.mjs +1 -1
  386. package/dist/runtime/capabilities.d.mts +4 -1
  387. package/dist/runtime/css.mjs +1 -1
  388. package/dist/runtime/defaults.mjs +1 -1
  389. package/dist/runtime/define/initialComputed.mjs +1 -1
  390. package/dist/runtime/define/options.mjs +1 -1
  391. package/dist/runtime/define/props.mjs +1 -1
  392. package/dist/runtime/define/scopedSlotOptions.mjs +1 -1
  393. package/dist/runtime/define/setupResult.mjs +1 -1
  394. package/dist/runtime/define.mjs +1 -1
  395. package/dist/runtime/diff.mjs +1 -1
  396. package/dist/runtime/disposables.mjs +1 -1
  397. package/dist/runtime/elementIntersectionObserver.mjs +1 -1
  398. package/dist/runtime/features/inlineEvents.mjs +1 -1
  399. package/dist/runtime/features/jsxIslands.d.mts +6 -0
  400. package/dist/runtime/features/jsxIslands.mjs +1 -0
  401. package/dist/runtime/features/layout.mjs +1 -1
  402. package/dist/runtime/features/publicLayout.mjs +1 -1
  403. package/dist/runtime/features/scopedSlots.mjs +1 -1
  404. package/dist/runtime/features/templateRefs.mjs +1 -1
  405. package/dist/runtime/hooks/base.mjs +1 -1
  406. package/dist/runtime/inlineDataset.mjs +1 -1
  407. package/dist/runtime/intersectionObserver.mjs +1 -1
  408. package/dist/runtime/jsxIsland.mjs +1 -1
  409. package/dist/runtime/layoutBridge.mjs +1 -1
  410. package/dist/runtime/nativeBridge.mjs +1 -1
  411. package/dist/runtime/navigationLifecycle.mjs +1 -0
  412. package/dist/runtime/pageEnvironment.mjs +1 -1
  413. package/dist/runtime/pageLayout.mjs +1 -1
  414. package/dist/runtime/pageScroll.mjs +1 -1
  415. package/dist/runtime/platform/current.mjs +1 -0
  416. package/dist/runtime/platform/generic.mjs +1 -0
  417. package/dist/runtime/platform/globals.mjs +1 -0
  418. package/dist/runtime/platform.mjs +1 -1
  419. package/dist/runtime/provideContext.mjs +1 -1
  420. package/dist/runtime/publicRuntime.mjs +1 -1
  421. package/dist/runtime/pullDownRefresh.mjs +1 -1
  422. package/dist/runtime/register/app.mjs +1 -1
  423. package/dist/runtime/register/component/alipay.mjs +1 -1
  424. package/dist/runtime/register/component/alipayRegistration.mjs +1 -0
  425. package/dist/runtime/register/component/lifecycle/platform.mjs +1 -1
  426. package/dist/runtime/register/component/lifecycle.mjs +1 -1
  427. package/dist/runtime/register/component/methods.mjs +1 -1
  428. package/dist/runtime/register/component/options.mjs +1 -1
  429. package/dist/runtime/register/component/props.mjs +1 -1
  430. package/dist/runtime/register/component/registerDefinition.mjs +1 -1
  431. package/dist/runtime/register/component/registerNativeDefinition.mjs +1 -1
  432. package/dist/runtime/register/component.mjs +1 -1
  433. package/dist/runtime/register/inline.mjs +1 -1
  434. package/dist/runtime/register/runtimeInstance/methodBridge.mjs +1 -1
  435. package/dist/runtime/register/runtimeInstance/provideContext.mjs +1 -1
  436. package/dist/runtime/register/runtimeInstance/setupContext.mjs +1 -1
  437. package/dist/runtime/register/runtimeInstance/setupPhase.mjs +1 -1
  438. package/dist/runtime/register/runtimeInstance/setupSnapshot.mjs +1 -1
  439. package/dist/runtime/register/runtimeInstance/utils.mjs +1 -1
  440. package/dist/runtime/register/runtimeInstance.mjs +1 -1
  441. package/dist/runtime/register/setDataFrequencyWarning.mjs +1 -1
  442. package/dist/runtime/register/setup.mjs +1 -1
  443. package/dist/runtime/register/snapshot.mjs +1 -1
  444. package/dist/runtime/register/watch.mjs +1 -1
  445. package/dist/runtime/scopedSlots.mjs +1 -1
  446. package/dist/runtime/selectorQuery.mjs +1 -1
  447. package/dist/runtime/template.mjs +1 -1
  448. package/dist/runtime/templateRefs/helpers.mjs +1 -1
  449. package/dist/runtime/templateRefs.mjs +1 -1
  450. package/dist/runtime/uniAppHost.mjs +1 -1
  451. package/dist/runtime/updatePerformance.mjs +1 -1
  452. package/dist/runtime/use.mjs +1 -1
  453. package/dist/runtime/vueCompat/context.mjs +1 -1
  454. package/dist/runtime/vueCompat/model.mjs +1 -1
  455. package/dist/runtime/vueCompat/router.mjs +1 -1
  456. package/dist/runtime/vueCompat/templateRef.mjs +1 -1
  457. package/dist/scheduler.mjs +1 -1
  458. package/dist/store/base.mjs +1 -1
  459. package/dist/store/define/create.mjs +1 -1
  460. package/dist/store/define.mjs +1 -1
  461. package/dist/store/view.mjs +1 -1
  462. package/package.json +7 -7
  463. /package/dist/_virtual/{_@oxc-project_runtime@0.150.0 → _@oxc-project_runtime@0.151.0}/helpers/esm/defineProperty.mjs +0 -0
  464. /package/dist/_virtual/{_@oxc-project_runtime@0.150.0 → _@oxc-project_runtime@0.151.0}/helpers/esm/toPrimitive.mjs +0 -0
  465. /package/dist/_virtual/{_@oxc-project_runtime@0.150.0 → _@oxc-project_runtime@0.151.0}/helpers/esm/toPropertyKey.mjs +0 -0
  466. /package/dist/_virtual/{_@oxc-project_runtime@0.150.0 → _@oxc-project_runtime@0.151.0}/helpers/esm/typeof.mjs +0 -0
@@ -0,0 +1,96 @@
1
+ import { HostMiniProgramIntersectionObserver, HostMiniProgramIntersectionObserverOptions, HostMiniProgramSelectorQuery, HostMiniProgramTriggerEventOptions } from "../miniprogramHost.mjs";
2
+ import { ComponentPropsOptions, InferProps } from "./propTypes.mjs";
3
+ import { SetupContextRouter } from "./router.mjs";
4
+ import { ComputedDefinitions, MethodDefinitions } from "../core.mjs";
5
+ import { InternalRuntimeState, RuntimeInstance } from "../runtime.mjs";
6
+ //#region src/runtime/types/props/setup.d.ts
7
+ export type SetupContextSelectorQuery = HostMiniProgramSelectorQuery;
8
+ export type SetupContextIntersectionObserverOptions = HostMiniProgramIntersectionObserverOptions;
9
+ export type SetupContextIntersectionObserver = HostMiniProgramIntersectionObserver;
10
+ export type SetupFunction<P extends ComponentPropsOptions, D extends object, C extends ComputedDefinitions, M extends MethodDefinitions, R extends Record<string, any> | void = Record<string, any> | void> = (props: InferProps<P>, ctx: SetupContext<D, C, M, P>) => R;
11
+ export type SetupContextNativeInstance = InternalRuntimeState & {
12
+ /**
13
+ * 派发组件事件(页面/应用场景下不可用时会安全降级为 no-op)
14
+ */
15
+ triggerEvent: (eventName: string, detail?: any, options?: HostMiniProgramTriggerEventOptions) => void;
16
+ /**
17
+ * 创建选择器查询对象(不可用时返回 undefined)
18
+ */
19
+ createSelectorQuery: () => SetupContextSelectorQuery | undefined;
20
+ /**
21
+ * 创建交叉观察器(不可用时返回 undefined)
22
+ */
23
+ createIntersectionObserver: (options?: SetupContextIntersectionObserverOptions) => SetupContextIntersectionObserver | undefined;
24
+ /**
25
+ * 提交视图层更新
26
+ */
27
+ setData: (payload: Record<string, any>, callback?: () => void) => void | Promise<void> | undefined;
28
+ /**
29
+ * 监听组件更新性能统计(不可用时返回 undefined)
30
+ */
31
+ setUpdatePerformanceListener: (listener?: ((result: Record<string, any>) => void)) => void | undefined;
32
+ /**
33
+ * 相对于当前组件路径的 Router(基础库 2.16.1+)。
34
+ * 低版本基础库可能不存在,建议优先使用 `useNativeRouter()` 获取带降级能力的路由对象。
35
+ */
36
+ router?: SetupContextRouter;
37
+ /**
38
+ * 相对于当前页面路径的 Router(基础库 2.16.1+)。
39
+ * 低版本基础库可能不存在,建议优先使用 `useNativePageRouter()` 获取带降级能力的路由对象。
40
+ */
41
+ pageRouter?: SetupContextRouter;
42
+ };
43
+ export interface SetupContext<D extends object, C extends ComputedDefinitions, M extends MethodDefinitions, P extends ComponentPropsOptions = ComponentPropsOptions> {
44
+ /**
45
+ * 组件 props(来自小程序 properties)
46
+ */
47
+ props: InferProps<P>;
48
+ /**
49
+ * 运行时实例
50
+ */
51
+ runtime: RuntimeInstance<D, C, M>;
52
+ /**
53
+ * 响应式状态
54
+ */
55
+ state: D;
56
+ /**
57
+ * 公开实例代理
58
+ */
59
+ proxy: RuntimeInstance<D, C, M>['proxy'];
60
+ /**
61
+ * 双向绑定辅助方法
62
+ */
63
+ bindModel: RuntimeInstance<D, C, M>['bindModel'];
64
+ /**
65
+ * watch 辅助方法
66
+ */
67
+ watch: RuntimeInstance<D, C, M>['watch'];
68
+ /**
69
+ * 小程序内部实例
70
+ */
71
+ instance: SetupContextNativeInstance;
72
+ /**
73
+ * 通过小程序 `triggerEvent(eventName, detail?, options?)` 派发事件。
74
+ *
75
+ * 为兼容 Vue 3 的 `emit(event, ...args)`:
76
+ * - `emit(name)` -> `detail = undefined`
77
+ * - `emit(name, payload)` -> `detail = payload`
78
+ * - `emit(name, payload, options)`(当最后一个参数是事件选项)-> `detail = payload`
79
+ * - `emit(name, a, b, c)` -> `detail = [a, b, c]`
80
+ */
81
+ emit: (event: string, ...args: any[]) => void;
82
+ /**
83
+ * Vue 3 对齐:expose 公共属性
84
+ */
85
+ expose: (exposed: Record<string, any>) => void;
86
+ /**
87
+ * Vue 3 对齐:attrs(小程序场景为非 props 属性集合)
88
+ */
89
+ attrs: Record<string, any>;
90
+ /**
91
+ * Vue 3 对齐:slots(由编译期传入的 slot 名元数据驱动)
92
+ */
93
+ slots: Record<string, any>;
94
+ }
95
+ //#endregion
96
+ //# sourceMappingURL=setup.d.mts.map
@@ -0,0 +1,4 @@
1
+ import { ComponentPropsOptions, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InferNativePropType, InferNativeProps, InferPropType, InferProps, NativePropType, NativePropsOptions, NativeTypeHint, NativeTypedProperty, PropConstructor, PropOptions, PropType } from "./props/propTypes.mjs";
2
+ import { MiniProgramRouterNavigateToOption, MiniProgramRouterReLaunchOption, MiniProgramRouterRedirectToOption, MiniProgramRouterSwitchTabOption, RouterNavigateToOption, RouterReLaunchOption, RouterRedirectToOption, RouterSwitchTabOption, SetupContextRouter, TypedRouterTabBarUrl, TypedRouterUrl, WevuTypedRouterRouteMap } from "./props/router.mjs";
3
+ import { SetupContext, SetupContextIntersectionObserver, SetupContextIntersectionObserverOptions, SetupContextNativeInstance, SetupContextSelectorQuery, SetupFunction } from "./props/setup.mjs";
4
+ export type { ComponentPropsOptions, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InferNativePropType, InferNativeProps, InferPropType, InferProps, MiniProgramRouterNavigateToOption, MiniProgramRouterReLaunchOption, MiniProgramRouterRedirectToOption, MiniProgramRouterSwitchTabOption, NativePropType, NativePropsOptions, NativeTypeHint, NativeTypedProperty, PropConstructor, PropOptions, PropType, RouterNavigateToOption, RouterReLaunchOption, RouterRedirectToOption, RouterSwitchTabOption, SetupContext, SetupContextIntersectionObserver, SetupContextIntersectionObserverOptions, SetupContextNativeInstance, SetupContextRouter, SetupContextSelectorQuery, SetupFunction, TypedRouterTabBarUrl, TypedRouterUrl, WevuTypedRouterRouteMap };
@@ -0,0 +1,59 @@
1
+ import { MiniProgramAdapter, MiniProgramInstance } from "./miniprogram.mjs";
2
+ import { Ref } from "../../reactivity/ref.mjs";
3
+ import { EffectScope } from "../../reactivity/core.mjs";
4
+ import { WatchOptions, WatchStopHandle } from "../../reactivity/watch/types.mjs";
5
+ import "../../reactivity/index.mjs";
6
+ import { ComponentPublicInstance, ComputedDefinitions, ExtractComputed, ExtractMethods, MethodDefinitions, ModelBinding, ModelBindingOptions } from "./core.mjs";
7
+ //#region src/runtime/types/runtime.d.ts
8
+ export interface AppConfig {
9
+ globalProperties: Record<string, any>;
10
+ }
11
+ export type WevuPlugin = ((app: RuntimeApp<any, any, any>, ...options: any[]) => any) | {
12
+ install: (app: RuntimeApp<any, any, any>, ...options: any[]) => any;
13
+ };
14
+ export interface RuntimeApp<D extends object, C extends ComputedDefinitions, M extends MethodDefinitions> {
15
+ mount: (adapter?: MiniProgramAdapter) => RuntimeInstance<D, C, M>;
16
+ use: (plugin: WevuPlugin, ...options: any[]) => RuntimeApp<D, C, M>;
17
+ provide: <T>(key: any, value: T) => RuntimeApp<D, C, M>;
18
+ onUnmount: (cleanup: () => void) => RuntimeApp<D, C, M>;
19
+ unmount: () => void;
20
+ config: AppConfig;
21
+ version: string;
22
+ __wevuAppProvides?: Record<PropertyKey, any>;
23
+ }
24
+ export interface RuntimeInstance<D extends object, C extends ComputedDefinitions, M extends MethodDefinitions> {
25
+ readonly state: D;
26
+ readonly setupState?: Record<string, any>;
27
+ readonly proxy: ComponentPublicInstance<D, C, M>;
28
+ readonly methods: ExtractMethods<M>;
29
+ readonly computed: Readonly<ExtractComputed<C>>;
30
+ readonly adapter?: MiniProgramAdapter;
31
+ bindModel: <T = any>(path: string, options?: ModelBindingOptions<T>) => ModelBinding<T>;
32
+ watch: <T>(source: (() => T) | Record<string, any>, cb: (value: T, oldValue: T) => void, options?: WatchOptions) => WatchStopHandle;
33
+ snapshot: () => Record<string, any>;
34
+ unmount: () => void;
35
+ }
36
+ export interface InternalRuntimeStateFields {
37
+ __wevu?: RuntimeInstance<any, any, any>;
38
+ __wevuIsAppInstance?: boolean;
39
+ __wevuRuntimeApp?: RuntimeApp<any, any, any>;
40
+ __wevuAppProvides?: Record<PropertyKey, any>;
41
+ __wevuProvides?: Record<PropertyKey, any>;
42
+ __wevuParentInstance?: InternalRuntimeState;
43
+ __wevuSetPageLayout?: (layout: string | false, props?: Record<string, any>) => void;
44
+ __wevuWatchStops?: WatchStopHandle[];
45
+ __wevuLayoutHostBridge?: Record<string, any>;
46
+ $wevu?: RuntimeInstance<any, any, any>;
47
+ __wevuHooks?: Record<string, any>;
48
+ __wevuExposed?: Record<string, any>;
49
+ __wevuAttrs?: Record<string, any>;
50
+ __wevuEffectScope?: EffectScope;
51
+ __wevuPropKeys?: string[];
52
+ __wevuTemplateRefs?: unknown[];
53
+ __wevuTemplateRefMap?: Map<string, Ref<any>>;
54
+ __wevuTemplateRefsPending?: boolean;
55
+ __wevuReadyCalled?: boolean;
56
+ }
57
+ export type InternalRuntimeState = InternalRuntimeStateFields & Partial<MiniProgramInstance>;
58
+ //#endregion
59
+ //# sourceMappingURL=runtime.d.mts.map
@@ -0,0 +1,237 @@
1
+ import { WevuBindingSourceSpanV1, WevuBindingUpdateMode } from "@weapp-core/constants";
2
+ //#region src/runtime/types/setData.d.ts
3
+ export interface SetDataSnapshotOptions {
4
+ /**
5
+ * 开发态高频 setData 告警。
6
+ *
7
+ * - `undefined`:默认关闭(可通过 `weapp.wevu.preset: 'performance'` 自动开启)
8
+ * - `false`:关闭告警
9
+ * - `true`:启用默认阈值(默认仅开发态生效)
10
+ * - `object`:自定义阈值与开关
11
+ */
12
+ highFrequencyWarning?: boolean | {
13
+ /**
14
+ * 是否启用告警。
15
+ * @default true
16
+ */
17
+ enabled?: boolean;
18
+ /**
19
+ * 是否仅在开发态生效。
20
+ * @default true
21
+ */
22
+ devOnly?: boolean;
23
+ /**
24
+ * 统计窗口(毫秒)。
25
+ * @default 1000
26
+ */
27
+ sampleWindowMs?: number;
28
+ /**
29
+ * 窗口内超过该次数触发告警。
30
+ * @default 30
31
+ */
32
+ maxCalls?: number;
33
+ /**
34
+ * 告警冷却时间(毫秒),避免刷屏。
35
+ * @default 5000
36
+ */
37
+ coolDownMs?: number;
38
+ /**
39
+ * 是否在检测到 `onPageScroll` 回调内调用 setData 时输出专项告警。
40
+ * @default true
41
+ */
42
+ warnOnPageScroll?: boolean;
43
+ /**
44
+ * `onPageScroll` 专项告警冷却时间(毫秒)。
45
+ * @default 2000
46
+ */
47
+ pageScrollCoolDownMs?: number;
48
+ };
49
+ /**
50
+ * setData 策略:
51
+ * - diff:全量快照 + diff(默认,兼容性最好)
52
+ * - patch:按变更路径增量产出 payload(性能更好;在共享引用等场景会自动回退 diff)
53
+ */
54
+ strategy?: 'diff' | 'patch';
55
+ /**
56
+ * 仅下发指定的顶层字段(包含 data/setup 返回值与 computed)。
57
+ * 若为空则默认下发所有字段。
58
+ */
59
+ pick?: string[];
60
+ /**
61
+ * 排除指定的顶层字段(包含 data/setup 返回值与 computed)。
62
+ */
63
+ omit?: string[];
64
+ /**
65
+ * 是否将 computed 的结果参与 setData(默认 true)。
66
+ */
67
+ includeComputed?: boolean;
68
+ /**
69
+ * 页面/组件处于后台态(onHide 之后)时,是否挂起 setData 下发。
70
+ *
71
+ * - true:后台态仅合并最新 payload,待 onShow 后一次性 flush
72
+ * - false:保持默认行为,后台态也继续 setData
73
+ *
74
+ * @default false
75
+ */
76
+ suspendWhenHidden?: boolean;
77
+ /**
78
+ * patch 模式阈值:当本轮变更路径数量超过该值时,自动回退到 diff。
79
+ * 说明:大量路径变更时,全量快照 diff 往往更快/更小。
80
+ */
81
+ maxPatchKeys?: number;
82
+ /**
83
+ * patch 模式阈值:当本轮 payload 估算字节数超过该值时,自动回退到 diff。
84
+ * 说明:该估算基于 `JSON.stringify(payload).length`,仅用于启发式降级。
85
+ */
86
+ maxPayloadBytes?: number;
87
+ /**
88
+ * patch 模式优化:当同一父路径下存在多个子路径变更时,合并为父路径整体下发。
89
+ *
90
+ * 例如:`a.b` 与 `a.c` 同时变更,且 `mergeSiblingThreshold = 2` 时,会下发 `a`。
91
+ *
92
+ * 注意:当子路径包含删除(null)时,为避免删除语义不一致,将不会触发合并。
93
+ */
94
+ mergeSiblingThreshold?: number;
95
+ /**
96
+ * 同级合并的“负优化”防护:若合并后的父路径估算体积大于子路径体积之和 * ratio,则不合并。
97
+ */
98
+ mergeSiblingMaxInflationRatio?: number;
99
+ /**
100
+ * 同级合并的“负优化”防护:若父路径估算体积超过该值,则不合并。
101
+ */
102
+ mergeSiblingMaxParentBytes?: number;
103
+ /**
104
+ * 是否在父值为数组时跳过同级合并(默认 true)。
105
+ */
106
+ mergeSiblingSkipArray?: boolean;
107
+ /**
108
+ * patch 模式优化:computed 变更对比策略。
109
+ *
110
+ * - reference:仅 `Object.is` 比较(最快,可能会多下发)
111
+ * - shallow:仅比较数组/对象第一层(折中)
112
+ * - deep:深比较(可能较慢,适合小对象);会受 `computedCompareMaxDepth/maxKeys` 限制
113
+ */
114
+ computedCompare?: 'reference' | 'shallow' | 'deep';
115
+ /**
116
+ * computed 深比较最大深度(仅在 `computedCompare = "deep"` 时生效)。
117
+ */
118
+ computedCompareMaxDepth?: number;
119
+ /**
120
+ * computed 深比较最多比较 key 数(仅在 `computedCompare = "deep"` 时生效)。
121
+ */
122
+ computedCompareMaxKeys?: number;
123
+ /**
124
+ * 限制 patch 模式的预链接(prelinkReactiveTree)开销:最多向下遍历的深度(root 为 0)。
125
+ */
126
+ prelinkMaxDepth?: number;
127
+ /**
128
+ * 限制 patch 模式的预链接(prelinkReactiveTree)开销:最多索引的节点数。
129
+ */
130
+ prelinkMaxKeys?: number;
131
+ /**
132
+ * setData 调试信息回调(用于观测 patch 命中率/回退原因/payload 大小)。
133
+ */
134
+ debug?: (info: SetDataDebugInfo) => void;
135
+ /**
136
+ * 内建诊断日志开关(默认 off)。
137
+ *
138
+ * - off:关闭内建日志
139
+ * - fallback:仅在回退 diff / 超阈值时输出
140
+ * - always:每次 flush 都输出
141
+ */
142
+ diagnostics?: 'off' | 'fallback' | 'always';
143
+ /**
144
+ * 疑似运行时更新循环诊断。
145
+ *
146
+ * 在短时间内连续触发 setData flush 时输出告警,帮助定位页面/组件、
147
+ * 调度模式、patch 信号和 computed dirty 状态。
148
+ */
149
+ loopWarning?: boolean | {
150
+ /**
151
+ * 是否启用告警。
152
+ * @default true
153
+ */
154
+ enabled?: boolean;
155
+ /**
156
+ * 统计窗口(毫秒)。
157
+ * @default 1000
158
+ */
159
+ sampleWindowMs?: number;
160
+ /**
161
+ * 窗口内超过该次数触发告警。
162
+ * @default 50
163
+ */
164
+ maxFlushes?: number;
165
+ /**
166
+ * 告警冷却时间(毫秒),避免刷屏。
167
+ * @default 5000
168
+ */
169
+ coolDownMs?: number;
170
+ };
171
+ /**
172
+ * debug 触发时机:
173
+ * - fallback:仅在回退 diff / 超阈值时触发(默认)
174
+ * - always:每次 flush 都触发
175
+ */
176
+ debugWhen?: 'fallback' | 'always';
177
+ /**
178
+ * debug 采样率(0-1),用于降低 debug 频率与开销(默认 1)。
179
+ */
180
+ debugSampleRate?: number;
181
+ /**
182
+ * patch 模式优化:当某个顶层字段下的变更路径数量过多时,直接提升为顶层字段整体替换。
183
+ */
184
+ elevateTopKeyThreshold?: number;
185
+ /**
186
+ * setData 序列化上限:最大递归深度(root 为 0)。超过时将停止深拷贝,保留更浅层结构。
187
+ */
188
+ toPlainMaxDepth?: number;
189
+ /**
190
+ * setData 序列化上限:最多处理的对象 key 数(累计)。超过时将停止深拷贝,保留更浅层结构。
191
+ */
192
+ toPlainMaxKeys?: number;
193
+ /**
194
+ * 是否允许函数进入 setData 快照。
195
+ *
196
+ * @internal
197
+ */
198
+ includeFunctions?: boolean;
199
+ /**
200
+ * 允许函数进入 setData 快照的状态路径。
201
+ *
202
+ * @internal
203
+ */
204
+ functionPaths?: string[];
205
+ }
206
+ /**
207
+ * 与本次 setData 诊断相关的编译期模板绑定。
208
+ */
209
+ export interface SetDataBindingDiagnostic {
210
+ id: string;
211
+ outputPath: string;
212
+ updateMode: WevuBindingUpdateMode;
213
+ sourceFile: string;
214
+ sourceLocation?: WevuBindingSourceSpanV1;
215
+ }
216
+ export interface SetDataDebugInfo {
217
+ mode: 'patch' | 'diff';
218
+ reason: 'patch' | 'diff' | 'needsFullSnapshot' | 'maxPatchKeys' | 'maxPayloadBytes' | 'loopWarning' | 'commitFailure';
219
+ pendingPatchKeys: number;
220
+ payloadKeys: number;
221
+ estimatedBytes?: number;
222
+ bytes?: number;
223
+ mergedSiblingParents?: number;
224
+ computedDirtyKeys?: number;
225
+ flushCount?: number;
226
+ windowMs?: number;
227
+ targetLabel?: string;
228
+ message?: string;
229
+ /**
230
+ * 根据实际 payload 或待处理路径解析出的相关编译期绑定。
231
+ */
232
+ bindings?: SetDataBindingDiagnostic[];
233
+ revision?: number;
234
+ committedRevision?: number;
235
+ }
236
+ //#endregion
237
+ //# sourceMappingURL=setData.d.mts.map
@@ -0,0 +1,29 @@
1
+ import { AlipayMiniProgramHostNamespace, AlipayMiniProgramHostSourceContract, DefaultMiniProgramHostNamespace, DefaultMiniProgramHostSourceContract, DouyinMiniProgramHostNamespace, DouyinMiniProgramHostSourceContract, MiniProgramHostNamespace, MiniProgramHostNamespaceBySource, MiniProgramHostSourceName, MiniProgramHostSourceRegistry, MiniProgramPlatformHostNamespaceBySource, MiniProgramPlatformHostSourceName, MiniProgramPlatformHostSourceRegistry, MiniProgramRuntimeHostNamespaceBySource, MiniProgramRuntimeHostSourceName, MiniProgramRuntimeHostSourceRegistry, TtMiniProgramHostNamespace, TtMiniProgramHostSourceContract, WechatMiniProgramHostNamespace, WechatMiniProgramHostSourceContract } from "./types/miniprogramHostSources.mjs";
2
+ import { HostMiniProgramAddToFavoritesOption, HostMiniProgramAppOptions, HostMiniProgramAppTrivialInstance, HostMiniProgramBehaviorIdentifier, HostMiniProgramBoundingClientRectResult, HostMiniProgramComponentAllFullProperty, HostMiniProgramComponentAllProperty, HostMiniProgramComponentBehaviorOptions, HostMiniProgramComponentEmptyArray, HostMiniProgramComponentInstance, HostMiniProgramComponentMethodOption, HostMiniProgramComponentPropertyOption, HostMiniProgramComponentPropertyValue, HostMiniProgramComponentShortProperty, HostMiniProgramComponentTrivialInstance, HostMiniProgramComponentTrivialOption, HostMiniProgramIntersectionObserver, HostMiniProgramIntersectionObserverOptions, HostMiniProgramLaunchOptions, HostMiniProgramMemoryWarningResult, HostMiniProgramNavigateToOption, HostMiniProgramNodesRef, HostMiniProgramNodesRefFields, HostMiniProgramPageLifetime, HostMiniProgramPageNotFoundOptions, HostMiniProgramPageResizeOption, HostMiniProgramPageScrollOption, HostMiniProgramPageTrivialInstance, HostMiniProgramReLaunchOption, HostMiniProgramRedirectToOption, HostMiniProgramRouter, HostMiniProgramSaveExitState, HostMiniProgramScrollOffsetResult, HostMiniProgramSelectorQuery, HostMiniProgramShareAppMessageOption, HostMiniProgramSwitchTabOption, HostMiniProgramTabItemTapOption, HostMiniProgramThemeChangeResult, HostMiniProgramTriggerEventOptions, HostMiniProgramUnhandledRejectionResult } from "./types/miniprogramHost.mjs";
3
+ import { MiniProgramAdapter, MiniProgramAppOptions, MiniProgramBehaviorIdentifier, MiniProgramComponentInstance, MiniProgramComponentOptions, MiniProgramComponentPropertyValue, MiniProgramComponentRawOptions, MiniProgramInstance, MiniProgramPageLifetimes } from "./types/miniprogram.mjs";
4
+ import { ComponentPropsOptions, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InferNativePropType, InferNativeProps, InferPropType, InferProps, NativePropType, NativePropsOptions, NativeTypeHint, NativeTypedProperty, PropConstructor, PropOptions, PropType } from "./types/props/propTypes.mjs";
5
+ import { MiniProgramRouterNavigateToOption, MiniProgramRouterReLaunchOption, MiniProgramRouterRedirectToOption, MiniProgramRouterSwitchTabOption, SetupContextRouter, WevuTypedRouterRouteMap } from "./types/props/router.mjs";
6
+ import { ComponentPublicInstance, ComputedDefinitions, ExtractComputed, ExtractMethods, MethodDefinitions, ModelBinding, ModelBindingOptions, ModelBindingPayload } from "./types/core.mjs";
7
+ import { AppConfig, InternalRuntimeState, InternalRuntimeStateFields, RuntimeApp, RuntimeInstance, WevuPlugin } from "./types/runtime.mjs";
8
+ import { SetupContext, SetupContextIntersectionObserver, SetupContextIntersectionObserverOptions, SetupContextNativeInstance, SetupContextSelectorQuery, SetupFunction } from "./types/props/setup.mjs";
9
+ import "./types/props.mjs";
10
+ import { AllowedComponentProps, ComponentCustomProps, ComponentOptionsMixin, DefineComponent, NativeComponent, ObjectDirective, PublicProps, ShallowUnwrapRef, VNode, VNodeProps } from "../vue-types.mjs";
11
+ import { SetDataBindingDiagnostic, SetDataDebugInfo, SetDataSnapshotOptions } from "./types/setData.mjs";
12
+ import { CreateAppOptions, DataOption, DefineAppOptions, DefineComponentOptions, PageFeatures } from "./types/options.mjs";
13
+ //#region src/runtime/types.d.ts
14
+ export interface WevuGlobalComponents {}
15
+ export interface WevuGlobalDirectives {}
16
+ export interface GlobalComponents extends WevuGlobalComponents {}
17
+ export interface GlobalDirectives extends WevuGlobalDirectives {}
18
+ export interface TemplateRefs {}
19
+ export interface TemplateRefValue {
20
+ selector: string;
21
+ boundingClientRect: (cb?: (value: HostMiniProgramBoundingClientRectResult | null) => void) => Promise<HostMiniProgramBoundingClientRectResult | null>;
22
+ scrollOffset: (cb?: (value: HostMiniProgramScrollOffsetResult | null) => void) => Promise<HostMiniProgramScrollOffsetResult | null>;
23
+ fields: (fields: HostMiniProgramNodesRefFields, cb?: (value: any) => void) => Promise<any | null>;
24
+ node: (cb?: (value: any) => void) => Promise<any | null>;
25
+ }
26
+ export type MiniProgramTemplateRefValue = TemplateRefValue;
27
+ //#endregion
28
+ export type { AlipayMiniProgramHostNamespace, AlipayMiniProgramHostSourceContract, AllowedComponentProps, AppConfig, ComponentCustomProps, ComponentOptionsMixin, ComponentPropsOptions, ComponentPublicInstance, ComputedDefinitions, CreateAppOptions, DataOption, DefaultMiniProgramHostNamespace, DefaultMiniProgramHostSourceContract, DefineAppOptions, DefineComponent, DefineComponentOptions, DouyinMiniProgramHostNamespace, DouyinMiniProgramHostSourceContract, ExtractComputed, ExtractDefaultPropTypes, ExtractMethods, ExtractPropTypes, ExtractPublicPropTypes, HostMiniProgramAddToFavoritesOption, HostMiniProgramAppOptions, HostMiniProgramAppTrivialInstance, HostMiniProgramBehaviorIdentifier, HostMiniProgramBoundingClientRectResult, HostMiniProgramComponentAllFullProperty, HostMiniProgramComponentAllProperty, HostMiniProgramComponentBehaviorOptions, HostMiniProgramComponentEmptyArray, HostMiniProgramComponentInstance, HostMiniProgramComponentMethodOption, HostMiniProgramComponentPropertyOption, HostMiniProgramComponentPropertyValue, HostMiniProgramComponentShortProperty, HostMiniProgramComponentTrivialInstance, HostMiniProgramComponentTrivialOption, HostMiniProgramIntersectionObserver, HostMiniProgramIntersectionObserverOptions, HostMiniProgramLaunchOptions, HostMiniProgramMemoryWarningResult, HostMiniProgramNavigateToOption, HostMiniProgramNodesRef, HostMiniProgramNodesRefFields, HostMiniProgramPageLifetime, HostMiniProgramPageNotFoundOptions, HostMiniProgramPageResizeOption, HostMiniProgramPageScrollOption, HostMiniProgramPageTrivialInstance, HostMiniProgramReLaunchOption, HostMiniProgramRedirectToOption, HostMiniProgramRouter, HostMiniProgramSaveExitState, HostMiniProgramScrollOffsetResult, HostMiniProgramSelectorQuery, HostMiniProgramShareAppMessageOption, HostMiniProgramSwitchTabOption, HostMiniProgramTabItemTapOption, HostMiniProgramThemeChangeResult, HostMiniProgramTriggerEventOptions, HostMiniProgramUnhandledRejectionResult, InferNativePropType, InferNativeProps, InferPropType, InferProps, InternalRuntimeState, InternalRuntimeStateFields, MethodDefinitions, MiniProgramAdapter, HostMiniProgramAddToFavoritesOption as MiniProgramAddToFavoritesOption, MiniProgramAppOptions, MiniProgramBehaviorIdentifier, HostMiniProgramBoundingClientRectResult as MiniProgramBoundingClientRectResult, HostMiniProgramComponentAllFullProperty as MiniProgramComponentAllFullProperty, HostMiniProgramComponentAllProperty as MiniProgramComponentAllProperty, HostMiniProgramComponentBehaviorOptions as MiniProgramComponentBehaviorOptions, HostMiniProgramComponentEmptyArray as MiniProgramComponentEmptyArray, MiniProgramComponentInstance, HostMiniProgramComponentMethodOption as MiniProgramComponentMethodOption, MiniProgramComponentOptions, HostMiniProgramComponentPropertyOption as MiniProgramComponentPropertyOption, MiniProgramComponentPropertyValue, MiniProgramComponentRawOptions, HostMiniProgramComponentShortProperty as MiniProgramComponentShortProperty, MiniProgramHostNamespace, MiniProgramHostNamespaceBySource, MiniProgramHostSourceName, MiniProgramHostSourceRegistry, MiniProgramInstance, HostMiniProgramIntersectionObserver as MiniProgramIntersectionObserver, HostMiniProgramIntersectionObserverOptions as MiniProgramIntersectionObserverOptions, HostMiniProgramLaunchOptions as MiniProgramLaunchOptions, HostMiniProgramMemoryWarningResult as MiniProgramMemoryWarningResult, HostMiniProgramNavigateToOption as MiniProgramNavigateToOption, HostMiniProgramNodesRef as MiniProgramNodesRef, HostMiniProgramNodesRefFields as MiniProgramNodesRefFields, HostMiniProgramPageLifetime as MiniProgramPageLifetime, MiniProgramPageLifetimes, HostMiniProgramPageNotFoundOptions as MiniProgramPageNotFoundOptions, HostMiniProgramPageResizeOption as MiniProgramPageResizeOption, HostMiniProgramPageScrollOption as MiniProgramPageScrollOption, MiniProgramPlatformHostNamespaceBySource, MiniProgramPlatformHostSourceName, MiniProgramPlatformHostSourceRegistry, HostMiniProgramReLaunchOption as MiniProgramReLaunchOption, HostMiniProgramRedirectToOption as MiniProgramRedirectToOption, HostMiniProgramRouter as MiniProgramRouter, MiniProgramRouterNavigateToOption, MiniProgramRouterReLaunchOption, MiniProgramRouterRedirectToOption, MiniProgramRouterSwitchTabOption, MiniProgramRuntimeHostNamespaceBySource, MiniProgramRuntimeHostSourceName, MiniProgramRuntimeHostSourceRegistry, HostMiniProgramSaveExitState as MiniProgramSaveExitState, HostMiniProgramScrollOffsetResult as MiniProgramScrollOffsetResult, HostMiniProgramSelectorQuery as MiniProgramSelectorQuery, HostMiniProgramShareAppMessageOption as MiniProgramShareAppMessageOption, HostMiniProgramSwitchTabOption as MiniProgramSwitchTabOption, HostMiniProgramTabItemTapOption as MiniProgramTabItemTapOption, HostMiniProgramThemeChangeResult as MiniProgramThemeChangeResult, HostMiniProgramUnhandledRejectionResult as MiniProgramUnhandledRejectionResult, ModelBinding, ModelBindingOptions, ModelBindingPayload, NativeComponent, NativePropType, NativePropsOptions, NativeTypeHint, NativeTypedProperty, ObjectDirective, PageFeatures, PropConstructor, PropOptions, PropType, PublicProps, RuntimeApp, RuntimeInstance, SetDataBindingDiagnostic, SetDataDebugInfo, SetDataSnapshotOptions, SetupContext, SetupContextIntersectionObserver, SetupContextIntersectionObserverOptions, SetupContextNativeInstance, SetupContextRouter, SetupContextSelectorQuery, SetupFunction, ShallowUnwrapRef, HostMiniProgramTriggerEventOptions as TriggerEventOptions, TtMiniProgramHostNamespace, TtMiniProgramHostSourceContract, VNode, VNodeProps, WechatMiniProgramHostNamespace, WechatMiniProgramHostSourceContract, WevuPlugin, WevuTypedRouterRouteMap };
29
+ //# sourceMappingURL=types.d.mts.map
@@ -0,0 +1,8 @@
1
+ //#region src/runtime/uniAppHost.d.ts
2
+ type UniAppHost = Record<string, any>;
3
+ /**
4
+ * 在原生小程序宿主上补齐 uni-app 专属 API,并保持未适配 API 继续继承宿主实现。
5
+ */
6
+ export declare function createUniAppHost(host: UniAppHost): UniAppHost;
7
+ //#endregion
8
+ //# sourceMappingURL=uniAppHost.d.mts.map
@@ -12,13 +12,12 @@ function normalizeLocale(locale) {
12
12
  return normalized.split("-")[0] || "en";
13
13
  }
14
14
  function withSafeAreaInsets(info = {}) {
15
- var _info$safeArea;
16
15
  if (info.safeAreaInsets) return info;
17
16
  const windowWidth = normalizeDimension(info.windowWidth, normalizeDimension(info.screenWidth));
18
17
  const windowHeight = normalizeDimension(info.windowHeight, normalizeDimension(info.screenHeight));
19
18
  const screenWidth = normalizeDimension(info.screenWidth, windowWidth);
20
19
  const screenHeight = normalizeDimension(info.screenHeight, windowHeight);
21
- const safeArea = (_info$safeArea = info.safeArea) !== null && _info$safeArea !== void 0 ? _info$safeArea : {
20
+ const safeArea = info.safeArea ?? {
22
21
  bottom: windowHeight,
23
22
  left: 0,
24
23
  right: windowWidth,
@@ -36,9 +35,8 @@ function withSafeAreaInsets(info = {}) {
36
35
  };
37
36
  }
38
37
  function $on(eventName, handler) {
39
- var _eventListeners$get;
40
38
  if (typeof eventName !== "string" || typeof handler !== "function") return;
41
- const listeners = (_eventListeners$get = eventListeners.get(eventName)) !== null && _eventListeners$get !== void 0 ? _eventListeners$get : /* @__PURE__ */ new Set();
39
+ const listeners = eventListeners.get(eventName) ?? /* @__PURE__ */ new Set();
42
40
  listeners.add({
43
41
  handler,
44
42
  original: handler
@@ -61,13 +59,12 @@ function $off(eventName, handler) {
61
59
  if (listeners.size === 0) eventListeners.delete(eventName);
62
60
  }
63
61
  function $once(eventName, handler) {
64
- var _eventListeners$get2;
65
62
  if (typeof eventName !== "string" || typeof handler !== "function") return;
66
63
  const onceHandler = (...args) => {
67
64
  $off(eventName, handler);
68
65
  handler(...args);
69
66
  };
70
- const listeners = (_eventListeners$get2 = eventListeners.get(eventName)) !== null && _eventListeners$get2 !== void 0 ? _eventListeners$get2 : /* @__PURE__ */ new Set();
67
+ const listeners = eventListeners.get(eventName) ?? /* @__PURE__ */ new Set();
71
68
  listeners.add({
72
69
  handler: onceHandler,
73
70
  original: handler
@@ -87,24 +84,19 @@ function createUniAppHost(host) {
87
84
  if (cached) return cached;
88
85
  const uni = Object.create(host);
89
86
  hostAdapters.set(host, uni);
90
- const getSystemInfoSnapshot = () => {
91
- var _host$getSystemInfoSy, _host$getSystemInfoSy2;
92
- return withSafeAreaInsets((_host$getSystemInfoSy = (_host$getSystemInfoSy2 = host.getSystemInfoSync) === null || _host$getSystemInfoSy2 === void 0 ? void 0 : _host$getSystemInfoSy2.call(host)) !== null && _host$getSystemInfoSy !== void 0 ? _host$getSystemInfoSy : {});
93
- };
87
+ const getSystemInfoSnapshot = () => withSafeAreaInsets(host.getSystemInfoSync?.() ?? {});
94
88
  Object.assign(uni, {
95
89
  $emit,
96
90
  $off,
97
91
  $on,
98
92
  $once,
99
93
  getLocale() {
100
- var _host$getAppBaseInfo$, _host$getAppBaseInfo;
101
94
  if (typeof host.getLocale === "function") return normalizeLocale(host.getLocale());
102
- return normalizeLocale((_host$getAppBaseInfo$ = (_host$getAppBaseInfo = host.getAppBaseInfo) === null || _host$getAppBaseInfo === void 0 ? void 0 : _host$getAppBaseInfo.call(host).language) !== null && _host$getAppBaseInfo$ !== void 0 ? _host$getAppBaseInfo$ : getSystemInfoSnapshot().language);
95
+ return normalizeLocale(host.getAppBaseInfo?.().language ?? getSystemInfoSnapshot().language);
103
96
  },
104
97
  getSystemInfoSync: getSystemInfoSnapshot,
105
98
  getWindowInfo() {
106
- var _host$getWindowInfo, _host$getWindowInfo2;
107
- return withSafeAreaInsets((_host$getWindowInfo = (_host$getWindowInfo2 = host.getWindowInfo) === null || _host$getWindowInfo2 === void 0 ? void 0 : _host$getWindowInfo2.call(host)) !== null && _host$getWindowInfo !== void 0 ? _host$getWindowInfo : getSystemInfoSnapshot());
99
+ return withSafeAreaInsets(host.getWindowInfo?.() ?? getSystemInfoSnapshot());
108
100
  },
109
101
  rpx2px(value) {
110
102
  const width = normalizeDimension(getSystemInfoSnapshot().windowWidth);
@@ -1 +1 @@
1
- {"version":3,"file":"uniAppHost.mjs","names":[],"sources":["../../../src/runtime/uniAppHost.ts"],"sourcesContent":["export type UniAppEventHandler = (...args: any[]) => void\n\ninterface UniAppEventListener {\n handler: UniAppEventHandler\n original: UniAppEventHandler\n}\n\ninterface UniAppSafeArea {\n bottom?: number\n left?: number\n right?: number\n top?: number\n}\n\ninterface UniAppSystemInfo {\n language?: string\n safeArea?: UniAppSafeArea\n safeAreaInsets?: UniAppSafeArea\n screenHeight?: number\n screenWidth?: number\n windowHeight?: number\n windowWidth?: number\n [key: string]: any\n}\n\ntype UniAppHost = Record<string, any>\n\nconst eventListeners = new Map<string, Set<UniAppEventListener>>()\nconst hostAdapters = new WeakMap<object, UniAppHost>()\n\nfunction normalizeDimension(value: unknown, fallback = 0) {\n const number = Number(value)\n return Number.isFinite(number) && number >= 0 ? number : fallback\n}\n\nfunction normalizeLocale(locale: unknown) {\n const normalized = String(locale || 'en').trim().replace('_', '-').toLowerCase()\n if (\n normalized === 'zh-tw'\n || normalized === 'zh-hk'\n || normalized === 'zh-mo'\n || normalized.startsWith('zh-hant')\n ) {\n return 'zh-Hant'\n }\n if (normalized.startsWith('zh')) {\n return 'zh-Hans'\n }\n return normalized.split('-')[0] || 'en'\n}\n\nfunction withSafeAreaInsets(info: UniAppSystemInfo = {}) {\n if (info.safeAreaInsets) {\n return info\n }\n const windowWidth = normalizeDimension(info.windowWidth, normalizeDimension(info.screenWidth))\n const windowHeight = normalizeDimension(info.windowHeight, normalizeDimension(info.screenHeight))\n const screenWidth = normalizeDimension(info.screenWidth, windowWidth)\n const screenHeight = normalizeDimension(info.screenHeight, windowHeight)\n const safeArea = info.safeArea ?? {\n bottom: windowHeight,\n left: 0,\n right: windowWidth,\n top: 0,\n }\n return {\n ...info,\n safeArea,\n safeAreaInsets: {\n bottom: Math.max(0, screenHeight - normalizeDimension(safeArea.bottom, windowHeight)),\n left: normalizeDimension(safeArea.left),\n right: Math.max(0, screenWidth - normalizeDimension(safeArea.right, windowWidth)),\n top: normalizeDimension(safeArea.top),\n },\n }\n}\n\nfunction $on(eventName: string, handler: UniAppEventHandler) {\n if (typeof eventName !== 'string' || typeof handler !== 'function') {\n return\n }\n const listeners = eventListeners.get(eventName) ?? new Set<UniAppEventListener>()\n listeners.add({ handler, original: handler })\n eventListeners.set(eventName, listeners)\n}\n\nfunction $off(eventName?: string, handler?: UniAppEventHandler) {\n if (eventName === undefined) {\n eventListeners.clear()\n return\n }\n if (typeof eventName !== 'string') {\n return\n }\n if (typeof handler !== 'function') {\n eventListeners.delete(eventName)\n return\n }\n const listeners = eventListeners.get(eventName)\n if (!listeners) {\n return\n }\n for (const listener of listeners) {\n if (listener.original === handler || listener.handler === handler) {\n listeners.delete(listener)\n }\n }\n if (listeners.size === 0) {\n eventListeners.delete(eventName)\n }\n}\n\nfunction $once(eventName: string, handler: UniAppEventHandler) {\n if (typeof eventName !== 'string' || typeof handler !== 'function') {\n return\n }\n const onceHandler: UniAppEventHandler = (...args) => {\n $off(eventName, handler)\n handler(...args)\n }\n const listeners = eventListeners.get(eventName) ?? new Set<UniAppEventListener>()\n listeners.add({ handler: onceHandler, original: handler })\n eventListeners.set(eventName, listeners)\n}\n\nfunction $emit(eventName: string, ...args: any[]) {\n const listeners = eventListeners.get(eventName)\n if (!listeners) {\n return\n }\n for (const { handler } of [...listeners]) {\n handler(...args)\n }\n}\n\n/**\n * 在原生小程序宿主上补齐 uni-app 专属 API,并保持未适配 API 继续继承宿主实现。\n */\nexport function createUniAppHost(host: UniAppHost): UniAppHost {\n const cached = hostAdapters.get(host)\n if (cached) {\n return cached\n }\n const uni = Object.create(host) as UniAppHost\n hostAdapters.set(host, uni)\n const getSystemInfoSnapshot = () => withSafeAreaInsets(host.getSystemInfoSync?.() ?? {})\n\n Object.assign(uni, {\n $emit,\n $off,\n $on,\n $once,\n getLocale() {\n if (typeof host.getLocale === 'function') {\n return normalizeLocale(host.getLocale())\n }\n const language = host.getAppBaseInfo?.().language ?? getSystemInfoSnapshot().language\n return normalizeLocale(language)\n },\n getSystemInfoSync: getSystemInfoSnapshot,\n getWindowInfo() {\n return withSafeAreaInsets(host.getWindowInfo?.() ?? getSystemInfoSnapshot())\n },\n rpx2px(value: number) {\n const width = normalizeDimension(getSystemInfoSnapshot().windowWidth)\n return Number.isFinite(value) && width > 0 ? value * width / 750 : 0\n },\n })\n\n return uni\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"uniAppHost.mjs","names":[],"sources":["../../../src/runtime/uniAppHost.ts"],"sourcesContent":["export type UniAppEventHandler = (...args: any[]) => void\n\ninterface UniAppEventListener {\n handler: UniAppEventHandler\n original: UniAppEventHandler\n}\n\ninterface UniAppSafeArea {\n bottom?: number\n left?: number\n right?: number\n top?: number\n}\n\ninterface UniAppSystemInfo {\n language?: string\n safeArea?: UniAppSafeArea\n safeAreaInsets?: UniAppSafeArea\n screenHeight?: number\n screenWidth?: number\n windowHeight?: number\n windowWidth?: number\n [key: string]: any\n}\n\ntype UniAppHost = Record<string, any>\n\nconst eventListeners = new Map<string, Set<UniAppEventListener>>()\nconst hostAdapters = new WeakMap<object, UniAppHost>()\n\nfunction normalizeDimension(value: unknown, fallback = 0) {\n const number = Number(value)\n return Number.isFinite(number) && number >= 0 ? number : fallback\n}\n\nfunction normalizeLocale(locale: unknown) {\n const normalized = String(locale || 'en').trim().replace('_', '-').toLowerCase()\n if (\n normalized === 'zh-tw'\n || normalized === 'zh-hk'\n || normalized === 'zh-mo'\n || normalized.startsWith('zh-hant')\n ) {\n return 'zh-Hant'\n }\n if (normalized.startsWith('zh')) {\n return 'zh-Hans'\n }\n return normalized.split('-')[0] || 'en'\n}\n\nfunction withSafeAreaInsets(info: UniAppSystemInfo = {}) {\n if (info.safeAreaInsets) {\n return info\n }\n const windowWidth = normalizeDimension(info.windowWidth, normalizeDimension(info.screenWidth))\n const windowHeight = normalizeDimension(info.windowHeight, normalizeDimension(info.screenHeight))\n const screenWidth = normalizeDimension(info.screenWidth, windowWidth)\n const screenHeight = normalizeDimension(info.screenHeight, windowHeight)\n const safeArea = info.safeArea ?? {\n bottom: windowHeight,\n left: 0,\n right: windowWidth,\n top: 0,\n }\n return {\n ...info,\n safeArea,\n safeAreaInsets: {\n bottom: Math.max(0, screenHeight - normalizeDimension(safeArea.bottom, windowHeight)),\n left: normalizeDimension(safeArea.left),\n right: Math.max(0, screenWidth - normalizeDimension(safeArea.right, windowWidth)),\n top: normalizeDimension(safeArea.top),\n },\n }\n}\n\nfunction $on(eventName: string, handler: UniAppEventHandler) {\n if (typeof eventName !== 'string' || typeof handler !== 'function') {\n return\n }\n const listeners = eventListeners.get(eventName) ?? new Set<UniAppEventListener>()\n listeners.add({ handler, original: handler })\n eventListeners.set(eventName, listeners)\n}\n\nfunction $off(eventName?: string, handler?: UniAppEventHandler) {\n if (eventName === undefined) {\n eventListeners.clear()\n return\n }\n if (typeof eventName !== 'string') {\n return\n }\n if (typeof handler !== 'function') {\n eventListeners.delete(eventName)\n return\n }\n const listeners = eventListeners.get(eventName)\n if (!listeners) {\n return\n }\n for (const listener of listeners) {\n if (listener.original === handler || listener.handler === handler) {\n listeners.delete(listener)\n }\n }\n if (listeners.size === 0) {\n eventListeners.delete(eventName)\n }\n}\n\nfunction $once(eventName: string, handler: UniAppEventHandler) {\n if (typeof eventName !== 'string' || typeof handler !== 'function') {\n return\n }\n const onceHandler: UniAppEventHandler = (...args) => {\n $off(eventName, handler)\n handler(...args)\n }\n const listeners = eventListeners.get(eventName) ?? new Set<UniAppEventListener>()\n listeners.add({ handler: onceHandler, original: handler })\n eventListeners.set(eventName, listeners)\n}\n\nfunction $emit(eventName: string, ...args: any[]) {\n const listeners = eventListeners.get(eventName)\n if (!listeners) {\n return\n }\n for (const { handler } of [...listeners]) {\n handler(...args)\n }\n}\n\n/**\n * 在原生小程序宿主上补齐 uni-app 专属 API,并保持未适配 API 继续继承宿主实现。\n */\nexport function createUniAppHost(host: UniAppHost): UniAppHost {\n const cached = hostAdapters.get(host)\n if (cached) {\n return cached\n }\n const uni = Object.create(host) as UniAppHost\n hostAdapters.set(host, uni)\n const getSystemInfoSnapshot = () => withSafeAreaInsets(host.getSystemInfoSync?.() ?? {})\n\n Object.assign(uni, {\n $emit,\n $off,\n $on,\n $once,\n getLocale() {\n if (typeof host.getLocale === 'function') {\n return normalizeLocale(host.getLocale())\n }\n const language = host.getAppBaseInfo?.().language ?? getSystemInfoSnapshot().language\n return normalizeLocale(language)\n },\n getSystemInfoSync: getSystemInfoSnapshot,\n getWindowInfo() {\n return withSafeAreaInsets(host.getWindowInfo?.() ?? getSystemInfoSnapshot())\n },\n rpx2px(value: number) {\n const width = normalizeDimension(getSystemInfoSnapshot().windowWidth)\n return Number.isFinite(value) && width > 0 ? value * width / 750 : 0\n },\n })\n\n return uni\n}\n"],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ //#region src/runtime/updatePerformance.d.ts
2
+ export type UpdatePerformanceListenerResult = Record<string, any>;
3
+ export type UpdatePerformanceListener = (result: UpdatePerformanceListenerResult) => void;
4
+ export type UseUpdatePerformanceListenerStopHandle = () => void;
5
+ /**
6
+ * 在 setup 中注册更新性能监听,并在卸载时自动清理。
7
+ *
8
+ * - 底层能力:`instance.setUpdatePerformanceListener(listener)`。
9
+ * - 清理策略:卸载时回传 `undefined` 作为监听器,平台不支持时静默降级。
10
+ */
11
+ export declare function useUpdatePerformanceListener(listener: UpdatePerformanceListener): UseUpdatePerformanceListenerStopHandle;
12
+ //#endregion
13
+ //# sourceMappingURL=updatePerformance.d.mts.map
@@ -29,7 +29,7 @@ function useUpdatePerformanceListener(listener) {
29
29
  stopped = true;
30
30
  try {
31
31
  setListener(void 0);
32
- } catch (_unused) {}
32
+ } catch {}
33
33
  };
34
34
  onUnload(stop);
35
35
  onDetached(stop);
@@ -1 +1 @@
1
- {"version":3,"file":"updatePerformance.mjs","names":[],"sources":["../../../src/runtime/updatePerformance.ts"],"sourcesContent":["import type { InternalRuntimeState } from './types'\nimport { getCurrentInstance, onDetached, onUnload } from './hooks'\n\nexport type UpdatePerformanceListenerResult = Record<string, any>\nexport type UpdatePerformanceListener = (result: UpdatePerformanceListenerResult) => void\nexport type UseUpdatePerformanceListenerStopHandle = () => void\n\nfunction resolveUpdatePerformanceSetter(\n instance: InternalRuntimeState,\n): ((listener?: UpdatePerformanceListener) => void) | undefined {\n const nativeInstance = instance as Record<string, any>\n const candidate = nativeInstance.setUpdatePerformanceListener\n if (typeof candidate !== 'function') {\n return undefined\n }\n return (listener?: UpdatePerformanceListener) => {\n candidate.call(nativeInstance, listener)\n }\n}\n\n/**\n * 在 setup 中注册更新性能监听,并在卸载时自动清理。\n *\n * - 底层能力:`instance.setUpdatePerformanceListener(listener)`。\n * - 清理策略:卸载时回传 `undefined` 作为监听器,平台不支持时静默降级。\n */\nexport function useUpdatePerformanceListener(\n listener: UpdatePerformanceListener,\n): UseUpdatePerformanceListenerStopHandle {\n const instance = getCurrentInstance()\n if (!instance) {\n throw new Error('useUpdatePerformanceListener() 必须在 setup() 的同步阶段调用')\n }\n if (typeof listener !== 'function') {\n throw new TypeError('useUpdatePerformanceListener() 需要传入监听函数')\n }\n\n const setListener = resolveUpdatePerformanceSetter(instance)\n if (!setListener) {\n throw new Error('当前实例不支持 setUpdatePerformanceListener,请检查基础库版本或组件上下文')\n }\n\n setListener(listener)\n\n let stopped = false\n const stop = () => {\n if (stopped) {\n return\n }\n stopped = true\n try {\n setListener(undefined)\n }\n catch {\n // 忽略平台差异导致的清理异常,避免影响卸载流程\n }\n }\n\n onUnload(stop)\n onDetached(stop)\n\n return stop\n}\n"],"mappings":";;;;AAOA,SAAS,+BACP,UAC8D;CAC9D,MAAM,iBAAiB;CACvB,MAAM,YAAY,eAAe;CACjC,IAAI,OAAO,cAAc,YACvB;CAEF,QAAQ,aAAyC;EAC/C,UAAU,KAAK,gBAAgB,QAAQ;CACzC;AACF;;;;;;;AAQA,SAAgB,6BACd,UACwC;CACxC,MAAM,WAAW,mBAAmB;CACpC,IAAI,CAAC,UACH,MAAM,IAAI,MAAM,oDAAoD;CAEtE,IAAI,OAAO,aAAa,YACtB,MAAM,IAAI,UAAU,yCAAyC;CAG/D,MAAM,cAAc,+BAA+B,QAAQ;CAC3D,IAAI,CAAC,aACH,MAAM,IAAI,MAAM,qDAAqD;CAGvE,YAAY,QAAQ;CAEpB,IAAI,UAAU;CACd,MAAM,aAAa;EACjB,IAAI,SACF;EAEF,UAAU;EACV,IAAI;GACF,YAAY,MAAS;EACvB,kBACM,CAEN;CACF;CAEA,SAAS,IAAI;CACb,WAAW,IAAI;CAEf,OAAO;AACT"}
1
+ {"version":3,"file":"updatePerformance.mjs","names":[],"sources":["../../../src/runtime/updatePerformance.ts"],"sourcesContent":["import type { InternalRuntimeState } from './types'\nimport { getCurrentInstance, onDetached, onUnload } from './hooks'\n\nexport type UpdatePerformanceListenerResult = Record<string, any>\nexport type UpdatePerformanceListener = (result: UpdatePerformanceListenerResult) => void\nexport type UseUpdatePerformanceListenerStopHandle = () => void\n\nfunction resolveUpdatePerformanceSetter(\n instance: InternalRuntimeState,\n): ((listener?: UpdatePerformanceListener) => void) | undefined {\n const nativeInstance = instance as Record<string, any>\n const candidate = nativeInstance.setUpdatePerformanceListener\n if (typeof candidate !== 'function') {\n return undefined\n }\n return (listener?: UpdatePerformanceListener) => {\n candidate.call(nativeInstance, listener)\n }\n}\n\n/**\n * 在 setup 中注册更新性能监听,并在卸载时自动清理。\n *\n * - 底层能力:`instance.setUpdatePerformanceListener(listener)`。\n * - 清理策略:卸载时回传 `undefined` 作为监听器,平台不支持时静默降级。\n */\nexport function useUpdatePerformanceListener(\n listener: UpdatePerformanceListener,\n): UseUpdatePerformanceListenerStopHandle {\n const instance = getCurrentInstance()\n if (!instance) {\n throw new Error('useUpdatePerformanceListener() 必须在 setup() 的同步阶段调用')\n }\n if (typeof listener !== 'function') {\n throw new TypeError('useUpdatePerformanceListener() 需要传入监听函数')\n }\n\n const setListener = resolveUpdatePerformanceSetter(instance)\n if (!setListener) {\n throw new Error('当前实例不支持 setUpdatePerformanceListener,请检查基础库版本或组件上下文')\n }\n\n setListener(listener)\n\n let stopped = false\n const stop = () => {\n if (stopped) {\n return\n }\n stopped = true\n try {\n setListener(undefined)\n }\n catch {\n // 忽略平台差异导致的清理异常,避免影响卸载流程\n }\n }\n\n onUnload(stop)\n onDetached(stop)\n\n return stop\n}\n"],"mappings":";;;;AAOA,SAAS,+BACP,UAC8D;CAC9D,MAAM,iBAAiB;CACvB,MAAM,YAAY,eAAe;CACjC,IAAI,OAAO,cAAc,YACvB;CAEF,QAAQ,aAAyC;EAC/C,UAAU,KAAK,gBAAgB,QAAQ;CACzC;AACF;;;;;;;AAQA,SAAgB,6BACd,UACwC;CACxC,MAAM,WAAW,mBAAmB;CACpC,IAAI,CAAC,UACH,MAAM,IAAI,MAAM,oDAAoD;CAEtE,IAAI,OAAO,aAAa,YACtB,MAAM,IAAI,UAAU,yCAAyC;CAG/D,MAAM,cAAc,+BAA+B,QAAQ;CAC3D,IAAI,CAAC,aACH,MAAM,IAAI,MAAM,qDAAqD;CAGvE,YAAY,QAAQ;CAEpB,IAAI,UAAU;CACd,MAAM,aAAa;EACjB,IAAI,SACF;EAEF,UAAU;EACV,IAAI;GACF,YAAY,MAAS;EACvB,QACM,CAEN;CACF;CAEA,SAAS,IAAI;CACb,WAAW,IAAI;CAEf,OAAO;AACT"}
@@ -0,0 +1,13 @@
1
+ import { RuntimeApp, WevuPlugin } from "./types/runtime.mjs";
2
+ import "./types.mjs";
3
+ //#region src/runtime/use.d.ts
4
+ /**
5
+ * 在 `app` 级 `setup()` 中显式获取运行时 app,提供与 `app.use()` / `app.provide()` 对齐的 SFC 写法。
6
+ */
7
+ export declare function defineAppSetup<T>(setup: (app: RuntimeApp<any, any, any>) => T): T;
8
+ /**
9
+ * 在 `app` 级 `setup()` 中安装插件,提供与 `app.use()` 对齐的 SFC 调用方式。
10
+ */
11
+ export declare function use(plugin: WevuPlugin, ...options: any[]): RuntimeApp<any, any, any>;
12
+ //#endregion
13
+ //# sourceMappingURL=use.d.mts.map
@@ -4,7 +4,7 @@ import { WEVU_IS_APP_INSTANCE_KEY, WEVU_RUNTIME_APP_KEY } from "@weapp-core/cons
4
4
  //#region src/runtime/use.ts
5
5
  function resolveCurrentRuntimeApp() {
6
6
  const instance = getCurrentInstance();
7
- if ((instance === null || instance === void 0 ? void 0 : instance[WEVU_IS_APP_INSTANCE_KEY]) && instance[WEVU_RUNTIME_APP_KEY]) return instance[WEVU_RUNTIME_APP_KEY];
7
+ if (instance?.[WEVU_IS_APP_INSTANCE_KEY] && instance[WEVU_RUNTIME_APP_KEY]) return instance[WEVU_RUNTIME_APP_KEY];
8
8
  throw new Error("defineAppSetup() / use() 只能在 app setup 上下文中调用");
9
9
  }
10
10
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"use.mjs","names":[],"sources":["../../../src/runtime/use.ts"],"sourcesContent":["import type { RuntimeApp, WevuPlugin } from './types'\nimport {\n WEVU_IS_APP_INSTANCE_KEY,\n WEVU_RUNTIME_APP_KEY,\n} from '@weapp-core/constants'\nimport { getCurrentInstance } from './hooks'\n\nfunction resolveCurrentRuntimeApp(): RuntimeApp<any, any, any> {\n const instance = getCurrentInstance() as {\n [WEVU_IS_APP_INSTANCE_KEY]?: boolean\n [WEVU_RUNTIME_APP_KEY]?: RuntimeApp<any, any, any>\n } | undefined\n\n if (instance?.[WEVU_IS_APP_INSTANCE_KEY] && instance[WEVU_RUNTIME_APP_KEY]) {\n return instance[WEVU_RUNTIME_APP_KEY]\n }\n\n throw new Error('defineAppSetup() / use() 只能在 app setup 上下文中调用')\n}\n\n/**\n * 在 `app` 级 `setup()` 中显式获取运行时 app,提供与 `app.use()` / `app.provide()` 对齐的 SFC 写法。\n */\nexport function defineAppSetup<T>(setup: (app: RuntimeApp<any, any, any>) => T): T {\n return setup(resolveCurrentRuntimeApp())\n}\n\n/**\n * 在 `app` 级 `setup()` 中安装插件,提供与 `app.use()` 对齐的 SFC 调用方式。\n */\nexport function use(plugin: WevuPlugin, ...options: any[]) {\n return resolveCurrentRuntimeApp().use(plugin, ...options)\n}\n"],"mappings":";;;;AAOA,SAAS,2BAAsD;CAC7D,MAAM,WAAW,mBAAmB;CAKpC,yDAAI,SAAW,8BAA6B,SAAS,uBACnD,OAAO,SAAS;CAGlB,MAAM,IAAI,MAAM,+CAA+C;AACjE;;;;AAKA,SAAgB,eAAkB,OAAiD;CACjF,OAAO,MAAM,yBAAyB,CAAC;AACzC;;;;AAKA,SAAgB,IAAI,QAAoB,GAAG,SAAgB;CACzD,OAAO,yBAAyB,CAAC,CAAC,IAAI,QAAQ,GAAG,OAAO;AAC1D"}
1
+ {"version":3,"file":"use.mjs","names":[],"sources":["../../../src/runtime/use.ts"],"sourcesContent":["import type { RuntimeApp, WevuPlugin } from './types'\nimport {\n WEVU_IS_APP_INSTANCE_KEY,\n WEVU_RUNTIME_APP_KEY,\n} from '@weapp-core/constants'\nimport { getCurrentInstance } from './hooks'\n\nfunction resolveCurrentRuntimeApp(): RuntimeApp<any, any, any> {\n const instance = getCurrentInstance() as {\n [WEVU_IS_APP_INSTANCE_KEY]?: boolean\n [WEVU_RUNTIME_APP_KEY]?: RuntimeApp<any, any, any>\n } | undefined\n\n if (instance?.[WEVU_IS_APP_INSTANCE_KEY] && instance[WEVU_RUNTIME_APP_KEY]) {\n return instance[WEVU_RUNTIME_APP_KEY]\n }\n\n throw new Error('defineAppSetup() / use() 只能在 app setup 上下文中调用')\n}\n\n/**\n * 在 `app` 级 `setup()` 中显式获取运行时 app,提供与 `app.use()` / `app.provide()` 对齐的 SFC 写法。\n */\nexport function defineAppSetup<T>(setup: (app: RuntimeApp<any, any, any>) => T): T {\n return setup(resolveCurrentRuntimeApp())\n}\n\n/**\n * 在 `app` 级 `setup()` 中安装插件,提供与 `app.use()` 对齐的 SFC 调用方式。\n */\nexport function use(plugin: WevuPlugin, ...options: any[]) {\n return resolveCurrentRuntimeApp().use(plugin, ...options)\n}\n"],"mappings":";;;;AAOA,SAAS,2BAAsD;CAC7D,MAAM,WAAW,mBAAmB;CAKpC,IAAI,WAAW,6BAA6B,SAAS,uBACnD,OAAO,SAAS;CAGlB,MAAM,IAAI,MAAM,+CAA+C;AACjE;;;;AAKA,SAAgB,eAAkB,OAAiD;CACjF,OAAO,MAAM,yBAAyB,CAAC;AACzC;;;;AAKA,SAAgB,IAAI,QAAoB,GAAG,SAAgB;CACzD,OAAO,yBAAyB,CAAC,CAAC,IAAI,QAAQ,GAAG,OAAO;AAC1D"}
@@ -0,0 +1,8 @@
1
+ import { SetupContextNativeInstance } from "../types/props/setup.mjs";
2
+ import "../types.mjs";
3
+ //#region src/runtime/vueCompat/context.d.ts
4
+ export declare function useAttrs(): Record<string, any>;
5
+ export declare function useSlots(): Record<string, any>;
6
+ export declare function useNativeInstance(): SetupContextNativeInstance;
7
+ //#endregion
8
+ //# sourceMappingURL=context.d.mts.map