@octane-xplat/ui 0.5.0 → 0.6.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 (281) hide show
  1. package/README.md +3 -0
  2. package/dist/native/Absolute.native.tsrx.js +43 -0
  3. package/dist/native/Accordion.native.tsrx.js +75 -0
  4. package/dist/native/ActivityIndicator.native.tsrx.js +35 -0
  5. package/dist/native/Alert.native.tsrx.js +74 -0
  6. package/dist/native/Avatar.native.tsrx.js +76 -0
  7. package/dist/native/AvatarGroup.native.tsrx.js +84 -0
  8. package/dist/native/Badge.native.tsrx.js +29 -0
  9. package/dist/native/Banner.native.tsrx.js +80 -0
  10. package/dist/native/Breadcrumb.native.tsrx.js +66 -0
  11. package/dist/native/Button.native.tsrx.js +62 -0
  12. package/dist/native/CameraView.native.tsrx.js +165 -0
  13. package/dist/native/Card.native.tsrx.js +64 -0
  14. package/dist/native/Checkbox.native.tsrx.js +58 -0
  15. package/dist/native/CheckboxGroup.native.tsrx.js +70 -0
  16. package/dist/native/Chip.native.tsrx.js +83 -0
  17. package/dist/native/Collapsible.native.tsrx.js +74 -0
  18. package/dist/native/CommandPalette.native.tsrx.js +143 -0
  19. package/dist/native/ContextMenu.native.tsrx.js +140 -0
  20. package/dist/native/Drawer.native.tsrx.js +60 -0
  21. package/dist/native/DropdownMenu.native.tsrx.js +155 -0
  22. package/dist/native/Empty.native.tsrx.js +82 -0
  23. package/dist/native/FieldGroup.native.tsrx.js +39 -0
  24. package/dist/native/FormField.native.tsrx.js +53 -0
  25. package/dist/native/{ui8.js → Grid.native.tsrx.js} +19 -8
  26. package/dist/native/{ui59.js → Heading.native.tsrx.js} +2 -2
  27. package/dist/native/{ui58.js → Icon.native.tsrx.js} +4 -4
  28. package/dist/native/{ui29.js → Image.native.tsrx.js} +4 -4
  29. package/dist/native/InputNumber.native.tsrx.js +146 -0
  30. package/dist/native/InputRating.native.tsrx.js +74 -0
  31. package/dist/native/InputTags.native.tsrx.js +131 -0
  32. package/dist/native/Kbd.native.tsrx.js +29 -0
  33. package/dist/native/{ui50.js → KeyboardAvoiding.native.tsrx.js} +1 -1
  34. package/dist/native/{ui17.js → Link.native.tsrx.js} +1 -1
  35. package/dist/native/{ui55.js → Meter.native.tsrx.js} +2 -2
  36. package/dist/native/{ui22.js → NavLink.native.tsrx.js} +3 -3
  37. package/dist/native/NavigationMenu.native.tsrx.js +67 -0
  38. package/dist/native/{ui35.js → Overlay.native.tsrx.js} +3 -3
  39. package/dist/native/Pager.native.tsrx.js +282 -0
  40. package/dist/native/Pagination.native.tsrx.js +107 -0
  41. package/dist/native/PinInput.native.tsrx.js +94 -0
  42. package/dist/native/{ui38.js → Popover.native.tsrx.js} +5 -5
  43. package/dist/native/{ui16.js → Pressable.native.tsrx.js} +20 -14
  44. package/dist/native/ProgressGroup.native.tsrx.js +66 -0
  45. package/dist/native/RadioGroup.native.tsrx.js +85 -0
  46. package/dist/native/{ui15.js → RichText.native.tsrx.js} +15 -22
  47. package/dist/native/Row.native.tsrx.js +98 -0
  48. package/dist/native/{ui49.js → SafeArea.native.tsrx.js} +2 -2
  49. package/dist/native/{ui45.js → Screen.native.tsrx.js} +3 -3
  50. package/dist/native/{ui26.js → ScrollBox.native.tsrx.js} +1 -1
  51. package/dist/native/ScrollView.native.tsrx.js +233 -0
  52. package/dist/native/SearchInput.native.tsrx.js +151 -0
  53. package/dist/native/SegmentedControl.native.tsrx.js +75 -0
  54. package/dist/native/Select.native.tsrx.js +202 -0
  55. package/dist/native/Separator.native.tsrx.js +25 -0
  56. package/dist/native/{ui63.js → Sheet.native.tsrx.js} +15 -7
  57. package/dist/native/Skeleton.native.tsrx.js +28 -0
  58. package/dist/native/Slider.native.tsrx.js +98 -0
  59. package/dist/native/{ui13.js → Spacer.native.tsrx.js} +2 -2
  60. package/dist/native/{ui9.js → Stack.native.tsrx.js} +20 -9
  61. package/dist/native/Stepper.native.tsrx.js +75 -0
  62. package/dist/native/Switch.native.tsrx.js +33 -0
  63. package/dist/native/Table.native.tsrx.js +103 -0
  64. package/dist/native/Tabs.native.tsrx.js +163 -0
  65. package/dist/native/{ui14.js → Text.native.tsrx.js} +4 -3
  66. package/dist/native/{ui24.js → TextArea.native.tsrx.js} +17 -16
  67. package/dist/native/{ui23.js → TextInput.native.tsrx.js} +21 -16
  68. package/dist/native/Timeline.native.tsrx.js +112 -0
  69. package/dist/native/Tree.native.tsrx.js +140 -0
  70. package/dist/native/User.native.tsrx.js +95 -0
  71. package/dist/native/Video.native.tsrx.js +248 -0
  72. package/dist/native/View.native.tsrx.js +98 -0
  73. package/dist/native/WebView.native.tsrx.js +110 -0
  74. package/dist/native/aliases.native.tsrx.js +38 -0
  75. package/dist/native/android/BottomNavigationView.android.tsrx.js +171 -0
  76. package/dist/native/android/CircularProgressIndicator.android.tsrx.js +27 -0
  77. package/dist/native/{ui51.js → android/DrawerLayout.android.tsrx.js} +5 -7
  78. package/dist/native/android/MaterialDialog.android.tsrx.js +62 -0
  79. package/dist/native/android/MaterialSwitch.android.tsrx.js +28 -0
  80. package/dist/native/android/RecyclerView.android.tsrx.js +248 -0
  81. package/dist/native/android/SeekBar.android.tsrx.js +34 -0
  82. package/dist/native/android/index.js +9 -0
  83. package/dist/native/android/openModal.android.js +39 -0
  84. package/dist/native/camera-permission.native.js +47 -0
  85. package/dist/native/child-array.js +15 -0
  86. package/dist/native/icons.js +25 -0
  87. package/dist/native/{ui11.js → ios/LiquidGlass.ios.tsrx.js} +4 -4
  88. package/dist/native/{ui12.js → ios/LiquidGlassContainer.ios.tsrx.js} +4 -4
  89. package/dist/native/ios/SideDrawer.ios.tsrx.js +64 -0
  90. package/dist/native/{ui53.js → ios/UIActivityIndicatorView.ios.tsrx.js} +5 -5
  91. package/dist/native/{ui32.js → ios/UIModal.ios.tsrx.js} +10 -6
  92. package/dist/native/{ui56.js → ios/UISlider.ios.tsrx.js} +5 -5
  93. package/dist/native/{ui47.js → ios/UISwitch.ios.tsrx.js} +5 -5
  94. package/dist/native/ios/UITabBar.ios.tsrx.js +166 -0
  95. package/dist/native/ios/UITableView.ios.tsrx.js +270 -0
  96. package/dist/native/ios/index.js +11 -0
  97. package/dist/native/{ui33.js → ios/openModal.ios.js} +5 -4
  98. package/dist/native/modal-presenter.native.js +19 -0
  99. package/dist/native/native/index.js +4 -0
  100. package/dist/native/octane-client-build.json +1 -1
  101. package/dist/native/{ui6.js → pan.native.tsrx.js} +9 -69
  102. package/dist/native/platform.native.js +10 -0
  103. package/dist/native/refresh-metrics.js +9 -0
  104. package/dist/native/refresh.native.js +177 -0
  105. package/dist/native/{ui34.js → root-layout.native.js} +6 -1
  106. package/dist/native/{ui21.js → route.native.js} +96 -12
  107. package/dist/native/sheet-detents.native.js +102 -0
  108. package/dist/native/{ui64.js → sheet-service.native.js} +19 -9
  109. package/dist/native/sheet-snap.js +35 -0
  110. package/dist/native/text-write.native.js +27 -0
  111. package/dist/native/{ui42.js → theme/status-bar-scheme.native.js} +2 -2
  112. package/dist/{web/ui29.js → native/theme/theme-scheme.js} +2 -2
  113. package/dist/native/{ui40.js → toast-anchor.native.tsrx.js} +3 -3
  114. package/dist/native/translate.native.js +11 -0
  115. package/dist/native/ui.js +93 -55
  116. package/dist/native/use-back.native.tsrx.js +9 -0
  117. package/dist/native/{ui52.js → useMeasure.native.tsrx.js} +1 -1
  118. package/dist/native/video-chrome.native.tsrx.js +365 -0
  119. package/dist/web/Absolute.web.tsrx.js +47 -0
  120. package/dist/web/Accordion.web.tsrx.js +85 -0
  121. package/dist/web/{ui48.js → ActivityIndicator.web.tsrx.js} +1 -1
  122. package/dist/web/Alert.web.tsrx.js +79 -0
  123. package/dist/web/Avatar.web.tsrx.js +106 -0
  124. package/dist/web/AvatarGroup.web.tsrx.js +108 -0
  125. package/dist/web/Badge.web.tsrx.js +37 -0
  126. package/dist/web/Banner.web.tsrx.js +79 -0
  127. package/dist/web/Breadcrumb.web.tsrx.js +135 -0
  128. package/dist/web/Button.web.tsrx.js +45 -0
  129. package/dist/web/CameraView.web.tsrx.js +310 -0
  130. package/dist/web/Card.web.tsrx.js +73 -0
  131. package/dist/web/Checkbox.web.tsrx.js +89 -0
  132. package/dist/web/CheckboxGroup.web.tsrx.js +79 -0
  133. package/dist/web/Chip.web.tsrx.js +64 -0
  134. package/dist/web/Collapsible.web.tsrx.js +94 -0
  135. package/dist/web/CommandPalette.web.tsrx.js +125 -0
  136. package/dist/web/ContextMenu.web.tsrx.js +154 -0
  137. package/dist/web/{ui45.js → Drawer.web.tsrx.js} +13 -9
  138. package/dist/web/DropdownMenu.web.tsrx.js +162 -0
  139. package/dist/web/Empty.web.tsrx.js +89 -0
  140. package/dist/web/FieldGroup.web.tsrx.js +57 -0
  141. package/dist/web/FormField.web.tsrx.js +92 -0
  142. package/dist/web/Grid.web.tsrx.js +65 -0
  143. package/dist/web/{ui54.js → Heading.web.tsrx.js} +2 -2
  144. package/dist/web/{ui53.js → Icon.web.tsrx.js} +2 -2
  145. package/dist/web/{ui25.js → Image.web.tsrx.js} +2 -2
  146. package/dist/web/InputNumber.web.tsrx.js +99 -0
  147. package/dist/web/InputRating.web.tsrx.js +72 -0
  148. package/dist/web/InputTags.web.tsrx.js +122 -0
  149. package/dist/web/Kbd.web.tsrx.js +37 -0
  150. package/dist/web/{ui50.js → Meter.web.tsrx.js} +1 -1
  151. package/dist/web/{ui19.js → NavLink.web.tsrx.js} +1 -1
  152. package/dist/web/NavigationMenu.web.tsrx.js +118 -0
  153. package/dist/web/{ui31.js → Overlay.web.tsrx.js} +2 -2
  154. package/dist/web/Pager.web.tsrx.js +337 -0
  155. package/dist/web/Pagination.web.tsrx.js +80 -0
  156. package/dist/web/PinInput.web.tsrx.js +72 -0
  157. package/dist/web/{ui33.js → Popover.web.tsrx.js} +3 -3
  158. package/dist/web/{ui15.js → Pressable.web.tsrx.js} +68 -95
  159. package/dist/web/ProgressGroup.web.tsrx.js +109 -0
  160. package/dist/web/RadioGroup.web.tsrx.js +69 -0
  161. package/dist/web/{ui14.js → RichText.web.tsrx.js} +2 -2
  162. package/dist/web/Row.web.tsrx.js +250 -0
  163. package/dist/web/{ui43.js → SafeArea.web.tsrx.js} +1 -1
  164. package/dist/web/{ui39.js → Screen.web.tsrx.js} +1 -1
  165. package/dist/web/{ui24.js → ScrollBox.web.tsrx.js} +1 -1
  166. package/dist/web/ScrollView.web.tsrx.js +388 -0
  167. package/dist/web/SearchInput.web.tsrx.js +137 -0
  168. package/dist/web/SegmentedControl.web.tsrx.js +75 -0
  169. package/dist/web/Select.web.tsrx.js +149 -0
  170. package/dist/web/Separator.web.tsrx.js +42 -0
  171. package/dist/web/Sheet.web.tsrx.js +81 -0
  172. package/dist/web/Skeleton.web.tsrx.js +56 -0
  173. package/dist/web/Slider.web.tsrx.js +97 -0
  174. package/dist/web/{ui12.js → Spacer.web.tsrx.js} +1 -1
  175. package/dist/web/Stack.web.tsrx.js +47 -0
  176. package/dist/web/Stepper.web.tsrx.js +65 -0
  177. package/dist/web/Switch.web.tsrx.js +59 -0
  178. package/dist/web/Table.web.tsrx.js +161 -0
  179. package/dist/web/{ui40.js → Tabs.web.tsrx.js} +33 -16
  180. package/dist/web/{ui13.js → Text.web.tsrx.js} +18 -50
  181. package/dist/web/{ui21.js → TextArea.web.tsrx.js} +4 -4
  182. package/dist/web/{ui20.js → TextInput.web.tsrx.js} +8 -8
  183. package/dist/web/Timeline.web.tsrx.js +172 -0
  184. package/dist/web/Tree.web.tsrx.js +146 -0
  185. package/dist/web/User.web.tsrx.js +116 -0
  186. package/dist/web/Video.web.tsrx.js +400 -0
  187. package/dist/web/View.web.tsrx.js +250 -0
  188. package/dist/web/WebView.web.tsrx.js +235 -0
  189. package/dist/web/aliases.web.tsrx.js +24 -0
  190. package/dist/web/{ui36.js → anim.web.tsrx.js} +3 -35
  191. package/dist/web/child-array.js +15 -0
  192. package/dist/web/icons.js +25 -0
  193. package/dist/web/octane-client-build.json +1 -1
  194. package/dist/web/pan.web.tsrx.js +66 -0
  195. package/dist/web/platform.web.js +9 -0
  196. package/dist/web/refresh-metrics.js +9 -0
  197. package/dist/web/refresh.web.js +133 -0
  198. package/dist/web/{ui18.js → route.web.js} +14 -2
  199. package/dist/web/sheet-detents.web.js +103 -0
  200. package/dist/web/{ui60.js → sheet-service.web.js} +5 -1
  201. package/dist/web/sheet-snap.js +35 -0
  202. package/dist/{native/ui31.js → web/theme/theme-scheme.js} +2 -2
  203. package/dist/web/{ui35.js → toast-anchor.web.tsrx.js} +3 -3
  204. package/dist/web/transform.web.js +43 -0
  205. package/dist/web/translate.web.js +13 -0
  206. package/dist/web/ui.js +91 -53
  207. package/dist/web/use-back.web.tsrx.js +9 -0
  208. package/dist/web/video-chrome.web.tsrx.js +207 -0
  209. package/dist/web/{ui34.js → web/Hoverable.web.tsrx.js} +6 -6
  210. package/dist/web/web/Tooltip.web.tsrx.js +183 -0
  211. package/dist/web/web/index.js +3 -0
  212. package/package.json +30 -3
  213. package/src/theme/tokens.css +1380 -200
  214. package/types/android.d.ts +53 -0
  215. package/types/index.d.ts +32 -17
  216. package/types/index.native.d.ts +273 -0
  217. package/types/index.web.d.ts +272 -0
  218. package/types/ios.d.ts +59 -0
  219. package/types/native.d.ts +5 -0
  220. package/types/props.d.ts +930 -40
  221. package/types/web.d.ts +17 -0
  222. package/dist/native/ui10.js +0 -32
  223. package/dist/native/ui25.js +0 -141
  224. package/dist/native/ui27.js +0 -61
  225. package/dist/native/ui39.js +0 -103
  226. package/dist/native/ui4.js +0 -24
  227. package/dist/native/ui46.js +0 -267
  228. package/dist/native/ui57.js +0 -19
  229. package/dist/native/ui60.js +0 -14
  230. package/dist/native/ui7.js +0 -52
  231. package/dist/web/ui10.js +0 -46
  232. package/dist/web/ui11.js +0 -42
  233. package/dist/web/ui22.js +0 -108
  234. package/dist/web/ui23.js +0 -96
  235. package/dist/web/ui26.js +0 -45
  236. package/dist/web/ui3.js +0 -31
  237. package/dist/web/ui30.js +0 -34
  238. package/dist/web/ui41.js +0 -43
  239. package/dist/web/ui44.js +0 -42
  240. package/dist/web/ui5.js +0 -168
  241. package/dist/web/ui51.js +0 -47
  242. package/dist/web/ui52.js +0 -19
  243. package/dist/web/ui55.js +0 -17
  244. package/dist/web/ui59.js +0 -44
  245. package/dist/web/ui6.js +0 -94
  246. package/dist/web/ui7.js +0 -62
  247. package/dist/web/ui8.js +0 -46
  248. package/dist/web/ui9.js +0 -46
  249. /package/dist/native/{ui20.js → RouteHost.native.tsrx.js} +0 -0
  250. /package/dist/native/{ui41.js → anim.native.tsrx.js} +0 -0
  251. /package/dist/native/{ui2.js → cx.js} +0 -0
  252. /package/dist/native/{ui3.js → escape-props.native.js} +0 -0
  253. /package/dist/native/{ui5.js → layout-child.native.js} +0 -0
  254. /package/dist/native/{ui54.js → meter-math.js} +0 -0
  255. /package/dist/native/{ui36.js → platformProps.native.js} +0 -0
  256. /package/dist/native/{ui37.js → popover-position.js} +0 -0
  257. /package/dist/native/{ui19.js → route-table.js} +0 -0
  258. /package/dist/native/{ui48.js → safeAreaInsets.native.tsrx.js} +0 -0
  259. /package/dist/native/{ui18.js → stacks.native.js} +0 -0
  260. /package/dist/native/{ui61.js → store.js} +0 -0
  261. /package/dist/native/{ui43.js → styled.native.tsrx.js} +0 -0
  262. /package/dist/native/{ui28.js → svg.native.js} +0 -0
  263. /package/dist/native/{ui30.js → theme/colorScheme.native.js} +0 -0
  264. /package/dist/native/{ui62.js → use-store.native.tsrx.js} +0 -0
  265. /package/dist/native/{ui44.js → windows.native.js} +0 -0
  266. /package/dist/web/{ui16.js → Link.web.tsrx.js} +0 -0
  267. /package/dist/web/{ui28.js → cx.js} +0 -0
  268. /package/dist/web/{ui2.js → escape-props.web.js} +0 -0
  269. /package/dist/web/{ui4.js → layout-child.web.js} +0 -0
  270. /package/dist/web/{ui49.js → meter-math.js} +0 -0
  271. /package/dist/web/{ui47.js → platformProps.web.js} +0 -0
  272. /package/dist/web/{ui32.js → popover-position.js} +0 -0
  273. /package/dist/web/{ui17.js → route-table.js} +0 -0
  274. /package/dist/web/{ui42.js → safeAreaInsets.web.tsrx.js} +0 -0
  275. /package/dist/web/{ui56.js → stacks.web.js} +0 -0
  276. /package/dist/web/{ui57.js → store.js} +0 -0
  277. /package/dist/web/{ui37.js → styled.web.tsrx.js} +0 -0
  278. /package/dist/web/{ui27.js → theme/colorScheme.web.js} +0 -0
  279. /package/dist/web/{ui58.js → use-store.web.tsrx.js} +0 -0
  280. /package/dist/web/{ui46.js → useMeasure.web.tsrx.js} +0 -0
  281. /package/dist/web/{ui38.js → windows.web.js} +0 -0
