@octane-xplat/ui 0.5.0 → 0.7.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.
- package/README.md +17 -4
- package/dist/native/Absolute.tsrx.js +43 -0
- package/dist/native/Accordion.tsrx.js +75 -0
- package/dist/native/ActivityIndicator.tsrx.js +35 -0
- package/dist/native/Alert.tsrx.js +74 -0
- package/dist/native/Avatar.tsrx.js +76 -0
- package/dist/native/AvatarGroup.tsrx.js +84 -0
- package/dist/native/Badge.tsrx.js +29 -0
- package/dist/native/Banner.tsrx.js +80 -0
- package/dist/native/Breadcrumb.tsrx.js +66 -0
- package/dist/native/Button.tsrx.js +62 -0
- package/dist/native/Card.tsrx.js +64 -0
- package/dist/native/Checkbox.tsrx.js +58 -0
- package/dist/native/CheckboxGroup.tsrx.js +70 -0
- package/dist/native/Chip.tsrx.js +83 -0
- package/dist/native/Collapsible.tsrx.js +74 -0
- package/dist/native/CommandPalette.tsrx.js +143 -0
- package/dist/native/ContextMenu.tsrx.js +140 -0
- package/dist/native/Drawer.tsrx.js +60 -0
- package/dist/native/DropdownMenu.tsrx.js +155 -0
- package/dist/native/Empty.tsrx.js +82 -0
- package/dist/native/FieldGroup.tsrx.js +39 -0
- package/dist/native/FormField.tsrx.js +53 -0
- package/dist/native/{ui8.js → Grid.tsrx.js} +20 -9
- package/dist/native/{ui59.js → Heading.tsrx.js} +4 -4
- package/dist/native/Hoverable.tsrx.js +139 -0
- package/dist/native/{ui58.js → Icon.tsrx.js} +5 -5
- package/dist/native/{ui29.js → Image.tsrx.js} +5 -5
- package/dist/native/InputNumber.tsrx.js +146 -0
- package/dist/native/InputRating.tsrx.js +74 -0
- package/dist/native/InputTags.tsrx.js +131 -0
- package/dist/native/Kbd.tsrx.js +29 -0
- package/dist/native/{ui50.js → KeyboardAvoiding.mobile.tsrx.js} +6 -4
- package/dist/native/{ui17.js → Link.tsrx.js} +2 -2
- package/dist/native/ListItem.tsrx.js +178 -0
- package/dist/native/Meter.tsrx.js +70 -0
- package/dist/native/{ui22.js → NavLink.tsrx.js} +4 -4
- package/dist/native/NavigationMenu.tsrx.js +67 -0
- package/dist/native/{ui35.js → Overlay.tsrx.js} +4 -4
- package/dist/native/Pagination.tsrx.js +107 -0
- package/dist/native/PinInput.tsrx.js +94 -0
- package/dist/native/{ui38.js → Popover.tsrx.js} +7 -7
- package/dist/native/{ui16.js → Pressable.tsrx.js} +21 -15
- package/dist/native/ProgressGroup.tsrx.js +66 -0
- package/dist/native/RadioGroup.tsrx.js +85 -0
- package/dist/native/{ui15.js → RichText.tsrx.js} +16 -23
- package/dist/native/{ui20.js → RouteHost.mobile.tsrx.js} +13 -2
- package/dist/native/Row.tsrx.js +98 -0
- package/dist/native/{ui49.js → SafeArea.tsrx.js} +10 -4
- package/dist/native/{ui45.js → Screen.tsrx.js} +14 -6
- package/dist/native/{ui26.js → ScrollBox.tsrx.js} +2 -2
- package/dist/native/ScrollView.tsrx.js +233 -0
- package/dist/native/SearchInput.tsrx.js +151 -0
- package/dist/native/SegmentedControl.tsrx.js +75 -0
- package/dist/native/Select.tsrx.js +202 -0
- package/dist/native/Separator.tsrx.js +25 -0
- package/dist/native/{ui63.js → Sheet.tsrx.js} +24 -8
- package/dist/native/Skeleton.tsrx.js +28 -0
- package/dist/native/Slider.tsrx.js +98 -0
- package/dist/native/{ui13.js → Spacer.tsrx.js} +3 -3
- package/dist/native/Stack.tsrx.js +47 -0
- package/dist/native/Stepper.tsrx.js +75 -0
- package/dist/native/Switch.tsrx.js +33 -0
- package/dist/native/Table.tsrx.js +103 -0
- package/dist/native/Tabs.tsrx.js +153 -0
- package/dist/native/{ui14.js → Text.tsrx.js} +5 -4
- package/dist/native/{ui24.js → TextArea.tsrx.js} +18 -17
- package/dist/native/{ui23.js → TextInput.tsrx.js} +22 -17
- package/dist/native/Timeline.tsrx.js +112 -0
- package/dist/native/Tooltip.tsrx.js +131 -0
- package/dist/native/Tree.tsrx.js +140 -0
- package/dist/native/User.tsrx.js +95 -0
- package/dist/native/View.tsrx.js +98 -0
- package/dist/native/VirtualList.tsrx.js +466 -0
- package/dist/native/WebView.tsrx.js +135 -0
- package/dist/native/aliases.tsrx.js +38 -0
- package/dist/native/android/BottomNavigationView.android.tsrx.js +220 -0
- package/dist/native/android/CircularProgressIndicator.android.tsrx.js +27 -0
- package/dist/native/{ui51.js → android/DrawerLayout.android.tsrx.js} +6 -7
- package/dist/native/android/MaterialDialog.android.tsrx.js +62 -0
- package/dist/native/android/MaterialSwitch.android.tsrx.js +28 -0
- package/dist/native/android/RecyclerView.android.tsrx.js +260 -0
- package/dist/native/android/SeekBar.android.tsrx.js +34 -0
- package/dist/native/android/icon.android.js +7 -0
- package/dist/native/android/index.js +11 -0
- package/dist/native/android/openModal.android.js +39 -0
- package/dist/native/{ui41.js → anim.tsrx.js} +1 -1
- package/dist/native/apply-native-modifiers.native.js +9 -0
- package/dist/native/child-array.js +15 -0
- package/dist/native/{ui3.js → escape-props.js} +3 -1
- package/dist/native/icons.js +25 -0
- package/dist/native/index.shared.js +92 -0
- package/dist/native/{ui11.js → ios/LiquidGlass.ios.tsrx.js} +4 -4
- package/dist/native/{ui12.js → ios/LiquidGlassContainer.ios.tsrx.js} +4 -4
- package/dist/native/ios/SideDrawer.ios.tsrx.js +65 -0
- package/dist/native/{ui53.js → ios/UIActivityIndicatorView.ios.tsrx.js} +5 -5
- package/dist/native/{ui32.js → ios/UIModal.ios.tsrx.js} +10 -6
- package/dist/native/{ui56.js → ios/UISlider.ios.tsrx.js} +5 -5
- package/dist/native/{ui47.js → ios/UISwitch.ios.tsrx.js} +5 -5
- package/dist/native/ios/UITabBar.ios.tsrx.js +187 -0
- package/dist/native/ios/UITableView.ios.tsrx.js +282 -0
- package/dist/native/ios/icon.ios.js +7 -0
- package/dist/native/ios/index.js +13 -0
- package/dist/native/{ui33.js → ios/openModal.ios.js} +5 -4
- package/dist/native/keyboard-inset.mobile.js +66 -0
- package/dist/native/{ui5.js → layout-child.js} +1 -1
- package/dist/native/modal-presenter.mobile.js +19 -0
- package/dist/native/modifier-factories.js +24 -0
- package/dist/native/native/index.js +4 -0
- package/dist/native/octane-client-build.json +1 -1
- package/dist/native/{ui6.js → pan.tsrx.js} +9 -69
- package/dist/native/platform.js +10 -0
- package/dist/native/{ui36.js → platformProps.js} +3 -1
- package/dist/native/refresh-metrics.js +9 -0
- package/dist/native/refresh.js +177 -0
- package/dist/native/{ui34.js → root-layout.mobile.js} +8 -3
- package/dist/native/route-host.mobile.js +2 -0
- package/dist/native/{ui19.js → route-table.js} +105 -4
- package/dist/native/{ui21.js → route.js} +140 -20
- package/dist/native/safeAreaInsets.tsrx.js +67 -0
- package/dist/native/shared.js +93 -0
- package/dist/native/sheet-detents.js +102 -0
- package/dist/native/{ui64.js → sheet-service.js} +26 -10
- package/dist/native/sheet-snap.js +35 -0
- package/dist/native/{ui18.js → stacks.js} +1 -1
- package/dist/native/{ui43.js → styled.tsrx.js} +1 -1
- package/dist/native/{ui28.js → svg.mobile.js} +2 -2
- package/dist/native/tap-to-blur.mobile.js +94 -0
- package/dist/native/text-write.js +27 -0
- package/dist/native/{ui30.js → theme/colorScheme.js} +2 -2
- package/dist/native/{ui42.js → theme/status-bar-scheme.mobile.js} +3 -3
- package/dist/{web/ui29.js → native/theme/theme-scheme.js} +3 -3
- package/dist/native/{ui40.js → toast-anchor.tsrx.js} +4 -4
- package/dist/native/translate.js +11 -0
- package/dist/native/ui.js +95 -55
- package/dist/native/use-back.tsrx.js +9 -0
- package/dist/native/{ui62.js → use-store.tsrx.js} +1 -1
- package/dist/native/{ui52.js → useMeasure.tsrx.js} +2 -2
- package/dist/native/vendor/ui-svg/index.android.js +137 -0
- package/dist/native/vendor/ui-svg/index.common.js +10 -0
- package/dist/native/vendor/ui-svg/index.ios.js +111 -0
- package/dist/native/virtual-list-layout.js +146 -0
- package/dist/native/{ui44.js → windows.js} +1 -1
- package/dist/web/Absolute.web.tsrx.js +47 -0
- package/dist/web/Accordion.web.tsrx.js +85 -0
- package/dist/web/{ui48.js → ActivityIndicator.web.tsrx.js} +1 -1
- package/dist/web/Alert.web.tsrx.js +79 -0
- package/dist/web/Avatar.web.tsrx.js +106 -0
- package/dist/web/AvatarGroup.web.tsrx.js +108 -0
- package/dist/web/Badge.web.tsrx.js +37 -0
- package/dist/web/Banner.web.tsrx.js +79 -0
- package/dist/web/Breadcrumb.web.tsrx.js +135 -0
- package/dist/web/Button.web.tsrx.js +45 -0
- package/dist/web/Card.web.tsrx.js +73 -0
- package/dist/web/Checkbox.web.tsrx.js +89 -0
- package/dist/web/CheckboxGroup.web.tsrx.js +79 -0
- package/dist/web/Chip.web.tsrx.js +64 -0
- package/dist/web/Collapsible.web.tsrx.js +94 -0
- package/dist/web/CommandPalette.web.tsrx.js +125 -0
- package/dist/web/ContextMenu.web.tsrx.js +154 -0
- package/dist/web/{ui45.js → Drawer.web.tsrx.js} +13 -9
- package/dist/web/DropdownMenu.web.tsrx.js +162 -0
- package/dist/web/Empty.web.tsrx.js +89 -0
- package/dist/web/FieldGroup.web.tsrx.js +57 -0
- package/dist/web/FormField.web.tsrx.js +92 -0
- package/dist/web/Grid.web.tsrx.js +65 -0
- package/dist/web/{ui54.js → Heading.web.tsrx.js} +2 -2
- package/dist/web/{ui34.js → Hoverable.web.tsrx.js} +6 -5
- package/dist/web/{ui53.js → Icon.web.tsrx.js} +2 -2
- package/dist/web/{ui25.js → Image.web.tsrx.js} +2 -2
- package/dist/web/InputNumber.web.tsrx.js +99 -0
- package/dist/web/InputRating.web.tsrx.js +72 -0
- package/dist/web/InputTags.web.tsrx.js +122 -0
- package/dist/web/Kbd.web.tsrx.js +37 -0
- package/dist/web/ListItem.web.tsrx.js +139 -0
- package/dist/web/{ui50.js → Meter.web.tsrx.js} +1 -1
- package/dist/web/{ui19.js → NavLink.web.tsrx.js} +1 -1
- package/dist/web/NavigationMenu.web.tsrx.js +118 -0
- package/dist/web/{ui31.js → Overlay.web.tsrx.js} +2 -2
- package/dist/web/Pagination.web.tsrx.js +80 -0
- package/dist/web/PinInput.web.tsrx.js +72 -0
- package/dist/web/{ui33.js → Popover.web.tsrx.js} +3 -3
- package/dist/web/{ui15.js → Pressable.web.tsrx.js} +68 -95
- package/dist/web/ProgressGroup.web.tsrx.js +109 -0
- package/dist/web/RadioGroup.web.tsrx.js +69 -0
- package/dist/web/{ui14.js → RichText.web.tsrx.js} +2 -2
- package/dist/web/Row.web.tsrx.js +250 -0
- package/dist/web/{ui43.js → SafeArea.web.tsrx.js} +10 -4
- package/dist/web/{ui39.js → Screen.web.tsrx.js} +1 -1
- package/dist/web/{ui24.js → ScrollBox.web.tsrx.js} +1 -1
- package/dist/web/ScrollView.web.tsrx.js +388 -0
- package/dist/web/SearchInput.web.tsrx.js +137 -0
- package/dist/web/SegmentedControl.web.tsrx.js +75 -0
- package/dist/web/Select.web.tsrx.js +149 -0
- package/dist/web/Separator.web.tsrx.js +42 -0
- package/dist/web/Sheet.web.tsrx.js +81 -0
- package/dist/web/Skeleton.web.tsrx.js +56 -0
- package/dist/web/Slider.web.tsrx.js +97 -0
- package/dist/web/{ui12.js → Spacer.web.tsrx.js} +1 -1
- package/dist/web/Stack.web.tsrx.js +47 -0
- package/dist/web/Stepper.web.tsrx.js +65 -0
- package/dist/web/Switch.web.tsrx.js +59 -0
- package/dist/web/Table.web.tsrx.js +161 -0
- package/dist/web/Tabs.web.tsrx.js +215 -0
- package/dist/web/{ui13.js → Text.web.tsrx.js} +18 -50
- package/dist/web/{ui21.js → TextArea.web.tsrx.js} +4 -4
- package/dist/web/{ui20.js → TextInput.web.tsrx.js} +8 -8
- package/dist/web/Timeline.web.tsrx.js +172 -0
- package/dist/web/Tooltip.web.tsrx.js +184 -0
- package/dist/web/Tree.web.tsrx.js +146 -0
- package/dist/web/User.web.tsrx.js +116 -0
- package/dist/web/View.web.tsrx.js +250 -0
- package/dist/web/VirtualList.web.tsrx.js +622 -0
- package/dist/web/WebView.web.tsrx.js +272 -0
- package/dist/web/aliases.web.tsrx.js +24 -0
- package/dist/web/{ui36.js → anim.web.tsrx.js} +3 -35
- package/dist/web/child-array.js +15 -0
- package/dist/web/icons.js +25 -0
- package/dist/web/index.shared.web.js +92 -0
- package/dist/web/octane-client-build.json +1 -1
- package/dist/web/pan.web.tsrx.js +66 -0
- package/dist/web/platform.web.js +9 -0
- package/dist/web/refresh-metrics.js +9 -0
- package/dist/web/refresh.web.js +133 -0
- package/dist/web/{ui17.js → route-table.js} +105 -4
- package/dist/web/{ui18.js → route.web.js} +48 -11
- package/dist/web/sheet-detents.web.js +103 -0
- package/dist/web/{ui60.js → sheet-service.web.js} +5 -1
- package/dist/web/sheet-snap.js +35 -0
- package/dist/{native/ui31.js → web/theme/theme-scheme.js} +2 -2
- package/dist/web/{ui35.js → toast-anchor.web.tsrx.js} +3 -3
- package/dist/web/transform.web.js +43 -0
- package/dist/web/translate.web.js +13 -0
- package/dist/web/ui.js +93 -53
- package/dist/web/use-back.web.tsrx.js +9 -0
- package/dist/web/virtual-list-layout.js +146 -0
- package/dist/web/web/index.js +3 -0
- package/package.json +53 -14
- package/platforms/android/include.gradle +8 -0
- package/platforms/android/native-api-usage.json +8 -0
- package/platforms/ios/Podfile +2 -0
- package/src/Absolute.tsrx +22 -0
- package/src/Absolute.web.tsrx +22 -0
- package/src/Accordion.macos.tsrx +50 -0
- package/src/Accordion.tsrx +50 -0
- package/src/Accordion.web.tsrx +43 -0
- package/src/ActivityIndicator.tsrx +29 -0
- package/src/ActivityIndicator.web.tsrx +14 -0
- package/src/Alert.macos.tsrx +42 -0
- package/src/Alert.tsrx +24 -0
- package/src/Alert.web.tsrx +23 -0
- package/src/Avatar.macos.tsrx +25 -0
- package/src/Avatar.tsrx +25 -0
- package/src/Avatar.web.tsrx +24 -0
- package/src/AvatarGroup.macos.tsrx +32 -0
- package/src/AvatarGroup.tsrx +32 -0
- package/src/AvatarGroup.web.tsrx +29 -0
- package/src/Badge.macos.tsrx +12 -0
- package/src/Badge.tsrx +12 -0
- package/src/Badge.web.tsrx +10 -0
- package/src/Banner.macos.tsrx +20 -0
- package/src/Banner.tsrx +20 -0
- package/src/Banner.web.tsrx +20 -0
- package/src/Breadcrumb.macos.tsrx +27 -0
- package/src/Breadcrumb.tsrx +27 -0
- package/src/Breadcrumb.web.tsrx +25 -0
- package/src/Button.tsrx +23 -0
- package/src/Button.web.tsrx +21 -0
- package/src/CameraView.macos.tsrx +6 -0
- package/src/Card.macos.tsrx +13 -0
- package/src/Card.tsrx +13 -0
- package/src/Card.web.tsrx +11 -0
- package/src/Checkbox.tsrx +23 -0
- package/src/Checkbox.web.tsrx +34 -0
- package/src/CheckboxGroup.macos.tsrx +39 -0
- package/src/CheckboxGroup.tsrx +39 -0
- package/src/CheckboxGroup.web.tsrx +38 -0
- package/src/Chip.macos.tsrx +25 -0
- package/src/Chip.tsrx +25 -0
- package/src/Chip.web.tsrx +25 -0
- package/src/Collapsible.macos.tsrx +39 -0
- package/src/Collapsible.tsrx +39 -0
- package/src/Collapsible.web.tsrx +33 -0
- package/src/CommandPalette.macos.tsrx +58 -0
- package/src/CommandPalette.tsrx +58 -0
- package/src/CommandPalette.web.tsrx +59 -0
- package/src/ContextMenu.macos.tsrx +59 -0
- package/src/ContextMenu.tsrx +59 -0
- package/src/ContextMenu.web.tsrx +69 -0
- package/src/Drawer.macos.tsrx +28 -0
- package/src/Drawer.tsrx +25 -0
- package/src/Drawer.web.tsrx +31 -0
- package/src/DropdownMenu.macos.tsrx +63 -0
- package/src/DropdownMenu.tsrx +63 -0
- package/src/DropdownMenu.web.tsrx +78 -0
- package/src/Empty.macos.tsrx +15 -0
- package/src/Empty.tsrx +15 -0
- package/src/Empty.web.tsrx +13 -0
- package/src/FieldGroup.macos.tsrx +17 -0
- package/src/FieldGroup.tsrx +17 -0
- package/src/FieldGroup.web.tsrx +17 -0
- package/src/FormField.macos.tsrx +25 -0
- package/src/FormField.tsrx +25 -0
- package/src/FormField.web.tsrx +24 -0
- package/src/Grid.tsrx +32 -0
- package/src/Grid.web.tsrx +43 -0
- package/src/Heading.macos.tsrx +8 -0
- package/src/Heading.tsrx +17 -0
- package/src/Heading.web.tsrx +15 -0
- package/src/Hoverable.mobile.tsrx +21 -0
- package/src/Hoverable.tsrx +113 -0
- package/src/Hoverable.web.tsrx +98 -0
- package/src/Icon.macos.tsrx +18 -0
- package/src/Icon.tsrx +65 -0
- package/src/Icon.web.tsrx +75 -0
- package/src/Image.macos.tsrx +12 -0
- package/src/Image.tsrx +51 -0
- package/src/Image.web.tsrx +14 -0
- package/src/InputNumber.macos.tsrx +49 -0
- package/src/InputNumber.tsrx +49 -0
- package/src/InputNumber.web.tsrx +47 -0
- package/src/InputRating.macos.tsrx +42 -0
- package/src/InputRating.tsrx +39 -0
- package/src/InputRating.web.tsrx +52 -0
- package/src/InputTags.macos.tsrx +49 -0
- package/src/InputTags.tsrx +49 -0
- package/src/InputTags.web.tsrx +49 -0
- package/src/Kbd.macos.tsrx +11 -0
- package/src/Kbd.tsrx +11 -0
- package/src/Kbd.web.tsrx +9 -0
- package/src/KeyboardAvoiding.macos.tsrx +8 -0
- package/src/KeyboardAvoiding.mobile.tsrx +63 -0
- package/src/Link.macos.tsrx +15 -0
- package/src/Link.tsrx +10 -0
- package/src/Link.web.tsrx +12 -0
- package/src/ListItem.macos.tsrx +52 -0
- package/src/ListItem.tsrx +52 -0
- package/src/ListItem.web.tsrx +50 -0
- package/src/Meter.macos.tsrx +8 -0
- package/src/Meter.tsrx +45 -0
- package/src/Meter.web.tsrx +32 -0
- package/src/NavLink.macos.tsrx +24 -0
- package/src/NavLink.tsrx +22 -0
- package/src/NavLink.web.tsrx +23 -0
- package/src/NavigationMenu.macos.tsrx +31 -0
- package/src/NavigationMenu.tsrx +28 -0
- package/src/NavigationMenu.web.tsrx +31 -0
- package/src/Overlay.macos.tsrx +11 -0
- package/src/Overlay.tsrx +84 -0
- package/src/Overlay.web.tsrx +23 -0
- package/src/Pagination.macos.tsrx +54 -0
- package/src/Pagination.tsrx +47 -0
- package/src/Pagination.web.tsrx +50 -0
- package/src/PinInput.macos.tsrx +46 -0
- package/src/PinInput.tsrx +46 -0
- package/src/PinInput.web.tsrx +45 -0
- package/src/Popover.macos.tsrx +11 -0
- package/src/Popover.tsrx +157 -0
- package/src/Popover.web.tsrx +109 -0
- package/src/Pressable.macos.tsrx +19 -0
- package/src/Pressable.tsrx +37 -0
- package/src/Pressable.web.tsrx +45 -0
- package/src/ProgressGroup.macos.tsrx +17 -0
- package/src/ProgressGroup.tsrx +17 -0
- package/src/ProgressGroup.web.tsrx +15 -0
- package/src/RadioGroup.macos.tsrx +50 -0
- package/src/RadioGroup.tsrx +34 -0
- package/src/RadioGroup.web.tsrx +43 -0
- package/src/RichText.tsrx +40 -0
- package/src/RichText.web.tsrx +24 -0
- package/src/RouteHost.macos.tsrx +18 -0
- package/src/RouteHost.mobile.tsrx +44 -0
- package/src/Row.macos.tsrx +26 -0
- package/src/Row.tsrx +27 -0
- package/src/Row.web.tsrx +27 -0
- package/src/SafeArea.macos.tsrx +8 -0
- package/src/SafeArea.tsrx +20 -0
- package/src/SafeArea.web.tsrx +24 -0
- package/src/Screen.macos.tsrx +14 -0
- package/src/Screen.tsrx +31 -0
- package/src/Screen.web.tsrx +7 -0
- package/src/ScrollBox.tsrx +8 -0
- package/src/ScrollBox.web.tsrx +7 -0
- package/src/ScrollView.macos.tsrx +19 -0
- package/src/ScrollView.tsrx +117 -0
- package/src/ScrollView.web.tsrx +109 -0
- package/src/SearchInput.tsrx +60 -0
- package/src/SearchInput.web.test.tsrx +58 -0
- package/src/SearchInput.web.tsrx +55 -0
- package/src/SegmentedControl.tsrx +43 -0
- package/src/SegmentedControl.web.test.tsrx +46 -0
- package/src/SegmentedControl.web.tsrx +51 -0
- package/src/Select.macos.tsrx +104 -0
- package/src/Select.tsrx +104 -0
- package/src/Select.web.tsrx +124 -0
- package/src/Separator.macos.tsrx +17 -0
- package/src/Separator.tsrx +17 -0
- package/src/Separator.web.tsrx +17 -0
- package/src/Sheet.macos.tsrx +15 -0
- package/src/Sheet.tsrx +122 -0
- package/src/Sheet.web.tsrx +56 -0
- package/src/Skeleton.macos.tsrx +15 -0
- package/src/Skeleton.tsrx +15 -0
- package/src/Skeleton.web.tsrx +15 -0
- package/src/Slider.tsrx +71 -0
- package/src/Slider.web.tsrx +60 -0
- package/src/Spacer.tsrx +8 -0
- package/src/Spacer.web.tsrx +6 -0
- package/src/Stack.tsrx +24 -0
- package/src/Stack.web.tsrx +22 -0
- package/src/Stepper.macos.tsrx +52 -0
- package/src/Stepper.tsrx +31 -0
- package/src/Stepper.web.tsrx +37 -0
- package/src/Switch.tsrx +21 -0
- package/src/Switch.web.tsrx +28 -0
- package/src/Table.macos.tsrx +37 -0
- package/src/Table.tsrx +37 -0
- package/src/Table.web.tsrx +37 -0
- package/src/Tabs.macos.tsrx +60 -0
- package/src/Tabs.tsrx +55 -0
- package/src/Tabs.web.tsrx +98 -0
- package/src/Text.macos.tsrx +18 -0
- package/src/Text.tsrx +62 -0
- package/src/Text.web.tsrx +31 -0
- package/src/TextArea.tsrx +65 -0
- package/src/TextArea.web.tsrx +61 -0
- package/src/TextInput.tsrx +39 -0
- package/src/TextInput.web.tsrx +28 -0
- package/src/Timeline.macos.tsrx +27 -0
- package/src/Timeline.tsrx +24 -0
- package/src/Timeline.web.tsrx +22 -0
- package/src/Tooltip.mobile.tsrx +20 -0
- package/src/Tooltip.tsrx +102 -0
- package/src/Tooltip.web.tsrx +156 -0
- package/src/Tree.macos.tsrx +45 -0
- package/src/Tree.tsrx +45 -0
- package/src/Tree.web.tsrx +52 -0
- package/src/User.macos.tsrx +24 -0
- package/src/User.tsrx +24 -0
- package/src/User.web.tsrx +24 -0
- package/src/View.macos.tsrx +29 -0
- package/src/View.tsrx +32 -0
- package/src/View.web.tsrx +33 -0
- package/src/VirtualList.macos.tsrx +298 -0
- package/src/VirtualList.tsrx +358 -0
- package/src/VirtualList.web.tsrx +313 -0
- package/src/WebView.macos.tsrx +6 -0
- package/src/WebView.tsrx +89 -0
- package/src/WebView.web.tsrx +92 -0
- package/src/aliases.macos.tsrx +18 -0
- package/src/aliases.tsrx +18 -0
- package/src/aliases.web.tsrx +17 -0
- package/src/android/BottomNavigationView.android.tsrx +170 -0
- package/src/android/CircularProgressIndicator.android.tsrx +19 -0
- package/src/android/DrawerLayout.android.tsrx +48 -0
- package/src/android/MaterialDialog.android.tsrx +62 -0
- package/src/android/MaterialSwitch.android.tsrx +18 -0
- package/src/android/RecyclerView.android.tsrx +173 -0
- package/src/android/SeekBar.android.tsrx +20 -0
- package/src/android/icon.android.ts +8 -0
- package/src/android/index.ts +37 -0
- package/src/android/openModal.android.ts +55 -0
- package/src/anim.macos.tsrx +20 -0
- package/src/anim.tsrx +65 -0
- package/src/anim.web.tsrx +55 -0
- package/src/apply-native-modifiers.native.ts +13 -0
- package/src/camera-permission.web.ts +11 -0
- package/src/child-array.ts +16 -0
- package/src/colorScheme.macos.ts +27 -0
- package/src/controls.macos.tsrx +171 -0
- package/src/cx.ts +8 -0
- package/src/escape-props.macos.ts +11 -0
- package/src/escape-props.ts +70 -0
- package/src/escape-props.web.ts +25 -0
- package/src/hosted-unsupported.macos.tsrx +9 -0
- package/src/icons.ts +60 -0
- package/src/index.linux.ts +10 -0
- package/src/index.macos.ts +106 -0
- package/src/index.mobile.ts +6 -0
- package/src/index.shared.ts +269 -0
- package/src/index.shared.web.ts +270 -0
- package/src/index.ts +1 -0
- package/src/index.web.ts +1 -0
- package/src/ios/LiquidGlass.ios.tsrx +41 -0
- package/src/ios/LiquidGlassContainer.ios.tsrx +34 -0
- package/src/ios/SideDrawer.ios.tsrx +49 -0
- package/src/ios/UIActivityIndicatorView.ios.tsrx +18 -0
- package/src/ios/UIModal.ios.tsrx +68 -0
- package/src/ios/UISlider.ios.tsrx +20 -0
- package/src/ios/UISwitch.ios.tsrx +18 -0
- package/src/ios/UITabBar.ios.tsrx +172 -0
- package/src/ios/UITableView.ios.tsrx +186 -0
- package/src/ios/icon.ios.ts +8 -0
- package/src/ios/index.ts +42 -0
- package/src/ios/openModal.ios.ts +55 -0
- package/src/keyboard-inset.mobile.ts +89 -0
- package/src/layout-child.ts +57 -0
- package/src/layout-child.web.ts +108 -0
- package/src/layout-shells.macos.tsrx +10 -0
- package/src/layout.macos.tsrx +41 -0
- package/src/macos-extras.macos.tsrx +40 -0
- package/src/meter-math.ts +6 -0
- package/src/modal-presenter.mobile.ts +24 -0
- package/src/modifier-factories.ts +20 -0
- package/src/native/index.ts +6 -0
- package/src/pan.tsrx +64 -0
- package/src/pan.web.tsrx +38 -0
- package/src/platform.macos.ts +1 -0
- package/src/platform.ts +7 -0
- package/src/platform.web.ts +6 -0
- package/src/platformProps.ts +23 -0
- package/src/platformProps.web.ts +14 -0
- package/src/popover-position.ts +62 -0
- package/src/popover.mobile.test.ts +54 -0
- package/src/props.ts +1812 -0
- package/src/references.d.ts +2 -0
- package/src/refresh-metrics.ts +11 -0
- package/src/refresh.ts +271 -0
- package/src/refresh.web.test.ts +111 -0
- package/src/refresh.web.ts +205 -0
- package/src/root-layout.mobile.ts +89 -0
- package/src/route-host.mobile.ts +1 -0
- package/src/route-table.test.ts +345 -0
- package/src/route-table.ts +585 -0
- package/src/route.macos.ts +201 -0
- package/src/route.ts +703 -0
- package/src/route.web.ts +366 -0
- package/src/safeAreaInsets.macos.tsrx +7 -0
- package/src/safeAreaInsets.tsrx +60 -0
- package/src/safeAreaInsets.web.tsrx +38 -0
- package/src/sheet-detents.ts +142 -0
- package/src/sheet-detents.web.ts +147 -0
- package/src/sheet-service.macos.ts +60 -0
- package/src/sheet-service.ts +124 -0
- package/src/sheet-service.web.ts +64 -0
- package/src/sheet-snap.test.ts +46 -0
- package/src/sheet-snap.ts +66 -0
- package/src/stacks.macos.ts +13 -0
- package/src/stacks.ts +44 -0
- package/src/stacks.web.ts +9 -0
- package/src/store.mobile.test.ts +149 -0
- package/src/store.ts +39 -0
- package/src/store.web.test.tsrx +58 -0
- package/src/styled.macos.tsrx +23 -0
- package/src/styled.test.ts +40 -0
- package/src/styled.tsrx +36 -0
- package/src/styled.web.tsrx +23 -0
- package/src/surfaces.macos.tsrx +27 -0
- package/src/svg.mobile.ts +76 -0
- package/src/tap-to-blur.mobile.ts +108 -0
- package/src/text-controls.macos.tsrx +11 -0
- package/src/text-write.ts +28 -0
- package/src/text-write.web.ts +13 -0
- package/src/theme/colorScheme.linux.ts +52 -0
- package/src/theme/colorScheme.ts +26 -0
- package/src/theme/colorScheme.web.ts +20 -0
- package/src/theme/status-bar-scheme.mobile.ts +39 -0
- package/src/theme/theme-scheme.macos.ts +50 -0
- package/src/theme/theme-scheme.ts +66 -0
- package/src/theme/tokens.css +1408 -206
- package/src/toast-anchor.macos.tsrx +3 -0
- package/src/toast-anchor.tsrx +122 -0
- package/src/toast-anchor.web.tsrx +92 -0
- package/src/toast.tsrx +90 -0
- package/src/toast.web.tsrx +50 -0
- package/src/transform.web.ts +52 -0
- package/src/translate.macos.ts +5 -0
- package/src/translate.ts +13 -0
- package/src/translate.web.ts +15 -0
- package/src/tsconfig.json +8 -0
- package/src/unsupported.macos.tsrx +5 -0
- package/src/use-back.tsrx +11 -0
- package/src/use-back.web.tsrx +12 -0
- package/src/use-store.tsrx +18 -0
- package/src/use-store.web.tsrx +18 -0
- package/src/useMeasure.macos.tsrx +23 -0
- package/src/useMeasure.tsrx +66 -0
- package/src/useMeasure.web.tsrx +39 -0
- package/src/useStore.macos.tsrx +6 -0
- package/src/vendor/ui-svg/LICENSE +201 -0
- package/src/vendor/ui-svg/index.android.ts +189 -0
- package/src/vendor/ui-svg/index.common.ts +19 -0
- package/src/vendor/ui-svg/index.ios.ts +147 -0
- package/src/vendor/ui-svg/index.ts +1 -0
- package/src/vendor/ui-svg/typings/SVGKit.d.ts +2862 -0
- package/src/vendor/ui-svg/typings/android.d.ts +1483 -0
- package/src/vendor/ui-svg/typings/ios.d.ts +1511 -0
- package/src/virtual-list-layout.test.ts +81 -0
- package/src/virtual-list-layout.ts +246 -0
- package/src/web/index.ts +11 -0
- package/src/windows.linux.ts +59 -0
- package/src/windows.macos.ts +10 -0
- package/src/windows.ts +7 -0
- package/src/windows.web.ts +6 -0
- package/types/generated/.tsrx-typegen-manifest.json +250 -0
- package/types/generated/Absolute.d.ts +3 -0
- package/types/generated/Absolute.web.d.ts +3 -0
- package/types/generated/Accordion.d.ts +5 -0
- package/types/generated/Accordion.web.d.ts +5 -0
- package/types/generated/ActivityIndicator.d.ts +7 -0
- package/types/generated/ActivityIndicator.web.d.ts +3 -0
- package/types/generated/Alert.d.ts +4 -0
- package/types/generated/Alert.web.d.ts +5 -0
- package/types/generated/Avatar.d.ts +6 -0
- package/types/generated/Avatar.web.d.ts +7 -0
- package/types/generated/AvatarGroup.d.ts +6 -0
- package/types/generated/AvatarGroup.web.d.ts +6 -0
- package/types/generated/Badge.d.ts +5 -0
- package/types/generated/Badge.web.d.ts +5 -0
- package/types/generated/Banner.d.ts +4 -0
- package/types/generated/Banner.web.d.ts +4 -0
- package/types/generated/Breadcrumb.d.ts +4 -0
- package/types/generated/Breadcrumb.web.d.ts +5 -0
- package/types/generated/Button.d.ts +6 -0
- package/types/generated/Button.web.d.ts +6 -0
- package/types/generated/Card.d.ts +4 -0
- package/types/generated/Card.web.d.ts +4 -0
- package/types/generated/Checkbox.d.ts +5 -0
- package/types/generated/Checkbox.web.d.ts +6 -0
- package/types/generated/CheckboxGroup.d.ts +3 -0
- package/types/generated/CheckboxGroup.web.d.ts +3 -0
- package/types/generated/Chip.d.ts +5 -0
- package/types/generated/Chip.web.d.ts +5 -0
- package/types/generated/Collapsible.d.ts +5 -0
- package/types/generated/Collapsible.web.d.ts +5 -0
- package/types/generated/CommandPalette.d.ts +4 -0
- package/types/generated/CommandPalette.web.d.ts +4 -0
- package/types/generated/ContextMenu.d.ts +5 -0
- package/types/generated/ContextMenu.web.d.ts +4 -0
- package/types/generated/Drawer.d.ts +7 -0
- package/types/generated/Drawer.web.d.ts +7 -0
- package/types/generated/DropdownMenu.d.ts +5 -0
- package/types/generated/DropdownMenu.web.d.ts +5 -0
- package/types/generated/Empty.d.ts +4 -0
- package/types/generated/Empty.web.d.ts +4 -0
- package/types/generated/FieldGroup.d.ts +4 -0
- package/types/generated/FieldGroup.web.d.ts +4 -0
- package/types/generated/FormField.d.ts +5 -0
- package/types/generated/FormField.web.d.ts +5 -0
- package/types/generated/Grid.d.ts +3 -0
- package/types/generated/Grid.web.d.ts +3 -0
- package/types/generated/Heading.d.ts +2 -0
- package/types/generated/Heading.web.d.ts +2 -0
- package/types/generated/Hoverable.d.ts +10 -0
- package/types/generated/Hoverable.web.d.ts +9 -0
- package/types/generated/Icon.d.ts +3 -0
- package/types/generated/Icon.web.d.ts +3 -0
- package/types/generated/Image.d.ts +7 -0
- package/types/generated/Image.web.d.ts +3 -0
- package/types/generated/InputNumber.d.ts +5 -0
- package/types/generated/InputNumber.web.d.ts +5 -0
- package/types/generated/InputRating.d.ts +4 -0
- package/types/generated/InputRating.web.d.ts +4 -0
- package/types/generated/InputTags.d.ts +4 -0
- package/types/generated/InputTags.web.d.ts +5 -0
- package/types/generated/Kbd.d.ts +4 -0
- package/types/generated/Kbd.web.d.ts +4 -0
- package/types/generated/KeyboardAvoiding.mobile.d.ts +2 -0
- package/types/generated/Link.d.ts +2 -0
- package/types/generated/Link.web.d.ts +3 -0
- package/types/generated/ListItem.d.ts +3 -0
- package/types/generated/ListItem.web.d.ts +3 -0
- package/types/generated/Meter.d.ts +3 -0
- package/types/generated/Meter.web.d.ts +3 -0
- package/types/generated/NavLink.d.ts +3 -0
- package/types/generated/NavLink.web.d.ts +3 -0
- package/types/generated/NavigationMenu.d.ts +4 -0
- package/types/generated/NavigationMenu.web.d.ts +5 -0
- package/types/generated/Overlay.d.ts +3 -0
- package/types/generated/Overlay.web.d.ts +3 -0
- package/types/generated/Pagination.d.ts +4 -0
- package/types/generated/Pagination.web.d.ts +5 -0
- package/types/generated/PinInput.d.ts +4 -0
- package/types/generated/PinInput.web.d.ts +4 -0
- package/types/generated/Popover.d.ts +6 -0
- package/types/generated/Popover.web.d.ts +3 -0
- package/types/generated/Pressable.d.ts +6 -0
- package/types/generated/Pressable.web.d.ts +2 -0
- package/types/generated/ProgressGroup.d.ts +3 -0
- package/types/generated/ProgressGroup.web.d.ts +4 -0
- package/types/generated/RadioGroup.d.ts +5 -0
- package/types/generated/RadioGroup.web.d.ts +5 -0
- package/types/generated/RichText.d.ts +7 -0
- package/types/generated/RichText.web.d.ts +3 -0
- package/types/generated/RouteHost.mobile.d.ts +14 -0
- package/types/generated/Row.d.ts +2 -0
- package/types/generated/Row.web.d.ts +2 -0
- package/types/generated/SafeArea.d.ts +2 -0
- package/types/generated/SafeArea.web.d.ts +3 -0
- package/types/generated/Screen.d.ts +3 -0
- package/types/generated/Screen.web.d.ts +3 -0
- package/types/generated/ScrollBox.d.ts +3 -0
- package/types/generated/ScrollBox.web.d.ts +3 -0
- package/types/generated/ScrollView.d.ts +7 -0
- package/types/generated/ScrollView.web.d.ts +6 -0
- package/types/generated/SearchInput.d.ts +7 -0
- package/types/generated/SearchInput.web.d.ts +6 -0
- package/types/generated/SegmentedControl.d.ts +7 -0
- package/types/generated/SegmentedControl.web.d.ts +6 -0
- package/types/generated/Select.d.ts +6 -0
- package/types/generated/Select.web.d.ts +6 -0
- package/types/generated/Separator.d.ts +5 -0
- package/types/generated/Separator.web.d.ts +5 -0
- package/types/generated/Sheet.d.ts +5 -0
- package/types/generated/Sheet.web.d.ts +7 -0
- package/types/generated/Skeleton.d.ts +5 -0
- package/types/generated/Skeleton.web.d.ts +6 -0
- package/types/generated/Slider.d.ts +6 -0
- package/types/generated/Slider.web.d.ts +6 -0
- package/types/generated/Spacer.d.ts +3 -0
- package/types/generated/Spacer.web.d.ts +3 -0
- package/types/generated/Stack.d.ts +3 -0
- package/types/generated/Stack.web.d.ts +3 -0
- package/types/generated/Stepper.d.ts +4 -0
- package/types/generated/Stepper.web.d.ts +5 -0
- package/types/generated/Switch.d.ts +7 -0
- package/types/generated/Switch.web.d.ts +6 -0
- package/types/generated/Table.d.ts +4 -0
- package/types/generated/Table.web.d.ts +5 -0
- package/types/generated/Tabs.d.ts +10 -0
- package/types/generated/Tabs.web.d.ts +6 -0
- package/types/generated/Text.d.ts +2 -0
- package/types/generated/Text.web.d.ts +2 -0
- package/types/generated/TextArea.d.ts +8 -0
- package/types/generated/TextArea.web.d.ts +9 -0
- package/types/generated/TextInput.d.ts +9 -0
- package/types/generated/TextInput.web.d.ts +2 -0
- package/types/generated/Timeline.d.ts +3 -0
- package/types/generated/Timeline.web.d.ts +4 -0
- package/types/generated/Tooltip.d.ts +9 -0
- package/types/generated/Tooltip.web.d.ts +12 -0
- package/types/generated/Tree.d.ts +4 -0
- package/types/generated/Tree.web.d.ts +4 -0
- package/types/generated/User.d.ts +5 -0
- package/types/generated/User.web.d.ts +5 -0
- package/types/generated/View.d.ts +7 -0
- package/types/generated/View.web.d.ts +7 -0
- package/types/generated/VirtualList.d.ts +5 -0
- package/types/generated/VirtualList.web.d.ts +4 -0
- package/types/generated/WebView.d.ts +11 -0
- package/types/generated/WebView.web.d.ts +5 -0
- package/types/generated/aliases.d.ts +7 -0
- package/types/generated/aliases.web.d.ts +7 -0
- package/types/generated/android/BottomNavigationView.android.d.ts +9 -0
- package/types/generated/android/CircularProgressIndicator.android.d.ts +6 -0
- package/types/generated/android/DrawerLayout.android.d.ts +12 -0
- package/types/generated/android/MaterialDialog.android.d.ts +8 -0
- package/types/generated/android/MaterialSwitch.android.d.ts +6 -0
- package/types/generated/android/RecyclerView.android.d.ts +14 -0
- package/types/generated/android/SeekBar.android.d.ts +5 -0
- package/types/generated/android/icon.android.d.ts +5 -0
- package/types/generated/android/index.d.ts +12 -0
- package/types/generated/android/openModal.android.d.ts +4 -0
- package/types/generated/anim.d.ts +10 -0
- package/types/generated/anim.web.d.ts +3 -0
- package/types/generated/apply-native-modifiers.native.d.ts +3 -0
- package/types/generated/child-array.d.ts +3 -0
- package/types/generated/cx.d.ts +6 -0
- package/types/generated/escape-props.d.ts +16 -0
- package/types/generated/icons.d.ts +5 -0
- package/types/generated/index.d.ts +1 -0
- package/types/generated/index.linux.d.ts +5 -0
- package/types/generated/index.mobile.d.ts +4 -0
- package/types/generated/index.shared.d.ts +111 -0
- package/types/generated/index.shared.web.d.ts +111 -0
- package/types/generated/index.web.d.ts +1 -0
- package/types/generated/ios/LiquidGlass.ios.d.ts +12 -0
- package/types/generated/ios/LiquidGlassContainer.ios.d.ts +13 -0
- package/types/generated/ios/SideDrawer.ios.d.ts +12 -0
- package/types/generated/ios/UIActivityIndicatorView.ios.d.ts +5 -0
- package/types/generated/ios/UIModal.ios.d.ts +7 -0
- package/types/generated/ios/UISlider.ios.d.ts +5 -0
- package/types/generated/ios/UISwitch.ios.d.ts +6 -0
- package/types/generated/ios/UITabBar.ios.d.ts +7 -0
- package/types/generated/ios/UITableView.ios.d.ts +14 -0
- package/types/generated/ios/icon.ios.d.ts +5 -0
- package/types/generated/ios/index.d.ts +14 -0
- package/types/generated/ios/openModal.ios.d.ts +4 -0
- package/types/generated/keyboard-inset.mobile.d.ts +10 -0
- package/types/generated/layout-child.d.ts +6 -0
- package/types/generated/layout-child.web.d.ts +15 -0
- package/types/generated/meter-math.d.ts +6 -0
- package/types/generated/modal-presenter.mobile.d.ts +14 -0
- package/types/generated/modifier-factories.d.ts +15 -0
- package/types/generated/native/index.d.ts +3 -0
- package/types/generated/pan.d.ts +2 -0
- package/types/generated/pan.web.d.ts +9 -0
- package/types/generated/platform.d.ts +7 -0
- package/types/generated/platform.web.d.ts +6 -0
- package/types/generated/platformProps.d.ts +7 -0
- package/types/generated/platformProps.web.d.ts +2 -0
- package/types/generated/popover-position.d.ts +14 -0
- package/types/generated/props.d.ts +1626 -0
- package/types/generated/refresh-metrics.d.ts +8 -0
- package/types/generated/refresh.d.ts +42 -0
- package/types/generated/refresh.web.d.ts +23 -0
- package/types/generated/root-layout.mobile.d.ts +22 -0
- package/types/generated/route-host.mobile.d.ts +1 -0
- package/types/generated/route-table.d.ts +90 -0
- package/types/generated/route.d.ts +74 -0
- package/types/generated/route.web.d.ts +67 -0
- package/types/generated/safeAreaInsets.d.ts +8 -0
- package/types/generated/safeAreaInsets.web.d.ts +8 -0
- package/types/generated/sheet-detents.d.ts +23 -0
- package/types/generated/sheet-detents.web.d.ts +13 -0
- package/types/generated/sheet-service.d.ts +11 -0
- package/types/generated/sheet-service.web.d.ts +6 -0
- package/types/generated/sheet-snap.d.ts +18 -0
- package/types/generated/stacks.d.ts +9 -0
- package/types/generated/stacks.web.d.ts +4 -0
- package/types/generated/store.d.ts +14 -0
- package/types/generated/styled.d.ts +20 -0
- package/types/generated/styled.web.d.ts +10 -0
- package/types/generated/svg.mobile.d.ts +23 -0
- package/types/generated/tap-to-blur.mobile.d.ts +16 -0
- package/types/generated/text-write.d.ts +9 -0
- package/types/generated/theme/colorScheme.d.ts +6 -0
- package/types/generated/theme/colorScheme.linux.d.ts +5 -0
- package/types/generated/theme/colorScheme.web.d.ts +5 -0
- package/types/generated/theme/status-bar-scheme.mobile.d.ts +1 -0
- package/types/generated/theme/theme-scheme.d.ts +20 -0
- package/types/generated/toast-anchor.d.ts +4 -0
- package/types/generated/toast-anchor.web.d.ts +4 -0
- package/types/generated/transform.web.d.ts +8 -0
- package/types/generated/translate.d.ts +5 -0
- package/types/generated/translate.web.d.ts +6 -0
- package/types/generated/use-back.d.ts +6 -0
- package/types/generated/use-back.web.d.ts +7 -0
- package/types/generated/use-store.d.ts +9 -0
- package/types/generated/use-store.web.d.ts +9 -0
- package/types/generated/useMeasure.d.ts +3 -0
- package/types/generated/useMeasure.web.d.ts +3 -0
- package/types/generated/vendor/ui-svg/index.common.d.ts +7 -0
- package/types/generated/vendor/ui-svg/index.d.ts +1 -0
- package/types/generated/vendor/ui-svg/index.ios.d.ts +13 -0
- package/types/generated/virtual-list-layout.d.ts +44 -0
- package/types/generated/web/index.d.ts +3 -0
- package/types/generated/windows.d.ts +3 -0
- package/types/generated/windows.linux.d.ts +15 -0
- package/types/generated/windows.web.d.ts +3 -0
- package/types/index.macos.d.ts +142 -0
- package/dist/native/ui10.js +0 -32
- package/dist/native/ui25.js +0 -141
- package/dist/native/ui27.js +0 -61
- package/dist/native/ui39.js +0 -103
- package/dist/native/ui4.js +0 -24
- package/dist/native/ui46.js +0 -267
- package/dist/native/ui48.js +0 -35
- package/dist/native/ui55.js +0 -92
- package/dist/native/ui57.js +0 -19
- package/dist/native/ui60.js +0 -14
- package/dist/native/ui7.js +0 -52
- package/dist/native/ui9.js +0 -36
- package/dist/web/ui10.js +0 -46
- package/dist/web/ui11.js +0 -42
- package/dist/web/ui22.js +0 -108
- package/dist/web/ui23.js +0 -96
- package/dist/web/ui26.js +0 -45
- package/dist/web/ui3.js +0 -31
- package/dist/web/ui30.js +0 -34
- package/dist/web/ui40.js +0 -154
- package/dist/web/ui41.js +0 -43
- package/dist/web/ui44.js +0 -42
- package/dist/web/ui5.js +0 -168
- package/dist/web/ui51.js +0 -47
- package/dist/web/ui52.js +0 -19
- package/dist/web/ui55.js +0 -17
- package/dist/web/ui59.js +0 -44
- package/dist/web/ui6.js +0 -94
- package/dist/web/ui7.js +0 -62
- package/dist/web/ui8.js +0 -46
- package/dist/web/ui9.js +0 -46
- package/types/index.d.ts +0 -258
- package/types/props.d.ts +0 -742
- /package/dist/native/{ui2.js → cx.js} +0 -0
- /package/dist/native/{ui54.js → meter-math.js} +0 -0
- /package/dist/native/{ui37.js → popover-position.js} +0 -0
- /package/dist/native/{ui61.js → store.js} +0 -0
- /package/dist/web/{ui16.js → Link.web.tsrx.js} +0 -0
- /package/dist/web/{ui28.js → cx.js} +0 -0
- /package/dist/web/{ui2.js → escape-props.web.js} +0 -0
- /package/dist/web/{ui4.js → layout-child.web.js} +0 -0
- /package/dist/web/{ui49.js → meter-math.js} +0 -0
- /package/dist/web/{ui47.js → platformProps.web.js} +0 -0
- /package/dist/web/{ui32.js → popover-position.js} +0 -0
- /package/dist/web/{ui42.js → safeAreaInsets.web.tsrx.js} +0 -0
- /package/dist/web/{ui56.js → stacks.web.js} +0 -0
- /package/dist/web/{ui57.js → store.js} +0 -0
- /package/dist/web/{ui37.js → styled.web.tsrx.js} +0 -0
- /package/dist/web/{ui27.js → theme/colorScheme.web.js} +0 -0
- /package/dist/web/{ui58.js → use-store.web.tsrx.js} +0 -0
- /package/dist/web/{ui46.js → useMeasure.web.tsrx.js} +0 -0
- /package/dist/web/{ui38.js → windows.web.js} +0 -0
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/** Pull-to-refresh geometry — one strip height drives the indicator
|
|
2
|
+
* reveal, the default trigger threshold, and the docked gap on every
|
|
3
|
+
* target (px on web, dip on native — equal by the dip≈px contract). */
|
|
4
|
+
export declare const REFRESH_HEADER_HEIGHT = 64;
|
|
5
|
+
/** Finger-travel → content displacement. iOS rubber-band applies ~0.5
|
|
6
|
+
* resistance at small pulls; web/Android drive the same ratio so the
|
|
7
|
+
* affordance reads identically across targets. */
|
|
8
|
+
export declare function dampenPull(dy: number): number;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
export interface RefreshConfig {
|
|
2
|
+
onRefresh?: () => void;
|
|
3
|
+
refreshing?: boolean;
|
|
4
|
+
threshold?: number;
|
|
5
|
+
}
|
|
6
|
+
export interface RefreshHost {
|
|
7
|
+
/** The scrolling view — NS ScrollView or ListView. */
|
|
8
|
+
scroller: any;
|
|
9
|
+
/** The overlay strip (owns the self-drawn spinner), translated in/out. */
|
|
10
|
+
indicator: any;
|
|
11
|
+
/** True when the scroller is resting at its top edge (Android only —
|
|
12
|
+
* iOS reads the overscroll directly from contentOffset). */
|
|
13
|
+
isAtTop: () => boolean;
|
|
14
|
+
/** Latest props — a ref so callback identity churn can't re-attach. */
|
|
15
|
+
cfg: {
|
|
16
|
+
current: RefreshConfig;
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
export interface RefreshController {
|
|
20
|
+
/** Call when `refreshing` changes — docks/undocks the indicator. */
|
|
21
|
+
sync: () => void;
|
|
22
|
+
detach: () => void;
|
|
23
|
+
}
|
|
24
|
+
/** Pan-driven pull-to-refresh over any NS scrollable (scrollview or
|
|
25
|
+
* listview). Two mechanics, one visual:
|
|
26
|
+
*
|
|
27
|
+
* iOS — UIScrollView's own bounce supplies the content displacement
|
|
28
|
+
* (NS gesture delegates allow simultaneous recognition, so our pan on
|
|
29
|
+
* the scroller observes alongside the scroll pan). The handler reads
|
|
30
|
+
* `contentOffset` for the live gap and docks with
|
|
31
|
+
* `contentInset.top += H` — the exact mechanics UIRefreshControl uses.
|
|
32
|
+
*
|
|
33
|
+
* Android — there is no overscroll; the scroller box itself is
|
|
34
|
+
* translated inside the clipping wrapper while the damped drag
|
|
35
|
+
* accumulates. Docking holds the translate at H. Edge glow is disabled
|
|
36
|
+
* (OVER_SCROLL_NEVER) so no OS chrome leaks into the pixels.
|
|
37
|
+
*
|
|
38
|
+
* Releasing past `threshold` fires `onRefresh` once per pull and holds
|
|
39
|
+
* the docked gap; the controlled `refreshing` prop keeps it docked.
|
|
40
|
+
* A short grace window collapses the dock if `refreshing` never comes —
|
|
41
|
+
* props land a render after `onRefresh` fires. */
|
|
42
|
+
export declare function createPullToRefresh(host: RefreshHost): RefreshController;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export interface RefreshConfig {
|
|
2
|
+
onRefresh?: () => void;
|
|
3
|
+
refreshing?: boolean;
|
|
4
|
+
threshold?: number;
|
|
5
|
+
}
|
|
6
|
+
export interface RefreshController {
|
|
7
|
+
/** Call when `refreshing` changes — docks/undocks the indicator. */
|
|
8
|
+
sync: () => void;
|
|
9
|
+
detach: () => void;
|
|
10
|
+
}
|
|
11
|
+
/** Pointer/touch-driven pull-to-refresh for the DOM leaf — the web has no
|
|
12
|
+
* native overscroll, so drag distance translates the scroller inside the
|
|
13
|
+
* clipped wrapper while the self-drawn indicator slides into the gap.
|
|
14
|
+
* `touchmove` must be non-passive: `preventDefault` is what keeps the
|
|
15
|
+
* browser from taking the gesture as a scroll (or Chrome's own
|
|
16
|
+
* pull-to-refresh on Android). Mouse drags ride the pointer events. */
|
|
17
|
+
export declare function createPullToRefresh(host: {
|
|
18
|
+
scroller: HTMLElement | null;
|
|
19
|
+
indicator: HTMLElement | null;
|
|
20
|
+
cfg: {
|
|
21
|
+
current: RefreshConfig;
|
|
22
|
+
};
|
|
23
|
+
}): RefreshController;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { RootLayout } from '@nativescript/core';
|
|
2
|
+
/** Called by the Screen leaf's <rootlayout> onLoaded/onUnloaded. */
|
|
3
|
+
export declare function registerRootLayout(rl: RootLayout | undefined | null): void;
|
|
4
|
+
export declare function unregisterRootLayout(rl: RootLayout | undefined | null): void;
|
|
5
|
+
/** The most recently mounted rootlayout — the top of the push stack. For
|
|
6
|
+
* imperative services (toast, sheet) there is no invoking component to
|
|
7
|
+
* walk from; last-mounted is the pushed page when one exists. Caveat: tabs
|
|
8
|
+
* keep visited panes mounted — last is the newest, not the visible tab. */
|
|
9
|
+
export declare function topRootLayout(): RootLayout | undefined;
|
|
10
|
+
/** Resolve the RootLayout enclosing `view` by walking the native parent
|
|
11
|
+
* chain — the screen shell is a RootLayout (Screen), so the first
|
|
12
|
+
* RootLayout ancestor IS the current page's overlay host. Falls back to
|
|
13
|
+
* the top registry entry when the component renders outside any Screen. */
|
|
14
|
+
export declare function rootLayoutFor(view: any): RootLayout | undefined;
|
|
15
|
+
/** Search every registered rootlayout for a view by id — overlays/sheets/
|
|
16
|
+
* toasts land on different rootlayouts depending on which screen's shell
|
|
17
|
+
* mounted last. Unloaded subtrees are skipped: a covered page unloads its
|
|
18
|
+
* views (NativeScript detaches their native recognizers while the JS views
|
|
19
|
+
* stay parented), so an unloaded match is a dead twin that can swallow
|
|
20
|
+
* interaction probes — the live view either doesn't exist here yet or sits
|
|
21
|
+
* under a loaded branch. */
|
|
22
|
+
export declare function findInRootLayouts(id: string): any;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { RouteHost, screenParamsFor } from './RouteHost.mobile.js';
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/** Shared route-dir manifest — the file-router half of the nav contract
|
|
2
|
+
* (docs/navigation-notes.md). Apps glob their route dir per platform and
|
|
3
|
+
* pass the module map here; the suffix seam applies to directories the
|
|
4
|
+
* same way it does to imports:
|
|
5
|
+
*
|
|
6
|
+
* // route-manifest.web.ts — generated globs also omit a plain route when
|
|
7
|
+
* // a `.web` twin exists, so native-default modules are never evaluated.
|
|
8
|
+
* const files = import.meta.glob(
|
|
9
|
+
* ['./app/**\/*.{tsrx,tsx}', '!./app/**\/*.mobile.{tsrx,tsx}',
|
|
10
|
+
* '!./app/**\/*.ios.{tsrx,tsx}', '!./app/**\/*.android.{tsrx,tsx}',
|
|
11
|
+
* '!./app/**\/*.macos.{tsrx,tsx}', '!./app/**\/*.windows.{tsrx,tsx}',
|
|
12
|
+
* '!./app/**\/*.linux.{tsrx,tsx}'],
|
|
13
|
+
* { eager: true });
|
|
14
|
+
* export const routes = deriveRouteManifest(files, ['web']);
|
|
15
|
+
*
|
|
16
|
+
* // route-manifest.mobile.ts — excludes *.web.tsrx; prefer by running OS
|
|
17
|
+
* export const routes = deriveRouteManifest(files,
|
|
18
|
+
* Device.os === 'Android' ? ['android', 'mobile'] : ['ios', 'mobile']);
|
|
19
|
+
*
|
|
20
|
+
* Conventions (route dir = `dir`, default 'app'):
|
|
21
|
+
* app/detail.tsrx → route 'detail'
|
|
22
|
+
* app/demo/[id].tsrx → route 'demo/:id' ([param] → :param)
|
|
23
|
+
* app/foo/index.tsrx → 'foo' (index = the dir's own route)
|
|
24
|
+
* app/settings.web.tsrx → 'settings' on web only — `prefer` decides
|
|
25
|
+
* app/_layout.tsrx → layouts[''] — a shell, not a route
|
|
26
|
+
* app/chat/_layout.tsrx → layouts['chat'] — nested shells cataloged
|
|
27
|
+
*
|
|
28
|
+
* `prefer` ranks platform suffixes — a suffix absent from it is another
|
|
29
|
+
* platform's file and is skipped entirely; unsuffixed files are the
|
|
30
|
+
* fallback (rank = prefer.length). Web callers pass ['web']; mobile
|
|
31
|
+
* callers pass the running OS first. */
|
|
32
|
+
import type { Route, RouteManifest, RouteMeta, RouteSpec, RouteSpecSet } from './props.js';
|
|
33
|
+
/** Internal error carrier used by the public `redirect()` helper. Keeping
|
|
34
|
+
* this in the shared route table gives both platform leaves the same guard
|
|
35
|
+
* behavior without importing a platform runtime. */
|
|
36
|
+
export declare class RouteRedirect extends Error {
|
|
37
|
+
readonly route: Route;
|
|
38
|
+
constructor(route: Route);
|
|
39
|
+
}
|
|
40
|
+
export declare function deriveRouteManifest(files: Record<string, any>, prefer: readonly string[], dir?: string): RouteManifest;
|
|
41
|
+
/** Build a manifest from app data rather than the route dir — the
|
|
42
|
+
* programmatic half of the route contract (host frameworks derive specs
|
|
43
|
+
* from their own sources, e.g. `readdirSync` over a content dir). Each
|
|
44
|
+
* spec's `path` uses the route-dir vocabulary; `layouts` keys are path
|
|
45
|
+
* prefixes playing the `_layout` role. Same-name duplicates inside the
|
|
46
|
+
* set keep the later entry with a warn, matching merge precedence. */
|
|
47
|
+
export declare function defineRoutes(input: readonly RouteSpec[] | RouteSpecSet): RouteManifest;
|
|
48
|
+
/** Compose manifests into one — file-derived base plus any number of
|
|
49
|
+
* programmatic sets (`registerRoutes(mergeRouteManifests(fromDir, dynamic))`).
|
|
50
|
+
* Registration order is precedence: on a same-name collision the later
|
|
51
|
+
* manifest's route wins and the loser's loader/beforeLoad/head go with it —
|
|
52
|
+
* a warn fires once per colliding name. `layouts` merge key-wise the same
|
|
53
|
+
* way. `matchRoute` order is rebuilt by specificity after the merge. */
|
|
54
|
+
export declare function mergeRouteManifests(...manifests: RouteManifest[]): RouteManifest;
|
|
55
|
+
/** Match URL path segments against a manifest — returns the winning meta
|
|
56
|
+
* plus extracted params, or null. First hit wins (routes are pre-sorted
|
|
57
|
+
* by specificity). */
|
|
58
|
+
export declare function matchRoute(routes: readonly RouteMeta[], segs: string[]): {
|
|
59
|
+
meta: RouteMeta;
|
|
60
|
+
params: Record<string, unknown>;
|
|
61
|
+
} | null;
|
|
62
|
+
/** Serialize a Route to a URL path (no origin): manifest routes substitute
|
|
63
|
+
* `:param` segments from params (leftover params → query string);
|
|
64
|
+
* non-manifest names keep the legacy `/<stack>/<name>?params` shape. */
|
|
65
|
+
export declare function buildRoutePath(routes: readonly RouteMeta[], r: Route): string;
|
|
66
|
+
/** `?a=1&b=2` → params — shared code carries no URLSearchParams
|
|
67
|
+
* (invariant 4: no DOM globals on the native path). */
|
|
68
|
+
export declare function parseQueryString(qs: string | undefined): Record<string, unknown>;
|
|
69
|
+
/** Full URL or path → canonical path for matching. `https://x/a/b?y` →
|
|
70
|
+
* `/a/b?y`; custom-scheme links keep their host as the first segment —
|
|
71
|
+
* `textcoral://post/5` → `/post/5` (the common app-scheme convention). */
|
|
72
|
+
export declare function linkPath(url: string): string;
|
|
73
|
+
/** Match a URL path+query against the manifest into a Route — the shared
|
|
74
|
+
* half of web's URL parse and native's deep-link handling. Whole-path
|
|
75
|
+
* match wins ('/demo/x' → root 'demo/:id'); a non-matching first segment
|
|
76
|
+
* is the stack prefix ('/demos/demo/x' → stack 'demos'). Unmatched names
|
|
77
|
+
* fall through as literal routes for pre-manifest callers. */
|
|
78
|
+
export declare function matchUrl(routes: readonly RouteMeta[], url: string): Route | null;
|
|
79
|
+
/** Fire a route's `loader` export — prefetch, not a data layer: the
|
|
80
|
+
* screen's own `query$` reads still own the data, this just warms the
|
|
81
|
+
* cache before mount. Sync throws and async rejections warn rather
|
|
82
|
+
* than break navigation. */
|
|
83
|
+
export declare function runLoader(routes: readonly RouteMeta[], r: Route): void;
|
|
84
|
+
/** Layout components wrapping a route name, outermost → innermost —
|
|
85
|
+
* 'chat/room' picks up `app/chat/_layout.tsrx`, 'a/b/c' chains 'a' then
|
|
86
|
+
* 'a/b'. The '' root layout is the app's own shell (entry renders it)
|
|
87
|
+
* and never joins a chain. Leaves apply the chain at render: native
|
|
88
|
+
* wraps each pushed Page's component, web wraps the outlet's resolved
|
|
89
|
+
* element. */
|
|
90
|
+
export declare function layoutChain(layouts: Record<string, any>, name: string): any[];
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/** Native twin of route.web — same Route contract over Frame/Page stacks.
|
|
2
|
+
* `pushRoute` resolves a stack ('root' = the app's root Frame — an
|
|
3
|
+
* explicit registerStack('root') or, by default, the Frame returned by
|
|
4
|
+
* Application.getRootView(); named stacks come from TabSpec.stack panes
|
|
5
|
+
* or registerStack) and pushes a Page hosting the registered screen —
|
|
6
|
+
* each pushed Page is its own Octane root (decision #9: pages never
|
|
7
|
+
* share context with their presenter). Params land as props; named-stack
|
|
8
|
+
* pushes get `_stack` injected so the screen can popRoute its own stack.
|
|
9
|
+
*
|
|
10
|
+
* Registration contract (the footgun this module exists to defuse):
|
|
11
|
+
* - `registerScreens(table)` once — pushRoute resolves `name` through it.
|
|
12
|
+
* - 'root' needs nothing when the app boots a Frame as its root view
|
|
13
|
+
* (the standard shape); non-Frame roots can't host pushes at all.
|
|
14
|
+
* - named stacks register via `TabSpec.stack` or `registerStack`.
|
|
15
|
+
* Every drop path warns loudly — silent no-ops are how apps ship a
|
|
16
|
+
* default route on native while working fine on web. */
|
|
17
|
+
import type { Route, RouteManifest, RouteMeta, ScreenTable } from './props.js';
|
|
18
|
+
export type { Route } from './props.js';
|
|
19
|
+
/** Register the app's name → screen table (call once, from the shared
|
|
20
|
+
* routes module). Native `pushRoute` resolves `route.name` through it;
|
|
21
|
+
* on web the table feeds `screenFor` for outlets without a
|
|
22
|
+
* `resolveScreen` prop. `manifest` (from deriveRouteManifest) is stored
|
|
23
|
+
* for parity — the web leaf matches URLs through it; native navigation
|
|
24
|
+
* is name+params and only needs the table. */
|
|
25
|
+
export declare function registerScreens(table: ScreenTable, manifest?: RouteMeta[]): void;
|
|
26
|
+
/** One-call registration for route-dir apps — screens + URL patterns +
|
|
27
|
+
* layouts all come from deriveRouteManifest. */
|
|
28
|
+
export declare function registerRoutes(manifest: RouteManifest): void;
|
|
29
|
+
/** Layer a programmatic manifest (from `defineRoutes`) over the registered
|
|
30
|
+
* routes — same-name entries win over the base with a warn, so a host
|
|
31
|
+
* framework can override a file route deliberately. Registered layers
|
|
32
|
+
* survive later registerRoutes re-registration (e.g. routes.gen HMR). */
|
|
33
|
+
export declare function addRoutes(manifest: RouteManifest): void;
|
|
34
|
+
export declare function layoutsForRoute(name: string): any[];
|
|
35
|
+
export declare function screenFor(name: string): ScreenTable[string] | undefined;
|
|
36
|
+
/** Register an Android hardware-back interceptor. Interceptors run
|
|
37
|
+
* most-recent-first (so the topmost mounted screen wins) before the
|
|
38
|
+
* framework's default pop; returning true consumes the press. Returns
|
|
39
|
+
* an unsubscribe. iOS has no hardware back — interceptors simply never
|
|
40
|
+
* fire there. */
|
|
41
|
+
export declare function addBackInterceptor(fn: () => boolean): () => void;
|
|
42
|
+
export declare function redirect(r: Route): never;
|
|
43
|
+
export declare function pushRoute(r: Route): void;
|
|
44
|
+
/** Pop the top page of a stack ('root' default) — or dismiss the top
|
|
45
|
+
* modal if one is open. Quiet no-op at the base page — matching web,
|
|
46
|
+
* where back at the app root is a no-op; loud only when the stack
|
|
47
|
+
* itself doesn't exist. */
|
|
48
|
+
export declare function popRoute(stack?: string): void;
|
|
49
|
+
/** Route stamped on a stack's current page, or null at its base page. */
|
|
50
|
+
export declare function routeFor(stack: string): Route | null;
|
|
51
|
+
/** The top route across stacks — root's current route wins (a root push
|
|
52
|
+
* covers the shell); otherwise the most recently registered named stack
|
|
53
|
+
* showing a pushed page. Native has no boot URL, so this is an
|
|
54
|
+
* approximation of web's "current URL route", not a deep link. */
|
|
55
|
+
export declare function currentRoute(): Route | null;
|
|
56
|
+
/** Named stacks containing routes, including Android's swap-pane stacks. */
|
|
57
|
+
export declare function routeStacks(): string[];
|
|
58
|
+
/** The modal route currently open, if any — parity with the web leaf. */
|
|
59
|
+
export declare function currentModalRoute(): Route | null;
|
|
60
|
+
/** Deep-link entry: normalize a URL (http(s) or app-scheme) to a path,
|
|
61
|
+
* match it against the manifest, push the route. Wire it at boot:
|
|
62
|
+
* `onDeepLink(pushDeepLink)` plus one `consumeInitialUrl()` call. */
|
|
63
|
+
export declare function pushDeepLink(url: string): boolean;
|
|
64
|
+
/** Path-string parity for the web leaf's hrefFor — a canonical
|
|
65
|
+
* /<stack>/<path> rendering of the route (deep-linking consumes it
|
|
66
|
+
* there). Native navigation itself is name+params, not URLs. */
|
|
67
|
+
export declare function hrefFor(r: Route): string;
|
|
68
|
+
export declare function useRoute(stack: string): Route | null;
|
|
69
|
+
/** Whether the selected native stack has a page (or route-owned Android swap
|
|
70
|
+
* entry) that can be popped. The modal root is also a back affordance. */
|
|
71
|
+
export declare function canGoBack(stack?: string): boolean;
|
|
72
|
+
export declare function useCanGoBack(stack?: string): boolean;
|
|
73
|
+
/** The modal route overlaying the shell — parity with the web leaf. */
|
|
74
|
+
export declare function useModalRoute(): Route | null;
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/** Web route store — the browser half of the nav contract. One linear URL
|
|
2
|
+
* stack; `stack` names the conceptual outlet ('root' covers the app, a
|
|
3
|
+
* named stack is the pane that owns it — parallel stacks map to nested
|
|
4
|
+
* routes). URL shape: /<stack>/<path>?query or /<path>?query for root,
|
|
5
|
+
* where <path> comes from the route-dir manifest — `app/demo/[id].tsrx`
|
|
6
|
+
* pushes as /demo/<id-value>. Names not in the manifest keep the legacy
|
|
7
|
+
* /<name>?params shape. Module-scope like every other store — the pane
|
|
8
|
+
* that owns `stack` subscribes with useRoute(stack) and swaps content.
|
|
9
|
+
*
|
|
10
|
+
* Modal routes (presentation 'modal' — `+modal` route files or a
|
|
11
|
+
* pushRoute override) push a real URL but overlay instead of replacing:
|
|
12
|
+
* `current` keeps the underlying route, `modalRoute` carries the modal.
|
|
13
|
+
* Back (popstate or popRoute) dismisses it. */
|
|
14
|
+
export type { Route } from './props.js';
|
|
15
|
+
import type { Route, RouteManifest, RouteMeta, ScreenTable } from './props.js';
|
|
16
|
+
/** Register the app's name → screen table. On web the table feeds
|
|
17
|
+
* `screenFor` — the fallback outlet resolution in Tabs when no
|
|
18
|
+
* `resolveScreen` prop is given; on native `pushRoute` resolves
|
|
19
|
+
* `route.name` through it. `manifest` (from deriveRouteManifest) enables
|
|
20
|
+
* path-param matching — call once from the shared routes module. */
|
|
21
|
+
export declare function registerScreens(table: ScreenTable, manifest?: RouteMeta[]): void;
|
|
22
|
+
/** One-call registration for route-dir apps — screens + URL patterns +
|
|
23
|
+
* layouts all come from deriveRouteManifest. */
|
|
24
|
+
export declare function registerRoutes(manifest: RouteManifest): void;
|
|
25
|
+
/** Layer a programmatic manifest (from `defineRoutes`) over the registered
|
|
26
|
+
* routes — same-name entries win over the base with a warn, so a host
|
|
27
|
+
* framework can override a file route deliberately. Registered layers
|
|
28
|
+
* survive later registerRoutes re-registration (e.g. routes.gen HMR). */
|
|
29
|
+
export declare function addRoutes(manifest: RouteManifest): void;
|
|
30
|
+
export declare function screenFor(name: string): ScreenTable[string] | undefined;
|
|
31
|
+
/** Directory layouts wrapping a route, outermost → innermost — outlets
|
|
32
|
+
* wrap their resolved element with these (`_layout.tsrx` files). */
|
|
33
|
+
export declare function layoutsFor(name: string): any[];
|
|
34
|
+
export { layoutsFor as layoutsForRoute };
|
|
35
|
+
export declare function redirect(r: Route): never;
|
|
36
|
+
export declare function pushRoute(r: Route): void;
|
|
37
|
+
/** Web history is one linear stack — back pops whatever route is current;
|
|
38
|
+
* per-stack pops aren't expressible, so `stack` is accepted for parity
|
|
39
|
+
* and ignored. A pushed modal is the top entry, so back dismisses it. */
|
|
40
|
+
export declare function popRoute(_stack?: string): void;
|
|
41
|
+
/** No-op twin of the native leaf. Browser back is already real history —
|
|
42
|
+
* there is no hardware-back event to intercept on web, so registered
|
|
43
|
+
* interceptors never fire. Warns once so a mistaken call site isn't
|
|
44
|
+
* silently absent. */
|
|
45
|
+
export declare function addBackInterceptor(_fn: () => boolean): () => void;
|
|
46
|
+
/** Current route if it targets `stack`, else null. */
|
|
47
|
+
export declare function routeFor(stack: string): Route | null;
|
|
48
|
+
/** Web has one linear browser history; expose its active route stack for parity. */
|
|
49
|
+
export declare function routeStacks(): string[];
|
|
50
|
+
/** The route active at boot — for deep-link tab selection. */
|
|
51
|
+
export declare function currentRoute(): Route | null;
|
|
52
|
+
/** The modal route overlaying the current one, if any. */
|
|
53
|
+
export declare function currentModalRoute(): Route | null;
|
|
54
|
+
/** Deep-link entry, web half — the URL *is* the route state, so this is a
|
|
55
|
+
* plain pushRoute of the matched path (parity with the native leaf, where
|
|
56
|
+
* apps wire `onDeepLink(pushDeepLink)`). */
|
|
57
|
+
export declare function pushDeepLink(url: string): boolean;
|
|
58
|
+
/** URL for a Route — Link's href and shareable-path helper. */
|
|
59
|
+
export declare function hrefFor(r: Route): string;
|
|
60
|
+
export declare function useRoute(stack: string): Route | null;
|
|
61
|
+
/** Whether the selected conceptual stack has an in-app route to pop. A
|
|
62
|
+
* browser's pre-app history is intentionally not counted. */
|
|
63
|
+
export declare function canGoBack(stack?: string): boolean;
|
|
64
|
+
export declare function useCanGoBack(stack?: string): boolean;
|
|
65
|
+
/** The modal route overlaying the shell — outlets render it above their
|
|
66
|
+
* normal content (URL preserved underneath). */
|
|
67
|
+
export declare function useModalRoute(): Route | null;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export interface SheetDetentsController {
|
|
2
|
+
/** Slide the panel in from below the screen edge — call once the host
|
|
3
|
+
* is inside the RootLayout (the RootLayout open call replaces the
|
|
4
|
+
* built-in enter/exit animation, which would fight detent offsets:
|
|
5
|
+
* it always animates translateY to 0). */
|
|
6
|
+
enter: () => void;
|
|
7
|
+
detach: () => void;
|
|
8
|
+
}
|
|
9
|
+
/** Drag-to-snap detents on a RootLayout sheet host: a self-drawn grabber
|
|
10
|
+
* strip (top-aligned grid child — the only drag target, so it never
|
|
11
|
+
* fights inner scrolling) drives the host's translateY; the host is
|
|
12
|
+
* sized to the largest detent and parked at the offset for the current
|
|
13
|
+
* one. `closeNow` fires after the dismiss slide-out — the caller decides
|
|
14
|
+
* what closing means (declarative `onDismiss` via RootLayout 'closed',
|
|
15
|
+
* or the `openSheet` resolution).
|
|
16
|
+
*
|
|
17
|
+
* In-window on native: the OS detent presentations
|
|
18
|
+
* (UISheetPresentationController / BottomSheetBehavior via
|
|
19
|
+
* BottomSheetDialogFragment) host a modal VC or a separate dialog
|
|
20
|
+
* window — a different surface contract than the RootLayout child this
|
|
21
|
+
* sheet is (UIModal/MaterialDialog own the modal path), so the snap
|
|
22
|
+
* mechanics are self-drawn and identical to the web leaf. */
|
|
23
|
+
export declare function attachSheetDetents(host: any, detents: readonly number[], closeNow: () => void): SheetDetentsController;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export interface SheetDetentsController {
|
|
2
|
+
detach: () => void;
|
|
3
|
+
}
|
|
4
|
+
/** Drag-to-snap detents on a `.vx-sheet` panel: a self-drawn grabber strip
|
|
5
|
+
* (the only drag target — it never fights inner scrolling) drives the
|
|
6
|
+
* panel's translateY; the panel is sized to the largest detent and parked
|
|
7
|
+
* at the offset for the current one. `closeNow` fires after the dismiss
|
|
8
|
+
* slide-out — the caller decides what closing means (declarative
|
|
9
|
+
* `onDismiss` or the `openSheet` resolution). In-window on every target —
|
|
10
|
+
* the OS detent presentations (UISheetPresentationController /
|
|
11
|
+
* BottomSheetDialog) host a modal VC/dialog window, not a RootLayout
|
|
12
|
+
* child, so the snap mechanics stay self-drawn for pixel parity. */
|
|
13
|
+
export declare function attachSheetDetents(panel: HTMLElement, detents: readonly number[], closeNow: () => void): SheetDetentsController;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { GridLayout } from '@nativescript/core';
|
|
2
|
+
import type { ModalOpenResult, OpenSheet } from './props.js';
|
|
3
|
+
/** The most recently opened sheet's host view — for harness asserts (view
|
|
4
|
+
* identity beats tree search; the owning rootlayout may unload/reload). */
|
|
5
|
+
export declare function sheetHost(): GridLayout | null;
|
|
6
|
+
/** Close the most recently opened sheet (resolve with `result`). */
|
|
7
|
+
export declare function closeSheet(result?: ModalOpenResult): void;
|
|
8
|
+
/** Imperative in-window sheet: a dedicated Octane root on a bottom-docked
|
|
9
|
+
* GridLayout host opened on the CURRENT rootlayout (topRootLayout — the
|
|
10
|
+
* service has no declaring view). Resolves when the sheet closes. */
|
|
11
|
+
export declare const openSheet: OpenSheet;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ModalOpenResult, OpenSheet } from './props.js';
|
|
2
|
+
/** Close the most recently opened sheet (resolve with `result`). */
|
|
3
|
+
export declare function closeSheet(result?: ModalOpenResult): void;
|
|
4
|
+
/** Imperative in-window sheet: portal layer at document root, bottom-
|
|
5
|
+
* anchored panel, dedicated Octane root. Resolves when the sheet closes. */
|
|
6
|
+
export declare const openSheet: OpenSheet;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/** Detent math shared by the web/native sheet-detents attachments.
|
|
2
|
+
* Detents are viewport-height fractions; the panel is sized to the
|
|
3
|
+
* largest detent and parked at the translateY offset for the current
|
|
4
|
+
* one, so a snap is just a transform write — no layout thrash. */
|
|
5
|
+
/** Downward/upward finger speed (px/s web, dip/s native) that overrides
|
|
6
|
+
* nearest-detent snapping — a fling snaps one detent in its direction. */
|
|
7
|
+
export declare const DETENT_FLICK_VELOCITY = 500;
|
|
8
|
+
/** Sorted, filtered, deduped detent fractions. Empty → the caller keeps
|
|
9
|
+
* the content-sized sheet behavior (detents off). */
|
|
10
|
+
export declare function normalizeDetents(input?: readonly number[]): number[];
|
|
11
|
+
/** Resting translateY for a detent: the panel is `max * vh` tall, so the
|
|
12
|
+
* portion below the screen edge is `(max - detent) * vh`. */
|
|
13
|
+
export declare function detentOffset(detents: readonly number[], index: number, vh: number): number;
|
|
14
|
+
/** Snap target for a release at translateY `ty` with vertical velocity
|
|
15
|
+
* `vy` (positive = dragging down). Returns the detent index, or -1 to
|
|
16
|
+
* dismiss: released below half of the smallest detent, or a downward
|
|
17
|
+
* fling while at/below it. */
|
|
18
|
+
export declare function snapDetentIndex(ty: number, vy: number, detents: readonly number[], vh: number): number;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Frame } from '@nativescript/core';
|
|
2
|
+
export declare function registerStack(name: string, frame: Frame): void;
|
|
3
|
+
export declare function getStack(name: string): Frame | undefined;
|
|
4
|
+
/** All registered stacks in registration order — for hardware-back
|
|
5
|
+
* resolution (pop whichever stack is visibly on top). */
|
|
6
|
+
export declare function stackEntries(): IterableIterator<[string, Frame]>;
|
|
7
|
+
/** Internal: route.native attaches frame listeners as stacks appear —
|
|
8
|
+
* named frames can register after a useRoute subscription ran. */
|
|
9
|
+
export declare function onStackRegistered(cb: (name: string, frame: Frame) => void): void;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/** Web twin — one linear URL stack; named stacks don't apply. */
|
|
2
|
+
export declare function registerStack(_name: string, _frame: unknown): void;
|
|
3
|
+
export declare function getStack(_name: string): undefined;
|
|
4
|
+
export declare function stackEntries(): IterableIterator<[string, never]>;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Module-scope store — the shared-state primitive for this stack.
|
|
3
|
+
*
|
|
4
|
+
* Why it exists: the universal (native) renderer RETAINS child components
|
|
5
|
+
* whose props are shallow-unchanged when a parent re-renders — their render
|
|
6
|
+
* functions do not re-run, so a bare `store.get()` in a child stays stale
|
|
7
|
+
* (the DOM renderer re-invokes them, React-style). The portable rule is:
|
|
8
|
+
* every component that reads shared state subscribes to it. The renderer-owned
|
|
9
|
+
* `use-store` leaves implement that subscription; this file is the hook-free
|
|
10
|
+
* half, so plain `.ts` is correct.
|
|
11
|
+
*/
|
|
12
|
+
import type { Store } from './props.js';
|
|
13
|
+
export type { ReadableStore, Store } from './props.js';
|
|
14
|
+
export declare function createStore<T>(initial: T): Store<T>;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* styled() — decision #7, Tamagui-shaped but CSS-backed. base/variants are
|
|
3
|
+
* class strings composed into className; the leaf decides what those classes
|
|
4
|
+
* mean per platform.
|
|
5
|
+
*
|
|
6
|
+
* const DangerBtn = styled(Pressable, { base: 'btn', variants: { danger: 'bg-danger' } });
|
|
7
|
+
* <DangerBtn danger /> → className=['btn','bg-danger']
|
|
8
|
+
*
|
|
9
|
+
* Universal constraint (Exp 16): component elements require the
|
|
10
|
+
* compiler-stamped UNIVERSAL_COMPONENT mark and JSX/`@{ }` only lowers at
|
|
11
|
+
* module level — so a component factory can't be authored with JSX. This
|
|
12
|
+
* leaf stamps the mark itself via defineUniversalComponent and returns
|
|
13
|
+
* universalComponent(...) elements directly. If upstream exposes a blessed
|
|
14
|
+
* factory path, switch to it (driver-level fix candidate). */
|
|
15
|
+
export declare function styled<P extends {
|
|
16
|
+
className?: any;
|
|
17
|
+
}, V extends Record<string, any>>(Base: (props: P) => any, def: {
|
|
18
|
+
base?: any;
|
|
19
|
+
variants?: V;
|
|
20
|
+
}): import("@nativescript-community/octane").UniversalComponent<P & { [K in keyof V]?: boolean | undefined; }>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/** @jsxImportSource octane */
|
|
2
|
+
/**
|
|
3
|
+
* styled() — decision #7. Web side: DOM codegen lowers JSX in nested
|
|
4
|
+
* functions fine, so the factory is a plain component. */
|
|
5
|
+
export declare function styled<P extends {
|
|
6
|
+
className?: any;
|
|
7
|
+
}, V extends Record<string, any>>(Base: (props: P) => any, def: {
|
|
8
|
+
base?: any;
|
|
9
|
+
variants?: V;
|
|
10
|
+
}): (props: P & { [K in keyof V]?: boolean; }) => import("octane/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { SVGView } from './vendor/ui-svg/index.js';
|
|
2
|
+
import type { IconGlyph } from './props.js';
|
|
3
|
+
declare module '@nativescript-community/octane/intrinsics' {
|
|
4
|
+
interface NativeScriptElements {
|
|
5
|
+
svgview: Omit<Attributes<typeof SVGView>, 'src'> & {
|
|
6
|
+
/** SVGView awaits promise srcs — remote .svg URLs arrive as fetched markup. */
|
|
7
|
+
src?: string | Promise<string>;
|
|
8
|
+
stretch?: 'none' | 'fill' | 'aspectFit' | 'aspectFill';
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
/** True when an `src` carries SVG: inline markup, an svg data URI, or an
|
|
13
|
+
* .svg path/URL. Anything else stays on the raster <image> path. */
|
|
14
|
+
export declare function isSvgSrc(src: string): boolean;
|
|
15
|
+
/** Normalize an svg-shaped src into SVGView's grammar: file/resource paths and
|
|
16
|
+
* markup pass through, data URIs decode to markup, remote URLs fetch to
|
|
17
|
+
* markup (SVGView has no fetch of its own — it awaits promise srcs). */
|
|
18
|
+
export declare function svgSource(src: string): string | Promise<string>;
|
|
19
|
+
/** IconGlyph → a full `<svg>` string for SVGView. `svg` path data gets a
|
|
20
|
+
* `<path>` with the requested fill; `markup` wraps inside a viewBox shell
|
|
21
|
+
* with `color`/`fill` set on the root so `currentColor` and default-fill
|
|
22
|
+
* children pick up the tint. */
|
|
23
|
+
export declare function glyphSvgMarkup(glyph: IconGlyph, color?: string): string | undefined;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/** Tap-outside-to-blur: iOS keeps a focused UITextField/UITextView as first
|
|
2
|
+
* responder until something else takes it, so a tap on blank chrome never
|
|
3
|
+
* dismisses the keyboard on its own.
|
|
4
|
+
*
|
|
5
|
+
* iOS: a single window-level UITapGestureRecognizer (ref-counted across
|
|
6
|
+
* attach calls) sees every touch in the app window — popups/sheets included —
|
|
7
|
+
* where a recognizer on an intermediate container proved unreliable. On each
|
|
8
|
+
* tap we hit-test and resign first responder unless the hit view is an
|
|
9
|
+
* editable text view (otherwise the field would focus-then-blur in the same
|
|
10
|
+
* tap — recognizers fire on touch-up, after the field's touch-down focus).
|
|
11
|
+
* Keyboard taps live in a separate UIWindow, so they never reach it.
|
|
12
|
+
* `cancelsTouchesInView` stays false so taps still reach buttons.
|
|
13
|
+
*
|
|
14
|
+
* Android: hides the soft keyboard from the currently focused view when a
|
|
15
|
+
* tap lands on the attached container. */
|
|
16
|
+
export declare function attachTapToBlur(view: any): () => void;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/** Controlled `text` write for TextInput/TextArea leaves. The driver's
|
|
2
|
+
* generic prop path writes view.text verbatim; on Android the EditText
|
|
3
|
+
* setText resets the cursor to 0 on every controlled write. Park and
|
|
4
|
+
* restore the selection around the write (clamped to the new length so an
|
|
5
|
+
* append-shrink can't throw). iOS keeps the plain write — UITextField's
|
|
6
|
+
* text setter preserves the selected text range already.
|
|
7
|
+
* Returns without writing when the value already matches — the textChange
|
|
8
|
+
* echo of the user's own typing must not bounce back through setText. */
|
|
9
|
+
export declare function writeText(view: any, value: string | undefined | null): void;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export type { ColorScheme } from '../props.js';
|
|
2
|
+
import type { ColorScheme } from '../props.js';
|
|
3
|
+
export declare function getColorScheme(): ColorScheme;
|
|
4
|
+
export declare function subscribeSystemScheme(cb: () => void): () => void;
|
|
5
|
+
/** Reactive system appearance — 'light' | 'dark', re-renders on OS change. */
|
|
6
|
+
export declare function useColorScheme(): ColorScheme;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export type { ColorScheme } from '../props.js';
|
|
2
|
+
import type { ColorScheme } from '../props.js';
|
|
3
|
+
export declare function getColorScheme(): ColorScheme;
|
|
4
|
+
export declare function subscribeSystemScheme(cb: () => void): () => void;
|
|
5
|
+
export declare function useColorScheme(): ColorScheme;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export type { ColorScheme } from '../props.js';
|
|
2
|
+
import type { ColorScheme } from '../props.js';
|
|
3
|
+
export declare function getColorScheme(): ColorScheme;
|
|
4
|
+
export declare function subscribeSystemScheme(cb: () => void): () => void;
|
|
5
|
+
export declare function useColorScheme(): ColorScheme;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export type ThemePreference = 'light' | 'dark' | 'system';
|
|
2
|
+
/** App-level theme override. 'system' clears the override and follows the OS. */
|
|
3
|
+
export declare function setThemePreference(p: ThemePreference): void;
|
|
4
|
+
export declare function getThemePreference(): ThemePreference;
|
|
5
|
+
/** The effective scheme: explicit override if set, else system appearance. */
|
|
6
|
+
export declare function getThemeScheme(): 'light' | 'dark';
|
|
7
|
+
/** Reactive effective scheme — re-renders on override or OS change. */
|
|
8
|
+
export declare function useThemeScheme(): 'light' | 'dark';
|
|
9
|
+
/** Class string to stamp on independently-mounted roots (portal hosts,
|
|
10
|
+
* overlay/sheet/modal/toast containers): 'ns-dark dark' when effective
|
|
11
|
+
* dark, '' otherwise. Both names because tokens.css publishes both
|
|
12
|
+
* selectors and hosts may render either vocabulary. */
|
|
13
|
+
export declare function themeSchemeClasses(): string;
|
|
14
|
+
/** Subscribe imperative hosts to effective-scheme changes; returns an
|
|
15
|
+
* unsubscribe. Use for hosts that live outside any render cycle. */
|
|
16
|
+
export declare function onThemeSchemeChange(cb: () => void): () => void;
|
|
17
|
+
/** Stamp `base + themeSchemeClasses()` onto an imperative host (NS view or
|
|
18
|
+
* DOM element) and keep it live — returns an unsubscribe to call when the
|
|
19
|
+
* host closes. Works on both leaves since both honor `.className`. */
|
|
20
|
+
export declare function applyThemeClasses(view: any, base: string): () => void;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { ToastContent, ToastOptions } from './props.js';
|
|
2
|
+
/** FIFO queue. Anchored options use Popover; unanchored options use the
|
|
3
|
+
* RootLayout with top/bottom start/end alignment. */
|
|
4
|
+
export declare function showToast(content: ToastContent, options?: ToastOptions): void;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { ToastContent, ToastOptions } from './props.js';
|
|
2
|
+
/** FIFO queue. `anchor` uses the same portal positioning as Popover; without
|
|
3
|
+
* one, top/bottom and their start/end alignment variants use the viewport. */
|
|
4
|
+
export declare function showToast(content: ToastContent, options?: ToastOptions): void;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/** Per-element transform composition for imperative writes. The DOM has a
|
|
2
|
+
* single `transform` string where native has discrete view props, so web
|
|
3
|
+
* keeps the last-written value per transform prop and re-joins them —
|
|
4
|
+
* an AnimatedValue on `rotate` and a setTranslate drag on the same
|
|
5
|
+
* element don't clobber each other. */
|
|
6
|
+
/** Write one transform prop without disturbing the element's other
|
|
7
|
+
* transform components (or its stylesheet/base transform). */
|
|
8
|
+
export declare function writeTransformProp(el: HTMLElement, prop: string, value: number): void;
|