@weapp-vite/web 1.3.15 → 1.3.17

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 (243) hide show
  1. package/README.md +2 -2
  2. package/dist/_virtual/_rolldown/runtime.mjs +18 -0
  3. package/dist/compiler/wxml/attributes.mjs +93 -0
  4. package/dist/compiler/wxml/attributes.mjs.map +1 -0
  5. package/dist/compiler/wxml/compile.mjs +158 -0
  6. package/dist/compiler/wxml/compile.mjs.map +1 -0
  7. package/dist/compiler/wxml/dependency.mjs +31 -0
  8. package/dist/compiler/wxml/dependency.mjs.map +1 -0
  9. package/dist/compiler/wxml/interpolation.mjs +142 -0
  10. package/dist/compiler/wxml/interpolation.mjs.map +1 -0
  11. package/dist/compiler/wxml/navigation.mjs +85 -0
  12. package/dist/compiler/wxml/navigation.mjs.map +1 -0
  13. package/dist/compiler/wxml/parser.mjs +41 -0
  14. package/dist/compiler/wxml/parser.mjs.map +1 -0
  15. package/dist/compiler/wxml/renderer.mjs +114 -0
  16. package/dist/compiler/wxml/renderer.mjs.map +1 -0
  17. package/dist/compiler/wxml/specialNodes.mjs +85 -0
  18. package/dist/compiler/wxml/specialNodes.mjs.map +1 -0
  19. package/dist/compiler/wxs.mjs +83 -0
  20. package/dist/compiler/wxs.mjs.map +1 -0
  21. package/dist/css/wxss.d.mts +25 -0
  22. package/dist/css/wxss.mjs +17 -0
  23. package/dist/css/wxss.mjs.map +1 -0
  24. package/dist/index.d.mts +18 -2
  25. package/dist/index.mjs +18 -3
  26. package/dist/plugin/constants.mjs +43 -0
  27. package/dist/plugin/constants.mjs.map +1 -0
  28. package/dist/plugin/entry.mjs +29 -0
  29. package/dist/plugin/entry.mjs.map +1 -0
  30. package/dist/plugin/files.mjs +58 -0
  31. package/dist/plugin/files.mjs.map +1 -0
  32. package/dist/plugin/index.d.mts +33 -0
  33. package/dist/plugin/index.mjs +188 -0
  34. package/dist/plugin/index.mjs.map +1 -0
  35. package/dist/plugin/navigation.mjs +20 -0
  36. package/dist/plugin/navigation.mjs.map +1 -0
  37. package/dist/plugin/path.mjs +85 -0
  38. package/dist/plugin/path.mjs.map +1 -0
  39. package/dist/plugin/register.mjs +83 -0
  40. package/dist/plugin/register.mjs.map +1 -0
  41. package/dist/plugin/scan.mjs +195 -0
  42. package/dist/plugin/scan.mjs.map +1 -0
  43. package/dist/plugin/scanConfig.mjs +45 -0
  44. package/dist/plugin/scanConfig.mjs.map +1 -0
  45. package/dist/plugin/state.mjs +22 -0
  46. package/dist/plugin/state.mjs.map +1 -0
  47. package/dist/plugin/types.d.mts +46 -0
  48. package/dist/plugin.d.mts +3 -2
  49. package/dist/plugin.mjs +3 -2
  50. package/dist/runtime/button/helpers.mjs +92 -0
  51. package/dist/runtime/button/helpers.mjs.map +1 -0
  52. package/dist/runtime/button/index.d.mts +9 -0
  53. package/dist/runtime/button/index.mjs +198 -0
  54. package/dist/runtime/button/index.mjs.map +1 -0
  55. package/dist/runtime/button/style.mjs +168 -0
  56. package/dist/runtime/button/style.mjs.map +1 -0
  57. package/dist/runtime/component/behavior.mjs +98 -0
  58. package/dist/runtime/component/behavior.mjs.map +1 -0
  59. package/dist/runtime/component/constants.mjs +13 -0
  60. package/dist/runtime/component/constants.mjs.map +1 -0
  61. package/dist/runtime/component/dom.mjs +32 -0
  62. package/dist/runtime/component/dom.mjs.map +1 -0
  63. package/dist/runtime/component/element.mjs +208 -0
  64. package/dist/runtime/component/element.mjs.map +1 -0
  65. package/dist/runtime/component/events.mjs +49 -0
  66. package/dist/runtime/component/events.mjs.map +1 -0
  67. package/dist/runtime/component/index.d.mts +7 -0
  68. package/dist/runtime/component/index.mjs +44 -0
  69. package/dist/runtime/component/index.mjs.map +1 -0
  70. package/dist/runtime/component/state.mjs +63 -0
  71. package/dist/runtime/component/state.mjs.map +1 -0
  72. package/dist/runtime/component/types.d.mts +49 -0
  73. package/dist/runtime/component/utils.mjs +39 -0
  74. package/dist/runtime/component/utils.mjs.map +1 -0
  75. package/dist/runtime/execution.d.mts +7 -0
  76. package/dist/runtime/execution.mjs +37 -0
  77. package/dist/runtime/execution.mjs.map +1 -0
  78. package/dist/runtime/index.d.mts +16 -2
  79. package/dist/runtime/index.mjs +16 -2
  80. package/dist/runtime/legacyTemplate/dom.mjs +76 -0
  81. package/dist/runtime/legacyTemplate/dom.mjs.map +1 -0
  82. package/dist/runtime/legacyTemplate/expression.mjs +113 -0
  83. package/dist/runtime/legacyTemplate/expression.mjs.map +1 -0
  84. package/dist/runtime/legacyTemplate/index.d.mts +9 -0
  85. package/dist/runtime/legacyTemplate/index.mjs +132 -0
  86. package/dist/runtime/legacyTemplate/index.mjs.map +1 -0
  87. package/dist/runtime/legacyTemplate/types.d.mts +6 -0
  88. package/dist/runtime/navigationBar/index.d.mts +10 -0
  89. package/dist/runtime/navigationBar/index.mjs +162 -0
  90. package/dist/runtime/navigationBar/index.mjs.map +1 -0
  91. package/dist/runtime/navigationBar/style.mjs +108 -0
  92. package/dist/runtime/navigationBar/style.mjs.map +1 -0
  93. package/dist/runtime/polyfill/ad.mjs +150 -0
  94. package/dist/runtime/polyfill/ad.mjs.map +1 -0
  95. package/dist/runtime/polyfill/appState.mjs +31 -0
  96. package/dist/runtime/polyfill/appState.mjs.map +1 -0
  97. package/dist/runtime/polyfill/async.mjs +31 -0
  98. package/dist/runtime/polyfill/async.mjs.map +1 -0
  99. package/dist/runtime/polyfill/auth.mjs +120 -0
  100. package/dist/runtime/polyfill/auth.mjs.map +1 -0
  101. package/dist/runtime/polyfill/authApi.mjs +101 -0
  102. package/dist/runtime/polyfill/authApi.mjs.map +1 -0
  103. package/dist/runtime/polyfill/background.mjs +31 -0
  104. package/dist/runtime/polyfill/background.mjs.map +1 -0
  105. package/dist/runtime/polyfill/canvasContext.mjs +115 -0
  106. package/dist/runtime/polyfill/canvasContext.mjs.map +1 -0
  107. package/dist/runtime/polyfill/capability.mjs +20 -0
  108. package/dist/runtime/polyfill/capability.mjs.map +1 -0
  109. package/dist/runtime/polyfill/cloud.mjs +39 -0
  110. package/dist/runtime/polyfill/cloud.mjs.map +1 -0
  111. package/dist/runtime/polyfill/device.mjs +44 -0
  112. package/dist/runtime/polyfill/device.mjs.map +1 -0
  113. package/dist/runtime/polyfill/deviceApi.mjs +31 -0
  114. package/dist/runtime/polyfill/deviceApi.mjs.map +1 -0
  115. package/dist/runtime/polyfill/deviceAuthSystemApi.d.mts +102 -0
  116. package/dist/runtime/polyfill/deviceAuthSystemApi.mjs +144 -0
  117. package/dist/runtime/polyfill/deviceAuthSystemApi.mjs.map +1 -0
  118. package/dist/runtime/polyfill/filePicker.mjs +158 -0
  119. package/dist/runtime/polyfill/filePicker.mjs.map +1 -0
  120. package/dist/runtime/polyfill/fileSystemManager.mjs +45 -0
  121. package/dist/runtime/polyfill/fileSystemManager.mjs.map +1 -0
  122. package/dist/runtime/polyfill/files.mjs +118 -0
  123. package/dist/runtime/polyfill/files.mjs.map +1 -0
  124. package/dist/runtime/polyfill/index.d.mts +40 -0
  125. package/dist/runtime/polyfill/index.mjs +110 -0
  126. package/dist/runtime/polyfill/index.mjs.map +1 -0
  127. package/dist/runtime/polyfill/interaction.mjs +38 -0
  128. package/dist/runtime/polyfill/interaction.mjs.map +1 -0
  129. package/dist/runtime/polyfill/interactionApi.mjs +54 -0
  130. package/dist/runtime/polyfill/interactionApi.mjs.map +1 -0
  131. package/dist/runtime/polyfill/location.mjs +106 -0
  132. package/dist/runtime/polyfill/location.mjs.map +1 -0
  133. package/dist/runtime/polyfill/locationApi.mjs +120 -0
  134. package/dist/runtime/polyfill/locationApi.mjs.map +1 -0
  135. package/dist/runtime/polyfill/mediaActions.mjs +52 -0
  136. package/dist/runtime/polyfill/mediaActions.mjs.map +1 -0
  137. package/dist/runtime/polyfill/mediaApi/file.mjs +63 -0
  138. package/dist/runtime/polyfill/mediaApi/file.mjs.map +1 -0
  139. package/dist/runtime/polyfill/mediaApi/info.mjs +59 -0
  140. package/dist/runtime/polyfill/mediaApi/info.mjs.map +1 -0
  141. package/dist/runtime/polyfill/mediaApi/picker.mjs +82 -0
  142. package/dist/runtime/polyfill/mediaApi/picker.mjs.map +1 -0
  143. package/dist/runtime/polyfill/mediaApi/preview.mjs +39 -0
  144. package/dist/runtime/polyfill/mediaApi/preview.mjs.map +1 -0
  145. package/dist/runtime/polyfill/mediaApi/process.mjs +46 -0
  146. package/dist/runtime/polyfill/mediaApi/process.mjs.map +1 -0
  147. package/dist/runtime/polyfill/mediaInfo.mjs +136 -0
  148. package/dist/runtime/polyfill/mediaInfo.mjs.map +1 -0
  149. package/dist/runtime/polyfill/mediaPicker.mjs +213 -0
  150. package/dist/runtime/polyfill/mediaPicker.mjs.map +1 -0
  151. package/dist/runtime/polyfill/mediaProcess.mjs +65 -0
  152. package/dist/runtime/polyfill/mediaProcess.mjs.map +1 -0
  153. package/dist/runtime/polyfill/menuApi.mjs +70 -0
  154. package/dist/runtime/polyfill/menuApi.mjs.map +1 -0
  155. package/dist/runtime/polyfill/navigationBarRuntime.mjs +66 -0
  156. package/dist/runtime/polyfill/navigationBarRuntime.mjs.map +1 -0
  157. package/dist/runtime/polyfill/network/request.mjs +162 -0
  158. package/dist/runtime/polyfill/network/request.mjs.map +1 -0
  159. package/dist/runtime/polyfill/network/requestBridge.mjs +49 -0
  160. package/dist/runtime/polyfill/network/requestBridge.mjs.map +1 -0
  161. package/dist/runtime/polyfill/network/status.mjs +55 -0
  162. package/dist/runtime/polyfill/network/status.mjs.map +1 -0
  163. package/dist/runtime/polyfill/platformApi.mjs +33 -0
  164. package/dist/runtime/polyfill/platformApi.mjs.map +1 -0
  165. package/dist/runtime/polyfill/platformRuntime.mjs +120 -0
  166. package/dist/runtime/polyfill/platformRuntime.mjs.map +1 -0
  167. package/dist/runtime/polyfill/routeRuntime/dom.mjs +36 -0
  168. package/dist/runtime/polyfill/routeRuntime/dom.mjs.map +1 -0
  169. package/dist/runtime/polyfill/routeRuntime/lifecycle.mjs +83 -0
  170. package/dist/runtime/polyfill/routeRuntime/lifecycle.mjs.map +1 -0
  171. package/dist/runtime/polyfill/routeRuntime/options.d.mts +33 -0
  172. package/dist/runtime/polyfill/routeRuntime/options.mjs +76 -0
  173. package/dist/runtime/polyfill/routeRuntime/options.mjs.map +1 -0
  174. package/dist/runtime/polyfill/routeRuntime/url.mjs +35 -0
  175. package/dist/runtime/polyfill/routeRuntime/url.mjs.map +1 -0
  176. package/dist/runtime/polyfill/routeRuntime.d.mts +43 -0
  177. package/dist/runtime/polyfill/routeRuntime.mjs +202 -0
  178. package/dist/runtime/polyfill/routeRuntime.mjs.map +1 -0
  179. package/dist/runtime/polyfill/runtimeCapabilityApi.mjs +26 -0
  180. package/dist/runtime/polyfill/runtimeCapabilityApi.mjs.map +1 -0
  181. package/dist/runtime/polyfill/runtimeDataApi.d.mts +79 -0
  182. package/dist/runtime/polyfill/runtimeDataApi.mjs +134 -0
  183. package/dist/runtime/polyfill/runtimeDataApi.mjs.map +1 -0
  184. package/dist/runtime/polyfill/runtimeInfra.mjs +40 -0
  185. package/dist/runtime/polyfill/runtimeInfra.mjs.map +1 -0
  186. package/dist/runtime/polyfill/runtimeOps.mjs +62 -0
  187. package/dist/runtime/polyfill/runtimeOps.mjs.map +1 -0
  188. package/dist/runtime/polyfill/selectorQuery.mjs +204 -0
  189. package/dist/runtime/polyfill/selectorQuery.mjs.map +1 -0
  190. package/dist/runtime/polyfill/storage.mjs +103 -0
  191. package/dist/runtime/polyfill/storage.mjs.map +1 -0
  192. package/dist/runtime/polyfill/storageAsync.mjs +62 -0
  193. package/dist/runtime/polyfill/storageAsync.mjs.map +1 -0
  194. package/dist/runtime/polyfill/subscribe.mjs +30 -0
  195. package/dist/runtime/polyfill/subscribe.mjs.map +1 -0
  196. package/dist/runtime/polyfill/system.mjs +111 -0
  197. package/dist/runtime/polyfill/system.mjs.map +1 -0
  198. package/dist/runtime/polyfill/systemApi.mjs +65 -0
  199. package/dist/runtime/polyfill/systemApi.mjs.map +1 -0
  200. package/dist/runtime/polyfill/types/base.d.mts +12 -0
  201. package/dist/runtime/polyfill/types/common.d.mts +126 -0
  202. package/dist/runtime/polyfill/types/locationRuntime.d.mts +151 -0
  203. package/dist/runtime/polyfill/types/mediaAuth.d.mts +152 -0
  204. package/dist/runtime/polyfill/types/platformRuntime.d.mts +141 -0
  205. package/dist/runtime/polyfill/types/systemAuth.d.mts +122 -0
  206. package/dist/runtime/polyfill/ui.mjs +135 -0
  207. package/dist/runtime/polyfill/ui.mjs.map +1 -0
  208. package/dist/runtime/polyfill/uiFeedback.mjs +35 -0
  209. package/dist/runtime/polyfill/uiFeedback.mjs.map +1 -0
  210. package/dist/runtime/polyfill/uiMediaApi.d.mts +172 -0
  211. package/dist/runtime/polyfill/uiMediaApi.mjs +162 -0
  212. package/dist/runtime/polyfill/uiMediaApi.mjs.map +1 -0
  213. package/dist/runtime/polyfill/videoContext.mjs +56 -0
  214. package/dist/runtime/polyfill/videoContext.mjs.map +1 -0
  215. package/dist/runtime/polyfill/vkSession.mjs +58 -0
  216. package/dist/runtime/polyfill/vkSession.mjs.map +1 -0
  217. package/dist/runtime/polyfill/windowResize.mjs +39 -0
  218. package/dist/runtime/polyfill/windowResize.mjs.map +1 -0
  219. package/dist/runtime/polyfill/worker.mjs +77 -0
  220. package/dist/runtime/polyfill/worker.mjs.map +1 -0
  221. package/dist/runtime/polyfill.d.mts +5 -0
  222. package/dist/runtime/renderContext.d.mts +21 -0
  223. package/dist/runtime/renderContext.mjs +147 -0
  224. package/dist/runtime/renderContext.mjs.map +1 -0
  225. package/dist/runtime/rpx.d.mts +9 -0
  226. package/dist/runtime/rpx.mjs +27 -0
  227. package/dist/runtime/rpx.mjs.map +1 -0
  228. package/dist/runtime/style.d.mts +6 -0
  229. package/dist/runtime/style.mjs +37 -0
  230. package/dist/runtime/style.mjs.map +1 -0
  231. package/dist/runtime/template.d.mts +10 -0
  232. package/dist/runtime/warning.d.mts +10 -0
  233. package/dist/runtime/warning.mjs +43 -0
  234. package/dist/runtime/warning.mjs.map +1 -0
  235. package/dist/{slugify-B4l45KNs.mjs → shared/slugify.mjs} +3 -1
  236. package/dist/shared/slugify.mjs.map +1 -0
  237. package/dist/shared/wxml.mjs +83 -0
  238. package/dist/shared/wxml.mjs.map +1 -0
  239. package/package.json +2 -2
  240. package/dist/index-w9xxIH-l.d.mts +0 -1229
  241. package/dist/plugin-BARxSPO8.mjs +0 -1567
  242. package/dist/plugin-DP2iPVmw.d.mts +0 -96
  243. package/dist/runtime-D6j2_x_N.mjs +0 -6251
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menuApi.mjs","names":[],"sources":["../../../src/runtime/polyfill/menuApi.ts"],"sourcesContent":["import {\n callMiniProgramAsyncFailure,\n callMiniProgramAsyncSuccess,\n} from './async'\nimport { readNetworkStatusSnapshot } from './network'\nimport {\n normalizeSubscribeTemplateIds,\n resolveSubscribeDecisionMap,\n} from './subscribe'\nimport {\n normalizeActionSheetItems,\n resolveActionSheetSelection,\n resolveModalSelection,\n} from './ui'\n\nexport function getNetworkTypeBridge(options?: any): Promise<any> {\n const status = readNetworkStatusSnapshot()\n return Promise.resolve(callMiniProgramAsyncSuccess(options, {\n errMsg: 'getNetworkType:ok',\n ...status,\n }))\n}\n\nexport function showTabBarBridge(options?: any): Promise<any> {\n return Promise.resolve(callMiniProgramAsyncSuccess(options, { errMsg: 'showTabBar:ok' }))\n}\n\nexport function hideTabBarBridge(options?: any): Promise<any> {\n return Promise.resolve(callMiniProgramAsyncSuccess(options, { errMsg: 'hideTabBar:ok' }))\n}\n\nexport function requestPaymentBridge(options?: any): Promise<any> {\n return Promise.resolve(callMiniProgramAsyncSuccess(options, { errMsg: 'requestPayment:ok' }))\n}\n\nexport function requestSubscribeMessageBridge(options?: any): Promise<any> {\n const tmplIds = normalizeSubscribeTemplateIds(options?.tmplIds)\n if (tmplIds.length === 0) {\n const failure = callMiniProgramAsyncFailure(options, 'requestSubscribeMessage:fail invalid tmplIds')\n return Promise.reject(failure)\n }\n const decisionMap = resolveSubscribeDecisionMap(tmplIds)\n const result: Record<string, any> & { errMsg: string } = tmplIds.reduce<Record<string, any> & { errMsg: string }>((payload, tmplId) => {\n payload[tmplId] = decisionMap[tmplId]\n return payload\n }, { errMsg: 'requestSubscribeMessage:ok' })\n return Promise.resolve(callMiniProgramAsyncSuccess(options, result))\n}\n\nexport function showModalBridge(options?: any): Promise<any> {\n const modalResult = resolveModalSelection(options)\n const result = {\n errMsg: 'showModal:ok',\n confirm: modalResult.confirm,\n cancel: modalResult.cancel,\n }\n return Promise.resolve(callMiniProgramAsyncSuccess(options, result))\n}\n\nexport function showActionSheetBridge(options?: any): Promise<any> {\n const itemList = normalizeActionSheetItems(options?.itemList)\n if (!itemList.length) {\n const failure = callMiniProgramAsyncFailure(options, 'showActionSheet:fail invalid itemList')\n return Promise.reject(failure)\n }\n const tapIndex = resolveActionSheetSelection(itemList)\n if (tapIndex === null) {\n const failure = callMiniProgramAsyncFailure(options, 'showActionSheet:fail cancel')\n return Promise.reject(failure)\n }\n return Promise.resolve(callMiniProgramAsyncSuccess(options, {\n errMsg: 'showActionSheet:ok',\n tapIndex,\n }))\n}\n\nexport function showShareMenuBridge(options?: any): Promise<any> {\n return Promise.resolve(callMiniProgramAsyncSuccess(options, { errMsg: 'showShareMenu:ok' }))\n}\n\nexport function updateShareMenuBridge(options?: any): Promise<any> {\n return Promise.resolve(callMiniProgramAsyncSuccess(options, { errMsg: 'updateShareMenu:ok' }))\n}\n"],"mappings":";;;;;;AAeA,SAAgB,qBAAqB,SAA6B;CAChE,MAAM,SAAS,2BAA2B;AAC1C,QAAO,QAAQ,QAAQ,4BAA4B,SAAS;EAC1D,QAAQ;EACR,GAAG;EACJ,CAAC,CAAC;;AAGL,SAAgB,iBAAiB,SAA6B;AAC5D,QAAO,QAAQ,QAAQ,4BAA4B,SAAS,EAAE,QAAQ,iBAAiB,CAAC,CAAC;;AAG3F,SAAgB,iBAAiB,SAA6B;AAC5D,QAAO,QAAQ,QAAQ,4BAA4B,SAAS,EAAE,QAAQ,iBAAiB,CAAC,CAAC;;AAG3F,SAAgB,qBAAqB,SAA6B;AAChE,QAAO,QAAQ,QAAQ,4BAA4B,SAAS,EAAE,QAAQ,qBAAqB,CAAC,CAAC;;AAG/F,SAAgB,8BAA8B,SAA6B;CACzE,MAAM,UAAU,8BAA8B,SAAS,QAAQ;AAC/D,KAAI,QAAQ,WAAW,GAAG;EACxB,MAAM,UAAU,4BAA4B,SAAS,+CAA+C;AACpG,SAAO,QAAQ,OAAO,QAAQ;;CAEhC,MAAM,cAAc,4BAA4B,QAAQ;CACxD,MAAM,SAAmD,QAAQ,QAAkD,SAAS,WAAW;AACrI,UAAQ,UAAU,YAAY;AAC9B,SAAO;IACN,EAAE,QAAQ,8BAA8B,CAAC;AAC5C,QAAO,QAAQ,QAAQ,4BAA4B,SAAS,OAAO,CAAC;;AAGtE,SAAgB,gBAAgB,SAA6B;CAC3D,MAAM,cAAc,sBAAsB,QAAQ;CAClD,MAAM,SAAS;EACb,QAAQ;EACR,SAAS,YAAY;EACrB,QAAQ,YAAY;EACrB;AACD,QAAO,QAAQ,QAAQ,4BAA4B,SAAS,OAAO,CAAC;;AAGtE,SAAgB,sBAAsB,SAA6B;CACjE,MAAM,WAAW,0BAA0B,SAAS,SAAS;AAC7D,KAAI,CAAC,SAAS,QAAQ;EACpB,MAAM,UAAU,4BAA4B,SAAS,wCAAwC;AAC7F,SAAO,QAAQ,OAAO,QAAQ;;CAEhC,MAAM,WAAW,4BAA4B,SAAS;AACtD,KAAI,aAAa,MAAM;EACrB,MAAM,UAAU,4BAA4B,SAAS,8BAA8B;AACnF,SAAO,QAAQ,OAAO,QAAQ;;AAEhC,QAAO,QAAQ,QAAQ,4BAA4B,SAAS;EAC1D,QAAQ;EACR;EACD,CAAC,CAAC;;AAGL,SAAgB,oBAAoB,SAA6B;AAC/D,QAAO,QAAQ,QAAQ,4BAA4B,SAAS,EAAE,QAAQ,oBAAoB,CAAC,CAAC;;AAG9F,SAAgB,sBAAsB,SAA6B;AACjE,QAAO,QAAQ,QAAQ,4BAA4B,SAAS,EAAE,QAAQ,sBAAsB,CAAC,CAAC"}
@@ -0,0 +1,66 @@
1
+ //#region src/runtime/polyfill/navigationBarRuntime.ts
2
+ function getActiveNavigationBar(pages) {
3
+ const current = pages[pages.length - 1];
4
+ if (!current) return;
5
+ const renderRoot = current.renderRoot ?? current.shadowRoot ?? current;
6
+ if (!renderRoot || typeof renderRoot.querySelector !== "function") return;
7
+ return renderRoot.querySelector("weapp-navigation-bar");
8
+ }
9
+ function warnNavigationBarMissing(emitWarning, action) {
10
+ emitWarning(`[@weapp-vite/web] ${action} 需要默认导航栏支持,但当前页面未渲染 weapp-navigation-bar。`, {
11
+ key: "navigation-bar-missing",
12
+ context: "runtime:navigation"
13
+ });
14
+ }
15
+ function createNavigationBarRuntimeBridge(getCurrentPages, emitWarning) {
16
+ const navigationBarActionPrefix = "miniProgram.";
17
+ return {
18
+ setNavigationBarTitle(options) {
19
+ const bar = getActiveNavigationBar(getCurrentPages());
20
+ if (!bar) {
21
+ warnNavigationBarMissing(emitWarning, `${navigationBarActionPrefix}setNavigationBarTitle`);
22
+ return Promise.resolve();
23
+ }
24
+ if (options?.title !== void 0) bar.setAttribute("title", options.title);
25
+ return Promise.resolve();
26
+ },
27
+ setNavigationBarColor(options) {
28
+ const bar = getActiveNavigationBar(getCurrentPages());
29
+ if (!bar) {
30
+ warnNavigationBarMissing(emitWarning, `${navigationBarActionPrefix}setNavigationBarColor`);
31
+ return Promise.resolve();
32
+ }
33
+ if (options?.frontColor) bar.setAttribute("front-color", options.frontColor);
34
+ if (options?.backgroundColor) bar.setAttribute("background-color", options.backgroundColor);
35
+ if (options?.animation) {
36
+ const duration = typeof options.animation.duration === "number" ? `${options.animation.duration}ms` : void 0;
37
+ const easing = options.animation.timingFunction;
38
+ if (duration) bar.style.setProperty("--weapp-nav-transition-duration", duration);
39
+ if (easing) bar.style.setProperty("--weapp-nav-transition-easing", easing);
40
+ }
41
+ return Promise.resolve();
42
+ },
43
+ showNavigationBarLoading() {
44
+ const bar = getActiveNavigationBar(getCurrentPages());
45
+ if (!bar) {
46
+ warnNavigationBarMissing(emitWarning, `${navigationBarActionPrefix}showNavigationBarLoading`);
47
+ return Promise.resolve();
48
+ }
49
+ bar.setAttribute("loading", "true");
50
+ return Promise.resolve();
51
+ },
52
+ hideNavigationBarLoading() {
53
+ const bar = getActiveNavigationBar(getCurrentPages());
54
+ if (!bar) {
55
+ warnNavigationBarMissing(emitWarning, `${navigationBarActionPrefix}hideNavigationBarLoading`);
56
+ return Promise.resolve();
57
+ }
58
+ bar.removeAttribute("loading");
59
+ return Promise.resolve();
60
+ }
61
+ };
62
+ }
63
+
64
+ //#endregion
65
+ export { createNavigationBarRuntimeBridge };
66
+ //# sourceMappingURL=navigationBarRuntime.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"navigationBarRuntime.mjs","names":[],"sources":["../../../src/runtime/polyfill/navigationBarRuntime.ts"],"sourcesContent":["interface RuntimeWarningOptions {\n key: string\n context: string\n}\n\ntype RuntimeWarningEmitter = (message: string, options: RuntimeWarningOptions) => void\n\ninterface PageLike extends HTMLElement {\n renderRoot?: ShadowRoot | HTMLElement\n}\n\nfunction getActiveNavigationBar(pages: PageLike[]) {\n const current = pages[pages.length - 1]\n if (!current) {\n return undefined\n }\n const renderRoot = current.renderRoot\n ?? current.shadowRoot\n ?? current\n if (!renderRoot || typeof (renderRoot as ParentNode).querySelector !== 'function') {\n return undefined\n }\n return (renderRoot as ParentNode).querySelector('weapp-navigation-bar') as HTMLElement | null\n}\n\nfunction warnNavigationBarMissing(emitWarning: RuntimeWarningEmitter, action: string) {\n emitWarning(`[@weapp-vite/web] ${action} 需要默认导航栏支持,但当前页面未渲染 weapp-navigation-bar。`, {\n key: 'navigation-bar-missing',\n context: 'runtime:navigation',\n })\n}\n\nexport function createNavigationBarRuntimeBridge(\n getCurrentPages: () => PageLike[],\n emitWarning: RuntimeWarningEmitter,\n) {\n const navigationBarActionPrefix = 'miniProgram.'\n\n return {\n setNavigationBarTitle(options: { title: string }) {\n const bar = getActiveNavigationBar(getCurrentPages())\n if (!bar) {\n warnNavigationBarMissing(emitWarning, `${navigationBarActionPrefix}setNavigationBarTitle`)\n return Promise.resolve()\n }\n if (options?.title !== undefined) {\n bar.setAttribute('title', options.title)\n }\n return Promise.resolve()\n },\n setNavigationBarColor(options: {\n frontColor?: string\n backgroundColor?: string\n animation?: { duration?: number, timingFunction?: string }\n }) {\n const bar = getActiveNavigationBar(getCurrentPages())\n if (!bar) {\n warnNavigationBarMissing(emitWarning, `${navigationBarActionPrefix}setNavigationBarColor`)\n return Promise.resolve()\n }\n if (options?.frontColor) {\n bar.setAttribute('front-color', options.frontColor)\n }\n if (options?.backgroundColor) {\n bar.setAttribute('background-color', options.backgroundColor)\n }\n if (options?.animation) {\n const duration = typeof options.animation.duration === 'number'\n ? `${options.animation.duration}ms`\n : undefined\n const easing = options.animation.timingFunction\n if (duration) {\n bar.style.setProperty('--weapp-nav-transition-duration', duration)\n }\n if (easing) {\n bar.style.setProperty('--weapp-nav-transition-easing', easing)\n }\n }\n return Promise.resolve()\n },\n showNavigationBarLoading() {\n const bar = getActiveNavigationBar(getCurrentPages())\n if (!bar) {\n warnNavigationBarMissing(emitWarning, `${navigationBarActionPrefix}showNavigationBarLoading`)\n return Promise.resolve()\n }\n bar.setAttribute('loading', 'true')\n return Promise.resolve()\n },\n hideNavigationBarLoading() {\n const bar = getActiveNavigationBar(getCurrentPages())\n if (!bar) {\n warnNavigationBarMissing(emitWarning, `${navigationBarActionPrefix}hideNavigationBarLoading`)\n return Promise.resolve()\n }\n bar.removeAttribute('loading')\n return Promise.resolve()\n },\n }\n}\n"],"mappings":";AAWA,SAAS,uBAAuB,OAAmB;CACjD,MAAM,UAAU,MAAM,MAAM,SAAS;AACrC,KAAI,CAAC,QACH;CAEF,MAAM,aAAa,QAAQ,cACtB,QAAQ,cACR;AACL,KAAI,CAAC,cAAc,OAAQ,WAA0B,kBAAkB,WACrE;AAEF,QAAQ,WAA0B,cAAc,uBAAuB;;AAGzE,SAAS,yBAAyB,aAAoC,QAAgB;AACpF,aAAY,qBAAqB,OAAO,4CAA4C;EAClF,KAAK;EACL,SAAS;EACV,CAAC;;AAGJ,SAAgB,iCACd,iBACA,aACA;CACA,MAAM,4BAA4B;AAElC,QAAO;EACL,sBAAsB,SAA4B;GAChD,MAAM,MAAM,uBAAuB,iBAAiB,CAAC;AACrD,OAAI,CAAC,KAAK;AACR,6BAAyB,aAAa,GAAG,0BAA0B,uBAAuB;AAC1F,WAAO,QAAQ,SAAS;;AAE1B,OAAI,SAAS,UAAU,OACrB,KAAI,aAAa,SAAS,QAAQ,MAAM;AAE1C,UAAO,QAAQ,SAAS;;EAE1B,sBAAsB,SAInB;GACD,MAAM,MAAM,uBAAuB,iBAAiB,CAAC;AACrD,OAAI,CAAC,KAAK;AACR,6BAAyB,aAAa,GAAG,0BAA0B,uBAAuB;AAC1F,WAAO,QAAQ,SAAS;;AAE1B,OAAI,SAAS,WACX,KAAI,aAAa,eAAe,QAAQ,WAAW;AAErD,OAAI,SAAS,gBACX,KAAI,aAAa,oBAAoB,QAAQ,gBAAgB;AAE/D,OAAI,SAAS,WAAW;IACtB,MAAM,WAAW,OAAO,QAAQ,UAAU,aAAa,WACnD,GAAG,QAAQ,UAAU,SAAS,MAC9B;IACJ,MAAM,SAAS,QAAQ,UAAU;AACjC,QAAI,SACF,KAAI,MAAM,YAAY,mCAAmC,SAAS;AAEpE,QAAI,OACF,KAAI,MAAM,YAAY,iCAAiC,OAAO;;AAGlE,UAAO,QAAQ,SAAS;;EAE1B,2BAA2B;GACzB,MAAM,MAAM,uBAAuB,iBAAiB,CAAC;AACrD,OAAI,CAAC,KAAK;AACR,6BAAyB,aAAa,GAAG,0BAA0B,0BAA0B;AAC7F,WAAO,QAAQ,SAAS;;AAE1B,OAAI,aAAa,WAAW,OAAO;AACnC,UAAO,QAAQ,SAAS;;EAE1B,2BAA2B;GACzB,MAAM,MAAM,uBAAuB,iBAAiB,CAAC;AACrD,OAAI,CAAC,KAAK;AACR,6BAAyB,aAAa,GAAG,0BAA0B,0BAA0B;AAC7F,WAAO,QAAQ,SAAS;;AAE1B,OAAI,gBAAgB,UAAU;AAC9B,UAAO,QAAQ,SAAS;;EAE3B"}
@@ -0,0 +1,162 @@
1
+ import { normalizeFilePath, resolveUploadFileBlob, resolveUploadFileName } from "../files.mjs";
2
+
3
+ //#region src/runtime/polyfill/network/request.ts
4
+ function resolveTimeoutSignal(timeout) {
5
+ const controller = typeof AbortController === "function" ? new AbortController() : void 0;
6
+ let timeoutTimer;
7
+ if (timeout > 0 && controller) timeoutTimer = setTimeout(() => controller.abort(), timeout);
8
+ return {
9
+ signal: controller?.signal,
10
+ clear: () => {
11
+ if (timeoutTimer) clearTimeout(timeoutTimer);
12
+ }
13
+ };
14
+ }
15
+ function getRuntimeFetch() {
16
+ const maybeFetch = globalThis.fetch;
17
+ if (typeof maybeFetch === "function") return maybeFetch;
18
+ }
19
+ function normalizeRequestMethod(method) {
20
+ return (method || "GET").toUpperCase();
21
+ }
22
+ function normalizeRequestHeaders(header) {
23
+ if (!header) return {};
24
+ return { ...header };
25
+ }
26
+ function buildRequestUrl(url, method, data) {
27
+ if (method !== "GET" || data == null) return url;
28
+ if (typeof data === "string") {
29
+ if (!data) return url;
30
+ return `${url}${url.includes("?") ? "&" : "?"}${data}`;
31
+ }
32
+ if (typeof URLSearchParams !== "undefined" && data instanceof URLSearchParams) {
33
+ const query = data.toString();
34
+ if (!query) return url;
35
+ return `${url}${url.includes("?") ? "&" : "?"}${query}`;
36
+ }
37
+ if (typeof data === "object") {
38
+ const query = new URLSearchParams();
39
+ for (const [key, value] of Object.entries(data)) query.append(key, value == null ? "" : String(value));
40
+ const queryText = query.toString();
41
+ if (!queryText) return url;
42
+ return `${url}${url.includes("?") ? "&" : "?"}${queryText}`;
43
+ }
44
+ return url;
45
+ }
46
+ function buildRequestBody(method, data, headers) {
47
+ if (method === "GET" || data == null) return;
48
+ if (typeof data === "string") return data;
49
+ if (typeof URLSearchParams !== "undefined" && data instanceof URLSearchParams) return data;
50
+ if (typeof FormData !== "undefined" && data instanceof FormData) return data;
51
+ const contentTypeKey = Object.keys(headers).find((key) => key.toLowerCase() === "content-type");
52
+ const contentType = contentTypeKey ? headers[contentTypeKey] : "";
53
+ if (contentType && !contentType.includes("application/json")) return String(data);
54
+ if (!contentTypeKey) headers["content-type"] = "application/json";
55
+ return JSON.stringify(data);
56
+ }
57
+ async function parseRequestResponseData(response, options) {
58
+ if (options?.responseType === "arraybuffer") return response.arrayBuffer();
59
+ const contentType = response.headers.get("content-type") ?? "";
60
+ if (options?.dataType === "text") return response.text();
61
+ if (options?.dataType === "json" || contentType.includes("application/json")) return response.json();
62
+ return response.text();
63
+ }
64
+ function createBlobObjectUrl(blob) {
65
+ const runtimeUrl = globalThis.URL;
66
+ if (runtimeUrl && typeof runtimeUrl.createObjectURL === "function") return runtimeUrl.createObjectURL(blob);
67
+ return "";
68
+ }
69
+ function collectResponseHeaders(response) {
70
+ const headers = {};
71
+ response.headers.forEach((value, key) => {
72
+ headers[key] = value;
73
+ });
74
+ return headers;
75
+ }
76
+ function stripUploadContentType(headers) {
77
+ const normalized = { ...headers };
78
+ for (const key of Object.keys(normalized)) if (key.toLowerCase() === "content-type") delete normalized[key];
79
+ return normalized;
80
+ }
81
+ async function performRequestByFetch(options) {
82
+ const url = options?.url?.trim() ?? "";
83
+ if (!url) throw new TypeError("invalid url");
84
+ const runtimeFetch = getRuntimeFetch();
85
+ if (!runtimeFetch) throw new TypeError("fetch is unavailable");
86
+ const method = normalizeRequestMethod(options?.method);
87
+ const headers = normalizeRequestHeaders(options?.header);
88
+ const requestUrl = buildRequestUrl(url, method, options?.data);
89
+ const body = buildRequestBody(method, options?.data, headers);
90
+ const timeoutControl = resolveTimeoutSignal(typeof options?.timeout === "number" && options.timeout > 0 ? options.timeout : 0);
91
+ try {
92
+ const response = await runtimeFetch(requestUrl, {
93
+ method,
94
+ headers,
95
+ body,
96
+ signal: timeoutControl.signal
97
+ });
98
+ return {
99
+ data: await parseRequestResponseData(response, options),
100
+ statusCode: response.status,
101
+ header: collectResponseHeaders(response)
102
+ };
103
+ } finally {
104
+ timeoutControl.clear();
105
+ }
106
+ }
107
+ async function performDownloadByFetch(options) {
108
+ const url = options?.url?.trim() ?? "";
109
+ if (!url) throw new TypeError("invalid url");
110
+ const runtimeFetch = getRuntimeFetch();
111
+ if (!runtimeFetch) throw new TypeError("fetch is unavailable");
112
+ const headers = normalizeRequestHeaders(options?.header);
113
+ const timeoutControl = resolveTimeoutSignal(typeof options?.timeout === "number" && options.timeout > 0 ? options.timeout : 0);
114
+ try {
115
+ const response = await runtimeFetch(url, {
116
+ method: "GET",
117
+ headers,
118
+ signal: timeoutControl.signal
119
+ });
120
+ return {
121
+ tempFilePath: createBlobObjectUrl(await response.blob()) || url,
122
+ statusCode: response.status
123
+ };
124
+ } finally {
125
+ timeoutControl.clear();
126
+ }
127
+ }
128
+ async function performUploadByFetch(options) {
129
+ const url = options?.url?.trim() ?? "";
130
+ if (!url) throw new TypeError("invalid url");
131
+ const filePath = normalizeFilePath(options?.filePath);
132
+ if (!filePath) throw new TypeError("invalid filePath");
133
+ const runtimeFetch = getRuntimeFetch();
134
+ if (!runtimeFetch) throw new TypeError("fetch is unavailable");
135
+ const FormDataCtor = globalThis.FormData;
136
+ if (typeof FormDataCtor !== "function") throw new TypeError("FormData is unavailable");
137
+ const headers = stripUploadContentType(normalizeRequestHeaders(options?.header));
138
+ const formData = new FormDataCtor();
139
+ for (const [key, value] of Object.entries(options?.formData ?? {})) formData.append(key, value == null ? "" : String(value));
140
+ const blob = await resolveUploadFileBlob(filePath, runtimeFetch);
141
+ formData.append(options?.name?.trim() || "file", blob, resolveUploadFileName(filePath));
142
+ const timeoutControl = resolveTimeoutSignal(typeof options?.timeout === "number" && options.timeout > 0 ? options.timeout : 0);
143
+ try {
144
+ const response = await runtimeFetch(url, {
145
+ method: "POST",
146
+ headers,
147
+ body: formData,
148
+ signal: timeoutControl.signal
149
+ });
150
+ return {
151
+ data: await response.text(),
152
+ statusCode: response.status,
153
+ header: collectResponseHeaders(response)
154
+ };
155
+ } finally {
156
+ timeoutControl.clear();
157
+ }
158
+ }
159
+
160
+ //#endregion
161
+ export { performDownloadByFetch, performRequestByFetch, performUploadByFetch };
162
+ //# sourceMappingURL=request.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request.mjs","names":[],"sources":["../../../../src/runtime/polyfill/network/request.ts"],"sourcesContent":["import {\n normalizeFilePath,\n resolveUploadFileBlob,\n resolveUploadFileName,\n} from '../files'\n\ninterface RequestParseOptions {\n responseType?: 'text' | 'arraybuffer'\n dataType?: 'json' | 'text'\n}\n\ninterface RequestLikeOptions extends RequestParseOptions {\n url?: string\n method?: string\n header?: Record<string, string>\n data?: unknown\n timeout?: number\n}\n\ninterface DownloadLikeOptions {\n url?: string\n header?: Record<string, string>\n timeout?: number\n}\n\ninterface UploadLikeOptions {\n url?: string\n filePath?: string\n header?: Record<string, string>\n formData?: Record<string, unknown>\n name?: string\n timeout?: number\n}\n\nfunction resolveTimeoutSignal(timeout: number) {\n const controller = typeof AbortController === 'function' ? new AbortController() : undefined\n let timeoutTimer: ReturnType<typeof setTimeout> | undefined\n if (timeout > 0 && controller) {\n timeoutTimer = setTimeout(() => controller.abort(), timeout)\n }\n return {\n signal: controller?.signal,\n clear: () => {\n if (timeoutTimer) {\n clearTimeout(timeoutTimer)\n }\n },\n }\n}\n\nexport function getRuntimeFetch() {\n const runtime = globalThis as Record<string, unknown>\n const maybeFetch = runtime.fetch\n if (typeof maybeFetch === 'function') {\n return maybeFetch as typeof fetch\n }\n return undefined\n}\n\nexport function normalizeRequestMethod(method?: string) {\n return (method || 'GET').toUpperCase()\n}\n\nexport function normalizeRequestHeaders(header?: Record<string, string>) {\n if (!header) {\n return {}\n }\n return { ...header }\n}\n\nexport function buildRequestUrl(url: string, method: string, data: unknown) {\n if (method !== 'GET' || data == null) {\n return url\n }\n if (typeof data === 'string') {\n if (!data) {\n return url\n }\n return `${url}${url.includes('?') ? '&' : '?'}${data}`\n }\n if (typeof URLSearchParams !== 'undefined' && data instanceof URLSearchParams) {\n const query = data.toString()\n if (!query) {\n return url\n }\n return `${url}${url.includes('?') ? '&' : '?'}${query}`\n }\n if (typeof data === 'object') {\n const query = new URLSearchParams()\n for (const [key, value] of Object.entries(data as Record<string, unknown>)) {\n query.append(key, value == null ? '' : String(value))\n }\n const queryText = query.toString()\n if (!queryText) {\n return url\n }\n return `${url}${url.includes('?') ? '&' : '?'}${queryText}`\n }\n return url\n}\n\nexport function buildRequestBody(\n method: string,\n data: unknown,\n headers: Record<string, string>,\n) {\n if (method === 'GET' || data == null) {\n return undefined\n }\n if (typeof data === 'string') {\n return data\n }\n if (typeof URLSearchParams !== 'undefined' && data instanceof URLSearchParams) {\n return data\n }\n if (typeof FormData !== 'undefined' && data instanceof FormData) {\n return data\n }\n const contentTypeKey = Object.keys(headers).find(key => key.toLowerCase() === 'content-type')\n const contentType = contentTypeKey ? headers[contentTypeKey] : ''\n if (contentType && !contentType.includes('application/json')) {\n return String(data)\n }\n if (!contentTypeKey) {\n headers['content-type'] = 'application/json'\n }\n return JSON.stringify(data)\n}\n\nexport async function parseRequestResponseData(\n response: Response,\n options?: RequestParseOptions,\n) {\n if (options?.responseType === 'arraybuffer') {\n return response.arrayBuffer()\n }\n const contentType = response.headers.get('content-type') ?? ''\n if (options?.dataType === 'text') {\n return response.text()\n }\n if (options?.dataType === 'json' || contentType.includes('application/json')) {\n return response.json()\n }\n return response.text()\n}\n\nexport function createBlobObjectUrl(blob: Blob) {\n const runtimeUrl = (globalThis as {\n URL?: {\n createObjectURL?: (value: Blob) => string\n }\n }).URL\n if (runtimeUrl && typeof runtimeUrl.createObjectURL === 'function') {\n return runtimeUrl.createObjectURL(blob)\n }\n return ''\n}\n\nexport function collectResponseHeaders(response: {\n headers: {\n forEach: (callback: (value: string, key: string) => void) => void\n }\n}) {\n const headers: Record<string, string> = {}\n response.headers.forEach((value, key) => {\n headers[key] = value\n })\n return headers\n}\n\nexport function stripUploadContentType(headers: Record<string, string>) {\n const normalized = { ...headers }\n for (const key of Object.keys(normalized)) {\n if (key.toLowerCase() === 'content-type') {\n delete normalized[key]\n }\n }\n return normalized\n}\n\nexport async function performRequestByFetch(options?: RequestLikeOptions) {\n const url = options?.url?.trim() ?? ''\n if (!url) {\n throw new TypeError('invalid url')\n }\n const runtimeFetch = getRuntimeFetch()\n if (!runtimeFetch) {\n throw new TypeError('fetch is unavailable')\n }\n const method = normalizeRequestMethod(options?.method)\n const headers = normalizeRequestHeaders(options?.header)\n const requestUrl = buildRequestUrl(url, method, options?.data)\n const body = buildRequestBody(method, options?.data, headers)\n const timeout = typeof options?.timeout === 'number' && options.timeout > 0 ? options.timeout : 0\n const timeoutControl = resolveTimeoutSignal(timeout)\n\n try {\n const response = await runtimeFetch(requestUrl, {\n method,\n headers,\n body,\n signal: timeoutControl.signal,\n })\n const responseData = await parseRequestResponseData(response, options)\n return {\n data: responseData,\n statusCode: response.status,\n header: collectResponseHeaders(response),\n }\n }\n finally {\n timeoutControl.clear()\n }\n}\n\nexport async function performDownloadByFetch(options?: DownloadLikeOptions) {\n const url = options?.url?.trim() ?? ''\n if (!url) {\n throw new TypeError('invalid url')\n }\n const runtimeFetch = getRuntimeFetch()\n if (!runtimeFetch) {\n throw new TypeError('fetch is unavailable')\n }\n const headers = normalizeRequestHeaders(options?.header)\n const timeout = typeof options?.timeout === 'number' && options.timeout > 0 ? options.timeout : 0\n const timeoutControl = resolveTimeoutSignal(timeout)\n\n try {\n const response = await runtimeFetch(url, {\n method: 'GET',\n headers,\n signal: timeoutControl.signal,\n })\n const blob = await response.blob()\n return {\n tempFilePath: createBlobObjectUrl(blob) || url,\n statusCode: response.status,\n }\n }\n finally {\n timeoutControl.clear()\n }\n}\n\nexport async function performUploadByFetch(options?: UploadLikeOptions) {\n const url = options?.url?.trim() ?? ''\n if (!url) {\n throw new TypeError('invalid url')\n }\n const filePath = normalizeFilePath(options?.filePath)\n if (!filePath) {\n throw new TypeError('invalid filePath')\n }\n const runtimeFetch = getRuntimeFetch()\n if (!runtimeFetch) {\n throw new TypeError('fetch is unavailable')\n }\n const FormDataCtor = (globalThis as { FormData?: typeof FormData }).FormData\n if (typeof FormDataCtor !== 'function') {\n throw new TypeError('FormData is unavailable')\n }\n\n const headers = stripUploadContentType(normalizeRequestHeaders(options?.header))\n const formData = new FormDataCtor()\n for (const [key, value] of Object.entries(options?.formData ?? {})) {\n formData.append(key, value == null ? '' : String(value))\n }\n const blob = await resolveUploadFileBlob(filePath, runtimeFetch)\n formData.append(options?.name?.trim() || 'file', blob, resolveUploadFileName(filePath))\n\n const timeout = typeof options?.timeout === 'number' && options.timeout > 0 ? options.timeout : 0\n const timeoutControl = resolveTimeoutSignal(timeout)\n\n try {\n const response = await runtimeFetch(url, {\n method: 'POST',\n headers,\n body: formData,\n signal: timeoutControl.signal,\n })\n const data = await response.text()\n return {\n data,\n statusCode: response.status,\n header: collectResponseHeaders(response),\n }\n }\n finally {\n timeoutControl.clear()\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ import { callMiniProgramAsyncFailure, callMiniProgramAsyncSuccess } from "../async.mjs";
2
+ import { performDownloadByFetch, performRequestByFetch, performUploadByFetch } from "./request.mjs";
3
+
4
+ //#region src/runtime/polyfill/network/requestBridge.ts
5
+ async function requestByFetchBridge(options) {
6
+ try {
7
+ const response = await performRequestByFetch(options);
8
+ return callMiniProgramAsyncSuccess(options, {
9
+ errMsg: "request:ok",
10
+ data: response.data,
11
+ statusCode: response.statusCode,
12
+ header: response.header
13
+ });
14
+ } catch (error) {
15
+ const message = error instanceof Error ? error.message : String(error);
16
+ return Promise.reject(callMiniProgramAsyncFailure(options, `request:fail ${message}`));
17
+ }
18
+ }
19
+ async function downloadFileByFetchBridge(options) {
20
+ try {
21
+ const response = await performDownloadByFetch(options);
22
+ return callMiniProgramAsyncSuccess(options, {
23
+ errMsg: "downloadFile:ok",
24
+ tempFilePath: response.tempFilePath,
25
+ statusCode: response.statusCode
26
+ });
27
+ } catch (error) {
28
+ const message = error instanceof Error ? error.message : String(error);
29
+ return Promise.reject(callMiniProgramAsyncFailure(options, `downloadFile:fail ${message}`));
30
+ }
31
+ }
32
+ async function uploadFileByFetchBridge(options) {
33
+ try {
34
+ const response = await performUploadByFetch(options);
35
+ return callMiniProgramAsyncSuccess(options, {
36
+ errMsg: "uploadFile:ok",
37
+ data: response.data,
38
+ statusCode: response.statusCode,
39
+ header: response.header
40
+ });
41
+ } catch (error) {
42
+ const message = error instanceof Error ? error.message : String(error);
43
+ return Promise.reject(callMiniProgramAsyncFailure(options, `uploadFile:fail ${message}`));
44
+ }
45
+ }
46
+
47
+ //#endregion
48
+ export { downloadFileByFetchBridge, requestByFetchBridge, uploadFileByFetchBridge };
49
+ //# sourceMappingURL=requestBridge.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"requestBridge.mjs","names":[],"sources":["../../../../src/runtime/polyfill/network/requestBridge.ts"],"sourcesContent":["import type { DownloadFileOptions, RequestOptions, UploadFileOptions } from '../types/common'\nimport {\n callMiniProgramAsyncFailure,\n callMiniProgramAsyncSuccess,\n} from '../async'\nimport {\n performDownloadByFetch,\n performRequestByFetch,\n performUploadByFetch,\n} from './request'\n\nexport async function requestByFetchBridge(options?: RequestOptions) {\n try {\n const response = await performRequestByFetch(options)\n return callMiniProgramAsyncSuccess(options, {\n errMsg: 'request:ok',\n data: response.data,\n statusCode: response.statusCode,\n header: response.header,\n })\n }\n catch (error) {\n const message = error instanceof Error ? error.message : String(error)\n return Promise.reject(callMiniProgramAsyncFailure(options, `request:fail ${message}`))\n }\n}\n\nexport async function downloadFileByFetchBridge(options?: DownloadFileOptions) {\n try {\n const response = await performDownloadByFetch(options)\n return callMiniProgramAsyncSuccess(options, {\n errMsg: 'downloadFile:ok',\n tempFilePath: response.tempFilePath,\n statusCode: response.statusCode,\n })\n }\n catch (error) {\n const message = error instanceof Error ? error.message : String(error)\n return Promise.reject(callMiniProgramAsyncFailure(options, `downloadFile:fail ${message}`))\n }\n}\n\nexport async function uploadFileByFetchBridge(options?: UploadFileOptions) {\n try {\n const response = await performUploadByFetch(options)\n return callMiniProgramAsyncSuccess(options, {\n errMsg: 'uploadFile:ok',\n data: response.data,\n statusCode: response.statusCode,\n header: response.header,\n })\n }\n catch (error) {\n const message = error instanceof Error ? error.message : String(error)\n return Promise.reject(callMiniProgramAsyncFailure(options, `uploadFile:fail ${message}`))\n }\n}\n"],"mappings":";;;;AAWA,eAAsB,qBAAqB,SAA0B;AACnE,KAAI;EACF,MAAM,WAAW,MAAM,sBAAsB,QAAQ;AACrD,SAAO,4BAA4B,SAAS;GAC1C,QAAQ;GACR,MAAM,SAAS;GACf,YAAY,SAAS;GACrB,QAAQ,SAAS;GAClB,CAAC;UAEG,OAAO;EACZ,MAAM,UAAU,iBAAiB,QAAQ,MAAM,UAAU,OAAO,MAAM;AACtE,SAAO,QAAQ,OAAO,4BAA4B,SAAS,gBAAgB,UAAU,CAAC;;;AAI1F,eAAsB,0BAA0B,SAA+B;AAC7E,KAAI;EACF,MAAM,WAAW,MAAM,uBAAuB,QAAQ;AACtD,SAAO,4BAA4B,SAAS;GAC1C,QAAQ;GACR,cAAc,SAAS;GACvB,YAAY,SAAS;GACtB,CAAC;UAEG,OAAO;EACZ,MAAM,UAAU,iBAAiB,QAAQ,MAAM,UAAU,OAAO,MAAM;AACtE,SAAO,QAAQ,OAAO,4BAA4B,SAAS,qBAAqB,UAAU,CAAC;;;AAI/F,eAAsB,wBAAwB,SAA6B;AACzE,KAAI;EACF,MAAM,WAAW,MAAM,qBAAqB,QAAQ;AACpD,SAAO,4BAA4B,SAAS;GAC1C,QAAQ;GACR,MAAM,SAAS;GACf,YAAY,SAAS;GACrB,QAAQ,SAAS;GAClB,CAAC;UAEG,OAAO;EACZ,MAAM,UAAU,iBAAiB,QAAQ,MAAM,UAAU,OAAO,MAAM;AACtE,SAAO,QAAQ,OAAO,4BAA4B,SAAS,mBAAmB,UAAU,CAAC"}
@@ -0,0 +1,55 @@
1
+ //#region src/runtime/polyfill/network/status.ts
2
+ function getNavigatorConnection() {
3
+ const runtimeNavigator = typeof navigator !== "undefined" ? navigator : void 0;
4
+ return runtimeNavigator?.connection ?? runtimeNavigator?.mozConnection ?? runtimeNavigator?.webkitConnection;
5
+ }
6
+ function resolveNetworkType(connection, isConnected) {
7
+ if (!isConnected) return "none";
8
+ const type = typeof connection?.type === "string" ? connection.type.toLowerCase() : "";
9
+ const effectiveType = typeof connection?.effectiveType === "string" ? connection.effectiveType.toLowerCase() : "";
10
+ if (type.includes("wifi") || type.includes("ethernet")) return "wifi";
11
+ if (effectiveType.includes("5g")) return "5g";
12
+ if (effectiveType.includes("4g")) return "4g";
13
+ if (effectiveType.includes("3g")) return "3g";
14
+ if (effectiveType.includes("2g") || effectiveType.includes("slow-2g")) return "2g";
15
+ if (type.includes("cellular")) return "unknown";
16
+ return "unknown";
17
+ }
18
+ function readNetworkStatusSnapshot() {
19
+ const runtimeNavigator = typeof navigator !== "undefined" ? navigator : void 0;
20
+ const isConnected = typeof runtimeNavigator?.onLine === "boolean" ? runtimeNavigator.onLine : true;
21
+ return {
22
+ isConnected,
23
+ networkType: resolveNetworkType(getNavigatorConnection(), isConnected)
24
+ };
25
+ }
26
+ const networkStatusCallbacks = /* @__PURE__ */ new Set();
27
+ let networkStatusBridgeBound = false;
28
+ function notifyNetworkStatusChange() {
29
+ if (networkStatusCallbacks.size === 0) return;
30
+ const status = readNetworkStatusSnapshot();
31
+ for (const callback of networkStatusCallbacks) callback(status);
32
+ }
33
+ function bindNetworkStatusBridge() {
34
+ if (networkStatusBridgeBound) return;
35
+ networkStatusBridgeBound = true;
36
+ const runtimeTarget = globalThis;
37
+ runtimeTarget.addEventListener?.("online", notifyNetworkStatusChange);
38
+ runtimeTarget.addEventListener?.("offline", notifyNetworkStatusChange);
39
+ getNavigatorConnection()?.addEventListener?.("change", notifyNetworkStatusChange);
40
+ }
41
+ function addNetworkStatusCallback(callback) {
42
+ bindNetworkStatusBridge();
43
+ networkStatusCallbacks.add(callback);
44
+ }
45
+ function removeNetworkStatusCallback(callback) {
46
+ if (typeof callback !== "function") {
47
+ networkStatusCallbacks.clear();
48
+ return;
49
+ }
50
+ networkStatusCallbacks.delete(callback);
51
+ }
52
+
53
+ //#endregion
54
+ export { addNetworkStatusCallback, readNetworkStatusSnapshot, removeNetworkStatusCallback };
55
+ //# sourceMappingURL=status.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.mjs","names":[],"sources":["../../../../src/runtime/polyfill/network/status.ts"],"sourcesContent":["type NetworkType = 'wifi' | '2g' | '3g' | '4g' | '5g' | 'unknown' | 'none'\n\ninterface NetworkStatusSnapshot {\n isConnected: boolean\n networkType: NetworkType\n}\n\ninterface NavigatorConnection {\n type?: string\n effectiveType?: string\n addEventListener?: (type: string, listener: () => void) => void\n}\n\nexport function getNavigatorConnection() {\n const runtimeNavigator = (typeof navigator !== 'undefined' ? navigator : undefined) as (Navigator & {\n connection?: NavigatorConnection\n mozConnection?: NavigatorConnection\n webkitConnection?: NavigatorConnection\n }) | undefined\n return runtimeNavigator?.connection ?? runtimeNavigator?.mozConnection ?? runtimeNavigator?.webkitConnection\n}\n\nfunction resolveNetworkType(connection: NavigatorConnection | undefined, isConnected: boolean): NetworkType {\n if (!isConnected) {\n return 'none'\n }\n const type = typeof connection?.type === 'string' ? connection.type.toLowerCase() : ''\n const effectiveType = typeof connection?.effectiveType === 'string'\n ? connection.effectiveType.toLowerCase()\n : ''\n if (type.includes('wifi') || type.includes('ethernet')) {\n return 'wifi'\n }\n if (effectiveType.includes('5g')) {\n return '5g'\n }\n if (effectiveType.includes('4g')) {\n return '4g'\n }\n if (effectiveType.includes('3g')) {\n return '3g'\n }\n if (effectiveType.includes('2g') || effectiveType.includes('slow-2g')) {\n return '2g'\n }\n if (type.includes('cellular')) {\n return 'unknown'\n }\n return 'unknown'\n}\n\nexport function readNetworkStatusSnapshot(): NetworkStatusSnapshot {\n const runtimeNavigator = typeof navigator !== 'undefined' ? navigator : undefined\n const isConnected = typeof runtimeNavigator?.onLine === 'boolean' ? runtimeNavigator.onLine : true\n const connection = getNavigatorConnection()\n return {\n isConnected,\n networkType: resolveNetworkType(connection, isConnected),\n }\n}\n\nconst networkStatusCallbacks = new Set<(result: NetworkStatusSnapshot) => void>()\nlet networkStatusBridgeBound = false\n\nfunction notifyNetworkStatusChange() {\n if (networkStatusCallbacks.size === 0) {\n return\n }\n const status = readNetworkStatusSnapshot()\n for (const callback of networkStatusCallbacks) {\n callback(status)\n }\n}\n\nfunction bindNetworkStatusBridge() {\n if (networkStatusBridgeBound) {\n return\n }\n networkStatusBridgeBound = true\n const runtimeTarget = globalThis as {\n addEventListener?: (type: string, listener: () => void) => void\n }\n runtimeTarget.addEventListener?.('online', notifyNetworkStatusChange)\n runtimeTarget.addEventListener?.('offline', notifyNetworkStatusChange)\n const connection = getNavigatorConnection()\n connection?.addEventListener?.('change', notifyNetworkStatusChange)\n}\n\nexport function addNetworkStatusCallback(callback: (result: NetworkStatusSnapshot) => void) {\n bindNetworkStatusBridge()\n networkStatusCallbacks.add(callback)\n}\n\nexport function removeNetworkStatusCallback(callback?: (result: NetworkStatusSnapshot) => void) {\n if (typeof callback !== 'function') {\n networkStatusCallbacks.clear()\n return\n }\n networkStatusCallbacks.delete(callback)\n}\n"],"mappings":";AAaA,SAAgB,yBAAyB;CACvC,MAAM,mBAAoB,OAAO,cAAc,cAAc,YAAY;AAKzE,QAAO,kBAAkB,cAAc,kBAAkB,iBAAiB,kBAAkB;;AAG9F,SAAS,mBAAmB,YAA6C,aAAmC;AAC1G,KAAI,CAAC,YACH,QAAO;CAET,MAAM,OAAO,OAAO,YAAY,SAAS,WAAW,WAAW,KAAK,aAAa,GAAG;CACpF,MAAM,gBAAgB,OAAO,YAAY,kBAAkB,WACvD,WAAW,cAAc,aAAa,GACtC;AACJ,KAAI,KAAK,SAAS,OAAO,IAAI,KAAK,SAAS,WAAW,CACpD,QAAO;AAET,KAAI,cAAc,SAAS,KAAK,CAC9B,QAAO;AAET,KAAI,cAAc,SAAS,KAAK,CAC9B,QAAO;AAET,KAAI,cAAc,SAAS,KAAK,CAC9B,QAAO;AAET,KAAI,cAAc,SAAS,KAAK,IAAI,cAAc,SAAS,UAAU,CACnE,QAAO;AAET,KAAI,KAAK,SAAS,WAAW,CAC3B,QAAO;AAET,QAAO;;AAGT,SAAgB,4BAAmD;CACjE,MAAM,mBAAmB,OAAO,cAAc,cAAc,YAAY;CACxE,MAAM,cAAc,OAAO,kBAAkB,WAAW,YAAY,iBAAiB,SAAS;AAE9F,QAAO;EACL;EACA,aAAa,mBAHI,wBAAwB,EAGG,YAAY;EACzD;;AAGH,MAAM,yCAAyB,IAAI,KAA8C;AACjF,IAAI,2BAA2B;AAE/B,SAAS,4BAA4B;AACnC,KAAI,uBAAuB,SAAS,EAClC;CAEF,MAAM,SAAS,2BAA2B;AAC1C,MAAK,MAAM,YAAY,uBACrB,UAAS,OAAO;;AAIpB,SAAS,0BAA0B;AACjC,KAAI,yBACF;AAEF,4BAA2B;CAC3B,MAAM,gBAAgB;AAGtB,eAAc,mBAAmB,UAAU,0BAA0B;AACrE,eAAc,mBAAmB,WAAW,0BAA0B;AAEtE,CADmB,wBAAwB,EAC/B,mBAAmB,UAAU,0BAA0B;;AAGrE,SAAgB,yBAAyB,UAAmD;AAC1F,0BAAyB;AACzB,wBAAuB,IAAI,SAAS;;AAGtC,SAAgB,4BAA4B,UAAoD;AAC9F,KAAI,OAAO,aAAa,YAAY;AAClC,yBAAuB,OAAO;AAC9B;;AAEF,wBAAuB,OAAO,SAAS"}
@@ -0,0 +1,33 @@
1
+ import { callMiniProgramAsyncSuccess, scheduleMicrotask } from "./async.mjs";
2
+ import { createInterstitialAdImpl, createRewardedVideoAdImpl } from "./ad.mjs";
3
+ import { createLogManagerBridge, createUpdateManagerBridge, readExtConfigValue, readRuntimeConsole, reportAnalyticsEvent, resolveUpdateManagerPreset } from "./platformRuntime.mjs";
4
+
5
+ //#region src/runtime/polyfill/platformApi.ts
6
+ function createRewardedVideoAdBridge(options) {
7
+ return createRewardedVideoAdImpl(options);
8
+ }
9
+ function createInterstitialAdBridge(options) {
10
+ return createInterstitialAdImpl(options);
11
+ }
12
+ function getExtConfigSyncBridge() {
13
+ return readExtConfigValue();
14
+ }
15
+ function getExtConfigBridge(options) {
16
+ return Promise.resolve(callMiniProgramAsyncSuccess(options, {
17
+ errMsg: "getExtConfig:ok",
18
+ extConfig: getExtConfigSyncBridge()
19
+ }));
20
+ }
21
+ function getUpdateManagerBridge() {
22
+ return createUpdateManagerBridge(resolveUpdateManagerPreset, scheduleMicrotask);
23
+ }
24
+ function getLogManagerBridge(options) {
25
+ return createLogManagerBridge(options?.level === 0 ? 0 : 1, readRuntimeConsole());
26
+ }
27
+ function reportAnalyticsBridge(eventName, data) {
28
+ reportAnalyticsEvent(eventName, data);
29
+ }
30
+
31
+ //#endregion
32
+ export { createInterstitialAdBridge, createRewardedVideoAdBridge, getExtConfigBridge, getExtConfigSyncBridge, getLogManagerBridge, getUpdateManagerBridge, reportAnalyticsBridge };
33
+ //# sourceMappingURL=platformApi.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platformApi.mjs","names":[],"sources":["../../../src/runtime/polyfill/platformApi.ts"],"sourcesContent":["import {\n createInterstitialAdImpl,\n createRewardedVideoAdImpl,\n} from './ad'\nimport { callMiniProgramAsyncSuccess, scheduleMicrotask } from './async'\nimport {\n createLogManagerBridge,\n createUpdateManagerBridge,\n readExtConfigValue,\n readRuntimeConsole,\n reportAnalyticsEvent,\n resolveUpdateManagerPreset,\n} from './platformRuntime'\n\nexport function createRewardedVideoAdBridge(options?: any): any {\n return createRewardedVideoAdImpl(options)\n}\n\nexport function createInterstitialAdBridge(options?: any): any {\n return createInterstitialAdImpl(options)\n}\n\nexport function getExtConfigSyncBridge() {\n return readExtConfigValue()\n}\n\nexport function getExtConfigBridge(options?: any): Promise<any> {\n return Promise.resolve(callMiniProgramAsyncSuccess(options, {\n errMsg: 'getExtConfig:ok',\n extConfig: getExtConfigSyncBridge(),\n }))\n}\n\nexport function getUpdateManagerBridge() {\n return createUpdateManagerBridge(resolveUpdateManagerPreset, scheduleMicrotask)\n}\n\nexport function getLogManagerBridge(options?: any) {\n const level = options?.level === 0 ? 0 : 1\n return createLogManagerBridge(level, readRuntimeConsole())\n}\n\nexport function reportAnalyticsBridge(eventName: string, data?: Record<string, unknown>) {\n reportAnalyticsEvent(eventName, data)\n}\n"],"mappings":";;;;;AAcA,SAAgB,4BAA4B,SAAoB;AAC9D,QAAO,0BAA0B,QAAQ;;AAG3C,SAAgB,2BAA2B,SAAoB;AAC7D,QAAO,yBAAyB,QAAQ;;AAG1C,SAAgB,yBAAyB;AACvC,QAAO,oBAAoB;;AAG7B,SAAgB,mBAAmB,SAA6B;AAC9D,QAAO,QAAQ,QAAQ,4BAA4B,SAAS;EAC1D,QAAQ;EACR,WAAW,wBAAwB;EACpC,CAAC,CAAC;;AAGL,SAAgB,yBAAyB;AACvC,QAAO,0BAA0B,4BAA4B,kBAAkB;;AAGjF,SAAgB,oBAAoB,SAAe;AAEjD,QAAO,uBADO,SAAS,UAAU,IAAI,IAAI,GACJ,oBAAoB,CAAC;;AAG5D,SAAgB,sBAAsB,WAAmB,MAAgC;AACvF,sBAAqB,WAAW,KAAK"}
@@ -0,0 +1,120 @@
1
+ import { WEAPP_VITE_WEB_ANALYTICS_EVENTS_KEY, WEAPP_VITE_WEB_EXT_CONFIG_KEY, WEAPP_VITE_WEB_UPDATE_MANAGER_KEY } from "@weapp-core/constants";
2
+
3
+ //#region src/runtime/polyfill/platformRuntime.ts
4
+ function normalizeSubPackageName(value) {
5
+ if (typeof value !== "string") return "";
6
+ return value.trim();
7
+ }
8
+ function resolveSubPackageName(options) {
9
+ return normalizeSubPackageName(options?.name) || normalizeSubPackageName(options?.root);
10
+ }
11
+ function normalizeUpdateManagerPreset(value) {
12
+ if (typeof value === "boolean") return {
13
+ hasUpdate: value,
14
+ ready: value,
15
+ failed: false
16
+ };
17
+ if (typeof value === "string") {
18
+ const normalized = value.trim().toLowerCase();
19
+ if (!normalized || normalized === "none" || normalized === "false") return {
20
+ hasUpdate: false,
21
+ ready: false,
22
+ failed: false
23
+ };
24
+ if (normalized === "fail" || normalized === "failed" || normalized === "error") return {
25
+ hasUpdate: true,
26
+ ready: false,
27
+ failed: true
28
+ };
29
+ return {
30
+ hasUpdate: true,
31
+ ready: true,
32
+ failed: false
33
+ };
34
+ }
35
+ if (value && typeof value === "object") {
36
+ const payload = value;
37
+ const failed = Boolean(payload.failed ?? payload.fail);
38
+ const ready = failed ? false : Boolean(payload.ready ?? payload.updateReady);
39
+ const hasUpdate = payload.hasUpdate == null ? ready || failed : Boolean(payload.hasUpdate);
40
+ return {
41
+ hasUpdate,
42
+ ready: hasUpdate && ready,
43
+ failed: hasUpdate && failed
44
+ };
45
+ }
46
+ return {
47
+ hasUpdate: false,
48
+ ready: false,
49
+ failed: false
50
+ };
51
+ }
52
+ function resolveUpdateManagerPreset() {
53
+ const preset = globalThis[WEAPP_VITE_WEB_UPDATE_MANAGER_KEY];
54
+ if (typeof preset === "function") return normalizeUpdateManagerPreset(preset());
55
+ return normalizeUpdateManagerPreset(preset);
56
+ }
57
+ function readRuntimeConsole() {
58
+ return globalThis.console;
59
+ }
60
+ function readExtConfigValue() {
61
+ const value = globalThis[WEAPP_VITE_WEB_EXT_CONFIG_KEY];
62
+ if (value && typeof value === "object") return { ...value };
63
+ return {};
64
+ }
65
+ function createUpdateManagerBridge(resolveUpdateManagerPreset, scheduleMicrotask) {
66
+ return {
67
+ applyUpdate() {},
68
+ onCheckForUpdate(callback) {
69
+ if (typeof callback !== "function") return;
70
+ const preset = resolveUpdateManagerPreset();
71
+ scheduleMicrotask(() => callback({ hasUpdate: preset.hasUpdate }));
72
+ },
73
+ onUpdateReady(callback) {
74
+ if (typeof callback !== "function") return;
75
+ const preset = resolveUpdateManagerPreset();
76
+ if (!preset.hasUpdate || !preset.ready) return;
77
+ scheduleMicrotask(() => callback());
78
+ },
79
+ onUpdateFailed(callback) {
80
+ if (typeof callback !== "function") return;
81
+ const preset = resolveUpdateManagerPreset();
82
+ if (!preset.hasUpdate || !preset.failed) return;
83
+ scheduleMicrotask(() => callback());
84
+ }
85
+ };
86
+ }
87
+ function createLogManagerBridge(level, runtimeConsole) {
88
+ const invokeConsole = (method, args) => {
89
+ const handler = runtimeConsole?.[method];
90
+ if (typeof handler === "function") handler.apply(runtimeConsole, args);
91
+ };
92
+ return {
93
+ debug(...args) {
94
+ if (level > 0) return;
95
+ invokeConsole("debug", args);
96
+ },
97
+ info(...args) {
98
+ invokeConsole("info", args);
99
+ },
100
+ log(...args) {
101
+ invokeConsole("log", args);
102
+ },
103
+ warn(...args) {
104
+ invokeConsole("warn", args);
105
+ }
106
+ };
107
+ }
108
+ function reportAnalyticsEvent(eventName, data) {
109
+ const runtimeGlobal = globalThis;
110
+ runtimeGlobal[WEAPP_VITE_WEB_ANALYTICS_EVENTS_KEY] ??= [];
111
+ runtimeGlobal[WEAPP_VITE_WEB_ANALYTICS_EVENTS_KEY].push({
112
+ eventName: String(eventName ?? ""),
113
+ data: { ...data ?? {} },
114
+ timestamp: Date.now()
115
+ });
116
+ }
117
+
118
+ //#endregion
119
+ export { createLogManagerBridge, createUpdateManagerBridge, readExtConfigValue, readRuntimeConsole, reportAnalyticsEvent, resolveSubPackageName, resolveUpdateManagerPreset };
120
+ //# sourceMappingURL=platformRuntime.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platformRuntime.mjs","names":[],"sources":["../../../src/runtime/polyfill/platformRuntime.ts"],"sourcesContent":["import {\n WEAPP_VITE_WEB_ANALYTICS_EVENTS_KEY,\n WEAPP_VITE_WEB_EXT_CONFIG_KEY,\n WEAPP_VITE_WEB_UPDATE_MANAGER_KEY,\n} from '@weapp-core/constants'\n\ninterface UpdatePresetSnapshot {\n hasUpdate: boolean\n ready: boolean\n failed: boolean\n}\n\ninterface RuntimeConsoleLike {\n debug?: (...args: unknown[]) => void\n info?: (...args: unknown[]) => void\n log?: (...args: unknown[]) => void\n warn?: (...args: unknown[]) => void\n}\n\nfunction normalizeSubPackageName(value: unknown) {\n if (typeof value !== 'string') {\n return ''\n }\n return value.trim()\n}\n\nexport function resolveSubPackageName(options?: { name?: unknown, root?: unknown }) {\n return normalizeSubPackageName(options?.name) || normalizeSubPackageName(options?.root)\n}\n\nfunction normalizeUpdateManagerPreset(value: unknown): UpdatePresetSnapshot {\n if (typeof value === 'boolean') {\n return {\n hasUpdate: value,\n ready: value,\n failed: false,\n }\n }\n if (typeof value === 'string') {\n const normalized = value.trim().toLowerCase()\n if (!normalized || normalized === 'none' || normalized === 'false') {\n return {\n hasUpdate: false,\n ready: false,\n failed: false,\n }\n }\n if (normalized === 'fail' || normalized === 'failed' || normalized === 'error') {\n return {\n hasUpdate: true,\n ready: false,\n failed: true,\n }\n }\n return {\n hasUpdate: true,\n ready: true,\n failed: false,\n }\n }\n if (value && typeof value === 'object') {\n const payload = value as {\n hasUpdate?: unknown\n ready?: unknown\n updateReady?: unknown\n failed?: unknown\n fail?: unknown\n }\n const failed = Boolean(payload.failed ?? payload.fail)\n const ready = failed ? false : Boolean(payload.ready ?? payload.updateReady)\n const hasUpdate = payload.hasUpdate == null ? (ready || failed) : Boolean(payload.hasUpdate)\n return {\n hasUpdate,\n ready: hasUpdate && ready,\n failed: hasUpdate && failed,\n }\n }\n return {\n hasUpdate: false,\n ready: false,\n failed: false,\n }\n}\n\nexport function resolveUpdateManagerPreset() {\n const runtimeGlobal = globalThis as Record<string, unknown>\n const preset = runtimeGlobal[WEAPP_VITE_WEB_UPDATE_MANAGER_KEY]\n if (typeof preset === 'function') {\n return normalizeUpdateManagerPreset((preset as () => unknown)())\n }\n return normalizeUpdateManagerPreset(preset)\n}\n\nexport function readRuntimeConsole() {\n const runtimeGlobal = globalThis as { console?: Console }\n return runtimeGlobal.console\n}\n\nexport function readExtConfigValue() {\n const runtimeGlobal = globalThis as Record<string, unknown>\n const value = runtimeGlobal[WEAPP_VITE_WEB_EXT_CONFIG_KEY]\n if (value && typeof value === 'object') {\n return { ...(value as Record<string, unknown>) }\n }\n return {}\n}\n\nexport function createUpdateManagerBridge(\n resolveUpdateManagerPreset: () => UpdatePresetSnapshot,\n scheduleMicrotask: (callback: () => void) => void,\n) {\n return {\n applyUpdate() {},\n onCheckForUpdate(callback: ((result: { hasUpdate: boolean }) => void) | undefined) {\n if (typeof callback !== 'function') {\n return\n }\n const preset = resolveUpdateManagerPreset()\n scheduleMicrotask(() => callback({ hasUpdate: preset.hasUpdate }))\n },\n onUpdateReady(callback: (() => void) | undefined) {\n if (typeof callback !== 'function') {\n return\n }\n const preset = resolveUpdateManagerPreset()\n if (!preset.hasUpdate || !preset.ready) {\n return\n }\n scheduleMicrotask(() => callback())\n },\n onUpdateFailed(callback: (() => void) | undefined) {\n if (typeof callback !== 'function') {\n return\n }\n const preset = resolveUpdateManagerPreset()\n if (!preset.hasUpdate || !preset.failed) {\n return\n }\n scheduleMicrotask(() => callback())\n },\n }\n}\n\nexport function createLogManagerBridge(level: 0 | 1, runtimeConsole: RuntimeConsoleLike | undefined) {\n const invokeConsole = (method: 'debug' | 'info' | 'log' | 'warn', args: unknown[]) => {\n const handler = runtimeConsole?.[method]\n if (typeof handler === 'function') {\n handler.apply(runtimeConsole, args)\n }\n }\n return {\n debug(...args: unknown[]) {\n if (level > 0) {\n return\n }\n invokeConsole('debug', args)\n },\n info(...args: unknown[]) {\n invokeConsole('info', args)\n },\n log(...args: unknown[]) {\n invokeConsole('log', args)\n },\n warn(...args: unknown[]) {\n invokeConsole('warn', args)\n },\n }\n}\n\nexport function reportAnalyticsEvent(eventName: string, data?: Record<string, unknown>) {\n const runtimeGlobal = globalThis as {\n [WEAPP_VITE_WEB_ANALYTICS_EVENTS_KEY]?: Array<{\n eventName: string\n data: Record<string, unknown>\n timestamp: number\n }>\n }\n runtimeGlobal[WEAPP_VITE_WEB_ANALYTICS_EVENTS_KEY] ??= []\n runtimeGlobal[WEAPP_VITE_WEB_ANALYTICS_EVENTS_KEY].push({\n eventName: String(eventName ?? ''),\n data: { ...(data ?? {}) },\n timestamp: Date.now(),\n })\n}\n"],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import { attachRouteMeta } from "./lifecycle.mjs";
2
+
3
+ //#region src/runtime/polyfill/routeRuntime/dom.ts
4
+ function ensureDocumentReady(callback) {
5
+ if (typeof document === "undefined") return;
6
+ if (document.readyState === "loading") {
7
+ document.addEventListener("DOMContentLoaded", () => callback(), { once: true });
8
+ return;
9
+ }
10
+ callback();
11
+ }
12
+ function ensureContainer() {
13
+ if (typeof document === "undefined") return;
14
+ return document.querySelector("#app") ?? document.body;
15
+ }
16
+ function mountEntryToDom(entry, pageRegistry, onMounted) {
17
+ const record = pageRegistry.get(entry.id);
18
+ if (!record) return;
19
+ ensureDocumentReady(() => {
20
+ const container = ensureContainer();
21
+ if (!container) return;
22
+ while (container.childNodes.length) container.removeChild(container.childNodes[0]);
23
+ const element = document.createElement(record.tag);
24
+ attachRouteMeta(element, {
25
+ id: entry.id,
26
+ query: entry.query,
27
+ entry
28
+ });
29
+ container.append(element);
30
+ onMounted(entry);
31
+ });
32
+ }
33
+
34
+ //#endregion
35
+ export { mountEntryToDom };
36
+ //# sourceMappingURL=dom.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dom.mjs","names":[],"sources":["../../../../src/runtime/polyfill/routeRuntime/dom.ts"],"sourcesContent":["import type { ComponentPublicInstance } from '../../component'\nimport type { PageRecord, PageStackEntry } from './options'\nimport { attachRouteMeta } from './lifecycle'\n\nfunction ensureDocumentReady(callback: () => void) {\n if (typeof document === 'undefined') {\n return\n }\n if (document.readyState === 'loading') {\n document.addEventListener('DOMContentLoaded', () => callback(), { once: true })\n return\n }\n callback()\n}\n\nfunction ensureContainer(): HTMLElement | undefined {\n if (typeof document === 'undefined') {\n return undefined\n }\n return (document.querySelector('#app') as HTMLElement | null) ?? document.body\n}\n\nexport function mountEntryToDom(\n entry: PageStackEntry,\n pageRegistry: Map<string, PageRecord>,\n onMounted: (entry: PageStackEntry) => void,\n) {\n const record = pageRegistry.get(entry.id)\n if (!record) {\n return\n }\n ensureDocumentReady(() => {\n const container = ensureContainer()\n if (!container) {\n return\n }\n while (container.childNodes.length) {\n container.removeChild(container.childNodes[0]!)\n }\n const element = document.createElement(record.tag) as HTMLElement & ComponentPublicInstance\n attachRouteMeta(element, {\n id: entry.id,\n query: entry.query,\n entry,\n })\n container.append(element)\n onMounted(entry)\n })\n}\n"],"mappings":";;;AAIA,SAAS,oBAAoB,UAAsB;AACjD,KAAI,OAAO,aAAa,YACtB;AAEF,KAAI,SAAS,eAAe,WAAW;AACrC,WAAS,iBAAiB,0BAA0B,UAAU,EAAE,EAAE,MAAM,MAAM,CAAC;AAC/E;;AAEF,WAAU;;AAGZ,SAAS,kBAA2C;AAClD,KAAI,OAAO,aAAa,YACtB;AAEF,QAAQ,SAAS,cAAc,OAAO,IAA2B,SAAS;;AAG5E,SAAgB,gBACd,OACA,cACA,WACA;CACA,MAAM,SAAS,aAAa,IAAI,MAAM,GAAG;AACzC,KAAI,CAAC,OACH;AAEF,2BAA0B;EACxB,MAAM,YAAY,iBAAiB;AACnC,MAAI,CAAC,UACH;AAEF,SAAO,UAAU,WAAW,OAC1B,WAAU,YAAY,UAAU,WAAW,GAAI;EAEjD,MAAM,UAAU,SAAS,cAAc,OAAO,IAAI;AAClD,kBAAgB,SAAS;GACvB,IAAI,MAAM;GACV,OAAO,MAAM;GACb;GACD,CAAC;AACF,YAAU,OAAO,QAAQ;AACzB,YAAU,MAAM;GAChB"}