@@ -0,0 +1,53 @@
1
+ // Boundary types for @octane-xplat/ui/android — Android-authentic widgets.
2
+ // OS chrome is the point; the self-drawn shared versions live in the root
3
+ // export. This subpath resolves only under the `native` condition.
4
+
5
+ import type { UniversalComponent } from 'octane/universal'
6
+ import type {
7
+ ActivityIndicatorProps,
8
+ DrawerProps,
9
+ ListProps,
10
+ ModalProps,
11
+ ModalOpenOptions,
12
+ ModalOpenResult,
13
+ OpenModal,
14
+ RefreshProps,
15
+ SwitchProps,
16
+ SliderProps,
17
+ TabsProps,
18
+ TabSpec,
19
+ } from './props'
20
+
21
+ export type {
22
+ ActivityIndicatorProps,
23
+ DrawerProps,
24
+ ListProps,
25
+ ModalProps,
26
+ ModalOpenOptions,
27
+ ModalOpenResult,
28
+ OpenModal,
29
+ RefreshProps,
30
+ SwitchProps,
31
+ SliderProps,
32
+ TabsProps,
33
+ TabSpec,
34
+ } from './props'
35
+
36
+ /** Material SwitchMaterial via NativeScript `switch`. */
37
+ export declare const MaterialSwitch: UniversalComponent<SwitchProps>
38
+ /** Android SeekBar via NativeScript `slider`. */
39
+ export declare const SeekBar: UniversalComponent<SliderProps>
40
+ /** Android indeterminate ProgressBar via NativeScript `activityindicator`. */
41
+ export declare const CircularProgressIndicator: UniversalComponent<ActivityIndicatorProps>
42
+ /** Android RecyclerView via NativeScript `listview` — recycled platform list. */
43
+ export declare const RecyclerView: UniversalComponent<ListProps>
44
+ /** Android bottom navigation via NativeScript TabView. Caveat: `stack`
45
+ * panes rely on Frame-in-TabViewItem, which is unreliable upstream
46
+ * (NativeScript#11444) — the shared `Tabs` keeps stack history in the
47
+ * route store and is the reliable path on Android. */
48
+ export declare const BottomNavigationView: UniversalComponent<TabsProps>
49
+ /** Platform modal presentation (`showModal`; fullscreen=false → dialog). */
50
+ export declare const MaterialDialog: UniversalComponent<ModalProps>
51
+ export declare const openModal: OpenModal
52
+ /** AndroidX DrawerLayout via the ui-drawer plugin. */
53
+ export declare const DrawerLayout: UniversalComponent<DrawerProps>
package/types/index.d.ts CHANGED
@@ -13,34 +13,33 @@ import type {
13
13
  ActivityIndicatorProps,
14
14
  BeforeLoad,
15
15
  BeforeLoadArgs,
16
+ CameraViewHandle,
17
+ CameraViewProps,
16
18
  ColorScheme,
17
19
  DrawerProps,
18
20
  GridProps,
19
21
  HeadingProps,
20
- HoverableProps,
21
22
  IconGlyph,
22
23
  IconProps,
23
24
  ImageProps,
24
25
  KeyboardAvoidingProps,
25
26
  LayoutChildProps,
26
27
  LinkProps,
27
- ListProps,
28
28
  MeterProps,
29
- ModalProps,
30
- ModalOpenOptions,
31
29
  ModalOpenResult,
32
30
  MeasureBounds,
33
31
  MeasureResult,
34
32
  NavLinkProps,
35
- OpenModal,
36
33
  OpenWindowOptions,
37
34
  OverlayProps,
38
35
  PopoverAnchorRef,
39
36
  PopoverPlacement,
40
37
  PopoverProps,
38
+ PagerProps,
41
39
  PlatformBadgeProps,
42
40
  PressableProps,
43
41
  ReadableStore,
42
+ RefreshProps,
44
43
  Route,
45
44
  RouteContext,
46
45
  RouteHead,
@@ -54,6 +53,8 @@ import type {
54
53
  SafeAreaProps,
55
54
  ScreenTable,
56
55
  ScrollViewProps,
56
+ SearchInputProps,
57
+ SegmentedControlProps,
57
58
  SliderProps,
58
59
  Store,
59
60
  SpacerProps,
@@ -68,7 +69,14 @@ import type {
68
69
  ToastOptions,
69
70
  ToastPosition,
70
71
  UseMeasureOptions,
72
+ VideoEvent,
73
+ VideoFit,
74
+ VideoHandle,
75
+ VideoProps,
71
76
  ViewProps,
77
+ WebViewHandle,
78
+ WebViewLoadEvent,
79
+ WebViewProps,
72
80
  } from './props'
73
81
 
74
82
  export type {
@@ -77,34 +85,32 @@ export type {
77
85
  ActivityIndicatorProps,
78
86
  BeforeLoad,
79
87
  BeforeLoadArgs,
88
+ CameraViewHandle,
89
+ CameraViewProps,
80
90
  ColorScheme,
81
91
  DrawerProps,
82
92
  GridProps,
83
93
  HeadingProps,
84
- HoverableProps,
85
94
  IconGlyph,
86
95
  IconProps,
87
96
  ImageProps,
88
97
  KeyboardAvoidingProps,
89
98
  LayoutChildProps,
90
99
  LinkProps,
91
- ListProps,
92
- ModalProps,
93
- ModalOpenOptions,
94
100
  ModalOpenResult,
95
101
  MeasureBounds,
96
102
  MeasureResult,
97
103
  NavLinkProps,
98
- OpenModal,
99
104
  OpenWindowOptions,
100
105
  OverlayProps,
101
106
  PopoverAnchorRef,
102
107
  PopoverPlacement,
103
108
  PopoverProps,
109
+ PagerProps,
104
110
  PanEvent,
105
- PlatformBadgeProps,
106
111
  PressableProps,
107
112
  ReadableStore,
113
+ RefreshProps,
108
114
  Route,
109
115
  RouteContext,
110
116
  RouteHead,
@@ -118,6 +124,8 @@ export type {
118
124
  SafeAreaProps,
119
125
  ScreenTable,
120
126
  ScrollViewProps,
127
+ SearchInputProps,
128
+ SegmentedControlProps,
121
129
  SliderProps,
122
130
  Store,
123
131
  SpacerProps,
@@ -133,7 +141,14 @@ export type {
133
141
  ToastOptions,
134
142
  ToastPosition,
135
143
  UseMeasureOptions,
144
+ VideoEvent,
145
+ VideoFit,
146
+ VideoHandle,
147
+ VideoProps,
136
148
  ViewProps,
149
+ WebViewHandle,
150
+ WebViewLoadEvent,
151
+ WebViewProps,
137
152
  } from './props'
138
153
 
139
154
  /** ScrollBox shares ScrollView's public shell props; native renders it inline. */
@@ -157,33 +172,34 @@ export declare const Link: UniversalComponent<LinkProps>
157
172
  export declare const NavLink: UniversalComponent<NavLinkProps>
158
173
  export declare const TextInput: UniversalComponent<TextInputProps>
159
174
  export declare const TextArea: UniversalComponent<TextAreaProps>
160
- export declare const List: UniversalComponent<ListProps>
175
+ export declare const SearchInput: UniversalComponent<SearchInputProps>
161
176
  export declare const ScrollBox: UniversalComponent<ScrollBoxProps>
162
177
  export declare const ScrollView: UniversalComponent<ScrollViewProps>
178
+ export declare const Pager: UniversalComponent<PagerProps>
163
179
  export declare const Image: UniversalComponent<ImageProps>
180
+ export declare const WebView: UniversalComponent<WebViewProps>
181
+ export declare const Video: UniversalComponent<VideoProps>
182
+ export declare const CameraView: UniversalComponent<CameraViewProps>
164
183
  export declare const Screen: UniversalComponent<ScreenProps>
165
184
  export declare const SafeArea: UniversalComponent<SafeAreaProps>
166
185
  export declare const KeyboardAvoiding: UniversalComponent<KeyboardAvoidingProps>
167
186
  export declare const Drawer: UniversalComponent<DrawerProps>
168
187
  export declare const Switch: UniversalComponent<SwitchProps>
188
+ export declare const SegmentedControl: UniversalComponent<SegmentedControlProps>
169
189
  export declare const ActivityIndicator: UniversalComponent<ActivityIndicatorProps>
170
190
  export declare const Meter: UniversalComponent<MeterProps>
171
191
  export declare const Slider: UniversalComponent<SliderProps>
172
192
  export declare const Icon: UniversalComponent<IconProps>
173
193
  export declare const Heading: UniversalComponent<HeadingProps>
174
- export declare const PlatformBadge: UniversalComponent<PlatformBadgeProps>
175
194
 
176
195
  export declare function registerIcon(name: string, glyph: IconGlyph): void
177
196
  export declare function registerIcons(record: Record<string, IconGlyph>): void
178
197
 
179
198
  // ---------- overlays / shells ----------
180
199
 
181
- export declare const Modal: UniversalComponent<ModalProps>
182
- export declare const openModal: OpenModal
183
200
  export declare function openWindow(options?: OpenWindowOptions): any
184
201
  export declare const Overlay: UniversalComponent<OverlayProps>
185
202
  export declare const Popover: UniversalComponent<PopoverProps>
186
- export declare const Hoverable: UniversalComponent<HoverableProps>
187
203
  export declare function showToast(content: ToastContent, options?: ToastOptions): void
188
204
  export declare const Tabs: UniversalComponent<TabsProps>
189
205
 
@@ -198,7 +214,6 @@ export declare function stackEntries(): IterableIterator<[string, any]>
198
214
  export declare function pushRoute(r: Route): void
199
215
  export declare function popRoute(stack?: string): void
200
216
  export declare function routeStacks(): string[]
201
- export declare function layoutsForRoute(name: string): any[]
202
217
  export declare function routeFor(stack: string): Route | null
203
218
  export declare function currentRoute(): Route | null
204
219
  export declare function canGoBack(stack?: string): boolean
@@ -0,0 +1,273 @@
1
+ // Boundary types for @octane-xplat/ui — the thin shell over the real
2
+ // contract. Every interface lives in `src/props.ts` (imported by both
3
+ // platform leaves and emitted here as `./props`), so the ONLY hand-written
4
+ // part is the mechanical `declare const X: UniversalComponent<XProps>`
5
+ // wrapper — component shapes can't drift from the source. tsrx-tsc can't
6
+ // emit declarations for .tsrx (upstream: tsrx-org/tsrx#136); this file is
7
+ // what `tsc --emitDeclarationOnly` on pure .ts buys us.
8
+
9
+ import type { UniversalComponent } from 'octane/universal'
10
+ import type {
11
+ AnimatedValue,
12
+ AbsoluteProps,
13
+ ActivityIndicatorProps,
14
+ BeforeLoad,
15
+ BeforeLoadArgs,
16
+ CameraViewHandle,
17
+ CameraViewProps,
18
+ ColorScheme,
19
+ DrawerProps,
20
+ GridProps,
21
+ HeadingProps,
22
+ IconGlyph,
23
+ IconProps,
24
+ ImageProps,
25
+ KeyboardAvoidingProps,
26
+ LayoutChildProps,
27
+ LinkProps,
28
+ MeterProps,
29
+ ModalOpenResult,
30
+ MeasureBounds,
31
+ MeasureResult,
32
+ NavLinkProps,
33
+ OpenWindowOptions,
34
+ OverlayProps,
35
+ PopoverAnchorRef,
36
+ PopoverPlacement,
37
+ PopoverProps,
38
+ PagerProps,
39
+ PlatformBadgeProps,
40
+ PressableProps,
41
+ ReadableStore,
42
+ RefreshProps,
43
+ Route,
44
+ RouteContext,
45
+ RouteHead,
46
+ RouteHeadExport,
47
+ RouteManifest,
48
+ RouteMeta,
49
+ RichTextProps,
50
+ RichTextSpanProps,
51
+ RowProps,
52
+ ScreenProps,
53
+ SafeAreaProps,
54
+ ScreenTable,
55
+ ScrollViewProps,
56
+ SearchInputProps,
57
+ SegmentedControlProps,
58
+ SliderProps,
59
+ Store,
60
+ SpacerProps,
61
+ StackProps,
62
+ SwitchProps,
63
+ TabSpec,
64
+ TabsProps,
65
+ TextAreaProps,
66
+ TextInputProps,
67
+ TextProps,
68
+ ToastContent,
69
+ ToastOptions,
70
+ ToastPosition,
71
+ UseMeasureOptions,
72
+ VideoEvent,
73
+ VideoFit,
74
+ VideoHandle,
75
+ VideoProps,
76
+ ViewProps,
77
+ WebViewHandle,
78
+ WebViewLoadEvent,
79
+ WebViewProps,
80
+ } from './props'
81
+
82
+ export type {
83
+ AbsoluteProps,
84
+ AnimatedValue,
85
+ ActivityIndicatorProps,
86
+ BeforeLoad,
87
+ BeforeLoadArgs,
88
+ CameraViewHandle,
89
+ CameraViewProps,
90
+ ColorScheme,
91
+ DrawerProps,
92
+ GridProps,
93
+ HeadingProps,
94
+ IconGlyph,
95
+ IconProps,
96
+ ImageProps,
97
+ KeyboardAvoidingProps,
98
+ LayoutChildProps,
99
+ LinkProps,
100
+ ModalOpenResult,
101
+ MeasureBounds,
102
+ MeasureResult,
103
+ NavLinkProps,
104
+ OpenWindowOptions,
105
+ OverlayProps,
106
+ PopoverAnchorRef,
107
+ PopoverPlacement,
108
+ PopoverProps,
109
+ PagerProps,
110
+ PanEvent,
111
+ PressableProps,
112
+ ReadableStore,
113
+ RefreshProps,
114
+ Route,
115
+ RouteContext,
116
+ RouteHead,
117
+ RouteHeadExport,
118
+ RouteManifest,
119
+ RouteMeta,
120
+ RichTextProps,
121
+ RichTextSpanProps,
122
+ RowProps,
123
+ ScreenProps,
124
+ SafeAreaProps,
125
+ ScreenTable,
126
+ ScrollViewProps,
127
+ SearchInputProps,
128
+ SegmentedControlProps,
129
+ SliderProps,
130
+ Store,
131
+ SpacerProps,
132
+ StackProps,
133
+ SwipeEvent,
134
+ SwitchProps,
135
+ TabSpec,
136
+ TabsProps,
137
+ TextAreaProps,
138
+ TextInputProps,
139
+ TextProps,
140
+ ToastContent,
141
+ ToastOptions,
142
+ ToastPosition,
143
+ UseMeasureOptions,
144
+ VideoEvent,
145
+ VideoFit,
146
+ VideoHandle,
147
+ VideoProps,
148
+ ViewProps,
149
+ WebViewHandle,
150
+ WebViewLoadEvent,
151
+ WebViewProps,
152
+ } from './props'
153
+
154
+ /** ScrollBox shares ScrollView's public shell props; native renders it inline. */
155
+ export type ScrollBoxProps = ScrollViewProps
156
+
157
+ // ---------- primitives ----------
158
+
159
+ export declare const View: UniversalComponent<ViewProps>
160
+ /** Column-direction alias of View. */
161
+ export declare const Column: UniversalComponent<ViewProps>
162
+ export declare const Row: UniversalComponent<RowProps>
163
+ export declare const Grid: UniversalComponent<GridProps>
164
+ export declare const Stack: UniversalComponent<StackProps>
165
+ export declare const Absolute: UniversalComponent<AbsoluteProps>
166
+ export declare const Spacer: UniversalComponent<SpacerProps>
167
+ export declare const Text: UniversalComponent<TextProps>
168
+ export declare const RichText: UniversalComponent<RichTextProps>
169
+ export declare const RichTextSpan: UniversalComponent<RichTextSpanProps>
170
+ export declare const Pressable: UniversalComponent<PressableProps>
171
+ export declare const Link: UniversalComponent<LinkProps>
172
+ export declare const NavLink: UniversalComponent<NavLinkProps>
173
+ export declare const TextInput: UniversalComponent<TextInputProps>
174
+ export declare const TextArea: UniversalComponent<TextAreaProps>
175
+ export declare const SearchInput: UniversalComponent<SearchInputProps>
176
+ export declare const ScrollBox: UniversalComponent<ScrollBoxProps>
177
+ export declare const ScrollView: UniversalComponent<ScrollViewProps>
178
+ export declare const Pager: UniversalComponent<PagerProps>
179
+ export declare const Image: UniversalComponent<ImageProps>
180
+ export declare const WebView: UniversalComponent<WebViewProps>
181
+ export declare const Video: UniversalComponent<VideoProps>
182
+ export declare const CameraView: UniversalComponent<CameraViewProps>
183
+ export declare const Screen: UniversalComponent<ScreenProps>
184
+ export declare const SafeArea: UniversalComponent<SafeAreaProps>
185
+ export declare const KeyboardAvoiding: UniversalComponent<KeyboardAvoidingProps>
186
+ export declare const Drawer: UniversalComponent<DrawerProps>
187
+ export declare const Switch: UniversalComponent<SwitchProps>
188
+ export declare const SegmentedControl: UniversalComponent<SegmentedControlProps>
189
+ export declare const ActivityIndicator: UniversalComponent<ActivityIndicatorProps>
190
+ export declare const Meter: UniversalComponent<MeterProps>
191
+ export declare const Slider: UniversalComponent<SliderProps>
192
+ export declare const Icon: UniversalComponent<IconProps>
193
+ export declare const Heading: UniversalComponent<HeadingProps>
194
+
195
+ export declare function registerIcon(name: string, glyph: IconGlyph): void
196
+ export declare function registerIcons(record: Record<string, IconGlyph>): void
197
+
198
+ // ---------- overlays / shells ----------
199
+
200
+ export declare function openWindow(options?: OpenWindowOptions): any
201
+ export declare const Overlay: UniversalComponent<OverlayProps>
202
+ export declare const Popover: UniversalComponent<PopoverProps>
203
+ export declare function showToast(content: ToastContent, options?: ToastOptions): void
204
+ export declare const Tabs: UniversalComponent<TabsProps>
205
+
206
+ // ---------- stacks (native registry; no-op on web) ----------
207
+
208
+ export declare function registerStack(name: string, frame: any): void
209
+ export declare function getStack(name: string): any
210
+ export declare function stackEntries(): IterableIterator<[string, any]>
211
+
212
+ // ---------- routes (real on both: URL store on web, Frame stacks on native) ----------
213
+
214
+ export declare function pushRoute(r: Route): void
215
+ export declare function popRoute(stack?: string): void
216
+ export declare function routeStacks(): string[]
217
+ export declare function routeFor(stack: string): Route | null
218
+ export declare function currentRoute(): Route | null
219
+ export declare function canGoBack(stack?: string): boolean
220
+ export declare function useCanGoBack(stack?: string): boolean
221
+ export declare function redirect(route: Route): never
222
+ export declare function useRoute(stack: string): Route | null
223
+ /** name → screen table; native pushRoute resolves `route.name` through
224
+ * it, web outlets fall back to it via `screenFor`. `manifest` (from
225
+ * deriveRouteManifest) enables path-param URL matching on web. Call
226
+ * once at boot. */
227
+ export declare function registerScreens(table: ScreenTable, manifest?: RouteMeta[]): void
228
+ /** One-call registration for route-dir apps — screens + URL patterns +
229
+ * layouts all come from deriveRouteManifest. */
230
+ export declare function registerRoutes(manifest: RouteManifest): void
231
+ export declare function screenFor(name: string): any
232
+ /** Canonical /<stack>/<path> for a Route — Link's href on web. */
233
+ export declare function hrefFor(r: Route): string
234
+
235
+ // ---------- route dir (file → route manifest; docs/navigation-notes.md) ----------
236
+
237
+ /** Turn an `import.meta.glob` module map of the route dir into
238
+ * {screens, routes, layouts}: `demo/[id].tsrx` → 'demo/:id',
239
+ * `_layout.tsrx` → layouts[''], platform suffixes deduped by `prefer`
240
+ * rank (web: ['web']; native: ['ios'|'android','native']). */
241
+ export declare function deriveRouteManifest(
242
+ files: Record<string, any>,
243
+ prefer: readonly string[],
244
+ dir?: string,
245
+ ): RouteManifest
246
+
247
+ // ---------- animation / theme ----------
248
+
249
+ export declare function useAnimation(initial?: number, prop?: string): AnimatedValue
250
+ export declare function useMeasure(options?: UseMeasureOptions): MeasureResult
251
+ export declare function getColorScheme(): ColorScheme
252
+ export declare function useColorScheme(): ColorScheme
253
+ export interface SafeAreaInsets {
254
+ top: number
255
+ right: number
256
+ bottom: number
257
+ left: number
258
+ }
259
+
260
+ export declare function useSafeAreaInsets(): SafeAreaInsets
261
+
262
+ // ---------- styled ----------
263
+
264
+ export declare function styled<P extends { className?: any }, V extends Record<string, any>>(
265
+ Base: (props: P) => any,
266
+ def: { base?: any; variants?: V },
267
+ ): UniversalComponent<P & { [K in keyof V]?: boolean }>
268
+
269
+ // ---------- stores ----------
270
+
271
+ export declare function createStore<T>(initial: T): Store<T>
272
+ export declare function useStore<T>(store: ReadableStore<T>): T
273
+ export declare function useStore<T, S>(store: ReadableStore<T>, select: (state: T) => S): S