one 2.10.0 → 2.11.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 (1420) hide show
  1. package/One.podspec +14 -0
  2. package/android/src/main/java/com/margelo/nitro/one/OneUpdatesLauncher.kt +28 -0
  3. package/android/src/main/java/dev/onejs/one/OnePackage.kt +2 -0
  4. package/android/src/main/java/dev/onejs/onenative/OneDOMHostManager.kt +85 -0
  5. package/android/src/main/java/dev/onejs/onenative/OneDOMHostView.kt +399 -0
  6. package/android/src/main/java/dev/onejs/onenative/OneDOMResources.kt +126 -0
  7. package/dist/cjs/cli/iosLinkSet.cjs +111 -0
  8. package/dist/cjs/cli/iosLinkSet.native.cjs +120 -0
  9. package/dist/cjs/cli/iosLinkSet.native.js +122 -0
  10. package/dist/cjs/cli/iosLinkSet.native.js.map +1 -0
  11. package/dist/cjs/cli/iosLinkSetAnalysis.cjs +329 -0
  12. package/dist/cjs/cli/iosLinkSetAnalysis.native.cjs +714 -0
  13. package/dist/cjs/cli/iosLinkSetAnalysis.native.js +716 -0
  14. package/dist/cjs/cli/iosLinkSetAnalysis.native.js.map +1 -0
  15. package/dist/cjs/cli/prebuild.cjs +5 -1
  16. package/dist/cjs/cli/prebuild.native.cjs +4 -2
  17. package/dist/cjs/cli/prebuild.native.js +4 -2
  18. package/dist/cjs/cli/prebuild.native.js.map +1 -1
  19. package/dist/cjs/cli/updatesPublish.cjs +16 -12
  20. package/dist/cjs/cli/updatesPublish.native.cjs +45 -22
  21. package/dist/cjs/cli/updatesPublish.native.js +45 -22
  22. package/dist/cjs/cli/updatesPublish.native.js.map +1 -1
  23. package/dist/cjs/cli.cjs +4 -2
  24. package/dist/cjs/cli.native.cjs +4 -2
  25. package/dist/cjs/cli.native.js +4 -2
  26. package/dist/cjs/cli.native.js.map +1 -1
  27. package/dist/cjs/createApp.cjs +8 -0
  28. package/dist/cjs/createHandleRequest.cjs +4 -17
  29. package/dist/cjs/createHandleRequest.native.cjs +6 -19
  30. package/dist/cjs/createHandleRequest.native.js +6 -19
  31. package/dist/cjs/createHandleRequest.native.js.map +1 -1
  32. package/dist/cjs/dom/browserBridge.cjs +177 -0
  33. package/dist/cjs/dom/browserBridge.native.cjs +290 -0
  34. package/dist/cjs/dom/browserBridge.native.js +292 -0
  35. package/dist/cjs/dom/browserBridge.native.js.map +1 -0
  36. package/dist/cjs/dom/client.cjs +69 -0
  37. package/dist/cjs/dom/client.native.cjs +81 -0
  38. package/dist/cjs/dom/client.native.js +83 -0
  39. package/dist/cjs/dom/client.native.js.map +1 -0
  40. package/dist/cjs/dom/context.cjs +25 -0
  41. package/dist/cjs/dom/context.native.cjs +27 -0
  42. package/dist/cjs/dom/context.native.js +29 -0
  43. package/dist/cjs/dom/context.native.js.map +1 -0
  44. package/dist/cjs/dom/host.native.cjs +152 -0
  45. package/dist/cjs/dom/host.native.js +154 -0
  46. package/dist/cjs/dom/host.native.js.map +1 -0
  47. package/dist/cjs/dom/index.cjs +88 -0
  48. package/dist/cjs/dom/index.native.cjs +136 -0
  49. package/dist/cjs/dom/index.native.js +138 -0
  50. package/dist/cjs/dom/index.native.js.map +1 -0
  51. package/dist/cjs/dom/measure.cjs +51 -0
  52. package/dist/cjs/dom/measure.native.cjs +55 -0
  53. package/dist/cjs/dom/measure.native.js +57 -0
  54. package/dist/cjs/dom/measure.native.js.map +1 -0
  55. package/dist/cjs/dom/nativeBridge.cjs +135 -0
  56. package/dist/cjs/dom/nativeBridge.native.cjs +223 -0
  57. package/dist/cjs/dom/nativeBridge.native.js +225 -0
  58. package/dist/cjs/dom/nativeBridge.native.js.map +1 -0
  59. package/dist/cjs/dom/peer.cjs +148 -0
  60. package/dist/cjs/dom/peer.native.cjs +227 -0
  61. package/dist/cjs/dom/peer.native.js +229 -0
  62. package/dist/cjs/dom/peer.native.js.map +1 -0
  63. package/dist/cjs/dom/protocol.cjs +185 -0
  64. package/dist/cjs/dom/protocol.native.cjs +209 -0
  65. package/dist/cjs/dom/protocol.native.js +211 -0
  66. package/dist/cjs/dom/protocol.native.js.map +1 -0
  67. package/dist/cjs/dom/serialize.cjs +140 -0
  68. package/dist/cjs/dom/serialize.native.cjs +284 -0
  69. package/dist/cjs/dom/serialize.native.js +286 -0
  70. package/dist/cjs/dom/serialize.native.js.map +1 -0
  71. package/dist/cjs/dom/types.cjs +16 -0
  72. package/dist/cjs/dom/types.native.cjs +18 -0
  73. package/dist/cjs/dom/types.native.js +20 -0
  74. package/dist/cjs/dom/types.native.js.map +1 -0
  75. package/dist/cjs/fork/getPathFromState.cjs +9 -1
  76. package/dist/cjs/fork/getPathFromState.native.cjs +48 -4
  77. package/dist/cjs/fork/getPathFromState.native.js +48 -4
  78. package/dist/cjs/fork/getPathFromState.native.js.map +1 -1
  79. package/dist/cjs/hooks.cjs +50 -1
  80. package/dist/cjs/hooks.native.cjs +55 -2
  81. package/dist/cjs/hooks.native.js +55 -2
  82. package/dist/cjs/hooks.native.js.map +1 -1
  83. package/dist/cjs/index.cjs +2 -0
  84. package/dist/cjs/index.native.cjs +2 -0
  85. package/dist/cjs/index.native.js +2 -0
  86. package/dist/cjs/index.native.js.map +1 -1
  87. package/dist/cjs/layouts/Tabs.linux.cjs +48 -0
  88. package/dist/cjs/layouts/Tabs.linux.native.cjs +50 -0
  89. package/dist/cjs/layouts/Tabs.linux.native.js +52 -0
  90. package/dist/cjs/layouts/Tabs.linux.native.js.map +1 -0
  91. package/dist/cjs/layouts/stack-navigator-desktop.cjs +26 -0
  92. package/dist/cjs/layouts/stack-navigator-desktop.native.cjs +28 -0
  93. package/dist/cjs/layouts/stack-navigator-desktop.native.js +30 -0
  94. package/dist/cjs/layouts/stack-navigator-desktop.native.js.map +1 -0
  95. package/dist/cjs/layouts/stack-navigator.linux.cjs +39 -0
  96. package/dist/cjs/layouts/stack-navigator.linux.native.cjs +41 -0
  97. package/dist/cjs/layouts/stack-navigator.linux.native.js +43 -0
  98. package/dist/cjs/layouts/stack-navigator.linux.native.js.map +1 -0
  99. package/dist/cjs/layouts/stack-navigator.macos.cjs +29 -0
  100. package/dist/cjs/layouts/stack-navigator.macos.native.cjs +31 -0
  101. package/dist/cjs/layouts/stack-navigator.macos.native.js +33 -0
  102. package/dist/cjs/layouts/stack-navigator.macos.native.js.map +1 -0
  103. package/dist/cjs/layouts/stack-utils/StackToolbarBottomHost.linux.cjs +18 -0
  104. package/dist/cjs/layouts/stack-utils/StackToolbarBottomHost.linux.native.cjs +20 -0
  105. package/dist/cjs/layouts/stack-utils/StackToolbarBottomHost.linux.native.js +22 -0
  106. package/dist/cjs/layouts/stack-utils/StackToolbarBottomHost.linux.native.js.map +1 -0
  107. package/dist/cjs/layouts/stack-utils/StackToolbarBottomHost.macos.cjs +30 -0
  108. package/dist/cjs/layouts/stack-utils/StackToolbarBottomHost.macos.native.cjs +33 -0
  109. package/dist/cjs/layouts/stack-utils/StackToolbarBottomHost.macos.native.js +35 -0
  110. package/dist/cjs/layouts/stack-utils/StackToolbarBottomHost.macos.native.js.map +1 -0
  111. package/dist/cjs/link/Link.cjs +4 -3
  112. package/dist/cjs/link/Link.native.cjs +4 -3
  113. package/dist/cjs/link/Link.native.js +4 -3
  114. package/dist/cjs/link/Link.native.js.map +1 -1
  115. package/dist/cjs/loaderResponseToModule.cjs +41 -0
  116. package/dist/cjs/loaderResponseToModule.native.cjs +44 -0
  117. package/dist/cjs/loaderResponseToModule.native.js +46 -0
  118. package/dist/cjs/loaderResponseToModule.native.js.map +1 -0
  119. package/dist/cjs/loaderSearchParams.cjs +99 -0
  120. package/dist/cjs/loaderSearchParams.native.cjs +139 -0
  121. package/dist/cjs/loaderSearchParams.native.js +141 -0
  122. package/dist/cjs/loaderSearchParams.native.js.map +1 -0
  123. package/dist/cjs/one-shared.cjs +129 -0
  124. package/dist/cjs/one-shared.native.cjs +132 -0
  125. package/dist/cjs/one-shared.native.js +134 -0
  126. package/dist/cjs/one-shared.native.js.map +1 -0
  127. package/dist/cjs/one.cjs +2 -113
  128. package/dist/cjs/one.linux.cjs +57 -0
  129. package/dist/cjs/one.linux.native.cjs +59 -0
  130. package/dist/cjs/one.linux.native.js +61 -0
  131. package/dist/cjs/one.linux.native.js.map +1 -0
  132. package/dist/cjs/one.macos.cjs +45 -0
  133. package/dist/cjs/one.macos.native.cjs +47 -0
  134. package/dist/cjs/one.macos.native.js +49 -0
  135. package/dist/cjs/one.macos.native.js.map +1 -0
  136. package/dist/cjs/one.native.cjs +2 -114
  137. package/dist/cjs/one.native.js +2 -114
  138. package/dist/cjs/one.native.js.map +1 -1
  139. package/dist/cjs/platform/adaptive/fixed.cjs +48 -0
  140. package/dist/cjs/platform/adaptive/fixed.native.cjs +50 -0
  141. package/dist/cjs/platform/adaptive/fixed.native.js +52 -0
  142. package/dist/cjs/platform/adaptive/fixed.native.js.map +1 -0
  143. package/dist/cjs/platform/adaptive/index.cjs +2 -24
  144. package/dist/cjs/platform/adaptive/index.linux.cjs +18 -0
  145. package/dist/cjs/platform/adaptive/index.linux.native.cjs +20 -0
  146. package/dist/cjs/platform/adaptive/index.linux.native.js +22 -0
  147. package/dist/cjs/platform/adaptive/index.linux.native.js.map +1 -0
  148. package/dist/cjs/platform/adaptive/index.macos.cjs +39 -0
  149. package/dist/cjs/platform/adaptive/index.macos.native.cjs +41 -0
  150. package/dist/cjs/platform/adaptive/index.macos.native.js +43 -0
  151. package/dist/cjs/platform/adaptive/index.macos.native.js.map +1 -0
  152. package/dist/cjs/platform/controlTypes.cjs +16 -0
  153. package/dist/cjs/platform/controlTypes.native.cjs +18 -0
  154. package/dist/cjs/platform/controlTypes.native.js +20 -0
  155. package/dist/cjs/platform/controlTypes.native.js.map +1 -0
  156. package/dist/cjs/platform/desktop/appCommandTypes.cjs +16 -0
  157. package/dist/cjs/platform/desktop/appCommandTypes.native.cjs +18 -0
  158. package/dist/cjs/platform/desktop/appCommandTypes.native.js +20 -0
  159. package/dist/cjs/platform/desktop/appCommandTypes.native.js.map +1 -0
  160. package/dist/cjs/platform/desktop/createAppCommands.cjs +55 -0
  161. package/dist/cjs/platform/desktop/createAppCommands.native.cjs +60 -0
  162. package/dist/cjs/platform/desktop/createAppCommands.native.js +62 -0
  163. package/dist/cjs/platform/desktop/createAppCommands.native.js.map +1 -0
  164. package/dist/cjs/platform/desktop/createControls.cjs +65 -0
  165. package/dist/cjs/platform/desktop/createControls.native.cjs +69 -0
  166. package/dist/cjs/platform/desktop/createControls.native.js +71 -0
  167. package/dist/cjs/platform/desktop/createControls.native.js.map +1 -0
  168. package/dist/cjs/platform/linux/AppCommands.linux.cjs +25 -0
  169. package/dist/cjs/platform/linux/AppCommands.linux.native.cjs +27 -0
  170. package/dist/cjs/platform/linux/AppCommands.linux.native.js +29 -0
  171. package/dist/cjs/platform/linux/AppCommands.linux.native.js.map +1 -0
  172. package/dist/cjs/platform/linux/Button.linux.cjs +41 -0
  173. package/dist/cjs/platform/linux/Button.linux.native.cjs +49 -0
  174. package/dist/cjs/platform/linux/Button.linux.native.js +51 -0
  175. package/dist/cjs/platform/linux/Button.linux.native.js.map +1 -0
  176. package/dist/cjs/platform/linux/DropDown.linux.cjs +74 -0
  177. package/dist/cjs/platform/linux/DropDown.linux.native.cjs +91 -0
  178. package/dist/cjs/platform/linux/DropDown.linux.native.js +93 -0
  179. package/dist/cjs/platform/linux/DropDown.linux.native.js.map +1 -0
  180. package/dist/cjs/platform/linux/NavigationView.linux.cjs +114 -0
  181. package/dist/cjs/platform/linux/NavigationView.linux.native.cjs +130 -0
  182. package/dist/cjs/platform/linux/NavigationView.linux.native.js +132 -0
  183. package/dist/cjs/platform/linux/NavigationView.linux.native.js.map +1 -0
  184. package/dist/cjs/platform/linux/OneLinuxButtonNativeComponent.cjs +46 -0
  185. package/dist/cjs/platform/linux/OneLinuxButtonNativeComponent.native.cjs +46 -0
  186. package/dist/cjs/platform/linux/OneLinuxButtonNativeComponent.native.js +47 -0
  187. package/dist/cjs/platform/linux/OneLinuxButtonNativeComponent.native.js.map +7 -0
  188. package/dist/cjs/platform/linux/OneLinuxDropDownNativeComponent.cjs +55 -0
  189. package/dist/cjs/platform/linux/OneLinuxDropDownNativeComponent.native.cjs +55 -0
  190. package/dist/cjs/platform/linux/OneLinuxDropDownNativeComponent.native.js +56 -0
  191. package/dist/cjs/platform/linux/OneLinuxDropDownNativeComponent.native.js.map +7 -0
  192. package/dist/cjs/platform/linux/OneLinuxNavigationNativeComponent.cjs +55 -0
  193. package/dist/cjs/platform/linux/OneLinuxNavigationNativeComponent.native.cjs +55 -0
  194. package/dist/cjs/platform/linux/OneLinuxNavigationNativeComponent.native.js +56 -0
  195. package/dist/cjs/platform/linux/OneLinuxNavigationNativeComponent.native.js.map +7 -0
  196. package/dist/cjs/platform/linux/OneLinuxProgressBarNativeComponent.cjs +33 -0
  197. package/dist/cjs/platform/linux/OneLinuxProgressBarNativeComponent.native.cjs +33 -0
  198. package/dist/cjs/platform/linux/OneLinuxProgressBarNativeComponent.native.js +34 -0
  199. package/dist/cjs/platform/linux/OneLinuxProgressBarNativeComponent.native.js.map +7 -0
  200. package/dist/cjs/platform/linux/OneLinuxSecureFieldNativeComponent.cjs +52 -0
  201. package/dist/cjs/platform/linux/OneLinuxSecureFieldNativeComponent.native.cjs +52 -0
  202. package/dist/cjs/platform/linux/OneLinuxSecureFieldNativeComponent.native.js +53 -0
  203. package/dist/cjs/platform/linux/OneLinuxSecureFieldNativeComponent.native.js.map +7 -0
  204. package/dist/cjs/platform/linux/OneLinuxSegmentedControlNativeComponent.cjs +47 -0
  205. package/dist/cjs/platform/linux/OneLinuxSegmentedControlNativeComponent.native.cjs +47 -0
  206. package/dist/cjs/platform/linux/OneLinuxSegmentedControlNativeComponent.native.js +48 -0
  207. package/dist/cjs/platform/linux/OneLinuxSegmentedControlNativeComponent.native.js.map +7 -0
  208. package/dist/cjs/platform/linux/OneLinuxSliderNativeComponent.cjs +57 -0
  209. package/dist/cjs/platform/linux/OneLinuxSliderNativeComponent.native.cjs +57 -0
  210. package/dist/cjs/platform/linux/OneLinuxSliderNativeComponent.native.js +58 -0
  211. package/dist/cjs/platform/linux/OneLinuxSliderNativeComponent.native.js.map +7 -0
  212. package/dist/cjs/platform/linux/OneLinuxStepperNativeComponent.cjs +50 -0
  213. package/dist/cjs/platform/linux/OneLinuxStepperNativeComponent.native.cjs +50 -0
  214. package/dist/cjs/platform/linux/OneLinuxStepperNativeComponent.native.js +51 -0
  215. package/dist/cjs/platform/linux/OneLinuxStepperNativeComponent.native.js.map +7 -0
  216. package/dist/cjs/platform/linux/OneLinuxSwitchNativeComponent.cjs +45 -0
  217. package/dist/cjs/platform/linux/OneLinuxSwitchNativeComponent.native.cjs +45 -0
  218. package/dist/cjs/platform/linux/OneLinuxSwitchNativeComponent.native.js +46 -0
  219. package/dist/cjs/platform/linux/OneLinuxSwitchNativeComponent.native.js.map +7 -0
  220. package/dist/cjs/platform/linux/OneLinuxTextFieldNativeComponent.cjs +52 -0
  221. package/dist/cjs/platform/linux/OneLinuxTextFieldNativeComponent.native.cjs +52 -0
  222. package/dist/cjs/platform/linux/OneLinuxTextFieldNativeComponent.native.js +53 -0
  223. package/dist/cjs/platform/linux/OneLinuxTextFieldNativeComponent.native.js.map +7 -0
  224. package/dist/cjs/platform/linux/OneLinuxToggleNativeComponent.cjs +47 -0
  225. package/dist/cjs/platform/linux/OneLinuxToggleNativeComponent.native.cjs +47 -0
  226. package/dist/cjs/platform/linux/OneLinuxToggleNativeComponent.native.js +48 -0
  227. package/dist/cjs/platform/linux/OneLinuxToggleNativeComponent.native.js.map +7 -0
  228. package/dist/cjs/platform/linux/ProgressBar.linux.cjs +42 -0
  229. package/dist/cjs/platform/linux/ProgressBar.linux.native.cjs +45 -0
  230. package/dist/cjs/platform/linux/ProgressBar.linux.native.js +47 -0
  231. package/dist/cjs/platform/linux/ProgressBar.linux.native.js.map +1 -0
  232. package/dist/cjs/platform/linux/SecureField.linux.cjs +31 -0
  233. package/dist/cjs/platform/linux/SecureField.linux.native.cjs +33 -0
  234. package/dist/cjs/platform/linux/SecureField.linux.native.js +35 -0
  235. package/dist/cjs/platform/linux/SecureField.linux.native.js.map +1 -0
  236. package/dist/cjs/platform/linux/SegmentedControl.linux.cjs +39 -0
  237. package/dist/cjs/platform/linux/SegmentedControl.linux.native.cjs +49 -0
  238. package/dist/cjs/platform/linux/SegmentedControl.linux.native.js +51 -0
  239. package/dist/cjs/platform/linux/SegmentedControl.linux.native.js.map +1 -0
  240. package/dist/cjs/platform/linux/Slider.linux.cjs +71 -0
  241. package/dist/cjs/platform/linux/Slider.linux.native.cjs +78 -0
  242. package/dist/cjs/platform/linux/Slider.linux.native.js +80 -0
  243. package/dist/cjs/platform/linux/Slider.linux.native.js.map +1 -0
  244. package/dist/cjs/platform/linux/Stepper.linux.cjs +57 -0
  245. package/dist/cjs/platform/linux/Stepper.linux.native.cjs +62 -0
  246. package/dist/cjs/platform/linux/Stepper.linux.native.js +64 -0
  247. package/dist/cjs/platform/linux/Stepper.linux.native.js.map +1 -0
  248. package/dist/cjs/platform/linux/Switch.linux.cjs +47 -0
  249. package/dist/cjs/platform/linux/Switch.linux.native.cjs +52 -0
  250. package/dist/cjs/platform/linux/Switch.linux.native.js +54 -0
  251. package/dist/cjs/platform/linux/Switch.linux.native.js.map +1 -0
  252. package/dist/cjs/platform/linux/TextField.linux.cjs +59 -0
  253. package/dist/cjs/platform/linux/TextField.linux.native.cjs +68 -0
  254. package/dist/cjs/platform/linux/TextField.linux.native.js +70 -0
  255. package/dist/cjs/platform/linux/TextField.linux.native.js.map +1 -0
  256. package/dist/cjs/platform/linux/Toggle.linux.cjs +40 -0
  257. package/dist/cjs/platform/linux/Toggle.linux.native.cjs +50 -0
  258. package/dist/cjs/platform/linux/Toggle.linux.native.js +52 -0
  259. package/dist/cjs/platform/linux/Toggle.linux.native.js.map +1 -0
  260. package/dist/cjs/platform/linux/Window.linux.cjs +27 -0
  261. package/dist/cjs/platform/linux/Window.linux.native.cjs +29 -0
  262. package/dist/cjs/platform/linux/Window.linux.native.js +31 -0
  263. package/dist/cjs/platform/linux/Window.linux.native.js.map +1 -0
  264. package/dist/cjs/platform/mac/AppCommands.macos.cjs +25 -0
  265. package/dist/cjs/platform/mac/AppCommands.macos.native.cjs +27 -0
  266. package/dist/cjs/platform/mac/AppCommands.macos.native.js +29 -0
  267. package/dist/cjs/platform/mac/AppCommands.macos.native.js.map +1 -0
  268. package/dist/cjs/platform/mac/Button.macos.cjs +35 -0
  269. package/dist/cjs/platform/mac/Button.macos.native.cjs +40 -0
  270. package/dist/cjs/platform/mac/Button.macos.native.js +42 -0
  271. package/dist/cjs/platform/mac/Button.macos.native.js.map +1 -0
  272. package/dist/cjs/platform/mac/Image.macos.cjs +48 -0
  273. package/dist/cjs/platform/mac/Image.macos.native.cjs +51 -0
  274. package/dist/cjs/platform/mac/Image.macos.native.js +53 -0
  275. package/dist/cjs/platform/mac/Image.macos.native.js.map +1 -0
  276. package/dist/cjs/platform/mac/OneMacButtonNativeComponent.cjs +47 -0
  277. package/dist/cjs/platform/mac/OneMacButtonNativeComponent.native.cjs +47 -0
  278. package/dist/cjs/platform/mac/OneMacButtonNativeComponent.native.js +48 -0
  279. package/dist/cjs/platform/mac/OneMacButtonNativeComponent.native.js.map +7 -0
  280. package/dist/cjs/platform/mac/OneMacImageNativeComponent.cjs +35 -0
  281. package/dist/cjs/platform/mac/OneMacImageNativeComponent.native.cjs +35 -0
  282. package/dist/cjs/platform/mac/OneMacImageNativeComponent.native.js +36 -0
  283. package/dist/cjs/platform/mac/OneMacImageNativeComponent.native.js.map +7 -0
  284. package/dist/cjs/platform/mac/OneMacPopUpButtonNativeComponent.cjs +47 -0
  285. package/dist/cjs/platform/mac/OneMacPopUpButtonNativeComponent.native.cjs +47 -0
  286. package/dist/cjs/platform/mac/OneMacPopUpButtonNativeComponent.native.js +48 -0
  287. package/dist/cjs/platform/mac/OneMacPopUpButtonNativeComponent.native.js.map +7 -0
  288. package/dist/cjs/platform/mac/OneMacSegmentedControlNativeComponent.cjs +48 -0
  289. package/dist/cjs/platform/mac/OneMacSegmentedControlNativeComponent.native.cjs +48 -0
  290. package/dist/cjs/platform/mac/OneMacSegmentedControlNativeComponent.native.js +49 -0
  291. package/dist/cjs/platform/mac/OneMacSegmentedControlNativeComponent.native.js.map +7 -0
  292. package/dist/cjs/platform/mac/OneMacToggleNativeComponent.cjs +46 -0
  293. package/dist/cjs/platform/mac/OneMacToggleNativeComponent.native.cjs +46 -0
  294. package/dist/cjs/platform/mac/OneMacToggleNativeComponent.native.js +47 -0
  295. package/dist/cjs/platform/mac/OneMacToggleNativeComponent.native.js.map +7 -0
  296. package/dist/cjs/platform/mac/PopUpButton.macos.cjs +51 -0
  297. package/dist/cjs/platform/mac/PopUpButton.macos.native.cjs +56 -0
  298. package/dist/cjs/platform/mac/PopUpButton.macos.native.js +58 -0
  299. package/dist/cjs/platform/mac/PopUpButton.macos.native.js.map +1 -0
  300. package/dist/cjs/platform/mac/SegmentedControl.macos.cjs +38 -0
  301. package/dist/cjs/platform/mac/SegmentedControl.macos.native.cjs +47 -0
  302. package/dist/cjs/platform/mac/SegmentedControl.macos.native.js +49 -0
  303. package/dist/cjs/platform/mac/SegmentedControl.macos.native.js.map +1 -0
  304. package/dist/cjs/platform/mac/Toggle.macos.cjs +38 -0
  305. package/dist/cjs/platform/mac/Toggle.macos.native.cjs +47 -0
  306. package/dist/cjs/platform/mac/Toggle.macos.native.js +49 -0
  307. package/dist/cjs/platform/mac/Toggle.macos.native.js.map +1 -0
  308. package/dist/cjs/platform/specs/OneDOMHostNativeComponent.cjs +71 -0
  309. package/dist/cjs/platform/specs/OneDOMHostNativeComponent.native.cjs +71 -0
  310. package/dist/cjs/platform/specs/OneDOMHostNativeComponent.native.js +72 -0
  311. package/dist/cjs/platform/specs/OneDOMHostNativeComponent.native.js.map +7 -0
  312. package/dist/cjs/platform/split-view/split-view.linux.cjs +18 -0
  313. package/dist/cjs/platform/split-view/split-view.linux.native.cjs +20 -0
  314. package/dist/cjs/platform/split-view/split-view.linux.native.js +22 -0
  315. package/dist/cjs/platform/split-view/split-view.linux.native.js.map +1 -0
  316. package/dist/cjs/platform/split-view/split-view.macos.cjs +34 -0
  317. package/dist/cjs/platform/split-view/split-view.macos.native.cjs +37 -0
  318. package/dist/cjs/platform/split-view/split-view.macos.native.js +39 -0
  319. package/dist/cjs/platform/split-view/split-view.macos.native.js.map +1 -0
  320. package/dist/cjs/platform/store-review/index.native.cjs +1 -1
  321. package/dist/cjs/platform/store-review/index.native.js +1 -1
  322. package/dist/cjs/platform/store-review/index.native.js.map +1 -1
  323. package/dist/cjs/platform/ui/Image.linux.cjs +18 -0
  324. package/dist/cjs/platform/ui/Image.linux.native.cjs +20 -0
  325. package/dist/cjs/platform/ui/Image.linux.native.js +22 -0
  326. package/dist/cjs/platform/ui/Image.linux.native.js.map +1 -0
  327. package/dist/cjs/platform/ui/Image.macos.cjs +33 -0
  328. package/dist/cjs/platform/ui/Image.macos.native.cjs +36 -0
  329. package/dist/cjs/platform/ui/Image.macos.native.js +38 -0
  330. package/dist/cjs/platform/ui/Image.macos.native.js.map +1 -0
  331. package/dist/cjs/router/getRoutes.cjs +2 -0
  332. package/dist/cjs/router/getRoutes.native.cjs +2 -0
  333. package/dist/cjs/router/getRoutes.native.js +2 -0
  334. package/dist/cjs/router/getRoutes.native.js.map +1 -1
  335. package/dist/cjs/router/router.cjs +57 -31
  336. package/dist/cjs/router/router.native.cjs +20 -4
  337. package/dist/cjs/router/router.native.js +20 -4
  338. package/dist/cjs/router/router.native.js.map +1 -1
  339. package/dist/cjs/searchParams.cjs +102 -0
  340. package/dist/cjs/searchParams.native.cjs +194 -0
  341. package/dist/cjs/searchParams.native.js +196 -0
  342. package/dist/cjs/searchParams.native.js.map +1 -0
  343. package/dist/cjs/server/oneServe.cjs +15 -3
  344. package/dist/cjs/server/oneServe.native.cjs +16 -3
  345. package/dist/cjs/server/oneServe.native.js +16 -3
  346. package/dist/cjs/server/oneServe.native.js.map +1 -1
  347. package/dist/cjs/server/workerHandler.cjs +16 -3
  348. package/dist/cjs/server/workerHandler.native.cjs +17 -3
  349. package/dist/cjs/server/workerHandler.native.js +17 -3
  350. package/dist/cjs/server/workerHandler.native.js.map +1 -1
  351. package/dist/cjs/standardSchema.cjs +36 -0
  352. package/dist/cjs/standardSchema.native.cjs +39 -0
  353. package/dist/cjs/standardSchema.native.js +41 -0
  354. package/dist/cjs/standardSchema.native.js.map +1 -0
  355. package/dist/cjs/typed-routes/generateRouteTypes.cjs +26 -1
  356. package/dist/cjs/typed-routes/generateRouteTypes.native.cjs +68 -1
  357. package/dist/cjs/typed-routes/generateRouteTypes.native.js +68 -1
  358. package/dist/cjs/typed-routes/generateRouteTypes.native.js.map +1 -1
  359. package/dist/cjs/typed-routes/getTypedRoutesDeclarationFile.cjs +27 -10
  360. package/dist/cjs/typed-routes/getTypedRoutesDeclarationFile.native.cjs +35 -9
  361. package/dist/cjs/typed-routes/getTypedRoutesDeclarationFile.native.js +35 -9
  362. package/dist/cjs/typed-routes/getTypedRoutesDeclarationFile.native.js.map +1 -1
  363. package/dist/cjs/typed-routes/searchParamSchemas.cjs +316 -0
  364. package/dist/cjs/typed-routes/searchParamSchemas.native.cjs +527 -0
  365. package/dist/cjs/typed-routes/searchParamSchemas.native.js +529 -0
  366. package/dist/cjs/typed-routes/searchParamSchemas.native.js.map +1 -0
  367. package/dist/cjs/typed-routes/searchSchemaEntries.cjs +34 -0
  368. package/dist/cjs/typed-routes/searchSchemaEntries.native.cjs +38 -0
  369. package/dist/cjs/typed-routes/searchSchemaEntries.native.js +40 -0
  370. package/dist/cjs/typed-routes/searchSchemaEntries.native.js.map +1 -0
  371. package/dist/cjs/useLoader.cjs +40 -30
  372. package/dist/cjs/useLoader.native.cjs +51 -37
  373. package/dist/cjs/useLoader.native.js +51 -37
  374. package/dist/cjs/useLoader.native.js.map +1 -1
  375. package/dist/cjs/utils/cleanUrl.cjs +31 -3
  376. package/dist/cjs/utils/cleanUrl.native.cjs +31 -3
  377. package/dist/cjs/utils/cleanUrl.native.js +31 -3
  378. package/dist/cjs/utils/cleanUrl.native.js.map +1 -1
  379. package/dist/cjs/validateParams.cjs +3 -5
  380. package/dist/cjs/validateParams.native.cjs +3 -6
  381. package/dist/cjs/validateParams.native.js +3 -6
  382. package/dist/cjs/validateParams.native.js.map +1 -1
  383. package/dist/cjs/{validateSearch.cjs → validateSearchParams.cjs} +21 -14
  384. package/dist/cjs/{validateSearch.native.cjs → validateSearchParams.native.cjs} +21 -15
  385. package/dist/cjs/{validateSearch.native.js → validateSearchParams.native.js} +22 -16
  386. package/dist/cjs/validateSearchParams.native.js.map +1 -0
  387. package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.cjs +36 -2
  388. package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.native.cjs +36 -2
  389. package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.native.js +36 -2
  390. package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.native.js.map +1 -1
  391. package/dist/cjs/vite/dom/browser.cjs +172 -0
  392. package/dist/cjs/vite/dom/browser.native.cjs +220 -0
  393. package/dist/cjs/vite/dom/browser.native.js +222 -0
  394. package/dist/cjs/vite/dom/browser.native.js.map +1 -0
  395. package/dist/cjs/vite/dom/directive.cjs +76 -0
  396. package/dist/cjs/vite/dom/directive.native.cjs +135 -0
  397. package/dist/cjs/vite/dom/directive.native.js +137 -0
  398. package/dist/cjs/vite/dom/directive.native.js.map +1 -0
  399. package/dist/cjs/vite/dom/registry.cjs +71 -0
  400. package/dist/cjs/vite/dom/registry.native.cjs +184 -0
  401. package/dist/cjs/vite/dom/registry.native.js +186 -0
  402. package/dist/cjs/vite/dom/registry.native.js.map +1 -0
  403. package/dist/cjs/vite/one.cjs +28 -3
  404. package/dist/cjs/vite/one.native.cjs +35 -10
  405. package/dist/cjs/vite/one.native.js +35 -10
  406. package/dist/cjs/vite/one.native.js.map +1 -1
  407. package/dist/cjs/vite/plugins/clientTreeShakePlugin.cjs +1 -1
  408. package/dist/cjs/vite/plugins/clientTreeShakePlugin.native.cjs +1 -1
  409. package/dist/cjs/vite/plugins/clientTreeShakePlugin.native.js +1 -1
  410. package/dist/cjs/vite/plugins/clientTreeShakePlugin.native.js.map +1 -1
  411. package/dist/cjs/vite/plugins/environmentGuardPlugin.cjs +6 -1
  412. package/dist/cjs/vite/plugins/environmentGuardPlugin.native.cjs +6 -1
  413. package/dist/cjs/vite/plugins/environmentGuardPlugin.native.js +6 -1
  414. package/dist/cjs/vite/plugins/environmentGuardPlugin.native.js.map +1 -1
  415. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.cjs +11 -7
  416. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.cjs +13 -7
  417. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js +13 -7
  418. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js.map +1 -1
  419. package/dist/cjs/vite/plugins/generateFileSystemRouteTypesPlugin.cjs +8 -2
  420. package/dist/cjs/vite/plugins/generateFileSystemRouteTypesPlugin.native.cjs +8 -2
  421. package/dist/cjs/vite/plugins/generateFileSystemRouteTypesPlugin.native.js +8 -2
  422. package/dist/cjs/vite/plugins/generateFileSystemRouteTypesPlugin.native.js.map +1 -1
  423. package/dist/cjs/vite/plugins/iosLinkSetPlugin.cjs +63 -0
  424. package/dist/cjs/vite/plugins/iosLinkSetPlugin.native.cjs +69 -0
  425. package/dist/cjs/vite/plugins/iosLinkSetPlugin.native.js +71 -0
  426. package/dist/cjs/vite/plugins/iosLinkSetPlugin.native.js.map +1 -0
  427. package/dist/cjs/vite/plugins/loaderSearchSchemasPlugin.cjs +67 -0
  428. package/dist/cjs/vite/plugins/loaderSearchSchemasPlugin.native.cjs +107 -0
  429. package/dist/cjs/vite/plugins/loaderSearchSchemasPlugin.native.js +109 -0
  430. package/dist/cjs/vite/plugins/loaderSearchSchemasPlugin.native.js.map +1 -0
  431. package/dist/cjs/vite/plugins/useDomPlugin.cjs +128 -22
  432. package/dist/cjs/vite/plugins/useDomPlugin.native.cjs +160 -22
  433. package/dist/cjs/vite/plugins/useDomPlugin.native.js +160 -22
  434. package/dist/cjs/vite/plugins/useDomPlugin.native.js.map +1 -1
  435. package/dist/esm/cli/iosLinkSet.mjs +83 -0
  436. package/dist/esm/cli/iosLinkSet.mjs.map +1 -0
  437. package/dist/esm/cli/iosLinkSet.native.js +90 -0
  438. package/dist/esm/cli/iosLinkSet.native.js.map +1 -0
  439. package/dist/esm/cli/iosLinkSetAnalysis.mjs +303 -0
  440. package/dist/esm/cli/iosLinkSetAnalysis.mjs.map +1 -0
  441. package/dist/esm/cli/iosLinkSetAnalysis.native.js +686 -0
  442. package/dist/esm/cli/iosLinkSetAnalysis.native.js.map +1 -0
  443. package/dist/esm/cli/prebuild.mjs +5 -1
  444. package/dist/esm/cli/prebuild.mjs.map +1 -1
  445. package/dist/esm/cli/prebuild.native.js +4 -2
  446. package/dist/esm/cli/prebuild.native.js.map +1 -1
  447. package/dist/esm/cli/updatesPublish.mjs +15 -11
  448. package/dist/esm/cli/updatesPublish.mjs.map +1 -1
  449. package/dist/esm/cli/updatesPublish.native.js +44 -21
  450. package/dist/esm/cli/updatesPublish.native.js.map +1 -1
  451. package/dist/esm/cli.mjs +4 -2
  452. package/dist/esm/cli.mjs.map +1 -1
  453. package/dist/esm/cli.native.js +4 -2
  454. package/dist/esm/cli.native.js.map +1 -1
  455. package/dist/esm/createApp.mjs +8 -0
  456. package/dist/esm/createApp.mjs.map +1 -1
  457. package/dist/esm/createHandleRequest.mjs +4 -17
  458. package/dist/esm/createHandleRequest.mjs.map +1 -1
  459. package/dist/esm/createHandleRequest.native.js +6 -19
  460. package/dist/esm/createHandleRequest.native.js.map +1 -1
  461. package/dist/esm/dom/browserBridge.mjs +158 -0
  462. package/dist/esm/dom/browserBridge.mjs.map +1 -0
  463. package/dist/esm/dom/browserBridge.native.js +269 -0
  464. package/dist/esm/dom/browserBridge.native.js.map +1 -0
  465. package/dist/esm/dom/client.mjs +49 -0
  466. package/dist/esm/dom/client.mjs.map +1 -0
  467. package/dist/esm/dom/client.native.js +59 -0
  468. package/dist/esm/dom/client.native.js.map +1 -0
  469. package/dist/esm/dom/context.mjs +6 -0
  470. package/dist/esm/dom/context.mjs.map +1 -0
  471. package/dist/esm/dom/context.native.js +6 -0
  472. package/dist/esm/dom/context.native.js.map +1 -0
  473. package/dist/esm/dom/host.native.js +125 -0
  474. package/dist/esm/dom/host.native.js.map +1 -0
  475. package/dist/esm/dom/index.mjs +69 -0
  476. package/dist/esm/dom/index.mjs.map +1 -0
  477. package/dist/esm/dom/index.native.js +115 -0
  478. package/dist/esm/dom/index.native.js.map +1 -0
  479. package/dist/esm/dom/measure.mjs +31 -0
  480. package/dist/esm/dom/measure.mjs.map +1 -0
  481. package/dist/esm/dom/measure.native.js +33 -0
  482. package/dist/esm/dom/measure.native.js.map +1 -0
  483. package/dist/esm/dom/nativeBridge.mjs +116 -0
  484. package/dist/esm/dom/nativeBridge.mjs.map +1 -0
  485. package/dist/esm/dom/nativeBridge.native.js +202 -0
  486. package/dist/esm/dom/nativeBridge.native.js.map +1 -0
  487. package/dist/esm/dom/peer.mjs +129 -0
  488. package/dist/esm/dom/peer.mjs.map +1 -0
  489. package/dist/esm/dom/peer.native.js +206 -0
  490. package/dist/esm/dom/peer.native.js.map +1 -0
  491. package/dist/esm/dom/protocol.mjs +162 -0
  492. package/dist/esm/dom/protocol.mjs.map +1 -0
  493. package/dist/esm/dom/protocol.native.js +184 -0
  494. package/dist/esm/dom/protocol.native.js.map +1 -0
  495. package/dist/esm/dom/serialize.mjs +114 -0
  496. package/dist/esm/dom/serialize.mjs.map +1 -0
  497. package/dist/esm/dom/serialize.native.js +256 -0
  498. package/dist/esm/dom/serialize.native.js.map +1 -0
  499. package/dist/esm/dom/types.mjs +0 -0
  500. package/dist/esm/dom/types.native.js +0 -0
  501. package/dist/esm/fork/getPathFromState.mjs +9 -1
  502. package/dist/esm/fork/getPathFromState.mjs.map +1 -1
  503. package/dist/esm/fork/getPathFromState.native.js +48 -4
  504. package/dist/esm/fork/getPathFromState.native.js.map +1 -1
  505. package/dist/esm/hooks.mjs +51 -2
  506. package/dist/esm/hooks.mjs.map +1 -1
  507. package/dist/esm/hooks.native.js +56 -3
  508. package/dist/esm/hooks.native.js.map +1 -1
  509. package/dist/esm/index.js +2 -1
  510. package/dist/esm/index.mjs +2 -1
  511. package/dist/esm/index.native.js +2 -1
  512. package/dist/esm/layouts/Tabs.linux.mjs +26 -0
  513. package/dist/esm/layouts/Tabs.linux.mjs.map +1 -0
  514. package/dist/esm/layouts/Tabs.linux.native.js +26 -0
  515. package/dist/esm/layouts/Tabs.linux.native.js.map +1 -0
  516. package/dist/esm/layouts/stack-navigator-desktop.mjs +6 -0
  517. package/dist/esm/layouts/stack-navigator-desktop.mjs.map +1 -0
  518. package/dist/esm/layouts/stack-navigator-desktop.native.js +6 -0
  519. package/dist/esm/layouts/stack-navigator-desktop.native.js.map +1 -0
  520. package/dist/esm/layouts/stack-navigator.linux.mjs +17 -0
  521. package/dist/esm/layouts/stack-navigator.linux.mjs.map +1 -0
  522. package/dist/esm/layouts/stack-navigator.linux.native.js +17 -0
  523. package/dist/esm/layouts/stack-navigator.linux.native.js.map +1 -0
  524. package/dist/esm/layouts/stack-navigator.macos.mjs +7 -0
  525. package/dist/esm/layouts/stack-navigator.macos.mjs.map +1 -0
  526. package/dist/esm/layouts/stack-navigator.macos.native.js +7 -0
  527. package/dist/esm/layouts/stack-navigator.macos.native.js.map +1 -0
  528. package/dist/esm/layouts/stack-utils/StackToolbarBottomHost.linux.mjs +1 -0
  529. package/dist/esm/layouts/stack-utils/StackToolbarBottomHost.linux.native.js +1 -0
  530. package/dist/esm/layouts/stack-utils/StackToolbarBottomHost.macos.mjs +11 -0
  531. package/dist/esm/layouts/stack-utils/StackToolbarBottomHost.macos.mjs.map +1 -0
  532. package/dist/esm/layouts/stack-utils/StackToolbarBottomHost.macos.native.js +12 -0
  533. package/dist/esm/layouts/stack-utils/StackToolbarBottomHost.macos.native.js.map +1 -0
  534. package/dist/esm/link/Link.mjs +4 -3
  535. package/dist/esm/link/Link.mjs.map +1 -1
  536. package/dist/esm/link/Link.native.js +4 -3
  537. package/dist/esm/link/Link.native.js.map +1 -1
  538. package/dist/esm/loaderResponseToModule.mjs +21 -0
  539. package/dist/esm/loaderResponseToModule.mjs.map +1 -0
  540. package/dist/esm/loaderResponseToModule.native.js +22 -0
  541. package/dist/esm/loaderResponseToModule.native.js.map +1 -0
  542. package/dist/esm/loaderSearchParams.mjs +76 -0
  543. package/dist/esm/loaderSearchParams.mjs.map +1 -0
  544. package/dist/esm/loaderSearchParams.native.js +114 -0
  545. package/dist/esm/loaderSearchParams.native.js.map +1 -0
  546. package/dist/esm/one-shared.mjs +110 -0
  547. package/dist/esm/one-shared.mjs.map +1 -0
  548. package/dist/esm/one-shared.native.js +111 -0
  549. package/dist/esm/one-shared.native.js.map +1 -0
  550. package/dist/esm/one.linux.mjs +38 -0
  551. package/dist/esm/one.linux.mjs.map +1 -0
  552. package/dist/esm/one.linux.native.js +38 -0
  553. package/dist/esm/one.linux.native.js.map +1 -0
  554. package/dist/esm/one.macos.mjs +26 -0
  555. package/dist/esm/one.macos.mjs.map +1 -0
  556. package/dist/esm/one.macos.native.js +26 -0
  557. package/dist/esm/one.macos.native.js.map +1 -0
  558. package/dist/esm/one.mjs +1 -110
  559. package/dist/esm/one.native.js +1 -111
  560. package/dist/esm/platform/adaptive/fixed.mjs +22 -0
  561. package/dist/esm/platform/adaptive/fixed.mjs.map +1 -0
  562. package/dist/esm/platform/adaptive/fixed.native.js +22 -0
  563. package/dist/esm/platform/adaptive/fixed.native.js.map +1 -0
  564. package/dist/esm/platform/adaptive/index.linux.mjs +1 -0
  565. package/dist/esm/platform/adaptive/index.linux.native.js +1 -0
  566. package/dist/esm/platform/adaptive/index.macos.mjs +6 -0
  567. package/dist/esm/platform/adaptive/index.macos.native.js +6 -0
  568. package/dist/esm/platform/adaptive/index.mjs +2 -21
  569. package/dist/esm/platform/controlTypes.mjs +0 -0
  570. package/dist/esm/platform/controlTypes.native.js +0 -0
  571. package/dist/esm/platform/desktop/appCommandTypes.mjs +0 -0
  572. package/dist/esm/platform/desktop/appCommandTypes.native.js +0 -0
  573. package/dist/esm/platform/desktop/createAppCommands.mjs +36 -0
  574. package/dist/esm/platform/desktop/createAppCommands.mjs.map +1 -0
  575. package/dist/esm/platform/desktop/createAppCommands.native.js +39 -0
  576. package/dist/esm/platform/desktop/createAppCommands.native.js.map +1 -0
  577. package/dist/esm/platform/desktop/createControls.mjs +42 -0
  578. package/dist/esm/platform/desktop/createControls.mjs.map +1 -0
  579. package/dist/esm/platform/desktop/createControls.native.js +44 -0
  580. package/dist/esm/platform/desktop/createControls.native.js.map +1 -0
  581. package/dist/esm/platform/linux/AppCommands.linux.mjs +6 -0
  582. package/dist/esm/platform/linux/AppCommands.linux.mjs.map +1 -0
  583. package/dist/esm/platform/linux/AppCommands.linux.native.js +6 -0
  584. package/dist/esm/platform/linux/AppCommands.linux.native.js.map +1 -0
  585. package/dist/esm/platform/linux/Button.linux.mjs +16 -0
  586. package/dist/esm/platform/linux/Button.linux.mjs.map +1 -0
  587. package/dist/esm/platform/linux/Button.linux.native.js +22 -0
  588. package/dist/esm/platform/linux/Button.linux.native.js.map +1 -0
  589. package/dist/esm/platform/linux/DropDown.linux.mjs +49 -0
  590. package/dist/esm/platform/linux/DropDown.linux.mjs.map +1 -0
  591. package/dist/esm/platform/linux/DropDown.linux.native.js +64 -0
  592. package/dist/esm/platform/linux/DropDown.linux.native.js.map +1 -0
  593. package/dist/esm/platform/linux/NavigationView.linux.mjs +89 -0
  594. package/dist/esm/platform/linux/NavigationView.linux.mjs.map +1 -0
  595. package/dist/esm/platform/linux/NavigationView.linux.native.js +103 -0
  596. package/dist/esm/platform/linux/NavigationView.linux.native.js.map +1 -0
  597. package/dist/esm/platform/linux/OneLinuxButtonNativeComponent.mjs +28 -0
  598. package/dist/esm/platform/linux/OneLinuxButtonNativeComponent.mjs.map +7 -0
  599. package/dist/esm/platform/linux/OneLinuxButtonNativeComponent.native.js +28 -0
  600. package/dist/esm/platform/linux/OneLinuxButtonNativeComponent.native.js.map +7 -0
  601. package/dist/esm/platform/linux/OneLinuxDropDownNativeComponent.mjs +37 -0
  602. package/dist/esm/platform/linux/OneLinuxDropDownNativeComponent.mjs.map +7 -0
  603. package/dist/esm/platform/linux/OneLinuxDropDownNativeComponent.native.js +37 -0
  604. package/dist/esm/platform/linux/OneLinuxDropDownNativeComponent.native.js.map +7 -0
  605. package/dist/esm/platform/linux/OneLinuxNavigationNativeComponent.mjs +37 -0
  606. package/dist/esm/platform/linux/OneLinuxNavigationNativeComponent.mjs.map +7 -0
  607. package/dist/esm/platform/linux/OneLinuxNavigationNativeComponent.native.js +37 -0
  608. package/dist/esm/platform/linux/OneLinuxNavigationNativeComponent.native.js.map +7 -0
  609. package/dist/esm/platform/linux/OneLinuxProgressBarNativeComponent.mjs +15 -0
  610. package/dist/esm/platform/linux/OneLinuxProgressBarNativeComponent.mjs.map +7 -0
  611. package/dist/esm/platform/linux/OneLinuxProgressBarNativeComponent.native.js +15 -0
  612. package/dist/esm/platform/linux/OneLinuxProgressBarNativeComponent.native.js.map +7 -0
  613. package/dist/esm/platform/linux/OneLinuxSecureFieldNativeComponent.mjs +34 -0
  614. package/dist/esm/platform/linux/OneLinuxSecureFieldNativeComponent.mjs.map +7 -0
  615. package/dist/esm/platform/linux/OneLinuxSecureFieldNativeComponent.native.js +34 -0
  616. package/dist/esm/platform/linux/OneLinuxSecureFieldNativeComponent.native.js.map +7 -0
  617. package/dist/esm/platform/linux/OneLinuxSegmentedControlNativeComponent.mjs +29 -0
  618. package/dist/esm/platform/linux/OneLinuxSegmentedControlNativeComponent.mjs.map +7 -0
  619. package/dist/esm/platform/linux/OneLinuxSegmentedControlNativeComponent.native.js +29 -0
  620. package/dist/esm/platform/linux/OneLinuxSegmentedControlNativeComponent.native.js.map +7 -0
  621. package/dist/esm/platform/linux/OneLinuxSliderNativeComponent.mjs +39 -0
  622. package/dist/esm/platform/linux/OneLinuxSliderNativeComponent.mjs.map +7 -0
  623. package/dist/esm/platform/linux/OneLinuxSliderNativeComponent.native.js +39 -0
  624. package/dist/esm/platform/linux/OneLinuxSliderNativeComponent.native.js.map +7 -0
  625. package/dist/esm/platform/linux/OneLinuxStepperNativeComponent.mjs +32 -0
  626. package/dist/esm/platform/linux/OneLinuxStepperNativeComponent.mjs.map +7 -0
  627. package/dist/esm/platform/linux/OneLinuxStepperNativeComponent.native.js +32 -0
  628. package/dist/esm/platform/linux/OneLinuxStepperNativeComponent.native.js.map +7 -0
  629. package/dist/esm/platform/linux/OneLinuxSwitchNativeComponent.mjs +27 -0
  630. package/dist/esm/platform/linux/OneLinuxSwitchNativeComponent.mjs.map +7 -0
  631. package/dist/esm/platform/linux/OneLinuxSwitchNativeComponent.native.js +27 -0
  632. package/dist/esm/platform/linux/OneLinuxSwitchNativeComponent.native.js.map +7 -0
  633. package/dist/esm/platform/linux/OneLinuxTextFieldNativeComponent.mjs +34 -0
  634. package/dist/esm/platform/linux/OneLinuxTextFieldNativeComponent.mjs.map +7 -0
  635. package/dist/esm/platform/linux/OneLinuxTextFieldNativeComponent.native.js +34 -0
  636. package/dist/esm/platform/linux/OneLinuxTextFieldNativeComponent.native.js.map +7 -0
  637. package/dist/esm/platform/linux/OneLinuxToggleNativeComponent.mjs +29 -0
  638. package/dist/esm/platform/linux/OneLinuxToggleNativeComponent.mjs.map +7 -0
  639. package/dist/esm/platform/linux/OneLinuxToggleNativeComponent.native.js +29 -0
  640. package/dist/esm/platform/linux/OneLinuxToggleNativeComponent.native.js.map +7 -0
  641. package/dist/esm/platform/linux/ProgressBar.linux.mjs +17 -0
  642. package/dist/esm/platform/linux/ProgressBar.linux.mjs.map +1 -0
  643. package/dist/esm/platform/linux/ProgressBar.linux.native.js +18 -0
  644. package/dist/esm/platform/linux/ProgressBar.linux.native.js.map +1 -0
  645. package/dist/esm/platform/linux/SecureField.linux.mjs +12 -0
  646. package/dist/esm/platform/linux/SecureField.linux.mjs.map +1 -0
  647. package/dist/esm/platform/linux/SecureField.linux.native.js +12 -0
  648. package/dist/esm/platform/linux/SecureField.linux.native.js.map +1 -0
  649. package/dist/esm/platform/linux/SegmentedControl.linux.mjs +14 -0
  650. package/dist/esm/platform/linux/SegmentedControl.linux.mjs.map +1 -0
  651. package/dist/esm/platform/linux/SegmentedControl.linux.native.js +22 -0
  652. package/dist/esm/platform/linux/SegmentedControl.linux.native.js.map +1 -0
  653. package/dist/esm/platform/linux/Slider.linux.mjs +46 -0
  654. package/dist/esm/platform/linux/Slider.linux.mjs.map +1 -0
  655. package/dist/esm/platform/linux/Slider.linux.native.js +51 -0
  656. package/dist/esm/platform/linux/Slider.linux.native.js.map +1 -0
  657. package/dist/esm/platform/linux/Stepper.linux.mjs +32 -0
  658. package/dist/esm/platform/linux/Stepper.linux.mjs.map +1 -0
  659. package/dist/esm/platform/linux/Stepper.linux.native.js +35 -0
  660. package/dist/esm/platform/linux/Stepper.linux.native.js.map +1 -0
  661. package/dist/esm/platform/linux/Switch.linux.mjs +22 -0
  662. package/dist/esm/platform/linux/Switch.linux.mjs.map +1 -0
  663. package/dist/esm/platform/linux/Switch.linux.native.js +25 -0
  664. package/dist/esm/platform/linux/Switch.linux.native.js.map +1 -0
  665. package/dist/esm/platform/linux/TextField.linux.mjs +31 -0
  666. package/dist/esm/platform/linux/TextField.linux.mjs.map +1 -0
  667. package/dist/esm/platform/linux/TextField.linux.native.js +38 -0
  668. package/dist/esm/platform/linux/TextField.linux.native.js.map +1 -0
  669. package/dist/esm/platform/linux/Toggle.linux.mjs +15 -0
  670. package/dist/esm/platform/linux/Toggle.linux.mjs.map +1 -0
  671. package/dist/esm/platform/linux/Toggle.linux.native.js +23 -0
  672. package/dist/esm/platform/linux/Toggle.linux.native.js.map +1 -0
  673. package/dist/esm/platform/linux/Window.linux.mjs +8 -0
  674. package/dist/esm/platform/linux/Window.linux.mjs.map +1 -0
  675. package/dist/esm/platform/linux/Window.linux.native.js +8 -0
  676. package/dist/esm/platform/linux/Window.linux.native.js.map +1 -0
  677. package/dist/esm/platform/mac/AppCommands.macos.mjs +6 -0
  678. package/dist/esm/platform/mac/AppCommands.macos.mjs.map +1 -0
  679. package/dist/esm/platform/mac/AppCommands.macos.native.js +6 -0
  680. package/dist/esm/platform/mac/AppCommands.macos.native.js.map +1 -0
  681. package/dist/esm/platform/mac/Button.macos.mjs +10 -0
  682. package/dist/esm/platform/mac/Button.macos.mjs.map +1 -0
  683. package/dist/esm/platform/mac/Button.macos.native.js +13 -0
  684. package/dist/esm/platform/mac/Button.macos.native.js.map +1 -0
  685. package/dist/esm/platform/mac/Image.macos.mjs +23 -0
  686. package/dist/esm/platform/mac/Image.macos.mjs.map +1 -0
  687. package/dist/esm/platform/mac/Image.macos.native.js +24 -0
  688. package/dist/esm/platform/mac/Image.macos.native.js.map +1 -0
  689. package/dist/esm/platform/mac/OneMacButtonNativeComponent.mjs +29 -0
  690. package/dist/esm/platform/mac/OneMacButtonNativeComponent.mjs.map +7 -0
  691. package/dist/esm/platform/mac/OneMacButtonNativeComponent.native.js +29 -0
  692. package/dist/esm/platform/mac/OneMacButtonNativeComponent.native.js.map +7 -0
  693. package/dist/esm/platform/mac/OneMacImageNativeComponent.mjs +17 -0
  694. package/dist/esm/platform/mac/OneMacImageNativeComponent.mjs.map +7 -0
  695. package/dist/esm/platform/mac/OneMacImageNativeComponent.native.js +17 -0
  696. package/dist/esm/platform/mac/OneMacImageNativeComponent.native.js.map +7 -0
  697. package/dist/esm/platform/mac/OneMacPopUpButtonNativeComponent.mjs +29 -0
  698. package/dist/esm/platform/mac/OneMacPopUpButtonNativeComponent.mjs.map +7 -0
  699. package/dist/esm/platform/mac/OneMacPopUpButtonNativeComponent.native.js +29 -0
  700. package/dist/esm/platform/mac/OneMacPopUpButtonNativeComponent.native.js.map +7 -0
  701. package/dist/esm/platform/mac/OneMacSegmentedControlNativeComponent.mjs +30 -0
  702. package/dist/esm/platform/mac/OneMacSegmentedControlNativeComponent.mjs.map +7 -0
  703. package/dist/esm/platform/mac/OneMacSegmentedControlNativeComponent.native.js +30 -0
  704. package/dist/esm/platform/mac/OneMacSegmentedControlNativeComponent.native.js.map +7 -0
  705. package/dist/esm/platform/mac/OneMacToggleNativeComponent.mjs +28 -0
  706. package/dist/esm/platform/mac/OneMacToggleNativeComponent.mjs.map +7 -0
  707. package/dist/esm/platform/mac/OneMacToggleNativeComponent.native.js +28 -0
  708. package/dist/esm/platform/mac/OneMacToggleNativeComponent.native.js.map +7 -0
  709. package/dist/esm/platform/mac/PopUpButton.macos.mjs +26 -0
  710. package/dist/esm/platform/mac/PopUpButton.macos.mjs.map +1 -0
  711. package/dist/esm/platform/mac/PopUpButton.macos.native.js +29 -0
  712. package/dist/esm/platform/mac/PopUpButton.macos.native.js.map +1 -0
  713. package/dist/esm/platform/mac/SegmentedControl.macos.mjs +13 -0
  714. package/dist/esm/platform/mac/SegmentedControl.macos.mjs.map +1 -0
  715. package/dist/esm/platform/mac/SegmentedControl.macos.native.js +20 -0
  716. package/dist/esm/platform/mac/SegmentedControl.macos.native.js.map +1 -0
  717. package/dist/esm/platform/mac/Toggle.macos.mjs +13 -0
  718. package/dist/esm/platform/mac/Toggle.macos.mjs.map +1 -0
  719. package/dist/esm/platform/mac/Toggle.macos.native.js +20 -0
  720. package/dist/esm/platform/mac/Toggle.macos.native.js.map +1 -0
  721. package/dist/esm/platform/specs/OneDOMHostNativeComponent.mjs +53 -0
  722. package/dist/esm/platform/specs/OneDOMHostNativeComponent.mjs.map +7 -0
  723. package/dist/esm/platform/specs/OneDOMHostNativeComponent.native.js +53 -0
  724. package/dist/esm/platform/specs/OneDOMHostNativeComponent.native.js.map +7 -0
  725. package/dist/esm/platform/split-view/split-view.linux.mjs +1 -0
  726. package/dist/esm/platform/split-view/split-view.linux.native.js +1 -0
  727. package/dist/esm/platform/split-view/split-view.macos.mjs +15 -0
  728. package/dist/esm/platform/split-view/split-view.macos.mjs.map +1 -0
  729. package/dist/esm/platform/split-view/split-view.macos.native.js +16 -0
  730. package/dist/esm/platform/split-view/split-view.macos.native.js.map +1 -0
  731. package/dist/esm/platform/store-review/index.native.js +1 -1
  732. package/dist/esm/platform/ui/Image.linux.mjs +1 -0
  733. package/dist/esm/platform/ui/Image.linux.native.js +1 -0
  734. package/dist/esm/platform/ui/Image.macos.mjs +14 -0
  735. package/dist/esm/platform/ui/Image.macos.mjs.map +1 -0
  736. package/dist/esm/platform/ui/Image.macos.native.js +15 -0
  737. package/dist/esm/platform/ui/Image.macos.native.js.map +1 -0
  738. package/dist/esm/router/getRoutes.mjs +2 -0
  739. package/dist/esm/router/getRoutes.mjs.map +1 -1
  740. package/dist/esm/router/getRoutes.native.js +2 -0
  741. package/dist/esm/router/getRoutes.native.js.map +1 -1
  742. package/dist/esm/router/router.mjs +56 -33
  743. package/dist/esm/router/router.mjs.map +1 -1
  744. package/dist/esm/router/router.native.js +18 -4
  745. package/dist/esm/router/router.native.js.map +1 -1
  746. package/dist/esm/searchParams.mjs +75 -0
  747. package/dist/esm/searchParams.mjs.map +1 -0
  748. package/dist/esm/searchParams.native.js +165 -0
  749. package/dist/esm/searchParams.native.js.map +1 -0
  750. package/dist/esm/server/oneServe.mjs +15 -3
  751. package/dist/esm/server/oneServe.mjs.map +1 -1
  752. package/dist/esm/server/oneServe.native.js +16 -3
  753. package/dist/esm/server/oneServe.native.js.map +1 -1
  754. package/dist/esm/server/workerHandler.mjs +16 -3
  755. package/dist/esm/server/workerHandler.mjs.map +1 -1
  756. package/dist/esm/server/workerHandler.native.js +17 -3
  757. package/dist/esm/server/workerHandler.native.js.map +1 -1
  758. package/dist/esm/standardSchema.mjs +13 -0
  759. package/dist/esm/standardSchema.mjs.map +1 -0
  760. package/dist/esm/standardSchema.native.js +14 -0
  761. package/dist/esm/standardSchema.native.js.map +1 -0
  762. package/dist/esm/typed-routes/generateRouteTypes.mjs +27 -2
  763. package/dist/esm/typed-routes/generateRouteTypes.mjs.map +1 -1
  764. package/dist/esm/typed-routes/generateRouteTypes.native.js +69 -2
  765. package/dist/esm/typed-routes/generateRouteTypes.native.js.map +1 -1
  766. package/dist/esm/typed-routes/getTypedRoutesDeclarationFile.mjs +27 -10
  767. package/dist/esm/typed-routes/getTypedRoutesDeclarationFile.mjs.map +1 -1
  768. package/dist/esm/typed-routes/getTypedRoutesDeclarationFile.native.js +35 -9
  769. package/dist/esm/typed-routes/getTypedRoutesDeclarationFile.native.js.map +1 -1
  770. package/dist/esm/typed-routes/searchParamSchemas.mjs +297 -0
  771. package/dist/esm/typed-routes/searchParamSchemas.mjs.map +1 -0
  772. package/dist/esm/typed-routes/searchParamSchemas.native.js +506 -0
  773. package/dist/esm/typed-routes/searchParamSchemas.native.js.map +1 -0
  774. package/dist/esm/typed-routes/searchSchemaEntries.mjs +15 -0
  775. package/dist/esm/typed-routes/searchSchemaEntries.mjs.map +1 -0
  776. package/dist/esm/typed-routes/searchSchemaEntries.native.js +17 -0
  777. package/dist/esm/typed-routes/searchSchemaEntries.native.js.map +1 -0
  778. package/dist/esm/useLoader.mjs +44 -34
  779. package/dist/esm/useLoader.mjs.map +1 -1
  780. package/dist/esm/useLoader.native.js +49 -37
  781. package/dist/esm/useLoader.native.js.map +1 -1
  782. package/dist/esm/utils/cleanUrl.mjs +25 -3
  783. package/dist/esm/utils/cleanUrl.mjs.map +1 -1
  784. package/dist/esm/utils/cleanUrl.native.js +25 -3
  785. package/dist/esm/utils/cleanUrl.native.js.map +1 -1
  786. package/dist/esm/validateParams.mjs +3 -4
  787. package/dist/esm/validateParams.mjs.map +1 -1
  788. package/dist/esm/validateParams.native.js +3 -5
  789. package/dist/esm/validateParams.native.js.map +1 -1
  790. package/dist/esm/{validateSearch.mjs → validateSearchParams.mjs} +18 -11
  791. package/dist/esm/validateSearchParams.mjs.map +1 -0
  792. package/dist/esm/{validateSearch.native.js → validateSearchParams.native.js} +18 -12
  793. package/dist/esm/validateSearchParams.native.js.map +1 -0
  794. package/dist/esm/vercel/build/generate/createSsrServerlessFunction.mjs +36 -2
  795. package/dist/esm/vercel/build/generate/createSsrServerlessFunction.mjs.map +1 -1
  796. package/dist/esm/vercel/build/generate/createSsrServerlessFunction.native.js +36 -2
  797. package/dist/esm/vercel/build/generate/createSsrServerlessFunction.native.js.map +1 -1
  798. package/dist/esm/vite/dom/browser.mjs +147 -0
  799. package/dist/esm/vite/dom/browser.mjs.map +1 -0
  800. package/dist/esm/vite/dom/browser.native.js +193 -0
  801. package/dist/esm/vite/dom/browser.native.js.map +1 -0
  802. package/dist/esm/vite/dom/directive.mjs +51 -0
  803. package/dist/esm/vite/dom/directive.mjs.map +1 -0
  804. package/dist/esm/vite/dom/directive.native.js +108 -0
  805. package/dist/esm/vite/dom/directive.native.js.map +1 -0
  806. package/dist/esm/vite/dom/registry.mjs +52 -0
  807. package/dist/esm/vite/dom/registry.mjs.map +1 -0
  808. package/dist/esm/vite/dom/registry.native.js +163 -0
  809. package/dist/esm/vite/dom/registry.native.js.map +1 -0
  810. package/dist/esm/vite/one.mjs +28 -3
  811. package/dist/esm/vite/one.mjs.map +1 -1
  812. package/dist/esm/vite/one.native.js +35 -10
  813. package/dist/esm/vite/one.native.js.map +1 -1
  814. package/dist/esm/vite/plugins/clientTreeShakePlugin.mjs +1 -1
  815. package/dist/esm/vite/plugins/clientTreeShakePlugin.mjs.map +1 -1
  816. package/dist/esm/vite/plugins/clientTreeShakePlugin.native.js +1 -1
  817. package/dist/esm/vite/plugins/clientTreeShakePlugin.native.js.map +1 -1
  818. package/dist/esm/vite/plugins/environmentGuardPlugin.mjs +6 -1
  819. package/dist/esm/vite/plugins/environmentGuardPlugin.mjs.map +1 -1
  820. package/dist/esm/vite/plugins/environmentGuardPlugin.native.js +6 -1
  821. package/dist/esm/vite/plugins/environmentGuardPlugin.native.js.map +1 -1
  822. package/dist/esm/vite/plugins/fileSystemRouterPlugin.mjs +11 -7
  823. package/dist/esm/vite/plugins/fileSystemRouterPlugin.mjs.map +1 -1
  824. package/dist/esm/vite/plugins/fileSystemRouterPlugin.native.js +13 -7
  825. package/dist/esm/vite/plugins/fileSystemRouterPlugin.native.js.map +1 -1
  826. package/dist/esm/vite/plugins/generateFileSystemRouteTypesPlugin.mjs +8 -2
  827. package/dist/esm/vite/plugins/generateFileSystemRouteTypesPlugin.mjs.map +1 -1
  828. package/dist/esm/vite/plugins/generateFileSystemRouteTypesPlugin.native.js +8 -2
  829. package/dist/esm/vite/plugins/generateFileSystemRouteTypesPlugin.native.js.map +1 -1
  830. package/dist/esm/vite/plugins/iosLinkSetPlugin.mjs +44 -0
  831. package/dist/esm/vite/plugins/iosLinkSetPlugin.mjs.map +1 -0
  832. package/dist/esm/vite/plugins/iosLinkSetPlugin.native.js +48 -0
  833. package/dist/esm/vite/plugins/iosLinkSetPlugin.native.js.map +1 -0
  834. package/dist/esm/vite/plugins/loaderSearchSchemasPlugin.mjs +48 -0
  835. package/dist/esm/vite/plugins/loaderSearchSchemasPlugin.mjs.map +1 -0
  836. package/dist/esm/vite/plugins/loaderSearchSchemasPlugin.native.js +86 -0
  837. package/dist/esm/vite/plugins/loaderSearchSchemasPlugin.native.js.map +1 -0
  838. package/dist/esm/vite/plugins/useDomPlugin.mjs +128 -22
  839. package/dist/esm/vite/plugins/useDomPlugin.mjs.map +1 -1
  840. package/dist/esm/vite/plugins/useDomPlugin.native.js +160 -22
  841. package/dist/esm/vite/plugins/useDomPlugin.native.js.map +1 -1
  842. package/env.d.ts +6 -6
  843. package/ios/DOM/OneDOMHostView.swift +389 -0
  844. package/ios/DOM/OneDOMResourceHandler.swift +147 -0
  845. package/ios/DOM/README.md +5 -0
  846. package/ios/Generated/OneNativeAddPassToWalletButtonComponentView.mm +11 -0
  847. package/ios/Generated/OneNativeAddPassToWalletButtonView.swift +4 -0
  848. package/ios/Generated/OneNativeChartComponentView.mm +10 -0
  849. package/ios/Generated/OneNativeChartView.swift +3 -0
  850. package/ios/Generated/OneNativeLivePhotoViewComponentView.mm +10 -0
  851. package/ios/Generated/OneNativeLivePhotoViewView.swift +4 -0
  852. package/ios/Generated/OneNativePayWithApplePayButtonComponentView.mm +11 -0
  853. package/ios/Generated/OneNativePayWithApplePayButtonView.swift +4 -0
  854. package/ios/Generated/OneNativePhotosPickerComponentView.mm +11 -0
  855. package/ios/Generated/OneNativePhotosPickerView.swift +4 -0
  856. package/ios/Generated/OneNativeProductViewComponentView.mm +11 -0
  857. package/ios/Generated/OneNativeProductViewView.swift +4 -0
  858. package/ios/Generated/OneNativeQuickLookComponentView.mm +10 -0
  859. package/ios/Generated/OneNativeQuickLookView.swift +4 -0
  860. package/ios/Generated/OneNativeSignInWithAppleButtonComponentView.mm +11 -0
  861. package/ios/Generated/OneNativeSignInWithAppleButtonView.swift +4 -0
  862. package/ios/Generated/OneNativeStoreViewComponentView.mm +11 -0
  863. package/ios/Generated/OneNativeStoreViewView.swift +4 -0
  864. package/ios/Generated/OneNativeSubscriptionStoreViewComponentView.mm +11 -0
  865. package/ios/Generated/OneNativeSubscriptionStoreViewView.swift +3 -0
  866. package/ios/Generated/OneNativeSwiftUI.swift +10 -0
  867. package/ios/Generated/OneNativeViewSlots.swift +16 -0
  868. package/ios/Nitro/HybridOneAppleAuth.swift +2 -0
  869. package/ios/Nitro/HybridOneBrowser.swift +2 -0
  870. package/ios/Nitro/HybridOneImagePicker.swift +2 -0
  871. package/ios/Nitro/HybridOneMailCompose.swift +2 -0
  872. package/ios/Nitro/HybridOneMessageCompose.swift +2 -0
  873. package/ios/Nitro/HybridOnePhotoLibrary.swift +10 -0
  874. package/ios/Nitro/HybridOnePurchases.swift +2 -0
  875. package/ios/Nitro/HybridOneStoreReview.swift +37 -0
  876. package/ios/Nitro/OneUpdatesLauncher.swift +24 -0
  877. package/ios/OneDOMHostComponentView.h +5 -0
  878. package/ios/OneDOMHostComponentView.mm +85 -0
  879. package/ios/OneNativeStyle.swift +426 -1
  880. package/ios-link-set.json +196 -0
  881. package/linux/cpp/CMakeLists.txt +160 -0
  882. package/linux/cpp/OneLinuxControlState.h +42 -0
  883. package/linux/cpp/OneLinuxControls.cpp +53 -0
  884. package/linux/cpp/OneLinuxControls.h +70 -0
  885. package/linux/cpp/OneLinuxNavigationComponent.h +86 -0
  886. package/linux/cpp/compat/OneLinuxStdCompat.h +6 -0
  887. package/linux/cpp/compat/OneLinuxThreadName.h +7 -0
  888. package/linux/cpp/deps/CMakeLists.txt +29 -0
  889. package/linux/cpp/deps/cmake-utils/react-native-flags.cmake +15 -0
  890. package/linux/cpp/imagemanager/OneLinuxImageManager.cpp +213 -0
  891. package/linux/cpp/nitro/NitroLinuxPlatform.cpp +67 -0
  892. package/linux/cpp/textlayoutmanager/OneLinuxText.cpp +258 -0
  893. package/linux/cpp/textlayoutmanager/OneLinuxText.h +34 -0
  894. package/linux/cpp/textlayoutmanager/react/renderer/textlayoutmanager/TextLayoutManager.cpp +101 -0
  895. package/linux/cpp/textlayoutmanager/react/renderer/textlayoutmanager/TextLayoutManager.h +35 -0
  896. package/linux/host/OneLinuxAppShell.cpp +267 -0
  897. package/linux/host/OneLinuxAppShell.h +46 -0
  898. package/linux/host/OneLinuxControl.cpp +515 -0
  899. package/linux/host/OneLinuxControl.h +23 -0
  900. package/linux/host/OneLinuxControlledValue.h +51 -0
  901. package/linux/host/OneLinuxHost.cpp +381 -0
  902. package/linux/host/OneLinuxHost.h +64 -0
  903. package/linux/host/OneLinuxModules.cpp +63 -0
  904. package/linux/host/OneLinuxModules.h +20 -0
  905. package/linux/host/OneLinuxMountingManager.cpp +747 -0
  906. package/linux/host/OneLinuxMountingManager.h +86 -0
  907. package/linux/host/OneLinuxNavigation.cpp +202 -0
  908. package/linux/host/OneLinuxNavigation.h +45 -0
  909. package/linux/host/OneLinuxNetwork.cpp +513 -0
  910. package/linux/host/OneLinuxNetwork.h +31 -0
  911. package/linux/host/OneLinuxNitro.cpp +24 -0
  912. package/linux/host/OneLinuxNitro.h +15 -0
  913. package/linux/host/OneLinuxOpSqlite.cpp +79 -0
  914. package/linux/host/OneLinuxOpSqlite.h +15 -0
  915. package/linux/host/OneLinuxPointer.cpp +373 -0
  916. package/linux/host/OneLinuxPointer.h +57 -0
  917. package/linux/host/OneLinuxRuntime.cpp +204 -0
  918. package/linux/host/OneLinuxRuntime.h +80 -0
  919. package/linux/host/OneLinuxStartup.cpp +58 -0
  920. package/linux/host/OneLinuxStartup.h +9 -0
  921. package/linux/host/OneLinuxTextInput.cpp +585 -0
  922. package/linux/host/OneLinuxTextInput.h +99 -0
  923. package/linux/host/OneLinuxView.cpp +540 -0
  924. package/linux/host/OneLinuxView.h +75 -0
  925. package/linux/host/OneLinuxWorklets.cpp +210 -0
  926. package/linux/host/OneLinuxWorklets.h +20 -0
  927. package/linux/host/main.cpp +89 -0
  928. package/linux/react-native/Libraries/Utilities/Platform.js +22 -0
  929. package/linux/scripts/build-core.sh +48 -0
  930. package/linux/scripts/bundle-js.sh +27 -0
  931. package/linux/scripts/cache.sh +22 -0
  932. package/linux/scripts/lima-vm.sh +26 -0
  933. package/linux/scripts/package-app.sh +118 -0
  934. package/linux/scripts/package-core.sh +20 -0
  935. package/linux/scripts/prepare-core.sh +54 -0
  936. package/linux/scripts/prepare-deps.sh +102 -0
  937. package/linux/scripts/prepare-hermes.sh +64 -0
  938. package/linux/scripts/prepare-icu.sh +40 -0
  939. package/linux/scripts/screenshot.sh +67 -0
  940. package/linux/smoke/main.cpp +228 -0
  941. package/linux/smoke/smoke.js +1 -0
  942. package/macos/README.md +170 -0
  943. package/macos/cpp/.gitkeep +0 -0
  944. package/macos/cpp/CMakeLists.txt +157 -0
  945. package/macos/cpp/OneMacButton/OneMacButtonComponentDescriptor.h +11 -0
  946. package/macos/cpp/OneMacButton/OneMacButtonEventEmitter.cpp +7 -0
  947. package/macos/cpp/OneMacButton/OneMacButtonEventEmitter.h +11 -0
  948. package/macos/cpp/OneMacButton/OneMacButtonProps.cpp +11 -0
  949. package/macos/cpp/OneMacButton/OneMacButtonProps.h +17 -0
  950. package/macos/cpp/OneMacButton/OneMacButtonShadowNode.h +28 -0
  951. package/macos/cpp/OneMacButton/OneMacButtonShadowNode.mm +15 -0
  952. package/macos/cpp/OneMacImage/OneMacImageComponentDescriptor.h +6 -0
  953. package/macos/cpp/OneMacImage/OneMacImageProps.cpp +11 -0
  954. package/macos/cpp/OneMacImage/OneMacImageProps.h +14 -0
  955. package/macos/cpp/OneMacImage/OneMacImageShadowNode.cpp +9 -0
  956. package/macos/cpp/OneMacImage/OneMacImageShadowNode.h +18 -0
  957. package/macos/cpp/OneMacPopUpButton/OneMacPopUpButtonComponentDescriptor.h +11 -0
  958. package/macos/cpp/OneMacPopUpButton/OneMacPopUpButtonEventEmitter.cpp +7 -0
  959. package/macos/cpp/OneMacPopUpButton/OneMacPopUpButtonEventEmitter.h +14 -0
  960. package/macos/cpp/OneMacPopUpButton/OneMacPopUpButtonProps.cpp +11 -0
  961. package/macos/cpp/OneMacPopUpButton/OneMacPopUpButtonProps.h +17 -0
  962. package/macos/cpp/OneMacPopUpButton/OneMacPopUpButtonShadowNode.h +28 -0
  963. package/macos/cpp/OneMacPopUpButton/OneMacPopUpButtonShadowNode.mm +16 -0
  964. package/macos/cpp/OneMacSegmentedControl/OneMacSegmentedControlComponentDescriptor.h +11 -0
  965. package/macos/cpp/OneMacSegmentedControl/OneMacSegmentedControlEventEmitter.cpp +7 -0
  966. package/macos/cpp/OneMacSegmentedControl/OneMacSegmentedControlEventEmitter.h +14 -0
  967. package/macos/cpp/OneMacSegmentedControl/OneMacSegmentedControlProps.cpp +12 -0
  968. package/macos/cpp/OneMacSegmentedControl/OneMacSegmentedControlProps.h +18 -0
  969. package/macos/cpp/OneMacSegmentedControl/OneMacSegmentedControlShadowNode.h +28 -0
  970. package/macos/cpp/OneMacSegmentedControl/OneMacSegmentedControlShadowNode.mm +15 -0
  971. package/macos/cpp/OneMacToggle/OneMacToggleComponentDescriptor.h +11 -0
  972. package/macos/cpp/OneMacToggle/OneMacToggleEventEmitter.cpp +13 -0
  973. package/macos/cpp/OneMacToggle/OneMacToggleEventEmitter.h +20 -0
  974. package/macos/cpp/OneMacToggle/OneMacToggleProps.cpp +17 -0
  975. package/macos/cpp/OneMacToggle/OneMacToggleProps.h +23 -0
  976. package/macos/cpp/OneMacToggle/OneMacToggleShadowNode.h +29 -0
  977. package/macos/cpp/OneMacToggle/OneMacToggleShadowNode.mm +27 -0
  978. package/macos/cpp/graphics/react/renderer/graphics/HostPlatformColor.h +129 -0
  979. package/macos/cpp/graphics/react/renderer/graphics/HostPlatformColor.mm +83 -0
  980. package/macos/cpp/graphics/react/renderer/graphics/PlatformColorParser.h +20 -0
  981. package/macos/cpp/graphics/react/renderer/graphics/PlatformColorParser.mm +38 -0
  982. package/macos/cpp/textlayoutmanager/OneMacosText.h +22 -0
  983. package/macos/cpp/textlayoutmanager/OneMacosText.mm +207 -0
  984. package/macos/cpp/textlayoutmanager/react/renderer/textlayoutmanager/TextLayoutManager.h +35 -0
  985. package/macos/cpp/textlayoutmanager/react/renderer/textlayoutmanager/TextLayoutManager.mm +74 -0
  986. package/macos/host/.gitkeep +0 -0
  987. package/macos/host/OneMacosAnimated.mm +91 -0
  988. package/macos/host/OneMacosAppCommands.h +36 -0
  989. package/macos/host/OneMacosAppCommands.mm +731 -0
  990. package/macos/host/OneMacosBlobStore.h +9 -0
  991. package/macos/host/OneMacosBlobStore.mm +50 -0
  992. package/macos/host/OneMacosButtonComponentView.h +3 -0
  993. package/macos/host/OneMacosButtonComponentView.mm +55 -0
  994. package/macos/host/OneMacosComponentView.h +67 -0
  995. package/macos/host/OneMacosComponentView.mm +533 -0
  996. package/macos/host/OneMacosControlsHosting.h +26 -0
  997. package/macos/host/OneMacosDebug.h +6 -0
  998. package/macos/host/OneMacosDebug.mm +337 -0
  999. package/macos/host/OneMacosImageComponentView.h +6 -0
  1000. package/macos/host/OneMacosImageComponentView.mm +245 -0
  1001. package/macos/host/OneMacosImageManager.mm +91 -0
  1002. package/macos/host/OneMacosModules.h +35 -0
  1003. package/macos/host/OneMacosModules.mm +287 -0
  1004. package/macos/host/OneMacosMountingManager.h +36 -0
  1005. package/macos/host/OneMacosMountingManager.mm +285 -0
  1006. package/macos/host/OneMacosNetworking.h +13 -0
  1007. package/macos/host/OneMacosNetworking.mm +263 -0
  1008. package/macos/host/OneMacosOpSqlite.h +15 -0
  1009. package/macos/host/OneMacosOpSqlite.mm +74 -0
  1010. package/macos/host/OneMacosParagraphComponentView.h +4 -0
  1011. package/macos/host/OneMacosParagraphComponentView.mm +35 -0
  1012. package/macos/host/OneMacosPointerHandler.h +27 -0
  1013. package/macos/host/OneMacosPointerHandler.mm +405 -0
  1014. package/macos/host/OneMacosPopUpButtonComponentView.h +3 -0
  1015. package/macos/host/OneMacosPopUpButtonComponentView.mm +50 -0
  1016. package/macos/host/OneMacosRootView.h +21 -0
  1017. package/macos/host/OneMacosRootView.mm +520 -0
  1018. package/macos/host/OneMacosRuntime.h +46 -0
  1019. package/macos/host/OneMacosRuntime.mm +133 -0
  1020. package/macos/host/OneMacosScrollViewComponentView.h +6 -0
  1021. package/macos/host/OneMacosScrollViewComponentView.mm +240 -0
  1022. package/macos/host/OneMacosSegmentedControlComponentView.h +3 -0
  1023. package/macos/host/OneMacosSegmentedControlComponentView.mm +51 -0
  1024. package/macos/host/OneMacosSymbolImageComponentView.h +3 -0
  1025. package/macos/host/OneMacosSymbolImageComponentView.mm +67 -0
  1026. package/macos/host/OneMacosTextInputComponentView.h +7 -0
  1027. package/macos/host/OneMacosTextInputComponentView.mm +729 -0
  1028. package/macos/host/OneMacosToggleComponentView.h +4 -0
  1029. package/macos/host/OneMacosToggleComponentView.mm +57 -0
  1030. package/macos/host/OneMacosToggleHosting.h +15 -0
  1031. package/macos/host/OneMacosWebSocket.h +22 -0
  1032. package/macos/host/OneMacosWebSocket.mm +161 -0
  1033. package/macos/host/OneMacosWorklets.cpp +139 -0
  1034. package/macos/host/OneMacosWorklets.h +29 -0
  1035. package/macos/host/OneMacosWorkletsPlatform.mm +88 -0
  1036. package/macos/host/swift/OneMacControls.swift +155 -0
  1037. package/macos/host/swift/OneMacToggle.swift +71 -0
  1038. package/macos/react-native/Libraries/Utilities/Platform.js +22 -0
  1039. package/macos/template/macos/OneApp/Info.plist +31 -0
  1040. package/macos/template/macos/OneApp/OneApp-Bridging-Header.h +3 -0
  1041. package/macos/template/macos/OneApp/OneApp.swift +20 -0
  1042. package/macos/template/macos/scripts/build-core.sh +29 -0
  1043. package/macos/template/macos/scripts/bundle-js.sh +29 -0
  1044. package/macos/template/macos/scripts/embed-deps.sh +20 -0
  1045. package/macos/template/macos/scripts/embed-hermes.sh +10 -0
  1046. package/macos/template/macos/scripts/prepare-deps.sh +29 -0
  1047. package/macos/template/macos/scripts/prepare-hermes.sh +29 -0
  1048. package/native-core/host/OneHostCommandPredicate.h +118 -0
  1049. package/native-core/host/OneHostModule.h +125 -0
  1050. package/native-core/host/OneHostModules.cpp +355 -0
  1051. package/native-core/host/OneHostModules.h +20 -0
  1052. package/native-core/host/OneHostRuntime.cpp +314 -0
  1053. package/native-core/host/OneHostRuntime.h +153 -0
  1054. package/native-core/rn-core.cmake +101 -0
  1055. package/nitrogen/generated/ios/One-Swift-Cxx-Bridge.cpp +17 -0
  1056. package/nitrogen/generated/ios/One-Swift-Cxx-Bridge.hpp +19 -2
  1057. package/nitrogen/generated/ios/One-Swift-Cxx-Umbrella.hpp +5 -0
  1058. package/nitrogen/generated/ios/OneAutolinking.mm +22 -0
  1059. package/nitrogen/generated/ios/OneAutolinking.swift +42 -16
  1060. package/nitrogen/generated/ios/c++/HybridOneStoreReviewSpecSwift.cpp +11 -0
  1061. package/nitrogen/generated/ios/c++/HybridOneStoreReviewSpecSwift.hpp +82 -0
  1062. package/nitrogen/generated/ios/swift/HybridOneStoreReviewSpec.swift +55 -0
  1063. package/nitrogen/generated/ios/swift/HybridOneStoreReviewSpec_cxx.swift +145 -0
  1064. package/package.json +47 -18
  1065. package/react-native.config.cjs +1 -0
  1066. package/src/cli/build.ts +1 -1
  1067. package/src/cli/iosLinkSet.ts +86 -0
  1068. package/src/cli/iosLinkSetAnalysis.ts +411 -0
  1069. package/src/cli/prebuild.ts +8 -1
  1070. package/src/cli/updatesPublish.ts +25 -24
  1071. package/src/cli.ts +3 -1
  1072. package/src/createApp.tsx +5 -0
  1073. package/src/createHandleRequest.ts +6 -32
  1074. package/src/dom/README.md +27 -0
  1075. package/src/dom/browserBridge.ts +185 -0
  1076. package/src/dom/client.tsx +75 -0
  1077. package/src/dom/context.ts +4 -0
  1078. package/src/dom/host.native.tsx +137 -0
  1079. package/src/dom/index.ts +109 -0
  1080. package/src/dom/measure.ts +32 -0
  1081. package/src/dom/nativeBridge.ts +143 -0
  1082. package/src/dom/peer.ts +150 -0
  1083. package/src/dom/protocol.ts +171 -0
  1084. package/src/dom/serialize.ts +126 -0
  1085. package/src/dom/types.ts +38 -0
  1086. package/src/fork/getPathFromState.test.ts +14 -0
  1087. package/src/fork/getPathFromState.ts +10 -1
  1088. package/src/hooks.tsx +129 -2
  1089. package/src/index.ts +10 -0
  1090. package/src/interfaces/router.ts +63 -1
  1091. package/src/layouts/Tabs.linux.tsx +15 -0
  1092. package/src/layouts/stack-navigator-desktop.tsx +8 -0
  1093. package/src/layouts/stack-navigator.linux.tsx +12 -0
  1094. package/src/layouts/stack-navigator.macos.tsx +9 -0
  1095. package/src/layouts/stack-utils/StackToolbarBottomHost.linux.tsx +1 -0
  1096. package/src/layouts/stack-utils/StackToolbarBottomHost.macos.tsx +17 -0
  1097. package/src/link/Link.tsx +5 -3
  1098. package/src/link/Link.web.tsx +8 -3
  1099. package/src/loaderResponseToModule.ts +42 -0
  1100. package/src/loaderSearchParams.ts +115 -0
  1101. package/src/one-shared.ts +361 -0
  1102. package/src/one.linux.ts +42 -0
  1103. package/src/one.macos.ts +29 -0
  1104. package/src/one.ts +2 -303
  1105. package/src/platform/adaptive/fixed.ts +27 -0
  1106. package/src/platform/adaptive/index.linux.ts +1 -0
  1107. package/src/platform/adaptive/index.macos.ts +11 -0
  1108. package/src/platform/adaptive/index.ts +1 -26
  1109. package/src/platform/controlTypes.ts +12 -0
  1110. package/src/platform/desktop/appCommandTypes.ts +33 -0
  1111. package/src/platform/desktop/createAppCommands.ts +40 -0
  1112. package/src/platform/desktop/createControls.tsx +64 -0
  1113. package/src/platform/linux/AppCommands.linux.ts +6 -0
  1114. package/src/platform/linux/Button.linux.tsx +15 -0
  1115. package/src/platform/linux/DropDown.linux.tsx +50 -0
  1116. package/src/platform/linux/NavigationView.linux.tsx +80 -0
  1117. package/src/platform/linux/OneLinuxButtonNativeComponent.ts +23 -0
  1118. package/src/platform/linux/OneLinuxDropDownNativeComponent.ts +35 -0
  1119. package/src/platform/linux/OneLinuxNavigationNativeComponent.ts +21 -0
  1120. package/src/platform/linux/OneLinuxProgressBarNativeComponent.ts +10 -0
  1121. package/src/platform/linux/OneLinuxSecureFieldNativeComponent.ts +16 -0
  1122. package/src/platform/linux/OneLinuxSegmentedControlNativeComponent.ts +24 -0
  1123. package/src/platform/linux/OneLinuxSliderNativeComponent.ts +29 -0
  1124. package/src/platform/linux/OneLinuxStepperNativeComponent.ts +27 -0
  1125. package/src/platform/linux/OneLinuxSwitchNativeComponent.ts +20 -0
  1126. package/src/platform/linux/OneLinuxTextFieldNativeComponent.ts +16 -0
  1127. package/src/platform/linux/OneLinuxToggleNativeComponent.ts +14 -0
  1128. package/src/platform/linux/ProgressBar.linux.tsx +21 -0
  1129. package/src/platform/linux/SecureField.linux.tsx +7 -0
  1130. package/src/platform/linux/SegmentedControl.linux.tsx +13 -0
  1131. package/src/platform/linux/Slider.linux.tsx +67 -0
  1132. package/src/platform/linux/Stepper.linux.tsx +52 -0
  1133. package/src/platform/linux/Switch.linux.tsx +23 -0
  1134. package/src/platform/linux/TextField.linux.tsx +27 -0
  1135. package/src/platform/linux/Toggle.linux.tsx +12 -0
  1136. package/src/platform/linux/Window.linux.ts +12 -0
  1137. package/src/platform/mac/AppCommands.macos.ts +8 -0
  1138. package/src/platform/mac/Button.macos.tsx +12 -0
  1139. package/src/platform/mac/Image.macos.tsx +41 -0
  1140. package/src/platform/mac/OneMacButtonNativeComponent.ts +14 -0
  1141. package/src/platform/mac/OneMacImageNativeComponent.ts +12 -0
  1142. package/src/platform/mac/OneMacPopUpButtonNativeComponent.ts +20 -0
  1143. package/src/platform/mac/OneMacSegmentedControlNativeComponent.ts +21 -0
  1144. package/src/platform/mac/OneMacToggleNativeComponent.ts +21 -0
  1145. package/src/platform/mac/PopUpButton.macos.tsx +31 -0
  1146. package/src/platform/mac/SegmentedControl.macos.tsx +11 -0
  1147. package/src/platform/mac/Toggle.macos.tsx +12 -0
  1148. package/src/platform/specs/OneDOMHostNativeComponent.ts +30 -0
  1149. package/src/platform/specs/OneStoreReview.nitro.ts +1 -1
  1150. package/src/platform/split-view/split-view.linux.tsx +1 -0
  1151. package/src/platform/split-view/split-view.macos.tsx +26 -0
  1152. package/src/platform/ui/Image.linux.tsx +1 -0
  1153. package/src/platform/ui/Image.macos.tsx +9 -0
  1154. package/src/router/getRoutes.ts +1 -1
  1155. package/src/router/router.ts +61 -13
  1156. package/src/searchParams.ts +163 -0
  1157. package/src/server/oneServe.ts +33 -3
  1158. package/src/server/workerHandler.ts +27 -3
  1159. package/src/standardSchema.ts +82 -0
  1160. package/src/typed-routes/generateRouteTypes.ts +49 -3
  1161. package/src/typed-routes/getTypedRoutesDeclarationFile.ts +62 -10
  1162. package/src/typed-routes/searchParamSchemas.ts +377 -0
  1163. package/src/typed-routes/searchSchemaEntries.ts +22 -0
  1164. package/src/types.ts +15 -2
  1165. package/src/useLoader.ts +91 -43
  1166. package/src/utils/cleanUrl.ts +43 -2
  1167. package/src/validateParams.ts +3 -14
  1168. package/src/{validateSearch.ts → validateSearchParams.ts} +33 -33
  1169. package/src/vercel/build/generate/createSsrServerlessFunction.ts +36 -2
  1170. package/src/vite/dom/README.md +91 -0
  1171. package/src/vite/dom/browser.ts +152 -0
  1172. package/src/vite/dom/build.test.ts +204 -0
  1173. package/src/vite/dom/directive.ts +76 -0
  1174. package/src/vite/dom/registry.ts +67 -0
  1175. package/src/vite/one-defines.test.ts +59 -1
  1176. package/src/vite/one.ts +59 -3
  1177. package/src/vite/plugins/clientTreeShakePlugin.ts +7 -1
  1178. package/src/vite/plugins/environmentGuardPlugin.ts +4 -4
  1179. package/src/vite/plugins/fileSystemRouterPlugin.tsx +33 -7
  1180. package/src/vite/plugins/generateFileSystemRouteTypesPlugin.tsx +10 -2
  1181. package/src/vite/plugins/iosLinkSetPlugin.ts +64 -0
  1182. package/src/vite/plugins/iosSdkPlugin.ts +4 -1
  1183. package/src/vite/plugins/kotlinSourcePlugin.ts +4 -1
  1184. package/src/vite/plugins/loaderSearchSchemasPlugin.ts +69 -0
  1185. package/src/vite/plugins/swiftPackagePlugin.ts +4 -1
  1186. package/src/vite/plugins/useDomPlugin.ts +182 -35
  1187. package/src/vite/types.ts +5 -1
  1188. package/types/cli/build.d.ts +1 -1
  1189. package/types/cli/build.d.ts.map +1 -1
  1190. package/types/cli/iosLinkSet.d.ts +9 -0
  1191. package/types/cli/iosLinkSet.d.ts.map +1 -0
  1192. package/types/cli/iosLinkSetAnalysis.d.ts +25 -0
  1193. package/types/cli/iosLinkSetAnalysis.d.ts.map +1 -0
  1194. package/types/cli/prebuild.d.ts.map +1 -1
  1195. package/types/cli/updatesPublish.d.ts.map +1 -1
  1196. package/types/createApp.d.ts +8 -0
  1197. package/types/createApp.d.ts.map +1 -1
  1198. package/types/createHandleRequest.d.ts.map +1 -1
  1199. package/types/dom/browserBridge.d.ts +34 -0
  1200. package/types/dom/browserBridge.d.ts.map +1 -0
  1201. package/types/dom/client.d.ts +8 -0
  1202. package/types/dom/client.d.ts.map +1 -0
  1203. package/types/dom/context.d.ts +3 -0
  1204. package/types/dom/context.d.ts.map +1 -0
  1205. package/types/dom/host.native.d.ts +6 -0
  1206. package/types/dom/host.native.d.ts.map +1 -0
  1207. package/types/dom/index.d.ts +8 -0
  1208. package/types/dom/index.d.ts.map +1 -0
  1209. package/types/dom/measure.d.ts +3 -0
  1210. package/types/dom/measure.d.ts.map +1 -0
  1211. package/types/dom/nativeBridge.d.ts +32 -0
  1212. package/types/dom/nativeBridge.d.ts.map +1 -0
  1213. package/types/dom/peer.d.ts +26 -0
  1214. package/types/dom/peer.d.ts.map +1 -0
  1215. package/types/dom/protocol.d.ts +54 -0
  1216. package/types/dom/protocol.d.ts.map +1 -0
  1217. package/types/dom/serialize.d.ts +21 -0
  1218. package/types/dom/serialize.d.ts.map +1 -0
  1219. package/types/dom/types.d.ts +32 -0
  1220. package/types/dom/types.d.ts.map +1 -0
  1221. package/types/fork/getPathFromState.d.ts.map +1 -1
  1222. package/types/hooks.d.ts +30 -3
  1223. package/types/hooks.d.ts.map +1 -1
  1224. package/types/index.d.ts +3 -0
  1225. package/types/index.d.ts.map +1 -1
  1226. package/types/interfaces/router.d.ts +41 -1
  1227. package/types/interfaces/router.d.ts.map +1 -1
  1228. package/types/layouts/Tabs.linux.d.ts +212 -0
  1229. package/types/layouts/Tabs.linux.d.ts.map +1 -0
  1230. package/types/layouts/stack-navigator-desktop.d.ts +9 -0
  1231. package/types/layouts/stack-navigator-desktop.d.ts.map +1 -0
  1232. package/types/layouts/stack-navigator.linux.d.ts +3 -0
  1233. package/types/layouts/stack-navigator.linux.d.ts.map +1 -0
  1234. package/types/layouts/stack-navigator.macos.d.ts +7 -0
  1235. package/types/layouts/stack-navigator.macos.d.ts.map +1 -0
  1236. package/types/layouts/stack-utils/StackToolbarBottomHost.linux.d.ts +2 -0
  1237. package/types/layouts/stack-utils/StackToolbarBottomHost.linux.d.ts.map +1 -0
  1238. package/types/layouts/stack-utils/StackToolbarBottomHost.macos.d.ts +8 -0
  1239. package/types/layouts/stack-utils/StackToolbarBottomHost.macos.d.ts.map +1 -0
  1240. package/types/link/Link.d.ts.map +1 -1
  1241. package/types/link/Link.web.d.ts.map +1 -1
  1242. package/types/loaderResponseToModule.d.ts +7 -0
  1243. package/types/loaderResponseToModule.d.ts.map +1 -0
  1244. package/types/loaderSearchParams.d.ts +30 -0
  1245. package/types/loaderSearchParams.d.ts.map +1 -0
  1246. package/types/one-shared.d.ts +151 -0
  1247. package/types/one-shared.d.ts.map +1 -0
  1248. package/types/one.d.ts +1 -100
  1249. package/types/one.d.ts.map +1 -1
  1250. package/types/one.linux.d.ts +3 -0
  1251. package/types/one.linux.d.ts.map +1 -0
  1252. package/types/one.macos.d.ts +3 -0
  1253. package/types/one.macos.d.ts.map +1 -0
  1254. package/types/platform/adaptive/fixed.d.ts +7 -0
  1255. package/types/platform/adaptive/fixed.d.ts.map +1 -0
  1256. package/types/platform/adaptive/index.d.ts +1 -6
  1257. package/types/platform/adaptive/index.d.ts.map +1 -1
  1258. package/types/platform/adaptive/index.linux.d.ts +2 -0
  1259. package/types/platform/adaptive/index.linux.d.ts.map +1 -0
  1260. package/types/platform/adaptive/index.macos.d.ts +6 -0
  1261. package/types/platform/adaptive/index.macos.d.ts.map +1 -0
  1262. package/types/platform/controlTypes.d.ts +18 -0
  1263. package/types/platform/controlTypes.d.ts.map +1 -0
  1264. package/types/platform/desktop/appCommandTypes.d.ts +41 -0
  1265. package/types/platform/desktop/appCommandTypes.d.ts.map +1 -0
  1266. package/types/platform/desktop/createAppCommands.d.ts +6 -0
  1267. package/types/platform/desktop/createAppCommands.d.ts.map +1 -0
  1268. package/types/platform/desktop/createControls.d.ts +31 -0
  1269. package/types/platform/desktop/createControls.d.ts.map +1 -0
  1270. package/types/platform/linux/AppCommands.linux.d.ts +8 -0
  1271. package/types/platform/linux/AppCommands.linux.d.ts.map +1 -0
  1272. package/types/platform/linux/Button.linux.d.ts +4 -0
  1273. package/types/platform/linux/Button.linux.d.ts.map +1 -0
  1274. package/types/platform/linux/DropDown.linux.d.ts +26 -0
  1275. package/types/platform/linux/DropDown.linux.d.ts.map +1 -0
  1276. package/types/platform/linux/NavigationView.linux.d.ts +7 -0
  1277. package/types/platform/linux/NavigationView.linux.d.ts.map +1 -0
  1278. package/types/platform/linux/OneLinuxButtonNativeComponent.d.ts +17 -0
  1279. package/types/platform/linux/OneLinuxButtonNativeComponent.d.ts.map +1 -0
  1280. package/types/platform/linux/OneLinuxDropDownNativeComponent.d.ts +29 -0
  1281. package/types/platform/linux/OneLinuxDropDownNativeComponent.d.ts.map +1 -0
  1282. package/types/platform/linux/OneLinuxNavigationNativeComponent.d.ts +23 -0
  1283. package/types/platform/linux/OneLinuxNavigationNativeComponent.d.ts.map +1 -0
  1284. package/types/platform/linux/OneLinuxProgressBarNativeComponent.d.ts +9 -0
  1285. package/types/platform/linux/OneLinuxProgressBarNativeComponent.d.ts.map +1 -0
  1286. package/types/platform/linux/OneLinuxSecureFieldNativeComponent.d.ts +22 -0
  1287. package/types/platform/linux/OneLinuxSecureFieldNativeComponent.d.ts.map +1 -0
  1288. package/types/platform/linux/OneLinuxSegmentedControlNativeComponent.d.ts +18 -0
  1289. package/types/platform/linux/OneLinuxSegmentedControlNativeComponent.d.ts.map +1 -0
  1290. package/types/platform/linux/OneLinuxSliderNativeComponent.d.ts +26 -0
  1291. package/types/platform/linux/OneLinuxSliderNativeComponent.d.ts.map +1 -0
  1292. package/types/platform/linux/OneLinuxStepperNativeComponent.d.ts +21 -0
  1293. package/types/platform/linux/OneLinuxStepperNativeComponent.d.ts.map +1 -0
  1294. package/types/platform/linux/OneLinuxSwitchNativeComponent.d.ts +16 -0
  1295. package/types/platform/linux/OneLinuxSwitchNativeComponent.d.ts.map +1 -0
  1296. package/types/platform/linux/OneLinuxTextFieldNativeComponent.d.ts +22 -0
  1297. package/types/platform/linux/OneLinuxTextFieldNativeComponent.d.ts.map +1 -0
  1298. package/types/platform/linux/OneLinuxToggleNativeComponent.d.ts +18 -0
  1299. package/types/platform/linux/OneLinuxToggleNativeComponent.d.ts.map +1 -0
  1300. package/types/platform/linux/ProgressBar.linux.d.ts +7 -0
  1301. package/types/platform/linux/ProgressBar.linux.d.ts.map +1 -0
  1302. package/types/platform/linux/SecureField.linux.d.ts +4 -0
  1303. package/types/platform/linux/SecureField.linux.d.ts.map +1 -0
  1304. package/types/platform/linux/SegmentedControl.linux.d.ts +5 -0
  1305. package/types/platform/linux/SegmentedControl.linux.d.ts.map +1 -0
  1306. package/types/platform/linux/Slider.linux.d.ts +19 -0
  1307. package/types/platform/linux/Slider.linux.d.ts.map +1 -0
  1308. package/types/platform/linux/Stepper.linux.d.ts +11 -0
  1309. package/types/platform/linux/Stepper.linux.d.ts.map +1 -0
  1310. package/types/platform/linux/Switch.linux.d.ts +9 -0
  1311. package/types/platform/linux/Switch.linux.d.ts.map +1 -0
  1312. package/types/platform/linux/TextField.linux.d.ts +13 -0
  1313. package/types/platform/linux/TextField.linux.d.ts.map +1 -0
  1314. package/types/platform/linux/Toggle.linux.d.ts +4 -0
  1315. package/types/platform/linux/Toggle.linux.d.ts.map +1 -0
  1316. package/types/platform/linux/Window.linux.d.ts +4 -0
  1317. package/types/platform/linux/Window.linux.d.ts.map +1 -0
  1318. package/types/platform/mac/AppCommands.macos.d.ts +7 -0
  1319. package/types/platform/mac/AppCommands.macos.d.ts.map +1 -0
  1320. package/types/platform/mac/Button.macos.d.ts +7 -0
  1321. package/types/platform/mac/Button.macos.d.ts.map +1 -0
  1322. package/types/platform/mac/Image.macos.d.ts +11 -0
  1323. package/types/platform/mac/Image.macos.d.ts.map +1 -0
  1324. package/types/platform/mac/OneMacButtonNativeComponent.d.ts +13 -0
  1325. package/types/platform/mac/OneMacButtonNativeComponent.d.ts.map +1 -0
  1326. package/types/platform/mac/OneMacImageNativeComponent.d.ts +11 -0
  1327. package/types/platform/mac/OneMacImageNativeComponent.d.ts.map +1 -0
  1328. package/types/platform/mac/OneMacPopUpButtonNativeComponent.d.ts +18 -0
  1329. package/types/platform/mac/OneMacPopUpButtonNativeComponent.d.ts.map +1 -0
  1330. package/types/platform/mac/OneMacSegmentedControlNativeComponent.d.ts +19 -0
  1331. package/types/platform/mac/OneMacSegmentedControlNativeComponent.d.ts.map +1 -0
  1332. package/types/platform/mac/OneMacToggleNativeComponent.d.ts +17 -0
  1333. package/types/platform/mac/OneMacToggleNativeComponent.d.ts.map +1 -0
  1334. package/types/platform/mac/PopUpButton.macos.d.ts +14 -0
  1335. package/types/platform/mac/PopUpButton.macos.d.ts.map +1 -0
  1336. package/types/platform/mac/SegmentedControl.macos.d.ts +4 -0
  1337. package/types/platform/mac/SegmentedControl.macos.d.ts.map +1 -0
  1338. package/types/platform/mac/Toggle.macos.d.ts +5 -0
  1339. package/types/platform/mac/Toggle.macos.d.ts.map +1 -0
  1340. package/types/platform/specs/OneDOMHostNativeComponent.d.ts +34 -0
  1341. package/types/platform/specs/OneDOMHostNativeComponent.d.ts.map +1 -0
  1342. package/types/platform/specs/OneStoreReview.nitro.d.ts +1 -0
  1343. package/types/platform/specs/OneStoreReview.nitro.d.ts.map +1 -1
  1344. package/types/platform/split-view/split-view.linux.d.ts +2 -0
  1345. package/types/platform/split-view/split-view.linux.d.ts.map +1 -0
  1346. package/types/platform/split-view/split-view.macos.d.ts +16 -0
  1347. package/types/platform/split-view/split-view.macos.d.ts.map +1 -0
  1348. package/types/platform/ui/Image.linux.d.ts +2 -0
  1349. package/types/platform/ui/Image.linux.d.ts.map +1 -0
  1350. package/types/platform/ui/Image.macos.d.ts +3 -0
  1351. package/types/platform/ui/Image.macos.d.ts.map +1 -0
  1352. package/types/router/createRoute.d.ts +26 -3
  1353. package/types/router/createRoute.d.ts.map +1 -1
  1354. package/types/router/router.d.ts +6 -0
  1355. package/types/router/router.d.ts.map +1 -1
  1356. package/types/searchParams.d.ts +58 -0
  1357. package/types/searchParams.d.ts.map +1 -0
  1358. package/types/server/oneServe.d.ts.map +1 -1
  1359. package/types/server/workerHandler.d.ts.map +1 -1
  1360. package/types/standardSchema.d.ts +47 -0
  1361. package/types/standardSchema.d.ts.map +1 -0
  1362. package/types/typed-routes/generateRouteTypes.d.ts +5 -1
  1363. package/types/typed-routes/generateRouteTypes.d.ts.map +1 -1
  1364. package/types/typed-routes/getTypedRoutesDeclarationFile.d.ts +8 -1
  1365. package/types/typed-routes/getTypedRoutesDeclarationFile.d.ts.map +1 -1
  1366. package/types/typed-routes/searchParamSchemas.d.ts +34 -0
  1367. package/types/typed-routes/searchParamSchemas.d.ts.map +1 -0
  1368. package/types/typed-routes/searchSchemaEntries.d.ts +9 -0
  1369. package/types/typed-routes/searchSchemaEntries.d.ts.map +1 -0
  1370. package/types/types.d.ts +10 -2
  1371. package/types/types.d.ts.map +1 -1
  1372. package/types/useLoader.d.ts +2 -2
  1373. package/types/useLoader.d.ts.map +1 -1
  1374. package/types/utils/cleanUrl.d.ts +11 -1
  1375. package/types/utils/cleanUrl.d.ts.map +1 -1
  1376. package/types/validateParams.d.ts +1 -1
  1377. package/types/validateParams.d.ts.map +1 -1
  1378. package/types/{validateSearch.d.ts → validateSearchParams.d.ts} +13 -19
  1379. package/types/validateSearchParams.d.ts.map +1 -0
  1380. package/types/vercel/build/generate/createSsrServerlessFunction.d.ts.map +1 -1
  1381. package/types/vite/dom/browser.d.ts +8 -0
  1382. package/types/vite/dom/browser.d.ts.map +1 -0
  1383. package/types/vite/dom/directive.d.ts +6 -0
  1384. package/types/vite/dom/directive.d.ts.map +1 -0
  1385. package/types/vite/dom/registry.d.ts +23 -0
  1386. package/types/vite/dom/registry.d.ts.map +1 -0
  1387. package/types/vite/one.d.ts.map +1 -1
  1388. package/types/vite/plugins/clientTreeShakePlugin.d.ts.map +1 -1
  1389. package/types/vite/plugins/environmentGuardPlugin.d.ts +2 -2
  1390. package/types/vite/plugins/fileSystemRouterPlugin.d.ts.map +1 -1
  1391. package/types/vite/plugins/generateFileSystemRouteTypesPlugin.d.ts.map +1 -1
  1392. package/types/vite/plugins/iosLinkSetPlugin.d.ts +3 -0
  1393. package/types/vite/plugins/iosLinkSetPlugin.d.ts.map +1 -0
  1394. package/types/vite/plugins/iosSdkPlugin.d.ts +1 -1
  1395. package/types/vite/plugins/iosSdkPlugin.d.ts.map +1 -1
  1396. package/types/vite/plugins/kotlinSourcePlugin.d.ts +1 -1
  1397. package/types/vite/plugins/kotlinSourcePlugin.d.ts.map +1 -1
  1398. package/types/vite/plugins/loaderSearchSchemasPlugin.d.ts +14 -0
  1399. package/types/vite/plugins/loaderSearchSchemasPlugin.d.ts.map +1 -0
  1400. package/types/vite/plugins/swiftPackagePlugin.d.ts +1 -1
  1401. package/types/vite/plugins/swiftPackagePlugin.d.ts.map +1 -1
  1402. package/types/vite/plugins/useDomPlugin.d.ts +8 -1
  1403. package/types/vite/plugins/useDomPlugin.d.ts.map +1 -1
  1404. package/types/vite/types.d.ts +5 -1
  1405. package/types/vite/types.d.ts.map +1 -1
  1406. package/dist/cjs/platform/store-review/backend.ios.cjs +0 -47
  1407. package/dist/cjs/platform/store-review/backend.ios.js +0 -49
  1408. package/dist/cjs/platform/store-review/backend.ios.js.map +0 -1
  1409. package/dist/cjs/validateSearch.native.js.map +0 -1
  1410. package/dist/esm/one.mjs.map +0 -1
  1411. package/dist/esm/one.native.js.map +0 -1
  1412. package/dist/esm/platform/adaptive/index.mjs.map +0 -1
  1413. package/dist/esm/platform/store-review/backend.ios.js +0 -26
  1414. package/dist/esm/platform/store-review/backend.ios.js.map +0 -1
  1415. package/dist/esm/validateSearch.mjs.map +0 -1
  1416. package/dist/esm/validateSearch.native.js.map +0 -1
  1417. package/src/platform/store-review/backend.ios.ts +0 -28
  1418. package/types/platform/store-review/backend.ios.d.ts +0 -6
  1419. package/types/platform/store-review/backend.ios.d.ts.map +0 -1
  1420. package/types/validateSearch.d.ts.map +0 -1
