react-native-platform-components 1.3.0 → 1.5.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/PlatformComponents.podspec +1 -1
- package/README.md +47 -51
- package/android/src/main/java/com/platformcomponents/PCButtonGroupView.kt +664 -0
- package/android/src/main/java/com/platformcomponents/PCButtonGroupViewManager.kt +241 -0
- package/android/src/main/java/com/platformcomponents/PCButtonSupport.kt +159 -0
- package/android/src/main/java/com/platformcomponents/PCButtonView.kt +527 -0
- package/android/src/main/java/com/platformcomponents/PCButtonViewManager.kt +204 -0
- package/android/src/main/java/com/platformcomponents/PCContextMenuView.kt +41 -151
- package/android/src/main/java/com/platformcomponents/PCContextMenuViewManager.kt +7 -63
- package/android/src/main/java/com/platformcomponents/PCDatePickerView.kt +310 -115
- package/android/src/main/java/com/platformcomponents/PCDatePickerViewManager.kt +23 -3
- package/android/src/main/java/com/platformcomponents/PCExpressive.kt +112 -0
- package/android/src/main/java/com/platformcomponents/PCFloatingActionButtonView.kt +485 -0
- package/android/src/main/java/com/platformcomponents/PCFloatingActionButtonViewManager.kt +109 -0
- package/android/src/main/java/com/platformcomponents/PCFloatingToolbarView.kt +247 -0
- package/android/src/main/java/com/platformcomponents/PCFloatingToolbarViewManager.kt +73 -0
- package/android/src/main/java/com/platformcomponents/PCHaptics.kt +46 -0
- package/android/src/main/java/com/platformcomponents/PCImageLoader.kt +42 -7
- package/android/src/main/java/com/platformcomponents/PCLiquidGlassContainerView.kt +32 -0
- package/android/src/main/java/com/platformcomponents/PCLiquidGlassContainerViewManager.kt +31 -0
- package/android/src/main/java/com/platformcomponents/PCLiquidGlassView.kt +32 -6
- package/android/src/main/java/com/platformcomponents/PCLiquidGlassViewManager.kt +4 -0
- package/android/src/main/java/com/platformcomponents/PCMenuSupport.kt +280 -0
- package/android/src/main/java/com/platformcomponents/PCNavigationBarSupport.kt +332 -0
- package/android/src/main/java/com/platformcomponents/PCNavigationRailView.kt +448 -0
- package/android/src/main/java/com/platformcomponents/PCNavigationRailViewManager.kt +176 -0
- package/android/src/main/java/com/platformcomponents/PCSegmentedControlView.kt +35 -17
- package/android/src/main/java/com/platformcomponents/PCSegmentedControlViewManager.kt +20 -3
- package/android/src/main/java/com/platformcomponents/PCSelectionMenuView.kt +371 -39
- package/android/src/main/java/com/platformcomponents/PCSelectionMenuViewManager.kt +18 -4
- package/android/src/main/java/com/platformcomponents/PCTabBarView.kt +397 -0
- package/android/src/main/java/com/platformcomponents/PCTabBarViewManager.kt +182 -0
- package/android/src/main/java/com/platformcomponents/PCTextFieldView.kt +1393 -0
- package/android/src/main/java/com/platformcomponents/PCTextFieldViewManager.kt +354 -0
- package/android/src/main/java/com/platformcomponents/PCThemeSupport.kt +37 -0
- package/android/src/main/java/com/platformcomponents/PlatformComponentsPackage.kt +8 -0
- package/android/src/main/res/drawable/pc_ic_search.xml +12 -0
- package/android/src/main/res/values/attrs.xml +13 -0
- package/android/src/main/res/values/ids.xml +5 -0
- package/android/src/main/res/values/styles.xml +207 -0
- package/ios/PCButton.h +10 -0
- package/ios/PCButton.mm +311 -0
- package/ios/PCButtonGroup.h +10 -0
- package/ios/PCButtonGroup.mm +323 -0
- package/ios/PCButtonGroupView.swift +473 -0
- package/ios/PCButtonSupport.swift +312 -0
- package/ios/PCButtonView.swift +438 -0
- package/ios/PCConstants.swift +23 -2
- package/ios/PCContextMenu.mm +28 -110
- package/ios/PCContextMenu.swift +106 -167
- package/ios/PCDatePicker.mm +21 -9
- package/ios/PCDatePickerView.swift +94 -20
- package/ios/PCFloatingActionButton.h +10 -0
- package/ios/PCFloatingActionButton.mm +177 -0
- package/ios/PCFloatingActionButtonView.swift +426 -0
- package/ios/PCFloatingToolbar.h +10 -0
- package/ios/PCFloatingToolbar.mm +103 -0
- package/ios/PCFloatingToolbarView.swift +336 -0
- package/ios/PCHaptics.swift +91 -0
- package/ios/PCImageLoader.swift +76 -12
- package/ios/PCLiquidGlass.mm +36 -0
- package/ios/PCLiquidGlass.swift +221 -114
- package/ios/PCLiquidGlassContainer.h +10 -0
- package/ios/PCLiquidGlassContainer.mm +84 -0
- package/ios/PCLiquidGlassContainer.swift +69 -0
- package/ios/PCMenuItems.h +76 -0
- package/ios/PCMenuSupport.swift +350 -0
- package/ios/PCNavigationRail.h +10 -0
- package/ios/PCNavigationRail.mm +270 -0
- package/ios/PCNavigationRailView.swift +415 -0
- package/ios/PCSegmentedControl.mm +17 -2
- package/ios/PCSegmentedControl.swift +57 -7
- package/ios/PCSelectionMenu.mm +36 -8
- package/ios/PCSelectionMenu.swift +224 -48
- package/ios/PCTabBar.h +10 -0
- package/ios/PCTabBar.mm +285 -0
- package/ios/PCTabBarAccessory.h +10 -0
- package/ios/PCTabBarAccessory.mm +93 -0
- package/ios/PCTabBarAccessoryView.swift +96 -0
- package/ios/PCTabBarView.swift +671 -0
- package/ios/PCTextField.h +10 -0
- package/ios/PCTextField.mm +546 -0
- package/ios/PCTextFieldView.swift +1558 -0
- package/lib/commonjs/Button.js +149 -0
- package/lib/commonjs/Button.js.map +1 -0
- package/lib/commonjs/ButtonGroup.js +109 -0
- package/lib/commonjs/ButtonGroup.js.map +1 -0
- package/lib/commonjs/ButtonGroupNativeComponent.ts +191 -0
- package/lib/commonjs/ButtonNativeComponent.ts +192 -0
- package/lib/commonjs/ContextMenu.js +9 -48
- package/lib/commonjs/ContextMenu.js.map +1 -1
- package/lib/commonjs/ContextMenuNativeComponent.ts +47 -49
- package/lib/commonjs/DatePicker.js +98 -2
- package/lib/commonjs/DatePicker.js.map +1 -1
- package/lib/commonjs/DatePickerNativeComponent.ts +19 -2
- package/lib/commonjs/FloatingActionButton.js +60 -0
- package/lib/commonjs/FloatingActionButton.js.map +1 -0
- package/lib/commonjs/FloatingActionButtonNativeComponent.ts +58 -0
- package/lib/commonjs/FloatingToolbar.js +77 -0
- package/lib/commonjs/FloatingToolbar.js.map +1 -0
- package/lib/commonjs/FloatingToolbarNativeComponent.ts +47 -0
- package/lib/commonjs/LiquidGlass.js +7 -1
- package/lib/commonjs/LiquidGlass.js.map +1 -1
- package/lib/commonjs/LiquidGlassContainer.js +32 -0
- package/lib/commonjs/LiquidGlassContainer.js.map +1 -0
- package/lib/commonjs/LiquidGlassContainerNativeComponent.ts +17 -0
- package/lib/commonjs/LiquidGlassNativeComponent.ts +8 -0
- package/lib/commonjs/NavigationRail.js +104 -0
- package/lib/commonjs/NavigationRail.js.map +1 -0
- package/lib/commonjs/NavigationRailNativeComponent.ts +107 -0
- package/lib/commonjs/PlatformComponentsProvider.js +18 -0
- package/lib/commonjs/PlatformComponentsProvider.js.map +1 -0
- package/lib/commonjs/SegmentedControl.js +18 -85
- package/lib/commonjs/SegmentedControl.js.map +1 -1
- package/lib/commonjs/SegmentedControlNativeComponent.ts +14 -0
- package/lib/commonjs/SelectionMenu.js +27 -3
- package/lib/commonjs/SelectionMenu.js.map +1 -1
- package/lib/commonjs/SelectionMenuNativeComponent.ts +26 -4
- package/lib/commonjs/SplitButton.js +98 -0
- package/lib/commonjs/SplitButton.js.map +1 -0
- package/lib/commonjs/TabBar.js +203 -0
- package/lib/commonjs/TabBar.js.map +1 -0
- package/lib/commonjs/TabBarAccessoryNativeComponent.ts +19 -0
- package/lib/commonjs/TabBarNativeComponent.ts +145 -0
- package/lib/commonjs/TextField.js +358 -0
- package/lib/commonjs/TextField.js.map +1 -0
- package/lib/commonjs/TextFieldNativeComponent.ts +324 -0
- package/lib/commonjs/focusRegistry.js +79 -0
- package/lib/commonjs/focusRegistry.js.map +1 -0
- package/lib/commonjs/haptics.js +2 -0
- package/lib/commonjs/haptics.js.map +1 -0
- package/lib/commonjs/icons.js +106 -0
- package/lib/commonjs/icons.js.map +1 -0
- package/lib/commonjs/index.js +143 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/index.web.js +157 -63
- package/lib/commonjs/index.web.js.map +1 -1
- package/lib/commonjs/jest.js +910 -0
- package/lib/commonjs/jest.js.map +1 -0
- package/lib/commonjs/labelStyle.js +27 -0
- package/lib/commonjs/labelStyle.js.map +1 -0
- package/lib/commonjs/menuItems.js +68 -0
- package/lib/commonjs/menuItems.js.map +1 -0
- package/lib/commonjs/reactNativeInternals.d.js +2 -0
- package/lib/commonjs/reactNativeInternals.d.js.map +1 -0
- package/lib/commonjs/selectionIdentifiers.js +18 -0
- package/lib/commonjs/selectionIdentifiers.js.map +1 -0
- package/lib/commonjs/submitBehavior.js +19 -0
- package/lib/commonjs/submitBehavior.js.map +1 -0
- package/lib/commonjs/tabItems.js +49 -0
- package/lib/commonjs/tabItems.js.map +1 -0
- package/lib/commonjs/web/Button.js +170 -0
- package/lib/commonjs/web/Button.js.map +1 -0
- package/lib/commonjs/web/ButtonGroup.js +119 -0
- package/lib/commonjs/web/ButtonGroup.js.map +1 -0
- package/lib/commonjs/web/DatePicker.js +168 -0
- package/lib/commonjs/web/DatePicker.js.map +1 -0
- package/lib/commonjs/web/DateRangePicker.js +137 -0
- package/lib/commonjs/web/DateRangePicker.js.map +1 -0
- package/lib/commonjs/web/Dialog.js +54 -0
- package/lib/commonjs/web/Dialog.js.map +1 -0
- package/lib/commonjs/web/FloatingActionButton.js +98 -0
- package/lib/commonjs/web/FloatingActionButton.js.map +1 -0
- package/lib/commonjs/web/Icon.js +34 -0
- package/lib/commonjs/web/Icon.js.map +1 -0
- package/lib/commonjs/web/NativeTheme.js +28 -0
- package/lib/commonjs/web/NativeTheme.js.map +1 -0
- package/lib/commonjs/web/NavigationRail.js +139 -0
- package/lib/commonjs/web/NavigationRail.js.map +1 -0
- package/lib/commonjs/web/PlatformComponentsProvider.js +51 -0
- package/lib/commonjs/web/PlatformComponentsProvider.js.map +1 -0
- package/lib/commonjs/web/SegmentedControl.js +117 -0
- package/lib/commonjs/web/SegmentedControl.js.map +1 -0
- package/lib/commonjs/web/SelectionMenu.js +142 -0
- package/lib/commonjs/web/SelectionMenu.js.map +1 -0
- package/lib/commonjs/web/SplitButton.js +35 -0
- package/lib/commonjs/web/SplitButton.js.map +1 -0
- package/lib/commonjs/web/TabBar.js +131 -0
- package/lib/commonjs/web/TabBar.js.map +1 -0
- package/lib/commonjs/web/TextField.js +322 -0
- package/lib/commonjs/web/TextField.js.map +1 -0
- package/lib/commonjs/web/components.js +36 -0
- package/lib/commonjs/web/components.js.map +1 -0
- package/lib/commonjs/web/containers.js +121 -0
- package/lib/commonjs/web/containers.js.map +1 -0
- package/lib/commonjs/web/dateInput.js +116 -0
- package/lib/commonjs/web/dateInput.js.map +1 -0
- package/lib/commonjs/web/shared.js +192 -0
- package/lib/commonjs/web/shared.js.map +1 -0
- package/lib/commonjs/webComponents.js +6 -0
- package/lib/commonjs/webComponents.js.map +1 -0
- package/lib/module/Button.js +142 -0
- package/lib/module/Button.js.map +1 -0
- package/lib/module/ButtonGroup.js +102 -0
- package/lib/module/ButtonGroup.js.map +1 -0
- package/lib/module/ButtonGroupNativeComponent.ts +191 -0
- package/lib/module/ButtonNativeComponent.ts +192 -0
- package/lib/module/ContextMenu.js +9 -48
- package/lib/module/ContextMenu.js.map +1 -1
- package/lib/module/ContextMenuNativeComponent.ts +47 -49
- package/lib/module/DatePicker.js +98 -4
- package/lib/module/DatePicker.js.map +1 -1
- package/lib/module/DatePickerNativeComponent.ts +19 -2
- package/lib/module/FloatingActionButton.js +53 -0
- package/lib/module/FloatingActionButton.js.map +1 -0
- package/lib/module/FloatingActionButtonNativeComponent.ts +58 -0
- package/lib/module/FloatingToolbar.js +70 -0
- package/lib/module/FloatingToolbar.js.map +1 -0
- package/lib/module/FloatingToolbarNativeComponent.ts +47 -0
- package/lib/module/LiquidGlass.js +7 -1
- package/lib/module/LiquidGlass.js.map +1 -1
- package/lib/module/LiquidGlassContainer.js +26 -0
- package/lib/module/LiquidGlassContainer.js.map +1 -0
- package/lib/module/LiquidGlassContainerNativeComponent.ts +17 -0
- package/lib/module/LiquidGlassNativeComponent.ts +8 -0
- package/lib/module/NavigationRail.js +99 -0
- package/lib/module/NavigationRail.js.map +1 -0
- package/lib/module/NavigationRailNativeComponent.ts +107 -0
- package/lib/module/PlatformComponentsProvider.js +13 -0
- package/lib/module/PlatformComponentsProvider.js.map +1 -0
- package/lib/module/SegmentedControl.js +18 -85
- package/lib/module/SegmentedControl.js.map +1 -1
- package/lib/module/SegmentedControlNativeComponent.ts +14 -0
- package/lib/module/SelectionMenu.js +27 -3
- package/lib/module/SelectionMenu.js.map +1 -1
- package/lib/module/SelectionMenuNativeComponent.ts +26 -4
- package/lib/module/SplitButton.js +91 -0
- package/lib/module/SplitButton.js.map +1 -0
- package/lib/module/TabBar.js +196 -0
- package/lib/module/TabBar.js.map +1 -0
- package/lib/module/TabBarAccessoryNativeComponent.ts +19 -0
- package/lib/module/TabBarNativeComponent.ts +145 -0
- package/lib/module/TextField.js +352 -0
- package/lib/module/TextField.js.map +1 -0
- package/lib/module/TextFieldNativeComponent.ts +324 -0
- package/lib/module/focusRegistry.js +75 -0
- package/lib/module/focusRegistry.js.map +1 -0
- package/lib/module/haptics.js +2 -0
- package/lib/module/haptics.js.map +1 -0
- package/lib/module/icons.js +101 -0
- package/lib/module/icons.js.map +1 -0
- package/lib/module/index.js +13 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/index.web.js +12 -59
- package/lib/module/index.web.js.map +1 -1
- package/lib/module/jest.js +840 -0
- package/lib/module/jest.js.map +1 -0
- package/lib/module/labelStyle.js +23 -0
- package/lib/module/labelStyle.js.map +1 -0
- package/lib/module/menuItems.js +65 -0
- package/lib/module/menuItems.js.map +1 -0
- package/lib/module/reactNativeInternals.d.js +2 -0
- package/lib/module/reactNativeInternals.d.js.map +1 -0
- package/lib/module/selectionIdentifiers.js +14 -0
- package/lib/module/selectionIdentifiers.js.map +1 -0
- package/lib/module/submitBehavior.js +15 -0
- package/lib/module/submitBehavior.js.map +1 -0
- package/lib/module/tabItems.js +45 -0
- package/lib/module/tabItems.js.map +1 -0
- package/lib/module/web/Button.js +164 -0
- package/lib/module/web/Button.js.map +1 -0
- package/lib/module/web/ButtonGroup.js +113 -0
- package/lib/module/web/ButtonGroup.js.map +1 -0
- package/lib/module/web/DatePicker.js +162 -0
- package/lib/module/web/DatePicker.js.map +1 -0
- package/lib/module/web/DateRangePicker.js +131 -0
- package/lib/module/web/DateRangePicker.js.map +1 -0
- package/lib/module/web/Dialog.js +48 -0
- package/lib/module/web/Dialog.js.map +1 -0
- package/lib/module/web/FloatingActionButton.js +94 -0
- package/lib/module/web/FloatingActionButton.js.map +1 -0
- package/lib/module/web/Icon.js +29 -0
- package/lib/module/web/Icon.js.map +1 -0
- package/lib/module/web/NativeTheme.js +23 -0
- package/lib/module/web/NativeTheme.js.map +1 -0
- package/lib/module/web/NavigationRail.js +133 -0
- package/lib/module/web/NavigationRail.js.map +1 -0
- package/lib/module/web/PlatformComponentsProvider.js +44 -0
- package/lib/module/web/PlatformComponentsProvider.js.map +1 -0
- package/lib/module/web/SegmentedControl.js +112 -0
- package/lib/module/web/SegmentedControl.js.map +1 -0
- package/lib/module/web/SelectionMenu.js +137 -0
- package/lib/module/web/SelectionMenu.js.map +1 -0
- package/lib/module/web/SplitButton.js +30 -0
- package/lib/module/web/SplitButton.js.map +1 -0
- package/lib/module/web/TabBar.js +126 -0
- package/lib/module/web/TabBar.js.map +1 -0
- package/lib/module/web/TextField.js +316 -0
- package/lib/module/web/TextField.js.map +1 -0
- package/lib/module/web/components.js +33 -0
- package/lib/module/web/components.js.map +1 -0
- package/lib/module/web/containers.js +112 -0
- package/lib/module/web/containers.js.map +1 -0
- package/lib/module/web/dateInput.js +109 -0
- package/lib/module/web/dateInput.js.map +1 -0
- package/lib/module/web/shared.js +179 -0
- package/lib/module/web/shared.js.map +1 -0
- package/lib/module/webComponents.js +4 -0
- package/lib/module/webComponents.js.map +1 -0
- package/lib/typescript/commonjs/docs/sidebars.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/Button.d.ts +184 -0
- package/lib/typescript/commonjs/src/Button.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/ButtonGroup.d.ts +117 -0
- package/lib/typescript/commonjs/src/ButtonGroup.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/ButtonGroupNativeComponent.d.ts +154 -0
- package/lib/typescript/commonjs/src/ButtonGroupNativeComponent.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/ButtonNativeComponent.d.ts +148 -0
- package/lib/typescript/commonjs/src/ButtonNativeComponent.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/ContextMenu.d.ts +20 -33
- package/lib/typescript/commonjs/src/ContextMenu.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/ContextMenuNativeComponent.d.ts +45 -47
- package/lib/typescript/commonjs/src/ContextMenuNativeComponent.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/DatePicker.d.ts +74 -1
- package/lib/typescript/commonjs/src/DatePicker.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/DatePickerNativeComponent.d.ts +16 -1
- package/lib/typescript/commonjs/src/DatePickerNativeComponent.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/FloatingActionButton.d.ts +67 -0
- package/lib/typescript/commonjs/src/FloatingActionButton.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/FloatingActionButtonNativeComponent.d.ts +43 -0
- package/lib/typescript/commonjs/src/FloatingActionButtonNativeComponent.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/FloatingToolbar.d.ts +75 -0
- package/lib/typescript/commonjs/src/FloatingToolbar.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/FloatingToolbarNativeComponent.d.ts +36 -0
- package/lib/typescript/commonjs/src/FloatingToolbarNativeComponent.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/LiquidGlass.d.ts +17 -0
- package/lib/typescript/commonjs/src/LiquidGlass.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/LiquidGlassContainer.d.ts +27 -0
- package/lib/typescript/commonjs/src/LiquidGlassContainer.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/LiquidGlassContainerNativeComponent.d.ts +13 -0
- package/lib/typescript/commonjs/src/LiquidGlassContainerNativeComponent.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/LiquidGlassNativeComponent.d.ts +7 -0
- package/lib/typescript/commonjs/src/LiquidGlassNativeComponent.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/NavigationRail.d.ts +86 -0
- package/lib/typescript/commonjs/src/NavigationRail.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/NavigationRailNativeComponent.d.ts +81 -0
- package/lib/typescript/commonjs/src/NavigationRailNativeComponent.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/PlatformComponentsProvider.d.ts +6 -0
- package/lib/typescript/commonjs/src/PlatformComponentsProvider.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/SegmentedControl.d.ts +35 -47
- package/lib/typescript/commonjs/src/SegmentedControl.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/SegmentedControlNativeComponent.d.ts +11 -0
- package/lib/typescript/commonjs/src/SegmentedControlNativeComponent.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/SelectionMenu.d.ts +44 -2
- package/lib/typescript/commonjs/src/SelectionMenu.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/SelectionMenuNativeComponent.d.ts +20 -4
- package/lib/typescript/commonjs/src/SelectionMenuNativeComponent.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/SplitButton.d.ts +83 -0
- package/lib/typescript/commonjs/src/SplitButton.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/TabBar.d.ts +144 -0
- package/lib/typescript/commonjs/src/TabBar.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/TabBarAccessoryNativeComponent.d.ts +13 -0
- package/lib/typescript/commonjs/src/TabBarAccessoryNativeComponent.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/TabBarNativeComponent.d.ts +110 -0
- package/lib/typescript/commonjs/src/TabBarNativeComponent.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/TextField.d.ts +332 -0
- package/lib/typescript/commonjs/src/TextField.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/TextFieldNativeComponent.d.ts +240 -0
- package/lib/typescript/commonjs/src/TextFieldNativeComponent.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/focusRegistry.d.ts +13 -0
- package/lib/typescript/commonjs/src/focusRegistry.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/haptics.d.ts +20 -0
- package/lib/typescript/commonjs/src/haptics.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/icons.d.ts +58 -0
- package/lib/typescript/commonjs/src/icons.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/index.d.ts +13 -0
- package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/index.web.d.ts +25 -133
- package/lib/typescript/commonjs/src/index.web.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/jest.d.ts +139 -0
- package/lib/typescript/commonjs/src/jest.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/labelStyle.d.ts +20 -0
- package/lib/typescript/commonjs/src/labelStyle.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/menuItems.d.ts +100 -0
- package/lib/typescript/commonjs/src/menuItems.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/selectionIdentifiers.d.ts +3 -0
- package/lib/typescript/commonjs/src/selectionIdentifiers.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/sharedTypes.d.ts +6 -1
- package/lib/typescript/commonjs/src/sharedTypes.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/submitBehavior.d.ts +9 -0
- package/lib/typescript/commonjs/src/submitBehavior.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/tabItems.d.ts +55 -0
- package/lib/typescript/commonjs/src/tabItems.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/web/Button.d.ts +9 -0
- package/lib/typescript/commonjs/src/web/Button.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/web/ButtonGroup.d.ts +11 -0
- package/lib/typescript/commonjs/src/web/ButtonGroup.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/web/DatePicker.d.ts +14 -0
- package/lib/typescript/commonjs/src/web/DatePicker.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/web/DateRangePicker.d.ts +11 -0
- package/lib/typescript/commonjs/src/web/DateRangePicker.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/web/Dialog.d.ts +12 -0
- package/lib/typescript/commonjs/src/web/Dialog.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/web/FloatingActionButton.d.ts +8 -0
- package/lib/typescript/commonjs/src/web/FloatingActionButton.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/web/Icon.d.ts +12 -0
- package/lib/typescript/commonjs/src/web/Icon.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/web/NativeTheme.d.ts +10 -0
- package/lib/typescript/commonjs/src/web/NativeTheme.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/web/NavigationRail.d.ts +8 -0
- package/lib/typescript/commonjs/src/web/NavigationRail.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/web/PlatformComponentsProvider.d.ts +10 -0
- package/lib/typescript/commonjs/src/web/PlatformComponentsProvider.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/web/SegmentedControl.d.ts +8 -0
- package/lib/typescript/commonjs/src/web/SegmentedControl.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/web/SelectionMenu.d.ts +10 -0
- package/lib/typescript/commonjs/src/web/SelectionMenu.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/web/SplitButton.d.ts +9 -0
- package/lib/typescript/commonjs/src/web/SplitButton.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/web/TabBar.d.ts +9 -0
- package/lib/typescript/commonjs/src/web/TabBar.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/web/TextField.d.ts +9 -0
- package/lib/typescript/commonjs/src/web/TextField.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/web/components.d.ts +17 -0
- package/lib/typescript/commonjs/src/web/components.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/web/containers.d.ts +24 -0
- package/lib/typescript/commonjs/src/web/containers.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/web/dateInput.d.ts +20 -0
- package/lib/typescript/commonjs/src/web/dateInput.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/web/shared.d.ts +43 -0
- package/lib/typescript/commonjs/src/web/shared.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/webComponents.d.ts +43 -0
- package/lib/typescript/commonjs/src/webComponents.d.ts.map +1 -0
- package/lib/typescript/module/docs/sidebars.d.ts.map +1 -1
- package/lib/typescript/module/src/Button.d.ts +184 -0
- package/lib/typescript/module/src/Button.d.ts.map +1 -0
- package/lib/typescript/module/src/ButtonGroup.d.ts +117 -0
- package/lib/typescript/module/src/ButtonGroup.d.ts.map +1 -0
- package/lib/typescript/module/src/ButtonGroupNativeComponent.d.ts +154 -0
- package/lib/typescript/module/src/ButtonGroupNativeComponent.d.ts.map +1 -0
- package/lib/typescript/module/src/ButtonNativeComponent.d.ts +148 -0
- package/lib/typescript/module/src/ButtonNativeComponent.d.ts.map +1 -0
- package/lib/typescript/module/src/ContextMenu.d.ts +20 -33
- package/lib/typescript/module/src/ContextMenu.d.ts.map +1 -1
- package/lib/typescript/module/src/ContextMenuNativeComponent.d.ts +45 -47
- package/lib/typescript/module/src/ContextMenuNativeComponent.d.ts.map +1 -1
- package/lib/typescript/module/src/DatePicker.d.ts +74 -1
- package/lib/typescript/module/src/DatePicker.d.ts.map +1 -1
- package/lib/typescript/module/src/DatePickerNativeComponent.d.ts +16 -1
- package/lib/typescript/module/src/DatePickerNativeComponent.d.ts.map +1 -1
- package/lib/typescript/module/src/FloatingActionButton.d.ts +67 -0
- package/lib/typescript/module/src/FloatingActionButton.d.ts.map +1 -0
- package/lib/typescript/module/src/FloatingActionButtonNativeComponent.d.ts +43 -0
- package/lib/typescript/module/src/FloatingActionButtonNativeComponent.d.ts.map +1 -0
- package/lib/typescript/module/src/FloatingToolbar.d.ts +75 -0
- package/lib/typescript/module/src/FloatingToolbar.d.ts.map +1 -0
- package/lib/typescript/module/src/FloatingToolbarNativeComponent.d.ts +36 -0
- package/lib/typescript/module/src/FloatingToolbarNativeComponent.d.ts.map +1 -0
- package/lib/typescript/module/src/LiquidGlass.d.ts +17 -0
- package/lib/typescript/module/src/LiquidGlass.d.ts.map +1 -1
- package/lib/typescript/module/src/LiquidGlassContainer.d.ts +27 -0
- package/lib/typescript/module/src/LiquidGlassContainer.d.ts.map +1 -0
- package/lib/typescript/module/src/LiquidGlassContainerNativeComponent.d.ts +13 -0
- package/lib/typescript/module/src/LiquidGlassContainerNativeComponent.d.ts.map +1 -0
- package/lib/typescript/module/src/LiquidGlassNativeComponent.d.ts +7 -0
- package/lib/typescript/module/src/LiquidGlassNativeComponent.d.ts.map +1 -1
- package/lib/typescript/module/src/NavigationRail.d.ts +86 -0
- package/lib/typescript/module/src/NavigationRail.d.ts.map +1 -0
- package/lib/typescript/module/src/NavigationRailNativeComponent.d.ts +81 -0
- package/lib/typescript/module/src/NavigationRailNativeComponent.d.ts.map +1 -0
- package/lib/typescript/module/src/PlatformComponentsProvider.d.ts +6 -0
- package/lib/typescript/module/src/PlatformComponentsProvider.d.ts.map +1 -0
- package/lib/typescript/module/src/SegmentedControl.d.ts +35 -47
- package/lib/typescript/module/src/SegmentedControl.d.ts.map +1 -1
- package/lib/typescript/module/src/SegmentedControlNativeComponent.d.ts +11 -0
- package/lib/typescript/module/src/SegmentedControlNativeComponent.d.ts.map +1 -1
- package/lib/typescript/module/src/SelectionMenu.d.ts +44 -2
- package/lib/typescript/module/src/SelectionMenu.d.ts.map +1 -1
- package/lib/typescript/module/src/SelectionMenuNativeComponent.d.ts +20 -4
- package/lib/typescript/module/src/SelectionMenuNativeComponent.d.ts.map +1 -1
- package/lib/typescript/module/src/SplitButton.d.ts +83 -0
- package/lib/typescript/module/src/SplitButton.d.ts.map +1 -0
- package/lib/typescript/module/src/TabBar.d.ts +144 -0
- package/lib/typescript/module/src/TabBar.d.ts.map +1 -0
- package/lib/typescript/module/src/TabBarAccessoryNativeComponent.d.ts +13 -0
- package/lib/typescript/module/src/TabBarAccessoryNativeComponent.d.ts.map +1 -0
- package/lib/typescript/module/src/TabBarNativeComponent.d.ts +110 -0
- package/lib/typescript/module/src/TabBarNativeComponent.d.ts.map +1 -0
- package/lib/typescript/module/src/TextField.d.ts +332 -0
- package/lib/typescript/module/src/TextField.d.ts.map +1 -0
- package/lib/typescript/module/src/TextFieldNativeComponent.d.ts +240 -0
- package/lib/typescript/module/src/TextFieldNativeComponent.d.ts.map +1 -0
- package/lib/typescript/module/src/focusRegistry.d.ts +13 -0
- package/lib/typescript/module/src/focusRegistry.d.ts.map +1 -0
- package/lib/typescript/module/src/haptics.d.ts +20 -0
- package/lib/typescript/module/src/haptics.d.ts.map +1 -0
- package/lib/typescript/module/src/icons.d.ts +58 -0
- package/lib/typescript/module/src/icons.d.ts.map +1 -0
- package/lib/typescript/module/src/index.d.ts +13 -0
- package/lib/typescript/module/src/index.d.ts.map +1 -1
- package/lib/typescript/module/src/index.web.d.ts +25 -133
- package/lib/typescript/module/src/index.web.d.ts.map +1 -1
- package/lib/typescript/module/src/jest.d.ts +139 -0
- package/lib/typescript/module/src/jest.d.ts.map +1 -0
- package/lib/typescript/module/src/labelStyle.d.ts +20 -0
- package/lib/typescript/module/src/labelStyle.d.ts.map +1 -0
- package/lib/typescript/module/src/menuItems.d.ts +100 -0
- package/lib/typescript/module/src/menuItems.d.ts.map +1 -0
- package/lib/typescript/module/src/selectionIdentifiers.d.ts +3 -0
- package/lib/typescript/module/src/selectionIdentifiers.d.ts.map +1 -0
- package/lib/typescript/module/src/sharedTypes.d.ts +6 -1
- package/lib/typescript/module/src/sharedTypes.d.ts.map +1 -1
- package/lib/typescript/module/src/submitBehavior.d.ts +9 -0
- package/lib/typescript/module/src/submitBehavior.d.ts.map +1 -0
- package/lib/typescript/module/src/tabItems.d.ts +55 -0
- package/lib/typescript/module/src/tabItems.d.ts.map +1 -0
- package/lib/typescript/module/src/web/Button.d.ts +9 -0
- package/lib/typescript/module/src/web/Button.d.ts.map +1 -0
- package/lib/typescript/module/src/web/ButtonGroup.d.ts +11 -0
- package/lib/typescript/module/src/web/ButtonGroup.d.ts.map +1 -0
- package/lib/typescript/module/src/web/DatePicker.d.ts +14 -0
- package/lib/typescript/module/src/web/DatePicker.d.ts.map +1 -0
- package/lib/typescript/module/src/web/DateRangePicker.d.ts +11 -0
- package/lib/typescript/module/src/web/DateRangePicker.d.ts.map +1 -0
- package/lib/typescript/module/src/web/Dialog.d.ts +12 -0
- package/lib/typescript/module/src/web/Dialog.d.ts.map +1 -0
- package/lib/typescript/module/src/web/FloatingActionButton.d.ts +8 -0
- package/lib/typescript/module/src/web/FloatingActionButton.d.ts.map +1 -0
- package/lib/typescript/module/src/web/Icon.d.ts +12 -0
- package/lib/typescript/module/src/web/Icon.d.ts.map +1 -0
- package/lib/typescript/module/src/web/NativeTheme.d.ts +10 -0
- package/lib/typescript/module/src/web/NativeTheme.d.ts.map +1 -0
- package/lib/typescript/module/src/web/NavigationRail.d.ts +8 -0
- package/lib/typescript/module/src/web/NavigationRail.d.ts.map +1 -0
- package/lib/typescript/module/src/web/PlatformComponentsProvider.d.ts +10 -0
- package/lib/typescript/module/src/web/PlatformComponentsProvider.d.ts.map +1 -0
- package/lib/typescript/module/src/web/SegmentedControl.d.ts +8 -0
- package/lib/typescript/module/src/web/SegmentedControl.d.ts.map +1 -0
- package/lib/typescript/module/src/web/SelectionMenu.d.ts +10 -0
- package/lib/typescript/module/src/web/SelectionMenu.d.ts.map +1 -0
- package/lib/typescript/module/src/web/SplitButton.d.ts +9 -0
- package/lib/typescript/module/src/web/SplitButton.d.ts.map +1 -0
- package/lib/typescript/module/src/web/TabBar.d.ts +9 -0
- package/lib/typescript/module/src/web/TabBar.d.ts.map +1 -0
- package/lib/typescript/module/src/web/TextField.d.ts +9 -0
- package/lib/typescript/module/src/web/TextField.d.ts.map +1 -0
- package/lib/typescript/module/src/web/components.d.ts +17 -0
- package/lib/typescript/module/src/web/components.d.ts.map +1 -0
- package/lib/typescript/module/src/web/containers.d.ts +24 -0
- package/lib/typescript/module/src/web/containers.d.ts.map +1 -0
- package/lib/typescript/module/src/web/dateInput.d.ts +20 -0
- package/lib/typescript/module/src/web/dateInput.d.ts.map +1 -0
- package/lib/typescript/module/src/web/shared.d.ts +43 -0
- package/lib/typescript/module/src/web/shared.d.ts.map +1 -0
- package/lib/typescript/module/src/webComponents.d.ts +43 -0
- package/lib/typescript/module/src/webComponents.d.ts.map +1 -0
- package/package.json +55 -4
- package/plugin/build/index.d.ts +3 -2
- package/plugin/build/index.d.ts.map +1 -1
- package/react-native.config.js +6 -0
- package/shared/PCButtonComponentDescriptors-custom.h +22 -0
- package/shared/PCButtonGroupComponentDescriptors-custom.h +22 -0
- package/shared/PCButtonGroupShadowNode-custom.cpp +48 -0
- package/shared/PCButtonGroupShadowNode-custom.h +55 -0
- package/shared/PCButtonGroupState-custom.h +61 -0
- package/shared/PCButtonShadowNode-custom.cpp +48 -0
- package/shared/PCButtonShadowNode-custom.h +55 -0
- package/shared/PCButtonState-custom.h +61 -0
- package/shared/PCFloatingActionButtonComponentDescriptors-custom.h +22 -0
- package/shared/PCFloatingActionButtonShadowNode-custom.cpp +48 -0
- package/shared/PCFloatingActionButtonShadowNode-custom.h +54 -0
- package/shared/PCFloatingActionButtonState-custom.h +61 -0
- package/shared/PCNavigationRailComponentDescriptors-custom.h +47 -0
- package/shared/PCNavigationRailShadowNode-custom.h +42 -0
- package/shared/PCNavigationRailState-custom.h +62 -0
- package/shared/PCTabBarComponentDescriptors-custom.h +22 -0
- package/shared/PCTabBarShadowNode-custom.cpp +54 -0
- package/shared/PCTabBarShadowNode-custom.h +54 -0
- package/shared/PCTabBarState-custom.h +62 -0
- package/shared/PCTextFieldComponentDescriptors-custom.h +22 -0
- package/shared/PCTextFieldShadowNode-custom.cpp +47 -0
- package/shared/PCTextFieldShadowNode-custom.h +55 -0
- package/shared/PCTextFieldState-custom.h +61 -0
- package/shared/react/renderer/components/PlatformComponentsViewSpec/ComponentDescriptors.h +6 -0
- package/src/Button.tsx +359 -0
- package/src/ButtonGroup.tsx +251 -0
- package/src/ButtonGroupNativeComponent.ts +191 -0
- package/src/ButtonNativeComponent.ts +192 -0
- package/src/ContextMenu.tsx +34 -81
- package/src/ContextMenuNativeComponent.ts +47 -49
- package/src/DatePicker.tsx +182 -4
- package/src/DatePickerNativeComponent.ts +19 -2
- package/src/FloatingActionButton.tsx +121 -0
- package/src/FloatingActionButtonNativeComponent.ts +58 -0
- package/src/FloatingToolbar.tsx +164 -0
- package/src/FloatingToolbarNativeComponent.ts +47 -0
- package/src/LiquidGlass.tsx +24 -1
- package/src/LiquidGlassContainer.tsx +42 -0
- package/src/LiquidGlassContainerNativeComponent.ts +17 -0
- package/src/LiquidGlassNativeComponent.ts +8 -0
- package/src/NavigationRail.tsx +203 -0
- package/src/NavigationRailNativeComponent.ts +107 -0
- package/src/PlatformComponentsProvider.tsx +15 -0
- package/src/SegmentedControl.tsx +57 -119
- package/src/SegmentedControlNativeComponent.ts +14 -0
- package/src/SelectionMenu.tsx +81 -6
- package/src/SelectionMenuNativeComponent.ts +26 -4
- package/src/SplitButton.tsx +198 -0
- package/src/TabBar.tsx +373 -0
- package/src/TabBarAccessoryNativeComponent.ts +19 -0
- package/src/TabBarNativeComponent.ts +145 -0
- package/src/TextField.tsx +908 -0
- package/src/TextFieldNativeComponent.ts +324 -0
- package/src/focusRegistry.ts +90 -0
- package/src/haptics.ts +31 -0
- package/src/icons.ts +143 -0
- package/src/index.tsx +13 -0
- package/src/index.web.tsx +53 -199
- package/src/jest.tsx +958 -0
- package/src/labelStyle.ts +36 -0
- package/src/menuItems.ts +152 -0
- package/src/reactNativeInternals.d.ts +22 -0
- package/src/selectionIdentifiers.ts +17 -0
- package/src/sharedTypes.ts +7 -1
- package/src/submitBehavior.ts +16 -0
- package/src/tabItems.ts +113 -0
- package/src/web/Button.tsx +201 -0
- package/src/web/ButtonGroup.tsx +154 -0
- package/src/web/DatePicker.tsx +204 -0
- package/src/web/DateRangePicker.tsx +135 -0
- package/src/web/Dialog.tsx +54 -0
- package/src/web/FloatingActionButton.tsx +76 -0
- package/src/web/Icon.tsx +33 -0
- package/src/web/NativeTheme.ts +23 -0
- package/src/web/NavigationRail.tsx +148 -0
- package/src/web/PlatformComponentsProvider.tsx +48 -0
- package/src/web/SegmentedControl.tsx +127 -0
- package/src/web/SelectionMenu.tsx +149 -0
- package/src/web/SplitButton.tsx +32 -0
- package/src/web/TabBar.tsx +150 -0
- package/src/web/TextField.tsx +361 -0
- package/src/web/components.tsx +71 -0
- package/src/web/containers.tsx +130 -0
- package/src/web/dateInput.ts +137 -0
- package/src/web/shared.ts +176 -0
- package/src/webComponents.ts +45 -0
- package/android/src/main/java/com/platformcomponents/DateConstraints.kt +0 -83
|
@@ -0,0 +1,324 @@
|
|
|
1
|
+
// TextFieldNativeComponent.ts
|
|
2
|
+
import type * as React from 'react';
|
|
3
|
+
import type { ColorValue, HostComponent, ViewProps } from 'react-native';
|
|
4
|
+
import { codegenNativeCommands, codegenNativeComponent } from 'react-native';
|
|
5
|
+
import type { BubblingEventHandler, Double, Int32 } from './codegenTypes';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Icon fields, pre-resolved on the JS side (see icons.ts).
|
|
9
|
+
*/
|
|
10
|
+
export type TextFieldIconProps = Readonly<{
|
|
11
|
+
iconType: string; // '' | 'sfSymbol' | 'drawable' | 'image'
|
|
12
|
+
iconName: string; // SF Symbol (iOS) or drawable resource name (Android)
|
|
13
|
+
iconRequest: string;
|
|
14
|
+
iconUri: string; // Resolved image URI when iconType === 'image'
|
|
15
|
+
iconScale: Double; // Resolved image scale when iconType === 'image'
|
|
16
|
+
iconTinted: string; // 'true' | 'false' — draw the image as a tinted template
|
|
17
|
+
}>;
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Text font. Empty strings / 0 mean "platform default".
|
|
21
|
+
*/
|
|
22
|
+
export type TextFieldTextStyleProps = Readonly<{
|
|
23
|
+
fontFamily?: string;
|
|
24
|
+
fontSize?: Double;
|
|
25
|
+
fontWeight?: string; // 'normal' | 'bold' | '100'..'900'
|
|
26
|
+
fontStyle?: string; // 'normal' | 'italic'
|
|
27
|
+
}>;
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Fired on every edit. `eventCount` is the native edit counter that JS hands
|
|
31
|
+
* back with `setText`, so a stale controlled value can't overwrite what the
|
|
32
|
+
* user typed since.
|
|
33
|
+
*/
|
|
34
|
+
export type TextFieldChangeEvent = Readonly<{
|
|
35
|
+
text: string;
|
|
36
|
+
eventCount: Int32;
|
|
37
|
+
}>;
|
|
38
|
+
|
|
39
|
+
/** Focus, blur and submit carry the text at that moment. */
|
|
40
|
+
export type TextFieldTextEvent = Readonly<{
|
|
41
|
+
text: string;
|
|
42
|
+
}>;
|
|
43
|
+
|
|
44
|
+
/** The cursor or selection, as UTF-16 offsets into the text. */
|
|
45
|
+
export type TextFieldSelectionEvent = Readonly<{
|
|
46
|
+
start: Int32;
|
|
47
|
+
end: Int32;
|
|
48
|
+
}>;
|
|
49
|
+
|
|
50
|
+
/** A press on a keyboard toolbar button (iOS). */
|
|
51
|
+
export type TextFieldToolbarPressEvent = Readonly<{
|
|
52
|
+
itemId: string;
|
|
53
|
+
}>;
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* A keyboard toolbar item (iOS). Icons are pre-resolved on the JS side (see
|
|
57
|
+
* icons.ts); empty strings mean "none".
|
|
58
|
+
*/
|
|
59
|
+
export type TextFieldToolbarItem = Readonly<{
|
|
60
|
+
kind: string; // 'button' | 'done' | 'flexibleSpace'
|
|
61
|
+
itemId: string;
|
|
62
|
+
title: string;
|
|
63
|
+
systemItem: string; // '' | UIBarButtonItem.SystemItem name
|
|
64
|
+
iconType: string; // '' | 'sfSymbol' | 'image'
|
|
65
|
+
iconName: string;
|
|
66
|
+
iconRequest: string;
|
|
67
|
+
iconUri: string;
|
|
68
|
+
iconScale: Double;
|
|
69
|
+
iconTinted: string; // 'true' | 'false'
|
|
70
|
+
prominent: string; // 'true' | 'false'
|
|
71
|
+
accessibilityLabel: string;
|
|
72
|
+
testID: string;
|
|
73
|
+
}>;
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* iOS-specific configuration. Every field is '' for the platform default.
|
|
77
|
+
*/
|
|
78
|
+
export type TextFieldIOSProps = Readonly<{
|
|
79
|
+
/** 'default' | 'complete' | 'limited' | 'none' (iOS 18) */
|
|
80
|
+
writingTools?: string;
|
|
81
|
+
/** 'default' | 'yes' | 'no' (iOS 17) */
|
|
82
|
+
inlinePrediction?: string;
|
|
83
|
+
/** 'default' | 'yes' | 'no' */
|
|
84
|
+
smartQuotes?: string;
|
|
85
|
+
/** 'default' | 'yes' | 'no' */
|
|
86
|
+
smartDashes?: string;
|
|
87
|
+
/** 'default' | 'yes' | 'no' */
|
|
88
|
+
smartInsertDelete?: string;
|
|
89
|
+
/** 'default' | 'yes' | 'no' (iOS 18) */
|
|
90
|
+
mathExpressionCompletion?: string;
|
|
91
|
+
/** 'roundedRect' | 'none' | 'line' | 'bezel' */
|
|
92
|
+
borderStyle?: string;
|
|
93
|
+
/** 'above' | 'leading': where the label sits */
|
|
94
|
+
labelPlacement?: string;
|
|
95
|
+
/** Width of a leading label column in points; 0 = default */
|
|
96
|
+
labelWidth?: Double;
|
|
97
|
+
/** UITextInputPasswordRules descriptor; '' = none */
|
|
98
|
+
passwordRules?: string;
|
|
99
|
+
}>;
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* Android-specific configuration.
|
|
103
|
+
*/
|
|
104
|
+
export type TextFieldAndroidProps = Readonly<{
|
|
105
|
+
/** 'm3' | 'system' (AndroidMaterialMode) */
|
|
106
|
+
material?: string;
|
|
107
|
+
/** 'outlined' | 'filled' | 'plain' */
|
|
108
|
+
variant?: string;
|
|
109
|
+
/** 'standard' | 'dense' */
|
|
110
|
+
density?: string;
|
|
111
|
+
}>;
|
|
112
|
+
|
|
113
|
+
export interface TextFieldNativeProps extends ViewProps {
|
|
114
|
+
/**
|
|
115
|
+
* Text applied when the native view is created. Later updates go through
|
|
116
|
+
* the `setText` command so they can be checked against `eventCount`.
|
|
117
|
+
*/
|
|
118
|
+
initialText?: string;
|
|
119
|
+
|
|
120
|
+
/** Floating label (Android) / caption above the field (iOS). */
|
|
121
|
+
label?: string;
|
|
122
|
+
|
|
123
|
+
/** Placeholder shown while the field is empty. */
|
|
124
|
+
placeholder?: string;
|
|
125
|
+
|
|
126
|
+
/** Helper text below the field. */
|
|
127
|
+
supportingText?: string;
|
|
128
|
+
|
|
129
|
+
/** 'none' | 'error' */
|
|
130
|
+
errorState?: string;
|
|
131
|
+
|
|
132
|
+
/** Error message shown instead of the supporting text. */
|
|
133
|
+
errorText?: string;
|
|
134
|
+
|
|
135
|
+
/** Text shown before the input, inside the field. */
|
|
136
|
+
prefix?: string;
|
|
137
|
+
|
|
138
|
+
/** Text shown after the input, inside the field. */
|
|
139
|
+
suffix?: string;
|
|
140
|
+
|
|
141
|
+
/** Icon at the start of the field. */
|
|
142
|
+
leadingIcon?: TextFieldIconProps;
|
|
143
|
+
|
|
144
|
+
/** Icon at the end of the field; pressing it fires onTrailingIconPress. */
|
|
145
|
+
trailingIcon?: TextFieldIconProps;
|
|
146
|
+
|
|
147
|
+
/** 'never' | 'while-editing' | 'unless-editing' | 'always' */
|
|
148
|
+
clearButtonMode?: string;
|
|
149
|
+
|
|
150
|
+
/** 'shown' | 'hidden': a button that toggles secure text entry. */
|
|
151
|
+
passwordToggle?: string;
|
|
152
|
+
|
|
153
|
+
/** 'shown' | 'hidden': the character counter. */
|
|
154
|
+
characterCount?: string;
|
|
155
|
+
|
|
156
|
+
/** Maximum number of UTF-16 characters; 0 = unlimited. */
|
|
157
|
+
maxLength?: Int32;
|
|
158
|
+
|
|
159
|
+
/** React Native keyboardType value. */
|
|
160
|
+
keyboardType?: string;
|
|
161
|
+
|
|
162
|
+
/** React Native returnKeyType value. */
|
|
163
|
+
returnKeyType?: string;
|
|
164
|
+
|
|
165
|
+
/** 'none' | 'sentences' | 'words' | 'characters' */
|
|
166
|
+
autoCapitalize?: string;
|
|
167
|
+
|
|
168
|
+
/** 'enabled' | 'disabled' */
|
|
169
|
+
autoCorrect?: string;
|
|
170
|
+
|
|
171
|
+
/** 'secure' | 'plain' */
|
|
172
|
+
secureTextEntry?: string;
|
|
173
|
+
|
|
174
|
+
/** 'single' | 'multiline' */
|
|
175
|
+
lines?: string;
|
|
176
|
+
|
|
177
|
+
/**
|
|
178
|
+
* What the return key does: 'submit' | 'blurAndSubmit' | 'newline',
|
|
179
|
+
* resolved on the JS side ('newline' only for multi-line fields).
|
|
180
|
+
*/
|
|
181
|
+
submitBehavior?: string;
|
|
182
|
+
|
|
183
|
+
/** iOS: the keyboard toolbar (inputAccessoryView); empty = none. */
|
|
184
|
+
keyboardToolbarItems?: ReadonlyArray<TextFieldToolbarItem>;
|
|
185
|
+
|
|
186
|
+
/** 'enabled' | 'disabled' */
|
|
187
|
+
interactivity?: string;
|
|
188
|
+
|
|
189
|
+
/** 'focus' | 'none': focus the field when it mounts. */
|
|
190
|
+
autoFocus?: string;
|
|
191
|
+
|
|
192
|
+
/** 'select' | 'keep': select all text on focus. */
|
|
193
|
+
selectTextOnFocus?: string;
|
|
194
|
+
|
|
195
|
+
/** React Native autoComplete value; '' = platform default. */
|
|
196
|
+
autoComplete?: string;
|
|
197
|
+
|
|
198
|
+
/** 'default' | 'light' | 'dark' (iOS keyboard appearance) */
|
|
199
|
+
keyboardAppearance?: string;
|
|
200
|
+
|
|
201
|
+
/** Font of the input text. */
|
|
202
|
+
textStyle?: TextFieldTextStyleProps;
|
|
203
|
+
|
|
204
|
+
/**
|
|
205
|
+
* Screen-reader label, applied to the native field rather than the host
|
|
206
|
+
* view. Empty means "use the label".
|
|
207
|
+
*/
|
|
208
|
+
spokenLabel?: string;
|
|
209
|
+
|
|
210
|
+
/** E2E identifier of the leading icon. */
|
|
211
|
+
leadingIconTestID?: string;
|
|
212
|
+
|
|
213
|
+
/** Screen-reader label of the leading icon. */
|
|
214
|
+
leadingIconSpokenLabel?: string;
|
|
215
|
+
|
|
216
|
+
/** E2E identifier of the trailing icon. */
|
|
217
|
+
trailingIconTestID?: string;
|
|
218
|
+
|
|
219
|
+
/** Screen-reader label of the trailing icon. */
|
|
220
|
+
trailingIconSpokenLabel?: string;
|
|
221
|
+
|
|
222
|
+
/** Focused outline, focused label and cursor color. */
|
|
223
|
+
activeColor?: ColorValue;
|
|
224
|
+
|
|
225
|
+
/** Unfocused outline (underline for the filled variant) color. */
|
|
226
|
+
outlineColor?: ColorValue;
|
|
227
|
+
|
|
228
|
+
/** Error outline, label and message color. */
|
|
229
|
+
errorColor?: ColorValue;
|
|
230
|
+
|
|
231
|
+
/** Background of the field's box. */
|
|
232
|
+
containerColor?: ColorValue;
|
|
233
|
+
|
|
234
|
+
/** Input text color. */
|
|
235
|
+
textColor?: ColorValue;
|
|
236
|
+
|
|
237
|
+
/** Placeholder color. */
|
|
238
|
+
placeholderTextColor?: ColorValue;
|
|
239
|
+
|
|
240
|
+
/** Largest font scale the text may reach; 0 = no cap. */
|
|
241
|
+
maxFontSizeMultiplier?: Double;
|
|
242
|
+
|
|
243
|
+
/** '' (natural) | 'left' | 'center' | 'right' */
|
|
244
|
+
textAlign?: string;
|
|
245
|
+
|
|
246
|
+
/** Multi-line: minimum and maximum visible lines; 0 = unset. */
|
|
247
|
+
minLines?: Int32;
|
|
248
|
+
maxLines?: Int32;
|
|
249
|
+
|
|
250
|
+
/** 'none' | 'button': a non-editable field that fires onFieldPress. */
|
|
251
|
+
pressMode?: string;
|
|
252
|
+
|
|
253
|
+
ios?: TextFieldIOSProps;
|
|
254
|
+
android?: TextFieldAndroidProps;
|
|
255
|
+
|
|
256
|
+
/** Fired on every user edit. */
|
|
257
|
+
onFieldChange?: BubblingEventHandler<TextFieldChangeEvent>;
|
|
258
|
+
|
|
259
|
+
/** Fired when the field gains focus. */
|
|
260
|
+
onFieldFocus?: BubblingEventHandler<TextFieldTextEvent>;
|
|
261
|
+
|
|
262
|
+
/** Fired when the field loses focus. */
|
|
263
|
+
onFieldBlur?: BubblingEventHandler<TextFieldTextEvent>;
|
|
264
|
+
|
|
265
|
+
/** Fired when the return key submits (see submitBehavior). */
|
|
266
|
+
onFieldSubmit?: BubblingEventHandler<TextFieldTextEvent>;
|
|
267
|
+
|
|
268
|
+
/** Fired when the cursor moves or the selection changes. */
|
|
269
|
+
onFieldSelectionChange?: BubblingEventHandler<TextFieldSelectionEvent>;
|
|
270
|
+
|
|
271
|
+
/** iOS: fired when a keyboard toolbar button (other than Done) is pressed. */
|
|
272
|
+
onKeyboardToolbarPress?: BubblingEventHandler<TextFieldToolbarPressEvent>;
|
|
273
|
+
|
|
274
|
+
/** Fired when the trailing icon is pressed. */
|
|
275
|
+
onTrailingIconPress?: BubblingEventHandler<Readonly<{}>>;
|
|
276
|
+
|
|
277
|
+
/** Fired when a field with pressMode 'button' is pressed. */
|
|
278
|
+
onFieldPress?: BubblingEventHandler<Readonly<{}>>;
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
type NativeTextFieldComponent = HostComponent<TextFieldNativeProps>;
|
|
282
|
+
|
|
283
|
+
// `React.ElementRef` rather than `React.ComponentRef`: the codegen shipped with
|
|
284
|
+
// React Native 0.81 (and the 0.76 Android floor) only accepts the former.
|
|
285
|
+
interface NativeCommands {
|
|
286
|
+
/** Focuses the field and shows the keyboard. */
|
|
287
|
+
focus: (viewRef: React.ElementRef<NativeTextFieldComponent>) => void;
|
|
288
|
+
|
|
289
|
+
/** Removes focus and hides the keyboard. */
|
|
290
|
+
blur: (viewRef: React.ElementRef<NativeTextFieldComponent>) => void;
|
|
291
|
+
|
|
292
|
+
/** Clears the text; fires onFieldChange like a user edit. */
|
|
293
|
+
clear: (viewRef: React.ElementRef<NativeTextFieldComponent>) => void;
|
|
294
|
+
|
|
295
|
+
/**
|
|
296
|
+
* Replaces the text, unless the user has edited since `eventCount` was
|
|
297
|
+
* reported, in which case the update is dropped and the next edit event
|
|
298
|
+
* brings JS back in sync.
|
|
299
|
+
*/
|
|
300
|
+
setText: (
|
|
301
|
+
viewRef: React.ElementRef<NativeTextFieldComponent>,
|
|
302
|
+
eventCount: Int32,
|
|
303
|
+
text: string
|
|
304
|
+
) => void;
|
|
305
|
+
|
|
306
|
+
/**
|
|
307
|
+
* Selects `start`..`end` (UTF-16 offsets, clamped to the text), unless the
|
|
308
|
+
* user has edited since `eventCount` was reported, as for `setText`.
|
|
309
|
+
*/
|
|
310
|
+
setSelection: (
|
|
311
|
+
viewRef: React.ElementRef<NativeTextFieldComponent>,
|
|
312
|
+
eventCount: Int32,
|
|
313
|
+
start: Int32,
|
|
314
|
+
end: Int32
|
|
315
|
+
) => void;
|
|
316
|
+
}
|
|
317
|
+
|
|
318
|
+
export const Commands: NativeCommands = codegenNativeCommands<NativeCommands>({
|
|
319
|
+
supportedCommands: ['focus', 'blur', 'clear', 'setText', 'setSelection'],
|
|
320
|
+
});
|
|
321
|
+
|
|
322
|
+
export default codegenNativeComponent<TextFieldNativeProps>(
|
|
323
|
+
'PCTextField'
|
|
324
|
+
) as NativeTextFieldComponent;
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/// <reference path="./reactNativeInternals.d.ts" />
|
|
4
|
+
// focusRegistry.ts
|
|
5
|
+
//
|
|
6
|
+
// TextField's link to React Native's focused-input bookkeeping. The core
|
|
7
|
+
// TextInput registers its host node with `TextInputState`, and that registry is
|
|
8
|
+
// what `Keyboard.dismiss()`, a ScrollView's `keyboardShouldPersistTaps` and
|
|
9
|
+
// `keyboardDismissMode`, and `KeyboardAvoidingView` act on. Registering the
|
|
10
|
+
// same way makes a TextField behave like a TextInput for all of them.
|
|
11
|
+
//
|
|
12
|
+
// `TextInputState` is a stable internal (it has kept this shape since 0.63),
|
|
13
|
+
// but React Native's Babel preset adds a dev-time warning to every static
|
|
14
|
+
// `import` or `require` of a deep path. A dynamic `import()` is resolved by
|
|
15
|
+
// Metro the same way and carries no warning; it settles in a microtask at
|
|
16
|
+
// startup, so a node registered before then is kept and registered once the
|
|
17
|
+
// module arrives. If a future release drops the path, the registry is simply
|
|
18
|
+
// absent and the field falls back to the public `TextInput.State` calls for
|
|
19
|
+
// focus and blur, keeping `Keyboard.dismiss()` working.
|
|
20
|
+
import { TextInput } from 'react-native';
|
|
21
|
+
let registry;
|
|
22
|
+
const pendingRegistrations = new Set();
|
|
23
|
+
|
|
24
|
+
// A stable internal without a public counterpart; see reactNativeInternals.d.ts.
|
|
25
|
+
|
|
26
|
+
import('react-native/Libraries/Components/TextInput/TextInputState').then(module => {
|
|
27
|
+
registry = module.default;
|
|
28
|
+
pendingRegistrations.forEach(node => registry?.registerInput(node));
|
|
29
|
+
pendingRegistrations.clear();
|
|
30
|
+
}).catch(() => {
|
|
31
|
+
// Not available: focus and blur still go through TextInput.State below.
|
|
32
|
+
});
|
|
33
|
+
export const focusRegistry = {
|
|
34
|
+
/** Called when the field mounts. */
|
|
35
|
+
register(node) {
|
|
36
|
+
if (registry) {
|
|
37
|
+
registry.registerInput(node);
|
|
38
|
+
} else {
|
|
39
|
+
pendingRegistrations.add(node);
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
/** Called when the field unmounts; drops the focus if the field held it. */
|
|
43
|
+
unregister(node) {
|
|
44
|
+
pendingRegistrations.delete(node);
|
|
45
|
+
if (registry) {
|
|
46
|
+
registry.unregisterInput(node);
|
|
47
|
+
if (registry.currentlyFocusedInput() === node) {
|
|
48
|
+
registry.blurInput(node);
|
|
49
|
+
}
|
|
50
|
+
} else if (TextInput.State.currentlyFocusedInput() === node) {
|
|
51
|
+
TextInput.State.blurTextInput(node);
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
/** The field gained focus natively. */
|
|
55
|
+
focused(node) {
|
|
56
|
+
if (node == null) return;
|
|
57
|
+
if (registry) {
|
|
58
|
+
registry.focusInput(node);
|
|
59
|
+
} else {
|
|
60
|
+
// Also re-sends the focus command, which the focused field ignores
|
|
61
|
+
TextInput.State.focusTextInput(node);
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
/** The field lost focus natively. */
|
|
65
|
+
blurred(node) {
|
|
66
|
+
if (node == null) return;
|
|
67
|
+
if (registry) {
|
|
68
|
+
registry.blurInput(node);
|
|
69
|
+
} else {
|
|
70
|
+
// Also re-sends the blur command, which the unfocused field ignores
|
|
71
|
+
TextInput.State.blurTextInput(node);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
//# sourceMappingURL=focusRegistry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TextInput","registry","pendingRegistrations","Set","then","module","default","forEach","node","registerInput","clear","catch","focusRegistry","register","add","unregister","delete","unregisterInput","currentlyFocusedInput","blurInput","State","blurTextInput","focused","focusInput","focusTextInput","blurred"],"sourceRoot":"../../src","sources":["focusRegistry.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,cAAc;AAaxC,IAAIC,QAA8B;AAClC,MAAMC,oBAAoB,GAAG,IAAIC,GAAG,CAAW,CAAC;;AAEhD;;AAEA,MAAM,CAAC,4DAA4D,CAAC,CACjEC,IAAI,CAAEC,MAAM,IAAK;EAChBJ,QAAQ,GAAGI,MAAM,CAACC,OAAO;EACzBJ,oBAAoB,CAACK,OAAO,CAAEC,IAAI,IAAKP,QAAQ,EAAEQ,aAAa,CAACD,IAAI,CAAC,CAAC;EACrEN,oBAAoB,CAACQ,KAAK,CAAC,CAAC;AAC9B,CAAC,CAAC,CACDC,KAAK,CAAC,MAAM;EACX;AAAA,CACD,CAAC;AAEJ,OAAO,MAAMC,aAAa,GAAG;EAC3B;EACAC,QAAQA,CAACL,IAAc,EAAQ;IAC7B,IAAIP,QAAQ,EAAE;MACZA,QAAQ,CAACQ,aAAa,CAACD,IAAI,CAAC;IAC9B,CAAC,MAAM;MACLN,oBAAoB,CAACY,GAAG,CAACN,IAAI,CAAC;IAChC;EACF,CAAC;EAED;EACAO,UAAUA,CAACP,IAAc,EAAQ;IAC/BN,oBAAoB,CAACc,MAAM,CAACR,IAAI,CAAC;IACjC,IAAIP,QAAQ,EAAE;MACZA,QAAQ,CAACgB,eAAe,CAACT,IAAI,CAAC;MAC9B,IAAIP,QAAQ,CAACiB,qBAAqB,CAAC,CAAC,KAAKV,IAAI,EAAE;QAC7CP,QAAQ,CAACkB,SAAS,CAACX,IAAI,CAAC;MAC1B;IACF,CAAC,MAAM,IAAIR,SAAS,CAACoB,KAAK,CAACF,qBAAqB,CAAC,CAAC,KAAKV,IAAI,EAAE;MAC3DR,SAAS,CAACoB,KAAK,CAACC,aAAa,CAACb,IAAa,CAAC;IAC9C;EACF,CAAC;EAED;EACAc,OAAOA,CAACd,IAAqB,EAAQ;IACnC,IAAIA,IAAI,IAAI,IAAI,EAAE;IAClB,IAAIP,QAAQ,EAAE;MACZA,QAAQ,CAACsB,UAAU,CAACf,IAAI,CAAC;IAC3B,CAAC,MAAM;MACL;MACAR,SAAS,CAACoB,KAAK,CAACI,cAAc,CAAChB,IAAa,CAAC;IAC/C;EACF,CAAC;EAED;EACAiB,OAAOA,CAACjB,IAAqB,EAAQ;IACnC,IAAIA,IAAI,IAAI,IAAI,EAAE;IAClB,IAAIP,QAAQ,EAAE;MACZA,QAAQ,CAACkB,SAAS,CAACX,IAAI,CAAC;IAC1B,CAAC,MAAM;MACL;MACAR,SAAS,CAACoB,KAAK,CAACC,aAAa,CAACb,IAAa,CAAC;IAC9C;EACF;AACF,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../src","sources":["haptics.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
// icons.ts
|
|
4
|
+
//
|
|
5
|
+
// Icon props shared by SegmentedControl, Button and ButtonGroup. Icons are
|
|
6
|
+
// resolved on the JS side so native only deals with flat strings.
|
|
7
|
+
import { Image, Platform } from 'react-native';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* A single icon source.
|
|
11
|
+
*
|
|
12
|
+
* - `string`: shorthand for an SF Symbol name on iOS and a drawable resource
|
|
13
|
+
* name on Android.
|
|
14
|
+
* - `{ type: 'sfSymbol' }`: an SF Symbol. iOS only; ignored on Android.
|
|
15
|
+
* - `{ type: 'drawable' }`: a drawable from the app's `res/drawable`.
|
|
16
|
+
* Android only; ignored on iOS.
|
|
17
|
+
* - `{ type: 'image' }`: an image asset (`require('./icon.png')`) or a
|
|
18
|
+
* `{ uri }` source. Works on both platforms. Images are drawn as tinted
|
|
19
|
+
* templates unless `tinted` is `false`. Native loaders forward `headers`,
|
|
20
|
+
* `method` and `body`. `cache` controls the decoded in-memory image cache:
|
|
21
|
+
* `reload` bypasses it, `only-if-cached` never fetches, and `default` /
|
|
22
|
+
* `force-cache` reuse a matching cached request. HTTP redirects carrying
|
|
23
|
+
* custom request options are not followed.
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* An icon: a single source used on both platforms, or a per-platform pair so
|
|
28
|
+
* callers don't need to branch on `Platform.OS`.
|
|
29
|
+
*/
|
|
30
|
+
|
|
31
|
+
/** The flat icon fields the native specs expect. */
|
|
32
|
+
|
|
33
|
+
export const NO_ICON = {
|
|
34
|
+
iconType: '',
|
|
35
|
+
iconName: '',
|
|
36
|
+
iconUri: '',
|
|
37
|
+
iconRequest: '',
|
|
38
|
+
iconScale: 1,
|
|
39
|
+
iconTinted: 'true'
|
|
40
|
+
};
|
|
41
|
+
function pickIconSource(icon) {
|
|
42
|
+
if (icon === undefined || typeof icon === 'string' || 'type' in icon) {
|
|
43
|
+
return icon;
|
|
44
|
+
}
|
|
45
|
+
return Platform.OS === 'ios' ? icon.ios : icon.android;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Flattens the public icon shape into the strings native expects, dropping
|
|
50
|
+
* sources that don't apply to the current platform.
|
|
51
|
+
*/
|
|
52
|
+
export function resolveIcon(icon) {
|
|
53
|
+
const source = pickIconSource(icon);
|
|
54
|
+
if (source === undefined) return NO_ICON;
|
|
55
|
+
if (typeof source === 'string') {
|
|
56
|
+
if (source.length === 0) return NO_ICON;
|
|
57
|
+
return {
|
|
58
|
+
...NO_ICON,
|
|
59
|
+
iconType: Platform.OS === 'ios' ? 'sfSymbol' : 'drawable',
|
|
60
|
+
iconName: source
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
switch (source.type) {
|
|
64
|
+
case 'sfSymbol':
|
|
65
|
+
return Platform.OS === 'ios' ? {
|
|
66
|
+
...NO_ICON,
|
|
67
|
+
iconType: 'sfSymbol',
|
|
68
|
+
iconName: source.name
|
|
69
|
+
} : NO_ICON;
|
|
70
|
+
case 'drawable':
|
|
71
|
+
return Platform.OS === 'android' ? {
|
|
72
|
+
...NO_ICON,
|
|
73
|
+
iconType: 'drawable',
|
|
74
|
+
iconName: source.name
|
|
75
|
+
} : NO_ICON;
|
|
76
|
+
case 'image':
|
|
77
|
+
{
|
|
78
|
+
const resolved = Image.resolveAssetSource(source.source);
|
|
79
|
+
if (!resolved?.uri) return NO_ICON;
|
|
80
|
+
const request = typeof source.source === 'object' ? source.source : undefined;
|
|
81
|
+
const headers = request?.headers ? Object.fromEntries(Object.entries(request.headers).sort(([a], [b]) => a.localeCompare(b))) : undefined;
|
|
82
|
+
const requestOptions = {
|
|
83
|
+
headers,
|
|
84
|
+
method: request?.method,
|
|
85
|
+
body: request?.body,
|
|
86
|
+
cache: request?.cache
|
|
87
|
+
};
|
|
88
|
+
return {
|
|
89
|
+
iconType: 'image',
|
|
90
|
+
iconName: '',
|
|
91
|
+
iconUri: resolved.uri,
|
|
92
|
+
iconRequest: Object.values(requestOptions).some(value => value !== undefined) ? JSON.stringify(requestOptions) : '',
|
|
93
|
+
iconScale: resolved.scale > 0 ? resolved.scale : 1,
|
|
94
|
+
iconTinted: source.tinted === false ? 'false' : 'true'
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
default:
|
|
98
|
+
return NO_ICON;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=icons.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Image","Platform","NO_ICON","iconType","iconName","iconUri","iconRequest","iconScale","iconTinted","pickIconSource","icon","undefined","OS","ios","android","resolveIcon","source","length","type","name","resolved","resolveAssetSource","uri","request","headers","Object","fromEntries","entries","sort","a","b","localeCompare","requestOptions","method","body","cache","values","some","value","JSON","stringify","scale","tinted"],"sourceRoot":"../../src","sources":["icons.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA,SACEA,KAAK,EACLC,QAAQ,QAGH,cAAc;;AAErB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAWA;AACA;AACA;AACA;;AAQA;;AAgBA,OAAO,MAAMC,OAAyB,GAAG;EACvCC,QAAQ,EAAE,EAAE;EACZC,QAAQ,EAAE,EAAE;EACZC,OAAO,EAAE,EAAE;EACXC,WAAW,EAAE,EAAE;EACfC,SAAS,EAAE,CAAC;EACZC,UAAU,EAAE;AACd,CAAC;AAED,SAASC,cAAcA,CACrBC,IAA8B,EACE;EAChC,IAAIA,IAAI,KAAKC,SAAS,IAAI,OAAOD,IAAI,KAAK,QAAQ,IAAI,MAAM,IAAIA,IAAI,EAAE;IACpE,OAAOA,IAAI;EACb;EACA,OAAOT,QAAQ,CAACW,EAAE,KAAK,KAAK,GAAGF,IAAI,CAACG,GAAG,GAAGH,IAAI,CAACI,OAAO;AACxD;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASC,WAAWA,CAACL,IAA8B,EAAoB;EAC5E,MAAMM,MAAM,GAAGP,cAAc,CAACC,IAAI,CAAC;EACnC,IAAIM,MAAM,KAAKL,SAAS,EAAE,OAAOT,OAAO;EAExC,IAAI,OAAOc,MAAM,KAAK,QAAQ,EAAE;IAC9B,IAAIA,MAAM,CAACC,MAAM,KAAK,CAAC,EAAE,OAAOf,OAAO;IACvC,OAAO;MACL,GAAGA,OAAO;MACVC,QAAQ,EAAEF,QAAQ,CAACW,EAAE,KAAK,KAAK,GAAG,UAAU,GAAG,UAAU;MACzDR,QAAQ,EAAEY;IACZ,CAAC;EACH;EAEA,QAAQA,MAAM,CAACE,IAAI;IACjB,KAAK,UAAU;MACb,OAAOjB,QAAQ,CAACW,EAAE,KAAK,KAAK,GACxB;QAAE,GAAGV,OAAO;QAAEC,QAAQ,EAAE,UAAU;QAAEC,QAAQ,EAAEY,MAAM,CAACG;MAAK,CAAC,GAC3DjB,OAAO;IACb,KAAK,UAAU;MACb,OAAOD,QAAQ,CAACW,EAAE,KAAK,SAAS,GAC5B;QAAE,GAAGV,OAAO;QAAEC,QAAQ,EAAE,UAAU;QAAEC,QAAQ,EAAEY,MAAM,CAACG;MAAK,CAAC,GAC3DjB,OAAO;IACb,KAAK,OAAO;MAAE;QACZ,MAAMkB,QAAQ,GAAGpB,KAAK,CAACqB,kBAAkB,CAACL,MAAM,CAACA,MAAM,CAAC;QACxD,IAAI,CAACI,QAAQ,EAAEE,GAAG,EAAE,OAAOpB,OAAO;QAClC,MAAMqB,OAAO,GACX,OAAOP,MAAM,CAACA,MAAM,KAAK,QAAQ,GAAGA,MAAM,CAACA,MAAM,GAAGL,SAAS;QAC/D,MAAMa,OAAO,GAAGD,OAAO,EAAEC,OAAO,GAC5BC,MAAM,CAACC,WAAW,CAChBD,MAAM,CAACE,OAAO,CAACJ,OAAO,CAACC,OAAO,CAAC,CAACI,IAAI,CAAC,CAAC,CAACC,CAAC,CAAC,EAAE,CAACC,CAAC,CAAC,KAC5CD,CAAC,CAACE,aAAa,CAACD,CAAC,CACnB,CACF,CAAC,GACDnB,SAAS;QACb,MAAMqB,cAAc,GAAG;UACrBR,OAAO;UACPS,MAAM,EAAEV,OAAO,EAAEU,MAAM;UACvBC,IAAI,EAAEX,OAAO,EAAEW,IAAI;UACnBC,KAAK,EAAEZ,OAAO,EAAEY;QAClB,CAAC;QACD,OAAO;UACLhC,QAAQ,EAAE,OAAO;UACjBC,QAAQ,EAAE,EAAE;UACZC,OAAO,EAAEe,QAAQ,CAACE,GAAG;UACrBhB,WAAW,EAAEmB,MAAM,CAACW,MAAM,CAACJ,cAAc,CAAC,CAACK,IAAI,CAC5CC,KAAK,IAAKA,KAAK,KAAK3B,SACvB,CAAC,GACG4B,IAAI,CAACC,SAAS,CAACR,cAAc,CAAC,GAC9B,EAAE;UACNzB,SAAS,EAAEa,QAAQ,CAACqB,KAAK,GAAG,CAAC,GAAGrB,QAAQ,CAACqB,KAAK,GAAG,CAAC;UAClDjC,UAAU,EAAEQ,MAAM,CAAC0B,MAAM,KAAK,KAAK,GAAG,OAAO,GAAG;QAClD,CAAC;MACH;IACA;MACE,OAAOxC,OAAO;EAClB;AACF","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -4,7 +4,20 @@ export * from "./DatePicker.js";
|
|
|
4
4
|
export * from "./SelectionMenu.js";
|
|
5
5
|
export * from "./ContextMenu.js";
|
|
6
6
|
export * from "./SegmentedControl.js";
|
|
7
|
+
export * from "./TabBar.js";
|
|
8
|
+
export * from "./FloatingActionButton.js";
|
|
9
|
+
export * from "./NavigationRail.js";
|
|
10
|
+
export * from "./Button.js";
|
|
11
|
+
export * from "./ButtonGroup.js";
|
|
12
|
+
export * from "./SplitButton.js";
|
|
13
|
+
export * from "./FloatingToolbar.js";
|
|
7
14
|
export * from "./LiquidGlass.js";
|
|
15
|
+
export * from "./LiquidGlassContainer.js";
|
|
16
|
+
export * from "./TextField.js";
|
|
17
|
+
export * from "./icons.js";
|
|
18
|
+
export * from "./labelStyle.js";
|
|
8
19
|
export * from "./sharedTypes.js";
|
|
20
|
+
export * from "./haptics.js";
|
|
9
21
|
export * from "./NativeTheme.js";
|
|
22
|
+
export * from "./PlatformComponentsProvider.js";
|
|
10
23
|
//# sourceMappingURL=index.js.map
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,cAAc,iBAAc;AAC5B,cAAc,oBAAiB;AAC/B,cAAc,kBAAe;AAC7B,cAAc,uBAAoB;AAClC,cAAc,kBAAe;AAC7B,cAAc,kBAAe;AAC7B,cAAc,kBAAe","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,cAAc,iBAAc;AAC5B,cAAc,oBAAiB;AAC/B,cAAc,kBAAe;AAC7B,cAAc,uBAAoB;AAClC,cAAc,aAAU;AACxB,cAAc,2BAAwB;AACtC,cAAc,qBAAkB;AAChC,cAAc,aAAU;AACxB,cAAc,kBAAe;AAC7B,cAAc,kBAAe;AAC7B,cAAc,sBAAmB;AACjC,cAAc,kBAAe;AAC7B,cAAc,2BAAwB;AACtC,cAAc,gBAAa;AAC3B,cAAc,YAAS;AACvB,cAAc,iBAAc;AAC5B,cAAc,kBAAe;AAC7B,cAAc,cAAW;AACzB,cAAc,kBAAe;AAC7B,cAAc,iCAA8B","ignoreList":[]}
|
package/lib/module/index.web.js
CHANGED
|
@@ -1,63 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
// index.web.tsx
|
|
4
|
-
//
|
|
5
|
-
//
|
|
6
|
-
//
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
// ============================================================================
|
|
17
|
-
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
18
|
-
export const DatePicker = _props => null;
|
|
19
|
-
|
|
20
|
-
// ============================================================================
|
|
21
|
-
// SelectionMenu
|
|
22
|
-
// ============================================================================
|
|
23
|
-
|
|
24
|
-
export const SelectionMenu = _props => null;
|
|
25
|
-
|
|
26
|
-
// ============================================================================
|
|
27
|
-
// ContextMenu
|
|
28
|
-
// ============================================================================
|
|
29
|
-
|
|
30
|
-
export const ContextMenu = ({
|
|
31
|
-
children
|
|
32
|
-
}) => {
|
|
33
|
-
return /*#__PURE__*/_jsx(_Fragment, {
|
|
34
|
-
children: children
|
|
35
|
-
});
|
|
36
|
-
};
|
|
37
|
-
|
|
38
|
-
// ============================================================================
|
|
39
|
-
// SegmentedControl
|
|
40
|
-
// ============================================================================
|
|
41
|
-
|
|
42
|
-
export const SegmentedControl = _props => null;
|
|
43
|
-
|
|
44
|
-
// ============================================================================
|
|
45
|
-
// LiquidGlass
|
|
46
|
-
// ============================================================================
|
|
47
|
-
|
|
48
|
-
export const LiquidGlass = ({
|
|
49
|
-
children
|
|
50
|
-
}) => {
|
|
51
|
-
return /*#__PURE__*/_jsx(_Fragment, {
|
|
52
|
-
children: children
|
|
53
|
-
});
|
|
54
|
-
};
|
|
55
|
-
export const isLiquidGlassSupported = false;
|
|
56
|
-
|
|
57
|
-
// ============================================================================
|
|
58
|
-
// Native theme
|
|
59
|
-
// ============================================================================
|
|
60
|
-
|
|
61
|
-
export const setNativeTheme = _theme => {};
|
|
62
|
-
export const useNativeTheme = _theme => {};
|
|
4
|
+
//
|
|
5
|
+
// Web entry point, for react-native-web. The components render the browser's
|
|
6
|
+
// own controls (see src/web). Types come from the native modules as
|
|
7
|
+
// type-only exports, which are erased at build time, so the native component
|
|
8
|
+
// specs are never imported on web and the two entry points share one API.
|
|
9
|
+
|
|
10
|
+
export * from "./labelStyle.js";
|
|
11
|
+
export { PlatformComponentsProvider } from "./web/PlatformComponentsProvider.js";
|
|
12
|
+
export { Button, ButtonGroup, SplitButton, ContextMenu, DatePicker, DateRangePicker, FloatingActionButton, FloatingToolbar, LiquidGlass, LiquidGlassContainer, NavigationRail, SegmentedControl, SelectionMenu, TabBar, TextField } from "./web/components.js";
|
|
13
|
+
export { isDateRangePickerSupported } from "./web/DateRangePicker.js";
|
|
14
|
+
export { isLiquidGlassSupported } from "./web/containers.js";
|
|
15
|
+
export { setNativeTheme, useNativeTheme } from "./web/NativeTheme.js";
|
|
63
16
|
//# sourceMappingURL=index.web.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["PlatformComponentsProvider","Button","ButtonGroup","SplitButton","ContextMenu","DatePicker","DateRangePicker","FloatingActionButton","FloatingToolbar","LiquidGlass","LiquidGlassContainer","NavigationRail","SegmentedControl","SelectionMenu","TabBar","TextField","isDateRangePickerSupported","isLiquidGlassSupported","setNativeTheme","useNativeTheme"],"sourceRoot":"../../src","sources":["index.web.tsx"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;;AAqBA,cAAc,iBAAc;AAO5B,SAASA,0BAA0B,QAAQ,qCAAkC;AAC7E,SACEC,MAAM,EACNC,WAAW,EACXC,WAAW,EACXC,WAAW,EACXC,UAAU,EACVC,eAAe,EACfC,oBAAoB,EACpBC,eAAe,EACfC,WAAW,EACXC,oBAAoB,EACpBC,cAAc,EACdC,gBAAgB,EAChBC,aAAa,EACbC,MAAM,EACNC,SAAS,QACJ,qBAAkB;AACzB,SAASC,0BAA0B,QAAQ,0BAAuB;AAClE,SAASC,sBAAsB,QAAQ,qBAAkB;AACzD,SAASC,cAAc,EAAEC,cAAc,QAAQ,sBAAmB","ignoreList":[]}
|