@ankhorage/surface 0.0.1 → 0.1.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/CHANGELOG.md +28 -0
- package/README.md +163 -49
- package/dist/components/badge/Badge.d.ts +4 -0
- package/dist/components/badge/Badge.d.ts.map +1 -0
- package/dist/components/badge/Badge.js +30 -0
- package/dist/components/badge/Badge.js.map +1 -0
- package/dist/components/badge/index.d.ts +3 -0
- package/dist/components/badge/index.d.ts.map +1 -0
- package/dist/components/badge/index.js +2 -0
- package/dist/components/badge/index.js.map +1 -0
- package/dist/components/badge/types.d.ts +12 -0
- package/dist/components/badge/types.d.ts.map +1 -0
- package/dist/components/badge/types.js +2 -0
- package/dist/components/badge/types.js.map +1 -0
- package/dist/components/button/Button.d.ts +4 -0
- package/dist/components/button/Button.d.ts.map +1 -0
- package/dist/components/button/Button.js +50 -0
- package/dist/components/button/Button.js.map +1 -0
- package/dist/components/button/index.d.ts +3 -0
- package/dist/components/button/index.d.ts.map +1 -0
- package/dist/components/button/index.js +2 -0
- package/dist/components/button/index.js.map +1 -0
- package/dist/components/button/types.d.ts +21 -0
- package/dist/components/button/types.d.ts.map +1 -0
- package/dist/components/button/types.js +2 -0
- package/dist/components/button/types.js.map +1 -0
- package/dist/components/card/Card.d.ts +4 -0
- package/dist/components/card/Card.d.ts.map +1 -0
- package/dist/components/card/Card.js +46 -0
- package/dist/components/card/Card.js.map +1 -0
- package/dist/components/card/index.d.ts +3 -0
- package/dist/components/card/index.d.ts.map +1 -0
- package/dist/components/card/index.js +2 -0
- package/dist/components/card/index.js.map +1 -0
- package/dist/components/card/types.d.ts +10 -0
- package/dist/components/card/types.d.ts.map +1 -0
- package/dist/components/card/types.js +2 -0
- package/dist/components/card/types.js.map +1 -0
- package/dist/components/checkbox/Checkbox.d.ts +4 -0
- package/dist/components/checkbox/Checkbox.d.ts.map +1 -0
- package/dist/components/checkbox/Checkbox.js +61 -0
- package/dist/components/checkbox/Checkbox.js.map +1 -0
- package/dist/components/checkbox/index.d.ts +3 -0
- package/dist/components/checkbox/index.d.ts.map +1 -0
- package/dist/components/checkbox/index.js +2 -0
- package/dist/components/checkbox/index.js.map +1 -0
- package/dist/components/checkbox/types.d.ts +15 -0
- package/dist/components/checkbox/types.d.ts.map +1 -0
- package/dist/components/checkbox/types.js +2 -0
- package/dist/components/checkbox/types.js.map +1 -0
- package/dist/components/drawer/Drawer.d.ts +4 -0
- package/dist/components/drawer/Drawer.d.ts.map +1 -0
- package/dist/components/drawer/Drawer.js +56 -0
- package/dist/components/drawer/Drawer.js.map +1 -0
- package/dist/components/drawer/index.d.ts +3 -0
- package/dist/components/drawer/index.d.ts.map +1 -0
- package/dist/components/drawer/index.js +2 -0
- package/dist/components/drawer/index.js.map +1 -0
- package/dist/components/drawer/types.d.ts +10 -0
- package/dist/components/drawer/types.d.ts.map +1 -0
- package/dist/components/drawer/types.js +2 -0
- package/dist/components/drawer/types.js.map +1 -0
- package/dist/components/field/Field.d.ts +4 -0
- package/dist/components/field/Field.d.ts.map +1 -0
- package/dist/components/field/Field.js +25 -0
- package/dist/components/field/Field.js.map +1 -0
- package/dist/components/field/index.d.ts +3 -0
- package/dist/components/field/index.d.ts.map +1 -0
- package/dist/components/field/index.js +2 -0
- package/dist/components/field/index.js.map +1 -0
- package/dist/components/field/types.d.ts +13 -0
- package/dist/components/field/types.d.ts.map +1 -0
- package/dist/components/field/types.js +2 -0
- package/dist/components/field/types.js.map +1 -0
- package/dist/components/helper-text/HelperText.d.ts +4 -0
- package/dist/components/helper-text/HelperText.d.ts.map +1 -0
- package/dist/components/helper-text/HelperText.js +10 -0
- package/dist/components/helper-text/HelperText.js.map +1 -0
- package/dist/components/helper-text/index.d.ts +3 -0
- package/dist/components/helper-text/index.d.ts.map +1 -0
- package/dist/components/helper-text/index.js +2 -0
- package/dist/components/helper-text/index.js.map +1 -0
- package/dist/components/helper-text/types.d.ts +7 -0
- package/dist/components/helper-text/types.d.ts.map +1 -0
- package/dist/components/helper-text/types.js +2 -0
- package/dist/components/helper-text/types.js.map +1 -0
- package/dist/components/icon-button/IconButton.d.ts +4 -0
- package/dist/components/icon-button/IconButton.d.ts.map +1 -0
- package/dist/components/icon-button/IconButton.js +28 -0
- package/dist/components/icon-button/IconButton.js.map +1 -0
- package/dist/components/icon-button/index.d.ts +3 -0
- package/dist/components/icon-button/index.d.ts.map +1 -0
- package/dist/components/icon-button/index.js +2 -0
- package/dist/components/icon-button/index.js.map +1 -0
- package/dist/components/icon-button/types.d.ts +16 -0
- package/dist/components/icon-button/types.d.ts.map +1 -0
- package/dist/components/icon-button/types.js +2 -0
- package/dist/components/icon-button/types.js.map +1 -0
- package/dist/components/label/Label.d.ts +4 -0
- package/dist/components/label/Label.d.ts.map +1 -0
- package/dist/components/label/Label.js +13 -0
- package/dist/components/label/Label.js.map +1 -0
- package/dist/components/label/index.d.ts +3 -0
- package/dist/components/label/index.d.ts.map +1 -0
- package/dist/components/label/index.js +2 -0
- package/dist/components/label/index.js.map +1 -0
- package/dist/components/label/types.d.ts +8 -0
- package/dist/components/label/types.d.ts.map +1 -0
- package/dist/components/label/types.js +2 -0
- package/dist/components/label/types.js.map +1 -0
- package/dist/components/list-item/ListItem.d.ts +4 -0
- package/dist/components/list-item/ListItem.d.ts.map +1 -0
- package/dist/components/list-item/ListItem.js +43 -0
- package/dist/components/list-item/ListItem.js.map +1 -0
- package/dist/components/list-item/index.d.ts +3 -0
- package/dist/components/list-item/index.d.ts.map +1 -0
- package/dist/components/list-item/index.js +2 -0
- package/dist/components/list-item/index.js.map +1 -0
- package/dist/components/list-item/types.d.ts +11 -0
- package/dist/components/list-item/types.d.ts.map +1 -0
- package/dist/components/list-item/types.js +2 -0
- package/dist/components/list-item/types.js.map +1 -0
- package/dist/components/menu/Menu.d.ts +4 -0
- package/dist/components/menu/Menu.d.ts.map +1 -0
- package/dist/components/menu/Menu.js +125 -0
- package/dist/components/menu/Menu.js.map +1 -0
- package/dist/components/menu/index.d.ts +3 -0
- package/dist/components/menu/index.d.ts.map +1 -0
- package/dist/components/menu/index.js +2 -0
- package/dist/components/menu/index.js.map +1 -0
- package/dist/components/menu/navigation.d.ts +4 -0
- package/dist/components/menu/navigation.d.ts.map +1 -0
- package/dist/components/menu/navigation.js +25 -0
- package/dist/components/menu/navigation.js.map +1 -0
- package/dist/components/menu/types.d.ts +15 -0
- package/dist/components/menu/types.d.ts.map +1 -0
- package/dist/components/menu/types.js +2 -0
- package/dist/components/menu/types.js.map +1 -0
- package/dist/components/modal/Modal.d.ts +4 -0
- package/dist/components/modal/Modal.d.ts.map +1 -0
- package/dist/components/modal/Modal.js +52 -0
- package/dist/components/modal/Modal.js.map +1 -0
- package/dist/components/modal/index.d.ts +3 -0
- package/dist/components/modal/index.d.ts.map +1 -0
- package/dist/components/modal/index.js +2 -0
- package/dist/components/modal/index.js.map +1 -0
- package/dist/components/modal/types.d.ts +9 -0
- package/dist/components/modal/types.d.ts.map +1 -0
- package/dist/components/modal/types.js +2 -0
- package/dist/components/modal/types.js.map +1 -0
- package/dist/components/radio/Radio.d.ts +4 -0
- package/dist/components/radio/Radio.d.ts.map +1 -0
- package/dist/components/radio/Radio.js +63 -0
- package/dist/components/radio/Radio.js.map +1 -0
- package/dist/components/radio/index.d.ts +3 -0
- package/dist/components/radio/index.d.ts.map +1 -0
- package/dist/components/radio/index.js +2 -0
- package/dist/components/radio/index.js.map +1 -0
- package/dist/components/radio/types.d.ts +15 -0
- package/dist/components/radio/types.d.ts.map +1 -0
- package/dist/components/radio/types.js +2 -0
- package/dist/components/radio/types.js.map +1 -0
- package/dist/components/switch/Switch.d.ts +4 -0
- package/dist/components/switch/Switch.d.ts.map +1 -0
- package/dist/components/switch/Switch.js +65 -0
- package/dist/components/switch/Switch.js.map +1 -0
- package/dist/components/switch/index.d.ts +3 -0
- package/dist/components/switch/index.d.ts.map +1 -0
- package/dist/components/switch/index.js +2 -0
- package/dist/components/switch/index.js.map +1 -0
- package/dist/components/switch/types.d.ts +15 -0
- package/dist/components/switch/types.d.ts.map +1 -0
- package/dist/components/switch/types.js +2 -0
- package/dist/components/switch/types.js.map +1 -0
- package/dist/components/tabs/Tab.d.ts +4 -0
- package/dist/components/tabs/Tab.d.ts.map +1 -0
- package/dist/components/tabs/Tab.js +43 -0
- package/dist/components/tabs/Tab.js.map +1 -0
- package/dist/components/tabs/TabList.d.ts +4 -0
- package/dist/components/tabs/TabList.d.ts.map +1 -0
- package/dist/components/tabs/TabList.js +37 -0
- package/dist/components/tabs/TabList.js.map +1 -0
- package/dist/components/tabs/TabPanel.d.ts +4 -0
- package/dist/components/tabs/TabPanel.d.ts.map +1 -0
- package/dist/components/tabs/TabPanel.js +13 -0
- package/dist/components/tabs/TabPanel.js.map +1 -0
- package/dist/components/tabs/Tabs.d.ts +4 -0
- package/dist/components/tabs/Tabs.d.ts.map +1 -0
- package/dist/components/tabs/Tabs.js +51 -0
- package/dist/components/tabs/Tabs.js.map +1 -0
- package/dist/components/tabs/context.d.ts +18 -0
- package/dist/components/tabs/context.d.ts.map +1 -0
- package/dist/components/tabs/context.js +10 -0
- package/dist/components/tabs/context.js.map +1 -0
- package/dist/components/tabs/index.d.ts +6 -0
- package/dist/components/tabs/index.d.ts.map +1 -0
- package/dist/components/tabs/index.js +5 -0
- package/dist/components/tabs/index.js.map +1 -0
- package/dist/components/tabs/navigation.d.ts +3 -0
- package/dist/components/tabs/navigation.d.ts.map +1 -0
- package/dist/components/tabs/navigation.js +21 -0
- package/dist/components/tabs/navigation.js.map +1 -0
- package/dist/components/tabs/types.d.ts +24 -0
- package/dist/components/tabs/types.d.ts.map +1 -0
- package/dist/components/tabs/types.js +2 -0
- package/dist/components/tabs/types.js.map +1 -0
- package/dist/components/text-input/TextInput.d.ts +4 -0
- package/dist/components/text-input/TextInput.d.ts.map +1 -0
- package/dist/components/text-input/TextInput.js +66 -0
- package/dist/components/text-input/TextInput.js.map +1 -0
- package/dist/components/text-input/index.d.ts +3 -0
- package/dist/components/text-input/index.d.ts.map +1 -0
- package/dist/components/text-input/index.js +2 -0
- package/dist/components/text-input/index.js.map +1 -0
- package/dist/components/text-input/types.d.ts +18 -0
- package/dist/components/text-input/types.d.ts.map +1 -0
- package/dist/components/text-input/types.js +2 -0
- package/dist/components/text-input/types.js.map +1 -0
- package/dist/components/textarea/Textarea.d.ts +4 -0
- package/dist/components/textarea/Textarea.d.ts.map +1 -0
- package/dist/components/textarea/Textarea.js +6 -0
- package/dist/components/textarea/Textarea.js.map +1 -0
- package/dist/components/textarea/index.d.ts +3 -0
- package/dist/components/textarea/index.d.ts.map +1 -0
- package/dist/components/textarea/index.js +2 -0
- package/dist/components/textarea/index.js.map +1 -0
- package/dist/components/textarea/types.d.ts +5 -0
- package/dist/components/textarea/types.d.ts.map +1 -0
- package/dist/components/textarea/types.js +2 -0
- package/dist/components/textarea/types.js.map +1 -0
- package/dist/components/toast/Toast.d.ts +4 -0
- package/dist/components/toast/Toast.d.ts.map +1 -0
- package/dist/components/toast/Toast.js +34 -0
- package/dist/components/toast/Toast.js.map +1 -0
- package/dist/components/toast/ToastProvider.d.ts +13 -0
- package/dist/components/toast/ToastProvider.d.ts.map +1 -0
- package/dist/components/toast/ToastProvider.js +69 -0
- package/dist/components/toast/ToastProvider.js.map +1 -0
- package/dist/components/toast/index.d.ts +4 -0
- package/dist/components/toast/index.d.ts.map +1 -0
- package/dist/components/toast/index.js +3 -0
- package/dist/components/toast/index.js.map +1 -0
- package/dist/components/toast/types.d.ts +14 -0
- package/dist/components/toast/types.d.ts.map +1 -0
- package/dist/components/toast/types.js +2 -0
- package/dist/components/toast/types.js.map +1 -0
- package/dist/components/tooltip/Tooltip.d.ts +4 -0
- package/dist/components/tooltip/Tooltip.d.ts.map +1 -0
- package/dist/components/tooltip/Tooltip.js +69 -0
- package/dist/components/tooltip/Tooltip.js.map +1 -0
- package/dist/components/tooltip/index.d.ts +3 -0
- package/dist/components/tooltip/index.d.ts.map +1 -0
- package/dist/components/tooltip/index.js +2 -0
- package/dist/components/tooltip/index.js.map +1 -0
- package/dist/components/tooltip/types.d.ts +9 -0
- package/dist/components/tooltip/types.d.ts.map +1 -0
- package/dist/components/tooltip/types.js +2 -0
- package/dist/components/tooltip/types.js.map +1 -0
- package/dist/context/FontContext.d.ts.map +1 -1
- package/dist/context/FontContext.js +3 -1
- package/dist/context/FontContext.js.map +1 -1
- package/dist/index.d.ts +42 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +21 -0
- package/dist/index.js.map +1 -1
- package/dist/internal/focus/FocusScope.d.ts +9 -0
- package/dist/internal/focus/FocusScope.d.ts.map +1 -0
- package/dist/internal/focus/FocusScope.js +44 -0
- package/dist/internal/focus/FocusScope.js.map +1 -0
- package/dist/internal/focus/useFocusManager.d.ts +14 -0
- package/dist/internal/focus/useFocusManager.d.ts.map +1 -0
- package/dist/internal/focus/useFocusManager.js +74 -0
- package/dist/internal/focus/useFocusManager.js.map +1 -0
- package/dist/internal/overlay/OverlayProvider.d.ts +5 -0
- package/dist/internal/overlay/OverlayProvider.d.ts.map +1 -0
- package/dist/internal/overlay/OverlayProvider.js +47 -0
- package/dist/internal/overlay/OverlayProvider.js.map +1 -0
- package/dist/internal/overlay/Portal.d.ts +9 -0
- package/dist/internal/overlay/Portal.d.ts.map +1 -0
- package/dist/internal/overlay/Portal.js +24 -0
- package/dist/internal/overlay/Portal.js.map +1 -0
- package/dist/internal/overlay/useOverlayStack.d.ts +23 -0
- package/dist/internal/overlay/useOverlayStack.d.ts.map +1 -0
- package/dist/internal/overlay/useOverlayStack.js +30 -0
- package/dist/internal/overlay/useOverlayStack.js.map +1 -0
- package/dist/internal/resolvers/index.d.ts +14 -0
- package/dist/internal/resolvers/index.d.ts.map +1 -0
- package/dist/internal/resolvers/index.js +14 -0
- package/dist/internal/resolvers/index.js.map +1 -0
- package/dist/internal/resolvers/resolveControlSize.d.ts +12 -0
- package/dist/internal/resolvers/resolveControlSize.d.ts.map +1 -0
- package/dist/internal/resolvers/resolveControlSize.js +33 -0
- package/dist/internal/resolvers/resolveControlSize.js.map +1 -0
- package/dist/internal/resolvers/resolveFieldState.d.ts +10 -0
- package/dist/internal/resolvers/resolveFieldState.d.ts.map +1 -0
- package/dist/internal/resolvers/resolveFieldState.js +23 -0
- package/dist/internal/resolvers/resolveFieldState.js.map +1 -0
- package/dist/internal/resolvers/resolveFocusRingStyles.d.ts +3 -0
- package/dist/internal/resolvers/resolveFocusRingStyles.d.ts.map +1 -0
- package/dist/internal/resolvers/resolveFocusRingStyles.js +12 -0
- package/dist/internal/resolvers/resolveFocusRingStyles.js.map +1 -0
- package/dist/internal/resolvers/resolveIconSize.d.ts +4 -0
- package/dist/internal/resolvers/resolveIconSize.d.ts.map +1 -0
- package/dist/internal/resolvers/resolveIconSize.js +5 -0
- package/dist/internal/resolvers/resolveIconSize.js.map +1 -0
- package/dist/internal/resolvers/resolveIndicatorSize.d.ts +12 -0
- package/dist/internal/resolvers/resolveIndicatorSize.d.ts.map +1 -0
- package/dist/internal/resolvers/resolveIndicatorSize.js +36 -0
- package/dist/internal/resolvers/resolveIndicatorSize.js.map +1 -0
- package/dist/internal/resolvers/resolveInteractiveColors.d.ts +20 -0
- package/dist/internal/resolvers/resolveInteractiveColors.d.ts.map +1 -0
- package/dist/internal/resolvers/resolveInteractiveColors.js +101 -0
- package/dist/internal/resolvers/resolveInteractiveColors.js.map +1 -0
- package/dist/internal/resolvers/resolveInteractiveState.d.ts +8 -0
- package/dist/internal/resolvers/resolveInteractiveState.d.ts.map +1 -0
- package/dist/internal/resolvers/resolveInteractiveState.js +9 -0
- package/dist/internal/resolvers/resolveInteractiveState.js.map +1 -0
- package/dist/internal/resolvers/resolveOverlayAnimation.d.ts +9 -0
- package/dist/internal/resolvers/resolveOverlayAnimation.d.ts.map +1 -0
- package/dist/internal/resolvers/resolveOverlayAnimation.js +16 -0
- package/dist/internal/resolvers/resolveOverlayAnimation.js.map +1 -0
- package/dist/internal/resolvers/resolveOverlayZIndex.d.ts +3 -0
- package/dist/internal/resolvers/resolveOverlayZIndex.d.ts.map +1 -0
- package/dist/internal/resolvers/resolveOverlayZIndex.js +11 -0
- package/dist/internal/resolvers/resolveOverlayZIndex.js.map +1 -0
- package/dist/internal/resolvers/resolveSelectionControlColors.d.ts +20 -0
- package/dist/internal/resolvers/resolveSelectionControlColors.d.ts.map +1 -0
- package/dist/internal/resolvers/resolveSelectionControlColors.js +51 -0
- package/dist/internal/resolvers/resolveSelectionControlColors.js.map +1 -0
- package/dist/internal/resolvers/resolveTextColor.d.ts +5 -0
- package/dist/internal/resolvers/resolveTextColor.d.ts.map +1 -0
- package/dist/internal/resolvers/resolveTextColor.js +18 -0
- package/dist/internal/resolvers/resolveTextColor.js.map +1 -0
- package/dist/internal/resolvers/resolveTextStyles.d.ts +13 -0
- package/dist/internal/resolvers/resolveTextStyles.d.ts.map +1 -0
- package/dist/internal/resolvers/resolveTextStyles.js +69 -0
- package/dist/internal/resolvers/resolveTextStyles.js.map +1 -0
- package/dist/internal/resolvers/resolveTone.d.ts +4 -0
- package/dist/internal/resolvers/resolveTone.d.ts.map +1 -0
- package/dist/internal/resolvers/resolveTone.js +16 -0
- package/dist/internal/resolvers/resolveTone.js.map +1 -0
- package/dist/internal/useControllableState.d.ts +6 -0
- package/dist/internal/useControllableState.d.ts.map +1 -0
- package/dist/internal/useControllableState.js +14 -0
- package/dist/internal/useControllableState.js.map +1 -0
- package/dist/layout/Box.js.map +1 -1
- package/dist/layout/Center.d.ts +7 -0
- package/dist/layout/Center.d.ts.map +1 -0
- package/dist/layout/Center.js +12 -0
- package/dist/layout/Center.js.map +1 -0
- package/dist/layout/Divider.d.ts +10 -0
- package/dist/layout/Divider.d.ts.map +1 -0
- package/dist/layout/Divider.js +6 -0
- package/dist/layout/Divider.js.map +1 -0
- package/dist/layout/Inline.d.ts +5 -0
- package/dist/layout/Inline.d.ts.map +1 -0
- package/dist/layout/Inline.js +6 -0
- package/dist/layout/Inline.js.map +1 -0
- package/dist/layout/Spacer.d.ts +9 -0
- package/dist/layout/Spacer.d.ts.map +1 -0
- package/dist/layout/Spacer.js +12 -0
- package/dist/layout/Spacer.js.map +1 -0
- package/dist/layout/Surface.d.ts +8 -0
- package/dist/layout/Surface.d.ts.map +1 -0
- package/dist/layout/Surface.js +48 -0
- package/dist/layout/Surface.js.map +1 -0
- package/dist/layout/helpers.js.map +1 -1
- package/dist/layout/index.d.ts +10 -0
- package/dist/layout/index.d.ts.map +1 -1
- package/dist/layout/index.js +5 -0
- package/dist/layout/index.js.map +1 -1
- package/dist/primitives/button-base/ButtonBase.d.ts +4 -0
- package/dist/primitives/button-base/ButtonBase.d.ts.map +1 -0
- package/dist/primitives/button-base/ButtonBase.js +40 -0
- package/dist/primitives/button-base/ButtonBase.js.map +1 -0
- package/dist/primitives/button-base/index.d.ts +3 -0
- package/dist/primitives/button-base/index.d.ts.map +1 -0
- package/dist/primitives/button-base/index.js +2 -0
- package/dist/primitives/button-base/index.js.map +1 -0
- package/dist/primitives/button-base/types.d.ts +15 -0
- package/dist/primitives/button-base/types.d.ts.map +1 -0
- package/dist/primitives/button-base/types.js +2 -0
- package/dist/primitives/button-base/types.js.map +1 -0
- package/dist/primitives/heading/resolveHeadingStyle.d.ts.map +1 -1
- package/dist/primitives/heading/resolveHeadingStyle.js +5 -16
- package/dist/primitives/heading/resolveHeadingStyle.js.map +1 -1
- package/dist/primitives/icon/resolveExpoIconComponent.d.ts.map +1 -1
- package/dist/primitives/icon/resolveExpoIconComponent.js +3 -1
- package/dist/primitives/icon/resolveExpoIconComponent.js.map +1 -1
- package/dist/primitives/text/Text.d.ts +4 -0
- package/dist/primitives/text/Text.d.ts.map +1 -0
- package/dist/primitives/text/Text.js +40 -0
- package/dist/primitives/text/Text.js.map +1 -0
- package/dist/primitives/text/index.d.ts +3 -0
- package/dist/primitives/text/index.d.ts.map +1 -0
- package/dist/primitives/text/index.js +2 -0
- package/dist/primitives/text/index.js.map +1 -0
- package/dist/primitives/text/types.d.ts +17 -0
- package/dist/primitives/text/types.d.ts.map +1 -0
- package/dist/primitives/text/types.js +2 -0
- package/dist/primitives/text/types.js.map +1 -0
- package/dist/theme/ThemeContext.d.ts.map +1 -1
- package/dist/theme/ThemeContext.js +10 -3
- package/dist/theme/ThemeContext.js.map +1 -1
- package/dist/theme/colorEngine.d.ts +2 -8
- package/dist/theme/colorEngine.d.ts.map +1 -1
- package/dist/theme/colorEngine.js +62 -9
- package/dist/theme/colorEngine.js.map +1 -1
- package/dist/theme/types.d.ts +36 -7
- package/dist/theme/types.d.ts.map +1 -1
- package/package.json +35 -11
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# @ankhorage/surface
|
|
2
|
+
|
|
3
|
+
## 0.1.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- Add Phase-1 design-system primitives and components, including shared semantic theme aliases,
|
|
8
|
+
internal UI resolvers, the `Text` and `ButtonBase` primitives, new layout helpers, and the
|
|
9
|
+
first reusable component wave: `Button`, `IconButton`, `Card`, `Badge`, `ListItem`, and
|
|
10
|
+
`TextInput`.
|
|
11
|
+
- Add the Phase-2 form and control layer, including unified field-state and selection-control
|
|
12
|
+
resolvers, form composition primitives (`Field`, `Label`, `HelperText`), `Textarea`, and the
|
|
13
|
+
selection controls `Checkbox`, `Radio`, and `Switch`.
|
|
14
|
+
- Add the Phase-3 overlay and navigation layer, including portal and overlay-stack
|
|
15
|
+
infrastructure, centralized focus management, and the new components `Modal`, `Drawer`,
|
|
16
|
+
`Tabs`, `Toast`, `Tooltip`, and `Menu`.
|
|
17
|
+
- Refine the Phase-3 overlay and navigation layer by fixing disabled-item keyboard navigation
|
|
18
|
+
in `Menu`, stabilizing tab registration in `Tabs`, recomputing overlay stack ordering after
|
|
19
|
+
removals, and correcting toast timer and dismiss behavior.
|
|
20
|
+
- Adopt Changesets-based release tracking for the package, align release access with the
|
|
21
|
+
public npm publish config, add GitHub Actions CI for lint, test, build, and changeset
|
|
22
|
+
validation, and add release automation for npm publishing.
|
|
23
|
+
|
|
24
|
+
## 0.0.2
|
|
25
|
+
|
|
26
|
+
### Patch Changes
|
|
27
|
+
|
|
28
|
+
- b556c63: Replace ESLint and Prettier with @ankhorage/devtools
|
package/README.md
CHANGED
|
@@ -1,76 +1,190 @@
|
|
|
1
1
|
# @ankhorage/surface
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
It owns layout primitives, responsive helpers, theming, typography, generic font and
|
|
5
|
-
translation bridges, and built-in Expo-backed icon rendering.
|
|
3
|
+
A cross-platform UI foundation for **React Native + Web**.
|
|
6
4
|
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
Build consistent, themeable apps with:
|
|
6
|
+
- layout primitives
|
|
7
|
+
- design tokens & theming
|
|
8
|
+
- responsive helpers
|
|
9
|
+
- accessible components
|
|
10
|
+
- overlay + interaction systems
|
|
9
11
|
|
|
10
|
-
|
|
12
|
+
---
|
|
11
13
|
|
|
12
|
-
|
|
14
|
+
## Why use this?
|
|
13
15
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
bun add react react-native
|
|
17
|
-
```
|
|
16
|
+
React Native gives you primitives.
|
|
17
|
+
Surface gives you **a system**.
|
|
18
18
|
|
|
19
|
-
|
|
19
|
+
- consistent spacing, typography, and colors
|
|
20
|
+
- unified interaction states (hover, press, focus)
|
|
21
|
+
- works across native + web
|
|
22
|
+
- no design-system setup required
|
|
23
|
+
- no runtime / no-code abstractions
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## Quick start
|
|
20
28
|
|
|
21
29
|
```bash
|
|
22
|
-
bun add @
|
|
30
|
+
bun add @ankhorage/surface @ankhorage/contracts
|
|
23
31
|
```
|
|
24
32
|
|
|
25
|
-
|
|
33
|
+
Wrap your app:
|
|
26
34
|
|
|
27
35
|
```tsx
|
|
28
|
-
import {
|
|
36
|
+
import { ThemeProvider } from '@ankhorage/surface'
|
|
29
37
|
|
|
30
|
-
const
|
|
38
|
+
const themeConfig = {
|
|
31
39
|
id: 'app',
|
|
32
40
|
name: 'App',
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
41
|
+
light: {
|
|
42
|
+
primaryColor: '#2563eb',
|
|
43
|
+
harmony: 'monochromatic',
|
|
44
|
+
systemTone: 'neutral',
|
|
45
|
+
},
|
|
46
|
+
dark: {
|
|
47
|
+
primaryColor: '#2563eb',
|
|
48
|
+
harmony: 'monochromatic',
|
|
49
|
+
systemTone: 'neutral',
|
|
36
50
|
},
|
|
37
|
-
}
|
|
51
|
+
}
|
|
38
52
|
|
|
39
|
-
export function
|
|
53
|
+
export default function App() {
|
|
40
54
|
return (
|
|
41
|
-
<ThemeProvider initialConfig={
|
|
42
|
-
<
|
|
43
|
-
<Heading level={1}>Hello</Heading>
|
|
44
|
-
<Box p="m">
|
|
45
|
-
<Icon name="home" provider="Ionicons" />
|
|
46
|
-
</Box>
|
|
47
|
-
</Stack>
|
|
55
|
+
<ThemeProvider initialConfig={themeConfig}>
|
|
56
|
+
<Main />
|
|
48
57
|
</ThemeProvider>
|
|
49
|
-
)
|
|
58
|
+
)
|
|
50
59
|
}
|
|
51
60
|
```
|
|
52
61
|
|
|
53
|
-
|
|
62
|
+
Use components:
|
|
54
63
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
consumption of those tokens.
|
|
64
|
+
```tsx
|
|
65
|
+
import { Stack, Text, Button, Card, TextInput } from '@ankhorage/surface'
|
|
58
66
|
|
|
59
|
-
|
|
67
|
+
export function Example() {
|
|
68
|
+
return (
|
|
69
|
+
<Stack gap="m">
|
|
70
|
+
<Text variant="body">Welcome</Text>
|
|
60
71
|
|
|
61
|
-
|
|
72
|
+
<TextInput placeholder="Email" />
|
|
62
73
|
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
74
|
+
<Button tone="primary">Sign in</Button>
|
|
75
|
+
|
|
76
|
+
<Card>
|
|
77
|
+
<Text variant="bodySmall">Content</Text>
|
|
78
|
+
</Card>
|
|
79
|
+
</Stack>
|
|
80
|
+
)
|
|
81
|
+
}
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
## What you get
|
|
87
|
+
|
|
88
|
+
### Layout
|
|
89
|
+
- `Box`, `Stack`, `Inline`, `Grid`, `Container`
|
|
90
|
+
- `Spacer`, `Divider`, `Center`, `Surface`
|
|
91
|
+
|
|
92
|
+
### Typography
|
|
93
|
+
- `Text`, `Heading`
|
|
94
|
+
|
|
95
|
+
### Actions
|
|
96
|
+
- `Button`, `IconButton`
|
|
97
|
+
|
|
98
|
+
### Data / display
|
|
99
|
+
- `Card`, `Badge`, `ListItem`
|
|
100
|
+
|
|
101
|
+
### Forms
|
|
102
|
+
- `TextInput`, `Textarea`
|
|
103
|
+
- `Field`, `Label`, `HelperText`
|
|
104
|
+
- `Checkbox`, `Radio`, `Switch`
|
|
105
|
+
|
|
106
|
+
### Overlays
|
|
107
|
+
- `Modal`, `Drawer`
|
|
108
|
+
- `Tabs`, `Toast`
|
|
109
|
+
- `Tooltip`, `Menu`
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
## Core ideas
|
|
114
|
+
|
|
115
|
+
### 1. Theme-driven
|
|
116
|
+
Everything uses semantic tokens:
|
|
117
|
+
|
|
118
|
+
```tsx
|
|
119
|
+
<Button tone="primary" variant="solid" />
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
No hardcoded colors.
|
|
123
|
+
|
|
124
|
+
---
|
|
125
|
+
|
|
126
|
+
### 2. Consistent states
|
|
127
|
+
|
|
128
|
+
All interactive components share:
|
|
129
|
+
|
|
130
|
+
- hover (web)
|
|
131
|
+
- press
|
|
132
|
+
- focus-visible
|
|
133
|
+
- disabled
|
|
134
|
+
|
|
135
|
+
No reimplementation per component.
|
|
136
|
+
|
|
137
|
+
---
|
|
138
|
+
|
|
139
|
+
### 3. Composable
|
|
140
|
+
|
|
141
|
+
Everything builds on primitives:
|
|
142
|
+
|
|
143
|
+
```tsx
|
|
144
|
+
<Field label="Email">
|
|
145
|
+
<TextInput />
|
|
146
|
+
</Field>
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
### 4. Cross-platform first
|
|
152
|
+
|
|
153
|
+
- React Native
|
|
154
|
+
- Expo
|
|
155
|
+
- React Native Web
|
|
156
|
+
|
|
157
|
+
Same API everywhere.
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
## What this is NOT
|
|
162
|
+
|
|
163
|
+
- ❌ Not a full design system / UI kit
|
|
164
|
+
- ❌ Not a form engine
|
|
165
|
+
- ❌ Not a router or app framework
|
|
166
|
+
- ❌ Not a low-code runtime
|
|
167
|
+
|
|
168
|
+
---
|
|
169
|
+
|
|
170
|
+
## When to use it
|
|
171
|
+
|
|
172
|
+
Use Surface if you want:
|
|
173
|
+
|
|
174
|
+
- a clean starting point for RN + Web apps
|
|
175
|
+
- consistent UI without reinventing components
|
|
176
|
+
- a scalable design foundation
|
|
177
|
+
|
|
178
|
+
---
|
|
179
|
+
|
|
180
|
+
## Status
|
|
181
|
+
|
|
182
|
+
- Phase 1: primitives + base components ✅
|
|
183
|
+
- Phase 2: form + control layer ✅
|
|
184
|
+
- Phase 3: overlays + navigation ✅
|
|
185
|
+
|
|
186
|
+
---
|
|
187
|
+
|
|
188
|
+
## License
|
|
189
|
+
|
|
190
|
+
MIT
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Badge.d.ts","sourceRoot":"","sources":["../../../src/components/badge/Badge.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,wBAAgB,KAAK,CAAC,EACpB,OAAO,EACP,OAAgB,EAChB,IAAgB,EAChB,IAAU,EACV,MAAM,GACP,EAAE,UAAU,qBAgCZ"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { resolveButtonColors, resolveControlSize } from '../../internal/resolvers';
|
|
3
|
+
import { Box } from '../../layout';
|
|
4
|
+
import { Text } from '../../primitives/text';
|
|
5
|
+
import { useTheme } from '../../theme/ThemeContext';
|
|
6
|
+
export function Badge({ content, variant = 'soft', tone = 'primary', size = 's', testID, }) {
|
|
7
|
+
const { theme } = useTheme();
|
|
8
|
+
const controlSize = resolveControlSize(theme, size);
|
|
9
|
+
const colors = resolveButtonColors(theme, {
|
|
10
|
+
variant,
|
|
11
|
+
tone,
|
|
12
|
+
state: {
|
|
13
|
+
disabled: false,
|
|
14
|
+
focused: false,
|
|
15
|
+
hovered: false,
|
|
16
|
+
pressed: false,
|
|
17
|
+
},
|
|
18
|
+
});
|
|
19
|
+
return (<Box px={Math.max(theme.spacing.xs, controlSize.paddingHorizontal - 4)} py={Math.max(4, controlSize.paddingVertical - 2)} radius={controlSize.borderRadius} style={{
|
|
20
|
+
alignSelf: 'flex-start',
|
|
21
|
+
backgroundColor: colors.backgroundColor,
|
|
22
|
+
borderColor: colors.borderColor,
|
|
23
|
+
borderWidth: variant === 'solid' ? 0 : 1,
|
|
24
|
+
}} testID={testID}>
|
|
25
|
+
<Text color={colors.contentColor} variant="bodySmall" weight="medium">
|
|
26
|
+
{content}
|
|
27
|
+
</Text>
|
|
28
|
+
</Box>);
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=Badge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Badge.js","sourceRoot":"","sources":["../../../src/components/badge/Badge.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnF,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGpD,MAAM,UAAU,KAAK,CAAC,EACpB,OAAO,EACP,OAAO,GAAG,MAAM,EAChB,IAAI,GAAG,SAAS,EAChB,IAAI,GAAG,GAAG,EACV,MAAM,GACK;IACX,MAAM,EAAE,KAAK,EAAE,GAAG,QAAQ,EAAE,CAAC;IAC7B,MAAM,WAAW,GAAG,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,EAAE;QACxC,OAAO;QACP,IAAI;QACJ,KAAK,EAAE;YACL,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,KAAK;SACf;KACF,CAAC,CAAC;IAEH,OAAO,CACL,CAAC,GAAG,CACF,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,WAAW,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC,CAClE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,CACjD,MAAM,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC,CACjC,KAAK,CAAC,CAAC;YACL,SAAS,EAAE,YAAY;YACvB,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,WAAW,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACzC,CAAC,CACF,MAAM,CAAC,CAAC,MAAM,CAAC,CAEf;MAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CACnE;QAAA,CAAC,OAAO,CACV;MAAA,EAAE,IAAI,CACR;IAAA,EAAE,GAAG,CAAC,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/badge/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/badge/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type React from 'react';
|
|
2
|
+
import type { ControlSize } from '../../internal/resolvers/resolveControlSize';
|
|
3
|
+
import type { ButtonVariant } from '../../internal/resolvers/resolveInteractiveColors';
|
|
4
|
+
import type { ComponentTone } from '../../internal/resolvers/resolveTone';
|
|
5
|
+
export interface BadgeProps {
|
|
6
|
+
content?: React.ReactNode;
|
|
7
|
+
variant?: Extract<ButtonVariant, 'solid' | 'soft' | 'outline'>;
|
|
8
|
+
tone?: Extract<ComponentTone, 'primary' | 'neutral' | 'danger' | 'success'>;
|
|
9
|
+
size?: ControlSize;
|
|
10
|
+
testID?: string;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/badge/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6CAA6C,CAAC;AAC/E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mDAAmD,CAAC;AACvF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AAE1E,MAAM,WAAW,UAAU;IACzB,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC,aAAa,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC,CAAC;IAC/D,IAAI,CAAC,EAAE,OAAO,CAAC,aAAa,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC,CAAC;IAC5E,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/badge/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { ButtonProps } from './types';
|
|
3
|
+
export declare function Button({ children, variant, tone, size, disabled, loading, leadingIcon, trailingIcon, fullWidth, onPress, testID, ...props }: ButtonProps): React.JSX.Element;
|
|
4
|
+
//# sourceMappingURL=Button.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/components/button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,wBAAgB,MAAM,CAAC,EACrB,QAAQ,EACR,OAAiB,EACjB,IAAgB,EAChB,IAAU,EACV,QAAgB,EAChB,OAAe,EACf,WAAW,EACX,YAAY,EACZ,SAAiB,EACjB,OAAO,EACP,MAAM,EACN,GAAG,KAAK,EACT,EAAE,WAAW,qBA+Eb"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { ActivityIndicator, View } from 'react-native';
|
|
3
|
+
import { resolveButtonColors, resolveControlSize, resolveIconSize } from '../../internal/resolvers';
|
|
4
|
+
import { Box } from '../../layout';
|
|
5
|
+
import { ButtonBase } from '../../primitives/button-base';
|
|
6
|
+
import { Icon } from '../../primitives/icon';
|
|
7
|
+
import { Text } from '../../primitives/text';
|
|
8
|
+
import { useTheme } from '../../theme/ThemeContext';
|
|
9
|
+
export function Button({ children, variant = 'solid', tone = 'primary', size = 'm', disabled = false, loading = false, leadingIcon, trailingIcon, fullWidth = false, onPress, testID, ...props }) {
|
|
10
|
+
const { theme } = useTheme();
|
|
11
|
+
const controlSize = resolveControlSize(theme, size);
|
|
12
|
+
return (<ButtonBase {...props} disabled={disabled || loading} onPress={onPress} style={[
|
|
13
|
+
{
|
|
14
|
+
alignSelf: fullWidth ? 'stretch' : 'flex-start',
|
|
15
|
+
},
|
|
16
|
+
]} testID={testID}>
|
|
17
|
+
{(state) => {
|
|
18
|
+
const colors = resolveButtonColors(theme, {
|
|
19
|
+
variant,
|
|
20
|
+
tone,
|
|
21
|
+
state,
|
|
22
|
+
});
|
|
23
|
+
const iconSize = resolveIconSize(theme, size);
|
|
24
|
+
return (<Box px={controlSize.paddingHorizontal} py={controlSize.paddingVertical} radius={controlSize.borderRadius} style={{
|
|
25
|
+
minHeight: controlSize.minHeight,
|
|
26
|
+
width: fullWidth ? '100%' : undefined,
|
|
27
|
+
flexDirection: 'row',
|
|
28
|
+
alignItems: 'center',
|
|
29
|
+
justifyContent: 'center',
|
|
30
|
+
backgroundColor: colors.backgroundColor,
|
|
31
|
+
borderColor: colors.borderColor,
|
|
32
|
+
borderWidth: variant === 'solid' ? 0 : 1,
|
|
33
|
+
opacity: colors.opacity,
|
|
34
|
+
}}>
|
|
35
|
+
{loading ? (<ActivityIndicator color={colors.contentColor} size="small"/>) : (<>
|
|
36
|
+
{leadingIcon ? (<View style={{ marginRight: theme.spacing.s }}>
|
|
37
|
+
<Icon color={colors.contentColor} name={leadingIcon.name} provider={leadingIcon.provider} size={iconSize}/>
|
|
38
|
+
</View>) : null}
|
|
39
|
+
<Text color={colors.contentColor} variant={controlSize.textVariant} weight="semiBold">
|
|
40
|
+
{children}
|
|
41
|
+
</Text>
|
|
42
|
+
{trailingIcon ? (<View style={{ marginLeft: theme.spacing.s }}>
|
|
43
|
+
<Icon color={colors.contentColor} name={trailingIcon.name} provider={trailingIcon.provider} size={iconSize}/>
|
|
44
|
+
</View>) : null}
|
|
45
|
+
</>)}
|
|
46
|
+
</Box>);
|
|
47
|
+
}}
|
|
48
|
+
</ButtonBase>);
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=Button.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../src/components/button/Button.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/button/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/button/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type React from 'react';
|
|
2
|
+
import type { ControlSize } from '../../internal/resolvers/resolveControlSize';
|
|
3
|
+
import type { ButtonVariant } from '../../internal/resolvers/resolveInteractiveColors';
|
|
4
|
+
import type { ComponentTone } from '../../internal/resolvers/resolveTone';
|
|
5
|
+
import type { ButtonBaseProps } from '../../primitives/button-base';
|
|
6
|
+
import type { IconProps } from '../../primitives/icon';
|
|
7
|
+
export interface ButtonIconSpec {
|
|
8
|
+
name: IconProps['name'];
|
|
9
|
+
provider?: IconProps['provider'];
|
|
10
|
+
}
|
|
11
|
+
export interface ButtonProps extends Omit<ButtonBaseProps, 'accessibilityLabel' | 'children' | 'style'> {
|
|
12
|
+
children?: React.ReactNode;
|
|
13
|
+
variant?: Exclude<ButtonVariant, 'soft'>;
|
|
14
|
+
tone?: Extract<ComponentTone, 'primary' | 'neutral' | 'danger'>;
|
|
15
|
+
size?: ControlSize;
|
|
16
|
+
loading?: boolean;
|
|
17
|
+
leadingIcon?: ButtonIconSpec;
|
|
18
|
+
trailingIcon?: ButtonIconSpec;
|
|
19
|
+
fullWidth?: boolean;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/button/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6CAA6C,CAAC;AAC/E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mDAAmD,CAAC;AACvF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACxB,QAAQ,CAAC,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,WAAY,SAAQ,IAAI,CACvC,eAAe,EACf,oBAAoB,GAAG,UAAU,GAAG,OAAO,CAC5C;IACC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IACzC,IAAI,CAAC,EAAE,OAAO,CAAC,aAAa,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC,CAAC;IAChE,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,YAAY,CAAC,EAAE,cAAc,CAAC;IAC9B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/button/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../../../src/components/card/Card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAgCzC,wBAAgB,IAAI,CAAC,EACnB,QAAQ,EACR,OAAmB,EACnB,OAAO,EACP,QAAgB,EAChB,MAAM,EACN,KAAK,EACL,GAAG,KAAK,EACT,EAAE,SAAS,qBAmCX"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Surface } from '../../layout';
|
|
3
|
+
import { ButtonBase } from '../../primitives/button-base';
|
|
4
|
+
import { useTheme } from '../../theme/ThemeContext';
|
|
5
|
+
function resolveCardStateBackground(variant, pressed, hovered, themeBackgrounds) {
|
|
6
|
+
if (variant === 'outline') {
|
|
7
|
+
return pressed ? themeBackgrounds.active : hovered ? themeBackgrounds.hover : 'transparent';
|
|
8
|
+
}
|
|
9
|
+
if (variant === 'subtle') {
|
|
10
|
+
return pressed
|
|
11
|
+
? themeBackgrounds.active
|
|
12
|
+
: hovered
|
|
13
|
+
? themeBackgrounds.hover
|
|
14
|
+
: themeBackgrounds.subtle;
|
|
15
|
+
}
|
|
16
|
+
return pressed
|
|
17
|
+
? themeBackgrounds.active
|
|
18
|
+
: hovered
|
|
19
|
+
? themeBackgrounds.hover
|
|
20
|
+
: themeBackgrounds.base;
|
|
21
|
+
}
|
|
22
|
+
export function Card({ children, variant = 'default', onPress, disabled = false, testID, style, ...props }) {
|
|
23
|
+
const { theme } = useTheme();
|
|
24
|
+
if (!onPress) {
|
|
25
|
+
return (<Surface {...props} style={style} testID={testID} variant={variant}>
|
|
26
|
+
{children}
|
|
27
|
+
</Surface>);
|
|
28
|
+
}
|
|
29
|
+
return (<ButtonBase accessibilityRole="button" disabled={disabled} onPress={onPress} testID={testID}>
|
|
30
|
+
{(state) => (<Surface {...props} style={[
|
|
31
|
+
{
|
|
32
|
+
backgroundColor: resolveCardStateBackground(variant, state.pressed, state.hovered, {
|
|
33
|
+
active: theme.semantics.neutral.surfaceActive,
|
|
34
|
+
base: theme.semantics.surface.default,
|
|
35
|
+
hover: theme.semantics.neutral.surfaceHover,
|
|
36
|
+
subtle: theme.semantics.surface.subtle,
|
|
37
|
+
}),
|
|
38
|
+
opacity: state.disabled ? 0.72 : 1,
|
|
39
|
+
},
|
|
40
|
+
style,
|
|
41
|
+
]} variant={variant}>
|
|
42
|
+
{children}
|
|
43
|
+
</Surface>)}
|
|
44
|
+
</ButtonBase>);
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=Card.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Card.js","sourceRoot":"","sources":["../../../src/components/card/Card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGpD,SAAS,0BAA0B,CACjC,OAA0C,EAC1C,OAAgB,EAChB,OAAgB,EAChB,gBAKC;IAED,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC;IAC9F,CAAC;IAED,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,OAAO,OAAO;YACZ,CAAC,CAAC,gBAAgB,CAAC,MAAM;YACzB,CAAC,CAAC,OAAO;gBACP,CAAC,CAAC,gBAAgB,CAAC,KAAK;gBACxB,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC;IAChC,CAAC;IAED,OAAO,OAAO;QACZ,CAAC,CAAC,gBAAgB,CAAC,MAAM;QACzB,CAAC,CAAC,OAAO;YACP,CAAC,CAAC,gBAAgB,CAAC,KAAK;YACxB,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,IAAI,CAAC,EACnB,QAAQ,EACR,OAAO,GAAG,SAAS,EACnB,OAAO,EACP,QAAQ,GAAG,KAAK,EAChB,MAAM,EACN,KAAK,EACL,GAAG,KAAK,EACE;IACV,MAAM,EAAE,KAAK,EAAE,GAAG,QAAQ,EAAE,CAAC;IAE7B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CACL,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CACjE;QAAA,CAAC,QAAQ,CACX;MAAA,EAAE,OAAO,CAAC,CACX,CAAC;IACJ,CAAC;IAED,OAAO,CACL,CAAC,UAAU,CAAC,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAC1F;MAAA,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CACV,CAAC,OAAO,CACN,IAAI,KAAK,CAAC,CACV,KAAK,CAAC,CAAC;gBACL;oBACE,eAAe,EAAE,0BAA0B,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE;wBACjF,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa;wBAC7C,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO;wBACrC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY;wBAC3C,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM;qBACvC,CAAC;oBACF,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;iBACnC;gBACD,KAAK;aACN,CAAC,CACF,OAAO,CAAC,CAAC,OAAO,CAAC,CAEjB;UAAA,CAAC,QAAQ,CACX;QAAA,EAAE,OAAO,CAAC,CACX,CACH;IAAA,EAAE,UAAU,CAAC,CACd,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/card/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/card/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type React from 'react';
|
|
2
|
+
import type { SurfaceProps, SurfaceVariant } from '../../layout';
|
|
3
|
+
export interface CardProps extends Omit<SurfaceProps, 'children' | 'variant'> {
|
|
4
|
+
children?: React.ReactNode;
|
|
5
|
+
variant?: SurfaceVariant;
|
|
6
|
+
onPress?: (() => void) | undefined;
|
|
7
|
+
disabled?: boolean;
|
|
8
|
+
testID?: string;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/card/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEjE,MAAM,WAAW,SAAU,SAAQ,IAAI,CAAC,YAAY,EAAE,UAAU,GAAG,SAAS,CAAC;IAC3E,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,OAAO,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;IACnC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/card/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { CheckboxProps } from './types';
|
|
3
|
+
export declare function Checkbox({ children, checked, defaultChecked, onCheckedChange, tone, size, disabled, invalid, readOnly, accessibilityLabel, testID, ...props }: CheckboxProps): React.JSX.Element;
|
|
4
|
+
//# sourceMappingURL=Checkbox.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../../src/components/checkbox/Checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAY1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C,wBAAgB,QAAQ,CAAC,EACvB,QAAQ,EACR,OAAO,EACP,cAAsB,EACtB,eAAe,EACf,IAAgB,EAChB,IAAU,EACV,QAAgB,EAChB,OAAe,EACf,QAAgB,EAChB,kBAAkB,EAClB,MAAM,EACN,GAAG,KAAK,EACT,EAAE,aAAa,qBA6Ef"}
|