@@ -1,31 +1,169 @@
1
- import { parseSync } from "oxc-parser";
1
+ import { readFile } from "fs/promises";
2
+ import { DOMRegistry } from "../dom/registry.native.js";
3
+ import { readDOMDirective } from "../dom/directive.native.js";
4
+ import { DOM_DEV_PREFIX, buildDOMAssets, domEntryPlugin, domHTML } from "../dom/browser.native.js";
2
5
 
3
- function useDOMPlugin() {
4
- return {
5
- name: "one-vite-dom-plugin",
6
- async transform(code, id, options) {
7
- if (!code.includes("use dom")) {
8
- return;
9
- }
10
- try {
11
- var parsed = parseSync(id, code);
12
- var hasUseDom = false;
13
- for (var i = 0; i < parsed.program.body.length; ++i) {
14
- var item = parsed.program.body[i];
15
- if (item.type === "ExpressionStatement") {
16
- var _item_expression, _item_expression1, _item_expression2, _item_expression3;
17
- if (item.directive === "use dom" || ((_item_expression = item.expression) === null || _item_expression === void 0 ? void 0 : _item_expression.type) === "Literal" && ((_item_expression1 = item.expression) === null || _item_expression1 === void 0 ? void 0 : _item_expression1.value) === "use dom" || ((_item_expression2 = item.expression) === null || _item_expression2 === void 0 ? void 0 : _item_expression2.type) === "StringLiteral" && ((_item_expression3 = item.expression) === null || _item_expression3 === void 0 ? void 0 : _item_expression3.value) === "use dom") {
18
- hasUseDom = true;
19
- break;
6
+ function useDOMPlugin(options) {
7
+ var _options_browserPlugins;
8
+ var registry = new DOMRegistry(options.root);
9
+ var config;
10
+ var assetsInclude;
11
+ var suppliedPlugins = [];
12
+ var browserPlugins = (_options_browserPlugins = options.browserPlugins) !== null && _options_browserPlugins !== void 0 ? _options_browserPlugins : [];
13
+ var isDOM = function isDOM2(code, id) {
14
+ return readDOMDirective(code, id, options);
15
+ };
16
+ function proxy(id) {
17
+ var descriptor = registry.register(id);
18
+ return {
19
+ code: `import { createDOMComponent } from "one/dom/native";
20
+ export default createDOMComponent(${JSON.stringify(descriptor.id)});`,
21
+ map: null,
22
+ meta: { oneDOM: descriptor }
23
+ };
24
+ }
25
+ function nativePlugin(context) {
26
+ var transformed = /* @__PURE__ */ new Set();
27
+ return {
28
+ name: "one:use-dom-native",
29
+ transform: {
30
+ order: "pre",
31
+ filter: { id: /\.[cm]?[jt]sx?$/ },
32
+ handler(code, id) {
33
+ if (!isDOM(code, id)) {
34
+ if (!transformed.delete(id)) return;
35
+ registry.invalidate(id);
36
+ return {
37
+ code,
38
+ map: null,
39
+ meta: { oneDOM: null }
40
+ };
41
+ }
42
+ if (context.platform !== "ios" && context.platform !== "android") {
43
+ this.error(`[one/use-dom] "use dom" supports iOS and Android; ${context.platform} is unsupported`);
44
+ }
45
+ transformed.add(id);
46
+ return proxy(id);
47
+ }
48
+ },
49
+ async generateBundle() {
50
+ var entries = [];
51
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
52
+ try {
53
+ for (var _iterator = this.getModuleIds()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
54
+ var id = _step.value;
55
+ var _this_getModuleInfo;
56
+ var entry = (_this_getModuleInfo = this.getModuleInfo(id)) === null || _this_getModuleInfo === void 0 ? void 0 : _this_getModuleInfo.meta.oneDOM;
57
+ if (entry) entries.push(entry);
58
+ }
59
+ } catch (err) {
60
+ _didIteratorError = true;
61
+ _iteratorError = err;
62
+ } finally {
63
+ try {
64
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
65
+ _iterator.return();
66
+ }
67
+ } finally {
68
+ if (_didIteratorError) {
69
+ throw _iteratorError;
20
70
  }
21
71
  }
22
72
  }
23
- if (!hasUseDom) {
24
- return;
73
+ registry.replaceGraph(context.platform, entries);
74
+ if (context.command === "build" && (entries.length || context.assetsDest)) {
75
+ if (!context.assetsDest) this.error("[one/use-dom] native DOM assets require assetsDest");
76
+ if (!config) this.error("[one/use-dom] resolve the One Vite config before building DOM assets");
77
+ await buildDOMAssets(entries, registry, config, browserPlugins, context.assetsDest, assetsInclude);
78
+ }
79
+ }
80
+ };
81
+ }
82
+ var entryPlugin = domEntryPlugin(registry, function() {
83
+ return (config === null || config === void 0 ? void 0 : config.command) === "serve";
84
+ });
85
+ return {
86
+ name: "one:use-dom",
87
+ enforce: "pre",
88
+ api: {
89
+ vxrnNative: nativePlugin,
90
+ registry
91
+ },
92
+ async config(userConfig) {
93
+ var _userConfig_plugins;
94
+ assetsInclude = userConfig.assetsInclude;
95
+ var flatten = async function flatten1(items) {
96
+ var resolved = await Promise.all(items);
97
+ var nested = await Promise.all(resolved.map(function(item) {
98
+ return Array.isArray(item) ? flatten(item) : item ? [item] : [];
99
+ }));
100
+ return nested.flat();
101
+ };
102
+ suppliedPlugins = await flatten((_userConfig_plugins = userConfig.plugins) !== null && _userConfig_plugins !== void 0 ? _userConfig_plugins : []);
103
+ },
104
+ configResolved(resolved) {
105
+ var _options_browserPlugins2;
106
+ config = resolved;
107
+ browserPlugins = [...(_options_browserPlugins2 = options.browserPlugins) !== null && _options_browserPlugins2 !== void 0 ? _options_browserPlugins2 : [], ...suppliedPlugins.filter(function(plugin) {
108
+ var _options_browserPlugins3;
109
+ return !/^(?:vite:|one[:-]|vxrn[:-])/.test(plugin.name) && !((_options_browserPlugins3 = options.browserPlugins) === null || _options_browserPlugins3 === void 0 ? void 0 : _options_browserPlugins3.includes(plugin));
110
+ })];
111
+ },
112
+ resolveId: entryPlugin.resolveId,
113
+ load: entryPlugin.load,
114
+ transform: {
115
+ order: "pre",
116
+ filter: { id: /\.[cm]?[jt]sx?$/ },
117
+ handler(code, id) {
118
+ var _this_environment, _this_environment1, _this_environment2, _this_environment3;
119
+ if (!isDOM(code, id)) return;
120
+ if (options.metro && (((_this_environment = this.environment) === null || _this_environment === void 0 ? void 0 : _this_environment.name) === "ios" || ((_this_environment1 = this.environment) === null || _this_environment1 === void 0 ? void 0 : _this_environment1.name) === "android")) this.error("[one/use-dom] \"use dom\" requires native.bundler: \"vite\"; Metro is unsupported");
121
+ if (((_this_environment2 = this.environment) === null || _this_environment2 === void 0 ? void 0 : _this_environment2.name) === "ios" || ((_this_environment3 = this.environment) === null || _this_environment3 === void 0 ? void 0 : _this_environment3.name) === "android") {
122
+ return proxy(id);
25
123
  }
26
- } catch (unused) {
27
- return;
28
124
  }
125
+ },
126
+ configureServer(server) {
127
+ var _server_httpServer;
128
+ var changed = async function changed2(file) {
129
+ if (!registry.hasModule(file)) return;
130
+ try {
131
+ if (isDOM(await readFile(file, "utf8"), file)) return;
132
+ } catch (unused) {}
133
+ registry.invalidate(file);
134
+ };
135
+ server.watcher.on("change", changed);
136
+ server.watcher.on("unlink", changed);
137
+ (_server_httpServer = server.httpServer) === null || _server_httpServer === void 0 ? void 0 : _server_httpServer.once("close", function() {
138
+ server.watcher.off("change", changed);
139
+ server.watcher.off("unlink", changed);
140
+ });
141
+ server.middlewares.use(async function(req, res, next) {
142
+ var _req_url;
143
+ var pathname = (_req_url = req.url) === null || _req_url === void 0 ? void 0 : _req_url.split("?")[0];
144
+ if (!(pathname === null || pathname === void 0 ? void 0 : pathname.startsWith(DOM_DEV_PREFIX))) return next();
145
+ var match = /^\/_one\/dom\/(dom-[a-f0-9]{32})\/$/.exec(pathname);
146
+ var descriptor = match && registry.get(match[1]);
147
+ if (!descriptor) {
148
+ res.statusCode = 404;
149
+ res.end("Unknown One DOM entry");
150
+ return;
151
+ }
152
+ try {
153
+ if (!isDOM(await readFile(descriptor.moduleId, "utf8"), descriptor.moduleId)) {
154
+ registry.invalidate(descriptor.moduleId);
155
+ res.statusCode = 404;
156
+ res.end("One DOM directive removed");
157
+ return;
158
+ }
159
+ var html = await server.transformIndexHtml(pathname, domHTML(descriptor.id), req.originalUrl);
160
+ res.setHeader("Content-Type", "text/html; charset=utf-8");
161
+ res.setHeader("Cache-Control", "no-store");
162
+ res.end(html);
163
+ } catch (error) {
164
+ next(error);
165
+ }
166
+ });
29
167
  }
30
168
  };
31
169
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useDomPlugin.native.js","names":[],"sources":["esm/vite/plugins/useDomPlugin.native.js"],"sourcesContent":["import { parseSync } from \"oxc-parser\";\nfunction useDOMPlugin() {\n return {\n name: \"one-vite-dom-plugin\",\n async transform(code, id, options) {\n if (!code.includes(\"use dom\")) {\n return;\n }\n try {\n var parsed = parseSync(id, code);\n var hasUseDom = false;\n for (var i = 0; i < parsed.program.body.length; ++i) {\n var item = parsed.program.body[i];\n if (item.type === \"ExpressionStatement\") {\n var _item_expression, _item_expression1, _item_expression2, _item_expression3;\n if (item.directive === \"use dom\" || ((_item_expression = item.expression) === null || _item_expression === void 0 ? void 0 : _item_expression.type) === \"Literal\" && ((_item_expression1 = item.expression) === null || _item_expression1 === void 0 ? void 0 : _item_expression1.value) === \"use dom\" || ((_item_expression2 = item.expression) === null || _item_expression2 === void 0 ? void 0 : _item_expression2.type) === \"StringLiteral\" && ((_item_expression3 = item.expression) === null || _item_expression3 === void 0 ? void 0 : _item_expression3.value) === \"use dom\") {\n hasUseDom = true;\n break;\n }\n }\n }\n if (!hasUseDom) {\n return;\n }\n } catch (unused) {\n return;\n }\n }\n };\n}\nexport {\n useDOMPlugin\n};\n//# sourceMappingURL=useDomPlugin.js.map\n"],"mappings":";;;AACA,SAAS,eAAe;CACtB,OAAO;EACL,MAAM;EACN,MAAM,UAAU,MAAM,IAAI,SAAS;GACjC,IAAI,CAAC,KAAK,SAAS,SAAS,GAAG;IAC7B;GACF;GACA,IAAI;IACF,IAAI,SAAS,UAAU,IAAI,IAAI;IAC/B,IAAI,YAAY;IAChB,KAAK,IAAI,IAAI,GAAG,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,GAAG;KACnD,IAAI,OAAO,OAAO,QAAQ,KAAK;KAC/B,IAAI,KAAK,SAAS,uBAAuB;MACvC,IAAI,kBAAkB,mBAAmB,mBAAmB;MAC5D,IAAI,KAAK,cAAc,eAAe,mBAAmB,KAAK,gBAAgB,QAAQ,qBAAqB,KAAK,IAAI,KAAK,IAAI,iBAAiB,UAAU,eAAe,oBAAoB,KAAK,gBAAgB,QAAQ,sBAAsB,KAAK,IAAI,KAAK,IAAI,kBAAkB,WAAW,eAAe,oBAAoB,KAAK,gBAAgB,QAAQ,sBAAsB,KAAK,IAAI,KAAK,IAAI,kBAAkB,UAAU,qBAAqB,oBAAoB,KAAK,gBAAgB,QAAQ,sBAAsB,KAAK,IAAI,KAAK,IAAI,kBAAkB,WAAW,WAAW;OACrjB,YAAY;OACZ;MACF;KACF;IACF;IACA,IAAI,CAAC,WAAW;KACd;IACF;GACF,SAAS,QAAQ;IACf;GACF;EACF;CACF;AACF"}
1
+ {"version":3,"file":"useDomPlugin.native.js","names":[],"sources":["esm/vite/plugins/useDomPlugin.native.js"],"sourcesContent":["import { readFile } from \"fs/promises\";\nimport { DOMRegistry } from \"../dom/registry\";\nimport { readDOMDirective } from \"../dom/directive\";\nimport { buildDOMAssets, DOM_DEV_PREFIX, domEntryPlugin, domHTML } from \"../dom/browser\";\nfunction useDOMPlugin(options) {\n var _options_browserPlugins;\n var registry = new DOMRegistry(options.root);\n var config;\n var assetsInclude;\n var suppliedPlugins = [];\n var browserPlugins = (_options_browserPlugins = options.browserPlugins) !== null && _options_browserPlugins !== void 0 ? _options_browserPlugins : [];\n var isDOM = function isDOM2(code, id) {\n return readDOMDirective(code, id, options);\n };\n function proxy(id) {\n var descriptor = registry.register(id);\n return {\n code: `import { createDOMComponent } from \"one/dom/native\";\nexport default createDOMComponent(${JSON.stringify(descriptor.id)});`,\n map: null,\n meta: {\n oneDOM: descriptor\n }\n };\n }\n function nativePlugin(context) {\n var transformed = /* @__PURE__ */ new Set();\n return {\n name: \"one:use-dom-native\",\n transform: {\n order: \"pre\",\n filter: {\n id: /\\.[cm]?[jt]sx?$/\n },\n handler(code, id) {\n if (!isDOM(code, id)) {\n if (!transformed.delete(id)) return;\n registry.invalidate(id);\n return {\n code,\n map: null,\n meta: {\n oneDOM: null\n }\n };\n }\n if (context.platform !== \"ios\" && context.platform !== \"android\") {\n this.error(`[one/use-dom] \"use dom\" supports iOS and Android; ${context.platform} is unsupported`);\n }\n transformed.add(id);\n return proxy(id);\n }\n },\n async generateBundle() {\n var entries = [];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.getModuleIds()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var id = _step.value;\n var _this_getModuleInfo;\n var entry = (_this_getModuleInfo = this.getModuleInfo(id)) === null || _this_getModuleInfo === void 0 ? void 0 : _this_getModuleInfo.meta.oneDOM;\n if (entry) entries.push(entry);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n registry.replaceGraph(context.platform, entries);\n if (context.command === \"build\" && (entries.length || context.assetsDest)) {\n if (!context.assetsDest) this.error(\"[one/use-dom] native DOM assets require assetsDest\");\n if (!config) this.error(\"[one/use-dom] resolve the One Vite config before building DOM assets\");\n await buildDOMAssets(entries, registry, config, browserPlugins, context.assetsDest, assetsInclude);\n }\n }\n };\n }\n var entryPlugin = domEntryPlugin(registry, function() {\n return (config === null || config === void 0 ? void 0 : config.command) === \"serve\";\n });\n return {\n name: \"one:use-dom\",\n enforce: \"pre\",\n api: {\n vxrnNative: nativePlugin,\n registry\n },\n async config(userConfig) {\n var _userConfig_plugins;\n assetsInclude = userConfig.assetsInclude;\n var flatten = async function flatten1(items) {\n var resolved = await Promise.all(items);\n var nested = await Promise.all(resolved.map(function(item) {\n return Array.isArray(item) ? flatten(item) : item ? [\n item\n ] : [];\n }));\n return nested.flat();\n };\n suppliedPlugins = await flatten((_userConfig_plugins = userConfig.plugins) !== null && _userConfig_plugins !== void 0 ? _userConfig_plugins : []);\n },\n configResolved(resolved) {\n var _options_browserPlugins2;\n config = resolved;\n browserPlugins = [\n ...(_options_browserPlugins2 = options.browserPlugins) !== null && _options_browserPlugins2 !== void 0 ? _options_browserPlugins2 : [],\n ...suppliedPlugins.filter(function(plugin) {\n var _options_browserPlugins3;\n return !/^(?:vite:|one[:-]|vxrn[:-])/.test(plugin.name) && !((_options_browserPlugins3 = options.browserPlugins) === null || _options_browserPlugins3 === void 0 ? void 0 : _options_browserPlugins3.includes(plugin));\n })\n ];\n },\n resolveId: entryPlugin.resolveId,\n load: entryPlugin.load,\n transform: {\n order: \"pre\",\n filter: {\n id: /\\.[cm]?[jt]sx?$/\n },\n handler(code, id) {\n var _this_environment, _this_environment1, _this_environment2, _this_environment3;\n if (!isDOM(code, id)) return;\n if (options.metro && (((_this_environment = this.environment) === null || _this_environment === void 0 ? void 0 : _this_environment.name) === \"ios\" || ((_this_environment1 = this.environment) === null || _this_environment1 === void 0 ? void 0 : _this_environment1.name) === \"android\")) this.error('[one/use-dom] \"use dom\" requires native.bundler: \"vite\"; Metro is unsupported');\n if (((_this_environment2 = this.environment) === null || _this_environment2 === void 0 ? void 0 : _this_environment2.name) === \"ios\" || ((_this_environment3 = this.environment) === null || _this_environment3 === void 0 ? void 0 : _this_environment3.name) === \"android\") {\n return proxy(id);\n }\n }\n },\n // web/SSR retain the original component and existing SSR rules.\n configureServer(server) {\n var _server_httpServer;\n var changed = async function changed2(file) {\n if (!registry.hasModule(file)) return;\n try {\n if (isDOM(await readFile(file, \"utf8\"), file)) return;\n } catch (unused) {\n }\n registry.invalidate(file);\n };\n server.watcher.on(\"change\", changed);\n server.watcher.on(\"unlink\", changed);\n (_server_httpServer = server.httpServer) === null || _server_httpServer === void 0 ? void 0 : _server_httpServer.once(\"close\", function() {\n server.watcher.off(\"change\", changed);\n server.watcher.off(\"unlink\", changed);\n });\n server.middlewares.use(async function(req, res, next) {\n var _req_url;\n var pathname = (_req_url = req.url) === null || _req_url === void 0 ? void 0 : _req_url.split(\"?\")[0];\n if (!(pathname === null || pathname === void 0 ? void 0 : pathname.startsWith(DOM_DEV_PREFIX))) return next();\n var match = /^\\/_one\\/dom\\/(dom-[a-f0-9]{32})\\/$/.exec(pathname);\n var descriptor = match && registry.get(match[1]);\n if (!descriptor) {\n res.statusCode = 404;\n res.end(\"Unknown One DOM entry\");\n return;\n }\n try {\n if (!isDOM(await readFile(descriptor.moduleId, \"utf8\"), descriptor.moduleId)) {\n registry.invalidate(descriptor.moduleId);\n res.statusCode = 404;\n res.end(\"One DOM directive removed\");\n return;\n }\n var html = await server.transformIndexHtml(pathname, domHTML(descriptor.id), req.originalUrl);\n res.setHeader(\"Content-Type\", \"text/html; charset=utf-8\");\n res.setHeader(\"Cache-Control\", \"no-store\");\n res.end(html);\n } catch (error) {\n next(error);\n }\n });\n }\n };\n}\nexport {\n useDOMPlugin\n};\n//# sourceMappingURL=useDomPlugin.js.map\n"],"mappings":";;;;;;AAIA,SAAS,aAAa,SAAS;CAC7B,IAAI;CACJ,IAAI,WAAW,IAAI,YAAY,QAAQ,IAAI;CAC3C,IAAI;CACJ,IAAI;CACJ,IAAI,kBAAkB,CAAC;CACvB,IAAI,kBAAkB,0BAA0B,QAAQ,oBAAoB,QAAQ,4BAA4B,KAAK,IAAI,0BAA0B,CAAC;CACpJ,IAAI,QAAQ,SAAS,OAAO,MAAM,IAAI;EACpC,OAAO,iBAAiB,MAAM,IAAI,OAAO;CAC3C;CACA,SAAS,MAAM,IAAI;EACjB,IAAI,aAAa,SAAS,SAAS,EAAE;EACrC,OAAO;GACL,MAAM;oCACwB,KAAK,UAAU,WAAW,EAAE,EAAE;GAC5D,KAAK;GACL,MAAM,EACJ,QAAQ,WACV;EACF;CACF;CACA,SAAS,aAAa,SAAS;EAC7B,IAAI,8BAA8B,IAAI,IAAI;EAC1C,OAAO;GACL,MAAM;GACN,WAAW;IACT,OAAO;IACP,QAAQ,EACN,IAAI,kBACN;IACA,QAAQ,MAAM,IAAI;KAChB,IAAI,CAAC,MAAM,MAAM,EAAE,GAAG;MACpB,IAAI,CAAC,YAAY,OAAO,EAAE,GAAG;MAC7B,SAAS,WAAW,EAAE;MACtB,OAAO;OACL;OACA,KAAK;OACL,MAAM,EACJ,QAAQ,KACV;MACF;KACF;KACA,IAAI,QAAQ,aAAa,SAAS,QAAQ,aAAa,WAAW;MAChE,KAAK,MAAM,qDAAqD,QAAQ,SAAS,gBAAgB;KACnG;KACA,YAAY,IAAI,EAAE;KAClB,OAAO,MAAM,EAAE;IACjB;GACF;GACA,MAAM,iBAAiB;IACrB,IAAI,UAAU,CAAC;IACf,IAAI,4BAA4B,MAAM,oBAAoB,OAAO,iBAAiB,KAAK;IACvF,IAAI;KACF,KAAK,IAAI,YAAY,KAAK,aAAa,CAAC,CAAC,OAAO,SAAS,CAAC,GAAG,OAAO,EAAE,6BAA6B,QAAQ,UAAU,KAAK,EAAC,CAAE,OAAO,4BAA4B,MAAM;MACpK,IAAI,KAAK,MAAM;MACf,IAAI;MACJ,IAAI,SAAS,sBAAsB,KAAK,cAAc,EAAE,OAAO,QAAQ,wBAAwB,KAAK,IAAI,KAAK,IAAI,oBAAoB,KAAK;MAC1I,IAAI,OAAO,QAAQ,KAAK,KAAK;KAC/B;IACF,SAAS,KAAK;KACZ,oBAAoB;KACpB,iBAAiB;IACnB,UAAU;KACR,IAAI;MACF,IAAI,CAAC,6BAA6B,UAAU,UAAU,MAAM;OAC1D,UAAU,OAAO;MACnB;KACF,UAAU;MACR,IAAI,mBAAmB;OACrB,MAAM;MACR;KACF;IACF;IACA,SAAS,aAAa,QAAQ,UAAU,OAAO;IAC/C,IAAI,QAAQ,YAAY,YAAY,QAAQ,UAAU,QAAQ,aAAa;KACzE,IAAI,CAAC,QAAQ,YAAY,KAAK,MAAM,oDAAoD;KACxF,IAAI,CAAC,QAAQ,KAAK,MAAM,sEAAsE;KAC9F,MAAM,eAAe,SAAS,UAAU,QAAQ,gBAAgB,QAAQ,YAAY,aAAa;IACnG;GACF;EACF;CACF;CACA,IAAI,cAAc,eAAe,UAAU,WAAW;EACpD,QAAQ,WAAW,QAAQ,WAAW,KAAK,IAAI,KAAK,IAAI,OAAO,aAAa;CAC9E,CAAC;CACD,OAAO;EACL,MAAM;EACN,SAAS;EACT,KAAK;GACH,YAAY;GACZ;EACF;EACA,MAAM,OAAO,YAAY;GACvB,IAAI;GACJ,gBAAgB,WAAW;GAC3B,IAAI,UAAU,eAAe,SAAS,OAAO;IAC3C,IAAI,WAAW,MAAM,QAAQ,IAAI,KAAK;IACtC,IAAI,SAAS,MAAM,QAAQ,IAAI,SAAS,IAAI,SAAS,MAAM;KACzD,OAAO,MAAM,QAAQ,IAAI,IAAI,QAAQ,IAAI,IAAI,OAAO,CAClD,IACF,IAAI,CAAC;IACP,CAAC,CAAC;IACF,OAAO,OAAO,KAAK;GACrB;GACA,kBAAkB,MAAM,SAAS,sBAAsB,WAAW,aAAa,QAAQ,wBAAwB,KAAK,IAAI,sBAAsB,CAAC,CAAC;EAClJ;EACA,eAAe,UAAU;GACvB,IAAI;GACJ,SAAS;GACT,iBAAiB,CACf,IAAI,2BAA2B,QAAQ,oBAAoB,QAAQ,6BAA6B,KAAK,IAAI,2BAA2B,CAAC,GACrI,GAAG,gBAAgB,OAAO,SAAS,QAAQ;IACzC,IAAI;IACJ,OAAO,CAAC,8BAA8B,KAAK,OAAO,IAAI,KAAK,GAAG,2BAA2B,QAAQ,oBAAoB,QAAQ,6BAA6B,KAAK,IAAI,KAAK,IAAI,yBAAyB,SAAS,MAAM;GACtN,CAAC,CACH;EACF;EACA,WAAW,YAAY;EACvB,MAAM,YAAY;EAClB,WAAW;GACT,OAAO;GACP,QAAQ,EACN,IAAI,kBACN;GACA,QAAQ,MAAM,IAAI;IAChB,IAAI,mBAAmB,oBAAoB,oBAAoB;IAC/D,IAAI,CAAC,MAAM,MAAM,EAAE,GAAG;IACtB,IAAI,QAAQ,YAAY,oBAAoB,KAAK,iBAAiB,QAAQ,sBAAsB,KAAK,IAAI,KAAK,IAAI,kBAAkB,UAAU,WAAW,qBAAqB,KAAK,iBAAiB,QAAQ,uBAAuB,KAAK,IAAI,KAAK,IAAI,mBAAmB,UAAU,YAAY,KAAK,MAAM,mFAA+E;IACxX,MAAM,qBAAqB,KAAK,iBAAiB,QAAQ,uBAAuB,KAAK,IAAI,KAAK,IAAI,mBAAmB,UAAU,WAAW,qBAAqB,KAAK,iBAAiB,QAAQ,uBAAuB,KAAK,IAAI,KAAK,IAAI,mBAAmB,UAAU,WAAW;KAC5Q,OAAO,MAAM,EAAE;IACjB;GACF;EACF;EAEA,gBAAgB,QAAQ;GACtB,IAAI;GACJ,IAAI,UAAU,eAAe,SAAS,MAAM;IAC1C,IAAI,CAAC,SAAS,UAAU,IAAI,GAAG;IAC/B,IAAI;KACF,IAAI,MAAM,MAAM,SAAS,MAAM,MAAM,GAAG,IAAI,GAAG;IACjD,SAAS,QAAQ,CACjB;IACA,SAAS,WAAW,IAAI;GAC1B;GACA,OAAO,QAAQ,GAAG,UAAU,OAAO;GACnC,OAAO,QAAQ,GAAG,UAAU,OAAO;GACnC,CAAC,qBAAqB,OAAO,gBAAgB,QAAQ,uBAAuB,KAAK,IAAI,KAAK,IAAI,mBAAmB,KAAK,SAAS,WAAW;IACxI,OAAO,QAAQ,IAAI,UAAU,OAAO;IACpC,OAAO,QAAQ,IAAI,UAAU,OAAO;GACtC,CAAC;GACD,OAAO,YAAY,IAAI,eAAe,KAAK,KAAK,MAAM;IACpD,IAAI;IACJ,IAAI,YAAY,WAAW,IAAI,SAAS,QAAQ,aAAa,KAAK,IAAI,KAAK,IAAI,SAAS,MAAM,GAAG,CAAC,CAAC;IACnG,IAAI,EAAE,aAAa,QAAQ,aAAa,KAAK,IAAI,KAAK,IAAI,SAAS,WAAW,cAAc,IAAI,OAAO,KAAK;IAC5G,IAAI,QAAQ,sCAAsC,KAAK,QAAQ;IAC/D,IAAI,aAAa,SAAS,SAAS,IAAI,MAAM,EAAE;IAC/C,IAAI,CAAC,YAAY;KACf,IAAI,aAAa;KACjB,IAAI,IAAI,uBAAuB;KAC/B;IACF;IACA,IAAI;KACF,IAAI,CAAC,MAAM,MAAM,SAAS,WAAW,UAAU,MAAM,GAAG,WAAW,QAAQ,GAAG;MAC5E,SAAS,WAAW,WAAW,QAAQ;MACvC,IAAI,aAAa;MACjB,IAAI,IAAI,2BAA2B;MACnC;KACF;KACA,IAAI,OAAO,MAAM,OAAO,mBAAmB,UAAU,QAAQ,WAAW,EAAE,GAAG,IAAI,WAAW;KAC5F,IAAI,UAAU,gBAAgB,0BAA0B;KACxD,IAAI,UAAU,iBAAiB,UAAU;KACzC,IAAI,IAAI,IAAI;IACd,SAAS,OAAO;KACd,KAAK,KAAK;IACZ;GACF,CAAC;EACH;CACF;AACF"}
package/env.d.ts CHANGED
@@ -20,14 +20,14 @@ interface OneEnvVariables {
20
20
  ONE_RENDER_MODE: 'ssr' | 'ssg' | 'spa'
21
21
 
22
22
  // Platform detection
23
- /** "client" for client-side web, "ssr" for server-side web, "ios" or "android" for native */
24
- VITE_ENVIRONMENT: 'client' | 'ssr' | 'ios' | 'android'
25
- /** "1" for native platforms (iOS and Android), "" for web (client and SSR). Truthy/falsy for tree-shaking native-only code. */
23
+ /** "client" for client-side web, "ssr" for server-side web, or a native platform */
24
+ VITE_ENVIRONMENT: 'client' | 'ssr' | 'ios' | 'android' | 'macos' | 'linux'
25
+ /** "1" for native platforms, "" for web (client and SSR). Truthy/falsy for tree-shaking native-only code. */
26
26
  VITE_NATIVE: '' | '1'
27
- /** "web" for web builds, "ios" or "android" for native. The One platform contract. */
28
- ONE_PLATFORM: 'web' | 'ios' | 'android'
27
+ /** "web" for web builds, or a native platform. The One platform contract. */
28
+ ONE_PLATFORM: 'web' | 'ios' | 'android' | 'macos' | 'linux'
29
29
  /** Expo-compatible native platform. Undefined on web. */
30
- EXPO_OS: 'ios' | 'android'
30
+ EXPO_OS: 'ios' | 'android' | 'macos' | 'linux'
31
31
  /** "web" for web builds, "native" for native builds. Used by Tamagui and One native route branches. */
32
32
  TAMAGUI_TARGET: 'web' | 'native'
33
33
 
@@ -0,0 +1,389 @@
1
+ import UIKit
2
+ import WebKit
3
+
4
+ // the native side of a 'use dom' component: one WKWebView per mount, a
5
+ // document-start transport carrying a fresh epoch for every document, and an
6
+ // owned resource origin for built pages. src/dom holds the protocol both sides speak.
7
+ // only plain types reach One-Swift.h; objective-c++ importers may not see WebKit.
8
+ public final class OneDOMHostView: UIView {
9
+ @objc public var onDocumentStart: ((String, Double) -> Void)?
10
+ @objc public var onMessage: ((String) -> Void)?
11
+ @objc public var onLoad: ((String) -> Void)?
12
+ @objc public var onError: ((String, String, String) -> Void)?
13
+ @objc public var onProcessTerminated: ((String) -> Void)?
14
+
15
+ private var entryId = ""
16
+ private var developmentURL = ""
17
+ // the latest state React committed; each new document snapshots it.
18
+ private var bootstrapState = ""
19
+ private var scrollEnabled = true
20
+ private var web: WKWebView?
21
+ private var navigation: OneDOMNavigation?
22
+ private var resources: OneDOMResourceHandler?
23
+ // the one document this mount may show, without its fragment.
24
+ private var owned: URL?
25
+ private var epoch = ""
26
+ // a second crash before any load finishes stays down instead of looping.
27
+ private var recovering = false
28
+
29
+ @objc public func configure(entryId: String, developmentURL: String, bootstrapState: String, scrollEnabled: Bool) {
30
+ if web != nil && (entryId != self.entryId || developmentURL != self.developmentURL) {
31
+ teardown()
32
+ }
33
+ self.entryId = entryId
34
+ self.developmentURL = developmentURL
35
+ self.bootstrapState = bootstrapState
36
+ self.scrollEnabled = scrollEnabled
37
+ web?.scrollView.isScrollEnabled = scrollEnabled
38
+ }
39
+
40
+ // fabric sets the event emitter after props, so loading waits for the
41
+ // finished update; errors found before any navigation still reach JS.
42
+ @objc public func mount() {
43
+ guard web == nil, !entryId.isEmpty else { return }
44
+ let target: URL
45
+ if !developmentURL.isEmpty {
46
+ guard let url = URL(string: developmentURL), url.scheme == "http" || url.scheme == "https" else {
47
+ return fail("Invalid One DOM development URL", code: "DOM_LOAD_FAILED")
48
+ }
49
+ target = url
50
+ } else {
51
+ guard let location = OneUpdatesLauncher.currentDOMAssetLocation() else {
52
+ return fail("One DOM assets are missing from this build", code: "DOM_ASSETS_MISSING")
53
+ }
54
+ let base = location.root.appendingPathComponent("one-dom", isDirectory: true)
55
+ guard let page = OneDOMResourceHandler.page(entryId: entryId, base: base) else {
56
+ return fail("One DOM entry \(entryId) is missing from the build manifest", code: "DOM_ASSETS_MISSING")
57
+ }
58
+ let handler = OneDOMResourceHandler(selection: location.selection, base: base)
59
+ resources = handler
60
+ target = handler.url(for: page)
61
+ }
62
+ owned = Self.withoutFragment(target)
63
+ let configuration = WKWebViewConfiguration()
64
+ if let resources {
65
+ configuration.setURLSchemeHandler(resources, forURLScheme: OneDOMResourceHandler.scheme)
66
+ }
67
+ let proxy = OneDOMMessageProxy()
68
+ proxy.host = self
69
+ configuration.userContentController.add(proxy, name: "oneDOM")
70
+ configuration.allowsInlineMediaPlayback = true
71
+ let web = WKWebView(frame: bounds, configuration: configuration)
72
+ let navigation = OneDOMNavigation()
73
+ navigation.host = self
74
+ self.navigation = navigation
75
+ web.navigationDelegate = navigation
76
+ web.uiDelegate = navigation
77
+ web.isOpaque = false
78
+ web.backgroundColor = .clear
79
+ web.scrollView.backgroundColor = .clear
80
+ web.scrollView.contentInsetAdjustmentBehavior = .never
81
+ web.scrollView.isScrollEnabled = scrollEnabled
82
+ web.allowsLinkPreview = false
83
+ #if DEBUG
84
+ web.isInspectable = true
85
+ #endif
86
+ addSubview(web)
87
+ self.web = web
88
+ web.load(URLRequest(url: target))
89
+ }
90
+
91
+ public override func layoutSubviews() {
92
+ super.layoutSubviews()
93
+ web?.frame = bounds
94
+ }
95
+
96
+ // commands arrive in order and go to whichever document is current; the
97
+ // envelope's epoch lets the page drop anything meant for an earlier one.
98
+ @objc public func post(_ message: String) {
99
+ guard let web, !epoch.isEmpty else { return }
100
+ web.callAsyncJavaScript(
101
+ "globalThis.__oneDOMReceive?.(raw)", arguments: ["raw": message], in: nil, in: .page,
102
+ completionHandler: nil)
103
+ }
104
+
105
+ // the page disposes while its realm is alive, then the view goes away.
106
+ @objc public func teardown() {
107
+ guard let retiring = web else { return }
108
+ let epoch = self.epoch
109
+ web = nil
110
+ owned = nil
111
+ self.epoch = ""
112
+ recovering = false
113
+ retiring.navigationDelegate = nil
114
+ retiring.uiDelegate = nil
115
+ navigation = nil
116
+ resources?.close()
117
+ resources = nil
118
+ retiring.removeFromSuperview()
119
+ var finished = false
120
+ let finish = {
121
+ guard !finished else { return }
122
+ finished = true
123
+ retiring.stopLoading()
124
+ retiring.configuration.userContentController.removeAllScriptMessageHandlers()
125
+ }
126
+ guard !epoch.isEmpty else { return finish() }
127
+ let dispose = "{\"version\":1,\"epoch\":" + Self.json(epoch) + ",\"type\":\"dispose\"}"
128
+ retiring.callAsyncJavaScript(
129
+ "globalThis.__oneDOMReceive?.(raw)", arguments: ["raw": dispose], in: nil, in: .page
130
+ ) { _ in finish() }
131
+ // a hung content process never answers; release the view anyway.
132
+ DispatchQueue.main.asyncAfter(deadline: .now() + 1, execute: finish)
133
+ }
134
+
135
+ deinit {
136
+ web?.configuration.userContentController.removeAllScriptMessageHandlers()
137
+ resources?.close()
138
+ }
139
+
140
+ // MARK: - documents
141
+
142
+ fileprivate func receive(_ message: WKScriptMessage) {
143
+ guard let web, message.webView === web, message.frameInfo.isMainFrame,
144
+ let owned, Self.sameOrigin(message.frameInfo.securityOrigin, owned),
145
+ let body = message.body as? String
146
+ else { return }
147
+ onMessage?(body)
148
+ }
149
+
150
+ // snapshots the committed state with a fresh epoch and installs it before
151
+ // the document's first script; onDocumentStart precedes all of its messages.
152
+ @discardableResult
153
+ private func beginDocument() -> Bool {
154
+ let epoch = UUID().uuidString.lowercased()
155
+ guard let (bootstrap, revision) = Self.bootstrap(state: bootstrapState, entryId: entryId, epoch: epoch) else {
156
+ self.epoch = epoch
157
+ onDocumentStart?(epoch, 0)
158
+ onError?(epoch, "Invalid One DOM bootstrap state", "DOM_PROTOCOL")
159
+ return false
160
+ }
161
+ let controller = web!.configuration.userContentController
162
+ controller.removeAllUserScripts()
163
+ controller.addUserScript(
164
+ WKUserScript(
165
+ source: Self.transport(bootstrap, development: !developmentURL.isEmpty), injectionTime: .atDocumentStart, forMainFrameOnly: true))
166
+ self.epoch = epoch
167
+ onDocumentStart?(epoch, revision)
168
+ return true
169
+ }
170
+
171
+ private func fail(_ message: String, code: String) {
172
+ let epoch = UUID().uuidString.lowercased()
173
+ self.epoch = epoch
174
+ onDocumentStart?(epoch, Self.revision(of: bootstrapState) ?? 0)
175
+ onError?(epoch, message, code)
176
+ }
177
+
178
+ static func bootstrap(state: String, entryId: String, epoch: String) -> (String, Double)? {
179
+ let trimmed = state.trimmingCharacters(in: .whitespacesAndNewlines)
180
+ guard trimmed.hasPrefix("{"),
181
+ let object = (try? JSONSerialization.jsonObject(with: Data(trimmed.utf8))) as? [String: Any],
182
+ (object["version"] as? NSNumber)?.intValue == 1,
183
+ let revision = (object["revision"] as? NSNumber)?.doubleValue,
184
+ object["epoch"] == nil, object["entryId"] == nil, object["os"] == nil
185
+ else { return nil }
186
+ // splice the committed bytes rather than re-encode them, so numbers and
187
+ // strings reach the page exactly as JS serialized them.
188
+ let head = "{\"entryId\":" + json(entryId) + ",\"os\":\"ios\",\"epoch\":" + json(epoch) + ","
189
+ return (head + trimmed.dropFirst(), revision)
190
+ }
191
+
192
+ static func revision(of state: String) -> Double? {
193
+ let object = (try? JSONSerialization.jsonObject(with: Data(state.utf8))) as? [String: Any]
194
+ return (object?["revision"] as? NSNumber)?.doubleValue
195
+ }
196
+
197
+ // the transport contract from src/dom/browserBridge.ts: bootstrap,
198
+ // postMessage and subscribe, installed before any application script.
199
+ static func transport(_ bootstrap: String, development: Bool) -> String {
200
+ """
201
+ (() => {
202
+ const listeners = new Set()
203
+ const handler = window.webkit.messageHandlers.oneDOM
204
+ const bootstrap = \(bootstrap)
205
+ const send = (raw) => handler.postMessage(raw)
206
+ // failures before the page subscribes, such as a module that throws
207
+ // while evaluating or an entry that fails to load, still reach native.
208
+ const early = (error, fallback) => {
209
+ // the same fields serializeError in src/dom/serialize.ts gives
210
+ let failure = { name: 'Error', message: fallback }
211
+ try {
212
+ if (error instanceof Error) {
213
+ failure = { name: String(error.name || 'Error'), message: String(error.message) }
214
+ if (typeof error.code === 'string') failure.code = error.code
215
+ if (\(development) && typeof error.stack === 'string') failure.stack = error.stack
216
+ } else if (error === null || ['string', 'number', 'boolean', 'bigint'].includes(typeof error)) {
217
+ failure.message = String(error)
218
+ }
219
+ } catch {}
220
+ send(JSON.stringify({ version: 1, epoch: bootstrap.epoch, type: 'error', error: failure }))
221
+ }
222
+ const onError = (event) => {
223
+ const target = event.target
224
+ if (event instanceof ErrorEvent) early(event.error, event.message || 'Script error')
225
+ else if (target instanceof HTMLScriptElement || target instanceof HTMLLinkElement)
226
+ early(undefined, 'Failed to load ' + (target.src || target.href))
227
+ }
228
+ const onRejection = (event) => early(event.reason, 'Unhandled promise rejection')
229
+ addEventListener('error', onError, true)
230
+ addEventListener('unhandledrejection', onRejection)
231
+ // the page's first subscriber reports from then on
232
+ let handedOff = false
233
+ const handoff = () => {
234
+ if (handedOff) return
235
+ handedOff = true
236
+ removeEventListener('error', onError, true)
237
+ removeEventListener('unhandledrejection', onRejection)
238
+ }
239
+ Object.defineProperty(globalThis, '__oneDOMReceive', {
240
+ value: (raw) => { for (const listener of [...listeners]) listener(raw) },
241
+ })
242
+ Object.defineProperty(globalThis, '__oneDOM', {
243
+ value: Object.freeze({
244
+ bootstrap,
245
+ postMessage(raw) {
246
+ if (typeof raw !== 'string') throw new TypeError('One DOM messages are strings')
247
+ send(raw)
248
+ },
249
+ subscribe(listener) {
250
+ handoff()
251
+ listeners.add(listener)
252
+ return () => { listeners.delete(listener) }
253
+ },
254
+ }),
255
+ })
256
+ })()
257
+ """
258
+ }
259
+
260
+ static func json(_ string: String) -> String {
261
+ let data = try! JSONSerialization.data(withJSONObject: string, options: [.fragmentsAllowed])
262
+ return String(decoding: data, as: UTF8.self)
263
+ }
264
+
265
+ static func withoutFragment(_ url: URL) -> URL {
266
+ var components = URLComponents(url: url, resolvingAgainstBaseURL: false)
267
+ components?.fragment = nil
268
+ return components?.url ?? url
269
+ }
270
+
271
+ static func sameOrigin(_ origin: WKSecurityOrigin, _ url: URL) -> Bool {
272
+ origin.protocol == url.scheme && origin.host == (url.host ?? "") && origin.port == (url.port ?? 0)
273
+ }
274
+ }
275
+
276
+ extension OneDOMHostView {
277
+ fileprivate func decide(
278
+ _ webView: WKWebView, _ action: WKNavigationAction,
279
+ decisionHandler: @escaping (WKNavigationActionPolicy) -> Void
280
+ ) {
281
+ guard webView === web, let frame = action.targetFrame else { return decisionHandler(.cancel) }
282
+ // embedded frames load what the page asks for; owned files still go
283
+ // through the resource handler's rules.
284
+ guard frame.isMainFrame else { return decisionHandler(.allow) }
285
+ guard let url = action.request.url, let owned, Self.withoutFragment(url) == owned else {
286
+ return decisionHandler(.cancel)
287
+ }
288
+ if action.navigationType != .reload, url.fragment != nil, let current = webView.url,
289
+ Self.withoutFragment(current) == owned, !epoch.isEmpty
290
+ {
291
+ return decisionHandler(.allow)
292
+ }
293
+ decisionHandler(beginDocument() ? .allow : .cancel)
294
+ }
295
+
296
+ fileprivate func decide(
297
+ _ webView: WKWebView, _ response: WKNavigationResponse,
298
+ decisionHandler: @escaping (WKNavigationResponsePolicy) -> Void
299
+ ) {
300
+ if webView === web, response.isForMainFrame, let http = response.response as? HTTPURLResponse,
301
+ http.statusCode >= 400
302
+ {
303
+ decisionHandler(.cancel)
304
+ onError?(epoch, "One DOM page responded \(http.statusCode)", "DOM_LOAD_FAILED")
305
+ return
306
+ }
307
+ decisionHandler(.allow)
308
+ }
309
+
310
+ fileprivate func finished(_ webView: WKWebView) {
311
+ guard webView === web else { return }
312
+ recovering = false
313
+ onLoad?(epoch)
314
+ }
315
+
316
+ fileprivate func report(_ webView: WKWebView, _ error: Error) {
317
+ let error = error as NSError
318
+ // a newer navigation replaced this one, or a policy cancel already reported it.
319
+ if webView !== web || error.code == NSURLErrorCancelled
320
+ || (error.domain == "WebKitErrorDomain" && error.code == 102)
321
+ {
322
+ return
323
+ }
324
+ onError?(epoch, error.localizedDescription, "DOM_LOAD_FAILED")
325
+ }
326
+
327
+ fileprivate func terminated(_ webView: WKWebView) {
328
+ guard webView === web, let owned else { return }
329
+ onProcessTerminated?(epoch)
330
+ guard !recovering else { return }
331
+ recovering = true
332
+ webView.load(URLRequest(url: owned))
333
+ }
334
+ }
335
+
336
+ // webkit delegates live off the public class so they stay out of One-Swift.h.
337
+ private final class OneDOMNavigation: NSObject, WKNavigationDelegate, WKUIDelegate {
338
+ weak var host: OneDOMHostView?
339
+
340
+ func webView(
341
+ _ webView: WKWebView, decidePolicyFor action: WKNavigationAction,
342
+ decisionHandler: @escaping (WKNavigationActionPolicy) -> Void
343
+ ) {
344
+ guard let host else { return decisionHandler(.cancel) }
345
+ host.decide(webView, action, decisionHandler: decisionHandler)
346
+ }
347
+
348
+ func webView(
349
+ _ webView: WKWebView, decidePolicyFor response: WKNavigationResponse,
350
+ decisionHandler: @escaping (WKNavigationResponsePolicy) -> Void
351
+ ) {
352
+ guard let host else { return decisionHandler(.cancel) }
353
+ host.decide(webView, response, decisionHandler: decisionHandler)
354
+ }
355
+
356
+ func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
357
+ host?.finished(webView)
358
+ }
359
+
360
+ func webView(_ webView: WKWebView, didFail navigation: WKNavigation!, withError error: Error) {
361
+ host?.report(webView, error)
362
+ }
363
+
364
+ func webView(
365
+ _ webView: WKWebView, didFailProvisionalNavigation navigation: WKNavigation!, withError error: Error
366
+ ) {
367
+ host?.report(webView, error)
368
+ }
369
+
370
+ func webViewWebContentProcessDidTerminate(_ webView: WKWebView) {
371
+ host?.terminated(webView)
372
+ }
373
+
374
+ // target=_blank and window.open never leave the owned page.
375
+ func webView(
376
+ _ webView: WKWebView, createWebViewWith configuration: WKWebViewConfiguration,
377
+ for action: WKNavigationAction, windowFeatures: WKWindowFeatures
378
+ ) -> WKWebView? {
379
+ nil
380
+ }
381
+ }
382
+
383
+ // the content controller retains its handlers; the host must not be one of them.
384
+ private final class OneDOMMessageProxy: NSObject, WKScriptMessageHandler {
385
+ weak var host: OneDOMHostView?
386
+ func userContentController(_ controller: WKUserContentController, didReceive message: WKScriptMessage) {
387
+ host?.receive(message)
388
+ }
389
+ }