@coze-arch/cli 0.0.9-alpha.d07989 → 0.0.10-alpha.11b7ea
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/lib/__templates__/expo/AGENTS.md +32 -32
- package/lib/__templates__/expo/README.md +32 -32
- package/lib/__templates__/expo/_npmrc +3 -0
- package/lib/__templates__/expo/client/components/Provider.tsx +4 -1
- package/lib/__templates__/expo/client/components/Screen.tsx +4 -1
- package/lib/__templates__/expo/client/eslint.config.mjs +2 -0
- package/lib/__templates__/expo/client/global.css +1 -0
- package/lib/__templates__/expo/client/heroui/components/accordion/accordion.animation.ts +178 -0
- package/lib/__templates__/expo/client/heroui/components/accordion/accordion.constants.ts +62 -0
- package/lib/__templates__/expo/client/heroui/components/accordion/accordion.md +437 -0
- package/lib/__templates__/expo/client/heroui/components/accordion/accordion.styles.ts +95 -0
- package/lib/__templates__/expo/client/heroui/components/accordion/accordion.tsx +340 -0
- package/lib/__templates__/expo/client/heroui/components/accordion/accordion.types.ts +267 -0
- package/lib/__templates__/expo/client/heroui/components/accordion/index.ts +17 -0
- package/lib/__templates__/expo/client/heroui/components/alert/alert.constants.ts +13 -0
- package/lib/__templates__/expo/client/heroui/components/alert/alert.hooks.ts +28 -0
- package/lib/__templates__/expo/client/heroui/components/alert/alert.md +263 -0
- package/lib/__templates__/expo/client/heroui/components/alert/alert.styles.ts +65 -0
- package/lib/__templates__/expo/client/heroui/components/alert/alert.tsx +181 -0
- package/lib/__templates__/expo/client/heroui/components/alert/alert.types.ts +99 -0
- package/lib/__templates__/expo/client/heroui/components/alert/alert.utils.tsx +25 -0
- package/lib/__templates__/expo/client/heroui/components/alert/default-icon.tsx +28 -0
- package/lib/__templates__/expo/client/heroui/components/alert/index.ts +15 -0
- package/lib/__templates__/expo/client/heroui/components/alert/success-icon.tsx +28 -0
- package/lib/__templates__/expo/client/heroui/components/alert/warning-icon.tsx +28 -0
- package/lib/__templates__/expo/client/heroui/components/avatar/avatar.animation.ts +123 -0
- package/lib/__templates__/expo/client/heroui/components/avatar/avatar.constants.ts +19 -0
- package/lib/__templates__/expo/client/heroui/components/avatar/avatar.context.ts +11 -0
- package/lib/__templates__/expo/client/heroui/components/avatar/avatar.md +386 -0
- package/lib/__templates__/expo/client/heroui/components/avatar/avatar.styles.ts +145 -0
- package/lib/__templates__/expo/client/heroui/components/avatar/avatar.tsx +307 -0
- package/lib/__templates__/expo/client/heroui/components/avatar/avatar.types.ts +239 -0
- package/lib/__templates__/expo/client/heroui/components/avatar/index.ts +13 -0
- package/lib/__templates__/expo/client/heroui/components/avatar/person-icon.tsx +23 -0
- package/lib/__templates__/expo/client/heroui/components/bottom-sheet/bottom-sheet.animation.ts +42 -0
- package/lib/__templates__/expo/client/heroui/components/bottom-sheet/bottom-sheet.constants.ts +13 -0
- package/lib/__templates__/expo/client/heroui/components/bottom-sheet/bottom-sheet.md +349 -0
- package/lib/__templates__/expo/client/heroui/components/bottom-sheet/bottom-sheet.styles.ts +66 -0
- package/lib/__templates__/expo/client/heroui/components/bottom-sheet/bottom-sheet.tsx +351 -0
- package/lib/__templates__/expo/client/heroui/components/bottom-sheet/bottom-sheet.types.ts +150 -0
- package/lib/__templates__/expo/client/heroui/components/bottom-sheet/index.ts +16 -0
- package/lib/__templates__/expo/client/heroui/components/button/button.constants.ts +7 -0
- package/lib/__templates__/expo/client/heroui/components/button/button.md +381 -0
- package/lib/__templates__/expo/client/heroui/components/button/button.styles.ts +89 -0
- package/lib/__templates__/expo/client/heroui/components/button/button.tsx +284 -0
- package/lib/__templates__/expo/client/heroui/components/button/button.types.ts +175 -0
- package/lib/__templates__/expo/client/heroui/components/button/button.utils.ts +34 -0
- package/lib/__templates__/expo/client/heroui/components/button/index.ts +9 -0
- package/lib/__templates__/expo/client/heroui/components/card/card.constants.ts +11 -0
- package/lib/__templates__/expo/client/heroui/components/card/card.md +186 -0
- package/lib/__templates__/expo/client/heroui/components/card/card.styles.ts +35 -0
- package/lib/__templates__/expo/client/heroui/components/card/card.tsx +153 -0
- package/lib/__templates__/expo/client/heroui/components/card/card.types.ts +77 -0
- package/lib/__templates__/expo/client/heroui/components/card/index.ts +10 -0
- package/lib/__templates__/expo/client/heroui/components/checkbox/checkbox.animation.ts +202 -0
- package/lib/__templates__/expo/client/heroui/components/checkbox/checkbox.constants.ts +6 -0
- package/lib/__templates__/expo/client/heroui/components/checkbox/checkbox.md +311 -0
- package/lib/__templates__/expo/client/heroui/components/checkbox/checkbox.styles.ts +105 -0
- package/lib/__templates__/expo/client/heroui/components/checkbox/checkbox.tsx +251 -0
- package/lib/__templates__/expo/client/heroui/components/checkbox/checkbox.types.ts +216 -0
- package/lib/__templates__/expo/client/heroui/components/checkbox/index.ts +3 -0
- package/lib/__templates__/expo/client/heroui/components/chip/chip.animation.ts +18 -0
- package/lib/__templates__/expo/client/heroui/components/chip/chip.constants.ts +7 -0
- package/lib/__templates__/expo/client/heroui/components/chip/chip.md +190 -0
- package/lib/__templates__/expo/client/heroui/components/chip/chip.styles.ts +234 -0
- package/lib/__templates__/expo/client/heroui/components/chip/chip.tsx +125 -0
- package/lib/__templates__/expo/client/heroui/components/chip/chip.types.ts +69 -0
- package/lib/__templates__/expo/client/heroui/components/chip/index.ts +3 -0
- package/lib/__templates__/expo/client/heroui/components/close-button/close-button.constants.ts +6 -0
- package/lib/__templates__/expo/client/heroui/components/close-button/close-button.md +109 -0
- package/lib/__templates__/expo/client/heroui/components/close-button/close-button.styles.ts +13 -0
- package/lib/__templates__/expo/client/heroui/components/close-button/close-button.tsx +57 -0
- package/lib/__templates__/expo/client/heroui/components/close-button/close-button.types.ts +30 -0
- package/lib/__templates__/expo/client/heroui/components/close-button/index.ts +6 -0
- package/lib/__templates__/expo/client/heroui/components/control-field/control-field.animation.ts +18 -0
- package/lib/__templates__/expo/client/heroui/components/control-field/control-field.constants.ts +7 -0
- package/lib/__templates__/expo/client/heroui/components/control-field/control-field.context.ts +14 -0
- package/lib/__templates__/expo/client/heroui/components/control-field/control-field.md +241 -0
- package/lib/__templates__/expo/client/heroui/components/control-field/control-field.styles.ts +15 -0
- package/lib/__templates__/expo/client/heroui/components/control-field/control-field.tsx +245 -0
- package/lib/__templates__/expo/client/heroui/components/control-field/control-field.types.ts +67 -0
- package/lib/__templates__/expo/client/heroui/components/control-field/index.ts +6 -0
- package/lib/__templates__/expo/client/heroui/components/description/description.animation.ts +53 -0
- package/lib/__templates__/expo/client/heroui/components/description/description.constants.ts +30 -0
- package/lib/__templates__/expo/client/heroui/components/description/description.md +129 -0
- package/lib/__templates__/expo/client/heroui/components/description/description.styles.ts +25 -0
- package/lib/__templates__/expo/client/heroui/components/description/description.tsx +81 -0
- package/lib/__templates__/expo/client/heroui/components/description/description.types.ts +77 -0
- package/lib/__templates__/expo/client/heroui/components/description/index.ts +3 -0
- package/lib/__templates__/expo/client/heroui/components/dialog/dialog.animation.ts +9 -0
- package/lib/__templates__/expo/client/heroui/components/dialog/dialog.constants.ts +13 -0
- package/lib/__templates__/expo/client/heroui/components/dialog/dialog.md +288 -0
- package/lib/__templates__/expo/client/heroui/components/dialog/dialog.styles.ts +77 -0
- package/lib/__templates__/expo/client/heroui/components/dialog/dialog.tsx +379 -0
- package/lib/__templates__/expo/client/heroui/components/dialog/dialog.types.ts +199 -0
- package/lib/__templates__/expo/client/heroui/components/dialog/index.ts +12 -0
- package/lib/__templates__/expo/client/heroui/components/field-error/field-error.animation.ts +50 -0
- package/lib/__templates__/expo/client/heroui/components/field-error/field-error.constants.ts +31 -0
- package/lib/__templates__/expo/client/heroui/components/field-error/field-error.md +204 -0
- package/lib/__templates__/expo/client/heroui/components/field-error/field-error.styles.ts +23 -0
- package/lib/__templates__/expo/client/heroui/components/field-error/field-error.tsx +91 -0
- package/lib/__templates__/expo/client/heroui/components/field-error/field-error.types.ts +79 -0
- package/lib/__templates__/expo/client/heroui/components/field-error/index.ts +3 -0
- package/lib/__templates__/expo/client/heroui/components/input/index.ts +3 -0
- package/lib/__templates__/expo/client/heroui/components/input/input.constants.ts +6 -0
- package/lib/__templates__/expo/client/heroui/components/input/input.md +193 -0
- package/lib/__templates__/expo/client/heroui/components/input/input.styles.ts +51 -0
- package/lib/__templates__/expo/client/heroui/components/input/input.tsx +96 -0
- package/lib/__templates__/expo/client/heroui/components/input/input.types.ts +44 -0
- package/lib/__templates__/expo/client/heroui/components/input-group/index.ts +9 -0
- package/lib/__templates__/expo/client/heroui/components/input-group/input-group.animation.ts +14 -0
- package/lib/__templates__/expo/client/heroui/components/input-group/input-group.constants.ts +6 -0
- package/lib/__templates__/expo/client/heroui/components/input-group/input-group.md +197 -0
- package/lib/__templates__/expo/client/heroui/components/input-group/input-group.styles.ts +31 -0
- package/lib/__templates__/expo/client/heroui/components/input-group/input-group.tsx +239 -0
- package/lib/__templates__/expo/client/heroui/components/input-group/input-group.types.ts +98 -0
- package/lib/__templates__/expo/client/heroui/components/input-otp/index.ts +9 -0
- package/lib/__templates__/expo/client/heroui/components/input-otp/input-otp.animation.ts +199 -0
- package/lib/__templates__/expo/client/heroui/components/input-otp/input-otp.constants.ts +12 -0
- package/lib/__templates__/expo/client/heroui/components/input-otp/input-otp.md +376 -0
- package/lib/__templates__/expo/client/heroui/components/input-otp/input-otp.styles.ts +68 -0
- package/lib/__templates__/expo/client/heroui/components/input-otp/input-otp.tsx +414 -0
- package/lib/__templates__/expo/client/heroui/components/input-otp/input-otp.types.ts +275 -0
- package/lib/__templates__/expo/client/heroui/components/label/index.ts +3 -0
- package/lib/__templates__/expo/client/heroui/components/label/label.animation.ts +18 -0
- package/lib/__templates__/expo/client/heroui/components/label/label.constants.ts +7 -0
- package/lib/__templates__/expo/client/heroui/components/label/label.md +187 -0
- package/lib/__templates__/expo/client/heroui/components/label/label.styles.ts +44 -0
- package/lib/__templates__/expo/client/heroui/components/label/label.tsx +172 -0
- package/lib/__templates__/expo/client/heroui/components/label/label.types.ts +86 -0
- package/lib/__templates__/expo/client/heroui/components/list-group/index.ts +17 -0
- package/lib/__templates__/expo/client/heroui/components/list-group/list-group.constants.ts +17 -0
- package/lib/__templates__/expo/client/heroui/components/list-group/list-group.md +387 -0
- package/lib/__templates__/expo/client/heroui/components/list-group/list-group.styles.ts +40 -0
- package/lib/__templates__/expo/client/heroui/components/list-group/list-group.tsx +206 -0
- package/lib/__templates__/expo/client/heroui/components/list-group/list-group.types.ts +132 -0
- package/lib/__templates__/expo/client/heroui/components/menu/index.ts +38 -0
- package/lib/__templates__/expo/client/heroui/components/menu/menu.animation.ts +121 -0
- package/lib/__templates__/expo/client/heroui/components/menu/menu.constants.ts +37 -0
- package/lib/__templates__/expo/client/heroui/components/menu/menu.md +620 -0
- package/lib/__templates__/expo/client/heroui/components/menu/menu.styles.ts +107 -0
- package/lib/__templates__/expo/client/heroui/components/menu/menu.tsx +664 -0
- package/lib/__templates__/expo/client/heroui/components/menu/menu.types.ts +394 -0
- package/lib/__templates__/expo/client/heroui/components/popover/arrow-svg.tsx +180 -0
- package/lib/__templates__/expo/client/heroui/components/popover/index.ts +18 -0
- package/lib/__templates__/expo/client/heroui/components/popover/popover.animation.ts +9 -0
- package/lib/__templates__/expo/client/heroui/components/popover/popover.constants.ts +34 -0
- package/lib/__templates__/expo/client/heroui/components/popover/popover.md +508 -0
- package/lib/__templates__/expo/client/heroui/components/popover/popover.styles.ts +98 -0
- package/lib/__templates__/expo/client/heroui/components/popover/popover.tsx +624 -0
- package/lib/__templates__/expo/client/heroui/components/popover/popover.types.ts +290 -0
- package/lib/__templates__/expo/client/heroui/components/pressable-feedback/index.ts +3 -0
- package/lib/__templates__/expo/client/heroui/components/pressable-feedback/pressable-feedback.animation.ts +450 -0
- package/lib/__templates__/expo/client/heroui/components/pressable-feedback/pressable-feedback.constants.ts +12 -0
- package/lib/__templates__/expo/client/heroui/components/pressable-feedback/pressable-feedback.md +328 -0
- package/lib/__templates__/expo/client/heroui/components/pressable-feedback/pressable-feedback.styles.ts +84 -0
- package/lib/__templates__/expo/client/heroui/components/pressable-feedback/pressable-feedback.tsx +330 -0
- package/lib/__templates__/expo/client/heroui/components/pressable-feedback/pressable-feedback.types.ts +386 -0
- package/lib/__templates__/expo/client/heroui/components/radio/index.ts +9 -0
- package/lib/__templates__/expo/client/heroui/components/radio/radio.animation.ts +92 -0
- package/lib/__templates__/expo/client/heroui/components/radio/radio.constants.ts +11 -0
- package/lib/__templates__/expo/client/heroui/components/radio/radio.md +339 -0
- package/lib/__templates__/expo/client/heroui/components/radio/radio.styles.ts +80 -0
- package/lib/__templates__/expo/client/heroui/components/radio/radio.tsx +217 -0
- package/lib/__templates__/expo/client/heroui/components/radio/radio.types.ts +106 -0
- package/lib/__templates__/expo/client/heroui/components/radio-group/index.ts +9 -0
- package/lib/__templates__/expo/client/heroui/components/radio-group/radio-group.animation.ts +20 -0
- package/lib/__templates__/expo/client/heroui/components/radio-group/radio-group.constants.ts +7 -0
- package/lib/__templates__/expo/client/heroui/components/radio-group/radio-group.context.ts +14 -0
- package/lib/__templates__/expo/client/heroui/components/radio-group/radio-group.md +273 -0
- package/lib/__templates__/expo/client/heroui/components/radio-group/radio-group.styles.ts +15 -0
- package/lib/__templates__/expo/client/heroui/components/radio-group/radio-group.tsx +220 -0
- package/lib/__templates__/expo/client/heroui/components/radio-group/radio-group.types.ts +64 -0
- package/lib/__templates__/expo/client/heroui/components/scroll-shadow/index.ts +7 -0
- package/lib/__templates__/expo/client/heroui/components/scroll-shadow/scroll-shadow.animation.ts +132 -0
- package/lib/__templates__/expo/client/heroui/components/scroll-shadow/scroll-shadow.constants.ts +21 -0
- package/lib/__templates__/expo/client/heroui/components/scroll-shadow/scroll-shadow.md +206 -0
- package/lib/__templates__/expo/client/heroui/components/scroll-shadow/scroll-shadow.styles.ts +52 -0
- package/lib/__templates__/expo/client/heroui/components/scroll-shadow/scroll-shadow.tsx +262 -0
- package/lib/__templates__/expo/client/heroui/components/scroll-shadow/scroll-shadow.types.ts +121 -0
- package/lib/__templates__/expo/client/heroui/components/search-field/index.ts +17 -0
- package/lib/__templates__/expo/client/heroui/components/search-field/search-field.animation.ts +18 -0
- package/lib/__templates__/expo/client/heroui/components/search-field/search-field.constants.ts +10 -0
- package/lib/__templates__/expo/client/heroui/components/search-field/search-field.md +231 -0
- package/lib/__templates__/expo/client/heroui/components/search-field/search-field.styles.ts +35 -0
- package/lib/__templates__/expo/client/heroui/components/search-field/search-field.tsx +253 -0
- package/lib/__templates__/expo/client/heroui/components/search-field/search-field.types.ts +160 -0
- package/lib/__templates__/expo/client/heroui/components/search-field/search-icon.tsx +37 -0
- package/lib/__templates__/expo/client/heroui/components/select/index.ts +28 -0
- package/lib/__templates__/expo/client/heroui/components/select/select.animation.ts +92 -0
- package/lib/__templates__/expo/client/heroui/components/select/select.constants.ts +53 -0
- package/lib/__templates__/expo/client/heroui/components/select/select.md +796 -0
- package/lib/__templates__/expo/client/heroui/components/select/select.styles.ts +149 -0
- package/lib/__templates__/expo/client/heroui/components/select/select.tsx +828 -0
- package/lib/__templates__/expo/client/heroui/components/select/select.types.ts +438 -0
- package/lib/__templates__/expo/client/heroui/components/separator/index.ts +7 -0
- package/lib/__templates__/expo/client/heroui/components/separator/separator.constants.ts +6 -0
- package/lib/__templates__/expo/client/heroui/components/separator/separator.md +106 -0
- package/lib/__templates__/expo/client/heroui/components/separator/separator.styles.ts +50 -0
- package/lib/__templates__/expo/client/heroui/components/separator/separator.tsx +62 -0
- package/lib/__templates__/expo/client/heroui/components/separator/separator.types.ts +40 -0
- package/lib/__templates__/expo/client/heroui/components/skeleton/index.ts +7 -0
- package/lib/__templates__/expo/client/heroui/components/skeleton/linear-gradient.tsx +45 -0
- package/lib/__templates__/expo/client/heroui/components/skeleton/skeleton.animation.ts +351 -0
- package/lib/__templates__/expo/client/heroui/components/skeleton/skeleton.constants.ts +39 -0
- package/lib/__templates__/expo/client/heroui/components/skeleton/skeleton.md +208 -0
- package/lib/__templates__/expo/client/heroui/components/skeleton/skeleton.styles.ts +49 -0
- package/lib/__templates__/expo/client/heroui/components/skeleton/skeleton.tsx +183 -0
- package/lib/__templates__/expo/client/heroui/components/skeleton/skeleton.types.ts +191 -0
- package/lib/__templates__/expo/client/heroui/components/skeleton-group/index.ts +7 -0
- package/lib/__templates__/expo/client/heroui/components/skeleton-group/skeleton-group.constants.ts +7 -0
- package/lib/__templates__/expo/client/heroui/components/skeleton-group/skeleton-group.md +247 -0
- package/lib/__templates__/expo/client/heroui/components/skeleton-group/skeleton-group.styles.ts +10 -0
- package/lib/__templates__/expo/client/heroui/components/skeleton-group/skeleton-group.tsx +94 -0
- package/lib/__templates__/expo/client/heroui/components/skeleton-group/skeleton-group.types.ts +28 -0
- package/lib/__templates__/expo/client/heroui/components/slider/index.ts +23 -0
- package/lib/__templates__/expo/client/heroui/components/slider/slider.animation.ts +87 -0
- package/lib/__templates__/expo/client/heroui/components/slider/slider.constants.ts +24 -0
- package/lib/__templates__/expo/client/heroui/components/slider/slider.md +348 -0
- package/lib/__templates__/expo/client/heroui/components/slider/slider.styles.ts +85 -0
- package/lib/__templates__/expo/client/heroui/components/slider/slider.tsx +413 -0
- package/lib/__templates__/expo/client/heroui/components/slider/slider.types.ts +120 -0
- package/lib/__templates__/expo/client/heroui/components/spinner/index.ts +10 -0
- package/lib/__templates__/expo/client/heroui/components/spinner/spinner-icon.tsx +49 -0
- package/lib/__templates__/expo/client/heroui/components/spinner/spinner.animation.ts +150 -0
- package/lib/__templates__/expo/client/heroui/components/spinner/spinner.constants.ts +36 -0
- package/lib/__templates__/expo/client/heroui/components/spinner/spinner.md +199 -0
- package/lib/__templates__/expo/client/heroui/components/spinner/spinner.styles.ts +44 -0
- package/lib/__templates__/expo/client/heroui/components/spinner/spinner.tsx +198 -0
- package/lib/__templates__/expo/client/heroui/components/spinner/spinner.types.ts +158 -0
- package/lib/__templates__/expo/client/heroui/components/surface/index.ts +3 -0
- package/lib/__templates__/expo/client/heroui/components/surface/surface.animation.ts +18 -0
- package/lib/__templates__/expo/client/heroui/components/surface/surface.constants.ts +6 -0
- package/lib/__templates__/expo/client/heroui/components/surface/surface.md +136 -0
- package/lib/__templates__/expo/client/heroui/components/surface/surface.styles.ts +28 -0
- package/lib/__templates__/expo/client/heroui/components/surface/surface.tsx +66 -0
- package/lib/__templates__/expo/client/heroui/components/surface/surface.types.ts +46 -0
- package/lib/__templates__/expo/client/heroui/components/switch/index.ts +3 -0
- package/lib/__templates__/expo/client/heroui/components/switch/switch.animation.ts +243 -0
- package/lib/__templates__/expo/client/heroui/components/switch/switch.constants.ts +26 -0
- package/lib/__templates__/expo/client/heroui/components/switch/switch.md +334 -0
- package/lib/__templates__/expo/client/heroui/components/switch/switch.styles.ts +83 -0
- package/lib/__templates__/expo/client/heroui/components/switch/switch.tsx +280 -0
- package/lib/__templates__/expo/client/heroui/components/switch/switch.types.ts +208 -0
- package/lib/__templates__/expo/client/heroui/components/tabs/index.ts +8 -0
- package/lib/__templates__/expo/client/heroui/components/tabs/tabs.animation.ts +246 -0
- package/lib/__templates__/expo/client/heroui/components/tabs/tabs.constants.ts +17 -0
- package/lib/__templates__/expo/client/heroui/components/tabs/tabs.context.ts +28 -0
- package/lib/__templates__/expo/client/heroui/components/tabs/tabs.md +565 -0
- package/lib/__templates__/expo/client/heroui/components/tabs/tabs.styles.ts +168 -0
- package/lib/__templates__/expo/client/heroui/components/tabs/tabs.tsx +445 -0
- package/lib/__templates__/expo/client/heroui/components/tabs/tabs.types.ts +341 -0
- package/lib/__templates__/expo/client/heroui/components/tag-group/index.ts +15 -0
- package/lib/__templates__/expo/client/heroui/components/tag-group/tag-group.animation.ts +17 -0
- package/lib/__templates__/expo/client/heroui/components/tag-group/tag-group.constants.ts +10 -0
- package/lib/__templates__/expo/client/heroui/components/tag-group/tag-group.md +404 -0
- package/lib/__templates__/expo/client/heroui/components/tag-group/tag-group.styles.ts +74 -0
- package/lib/__templates__/expo/client/heroui/components/tag-group/tag-group.tsx +325 -0
- package/lib/__templates__/expo/client/heroui/components/tag-group/tag-group.types.ts +125 -0
- package/lib/__templates__/expo/client/heroui/components/text-area/index.ts +3 -0
- package/lib/__templates__/expo/client/heroui/components/text-area/text-area.constants.ts +6 -0
- package/lib/__templates__/expo/client/heroui/components/text-area/text-area.md +133 -0
- package/lib/__templates__/expo/client/heroui/components/text-area/text-area.styles.ts +10 -0
- package/lib/__templates__/expo/client/heroui/components/text-area/text-area.tsx +44 -0
- package/lib/__templates__/expo/client/heroui/components/text-area/text-area.types.ts +6 -0
- package/lib/__templates__/expo/client/heroui/components/text-field/index.ts +3 -0
- package/lib/__templates__/expo/client/heroui/components/text-field/text-field.animation.ts +20 -0
- package/lib/__templates__/expo/client/heroui/components/text-field/text-field.constants.ts +6 -0
- package/lib/__templates__/expo/client/heroui/components/text-field/text-field.md +256 -0
- package/lib/__templates__/expo/client/heroui/components/text-field/text-field.styles.ts +10 -0
- package/lib/__templates__/expo/client/heroui/components/text-field/text-field.tsx +82 -0
- package/lib/__templates__/expo/client/heroui/components/text-field/text-field.types.ts +56 -0
- package/lib/__templates__/expo/client/heroui/components/toast/index.ts +4 -0
- package/lib/__templates__/expo/client/heroui/components/toast/toast.animation.ts +381 -0
- package/lib/__templates__/expo/client/heroui/components/toast/toast.constants.ts +10 -0
- package/lib/__templates__/expo/client/heroui/components/toast/toast.hooks.ts +73 -0
- package/lib/__templates__/expo/client/heroui/components/toast/toast.md +420 -0
- package/lib/__templates__/expo/client/heroui/components/toast/toast.styles.ts +89 -0
- package/lib/__templates__/expo/client/heroui/components/toast/toast.tsx +472 -0
- package/lib/__templates__/expo/client/heroui/components/toast/toast.types.ts +320 -0
- package/lib/__templates__/expo/client/heroui/docs.md +47 -0
- package/lib/__templates__/expo/client/heroui/helpers/external/hooks/index.ts +3 -0
- package/lib/__templates__/expo/client/heroui/helpers/external/hooks/use-is-on-surface.ts +8 -0
- package/lib/__templates__/expo/client/heroui/helpers/external/hooks/use-theme-color.ts +137 -0
- package/lib/__templates__/expo/client/heroui/helpers/external/utils/cn.ts +12 -0
- package/lib/__templates__/expo/client/heroui/helpers/external/utils/color-kit/index.ts +2395 -0
- package/lib/__templates__/expo/client/heroui/helpers/external/utils/color-kit/types.ts +212 -0
- package/lib/__templates__/expo/client/heroui/helpers/external/utils/index.ts +2 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/components/animated-check-icon.tsx +78 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/components/bottom-sheet-content-container.tsx +97 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/components/bottom-sheet-content.tsx +158 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/components/check-icon.tsx +28 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/components/chevron-down-icon.tsx +28 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/components/chevron-right-icon.tsx +29 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/components/close-icon.tsx +29 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/components/full-window-overlay.tsx +48 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/components/hero-text.tsx +71 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/components/index.ts +9 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/contexts/animation-settings-context.ts +19 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/contexts/bottom-sheet-is-dragging-context.ts +11 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/contexts/form-field-context.ts +36 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/contexts/index.ts +3 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/index.ts +14 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-augmented-ref.ts +32 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-bottom-sheet-aware-handlers.ts +94 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-bottom-sheet-gesture-handlers.ts +52 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-combined-animation-disabled-state.ts +49 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-controllable-state.ts +124 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-dev-info.ts +38 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-keyboard-status.ts +22 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-popup-bottom-sheet-content-animation.ts +67 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-popup-dialog-content-animation.ts +296 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-popup-overlay-animation.ts +91 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-popup-popover-content-animation.ts +199 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-popup-root-animation.ts +26 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-relative-position.ts +353 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-resolved-style-property.ts +118 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/types/animation.ts +131 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/types/bottom-sheet.ts +99 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/types/index.ts +5 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/types/misc.ts +10 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/types/primitives.ts +146 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/types/theme.ts +18 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/utils/animation.ts +266 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/utils/children-to-string.ts +117 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/utils/combine-styles.ts +17 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/utils/create-context.ts +60 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/utils/ease-gradient/create-interpolation.ts +35 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/utils/ease-gradient/index.ts +97 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/utils/get-element-by-display-name.ts +15 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/utils/get-element-with-default.ts +17 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/utils/has-prop.ts +18 -0
- package/lib/__templates__/expo/client/heroui/helpers/internal/utils/index.ts +8 -0
- package/lib/__templates__/expo/client/heroui/index.tsx +51 -0
- package/lib/__templates__/expo/client/heroui/primitives/README.md +27 -0
- package/lib/__templates__/expo/client/heroui/primitives/accordion/accordion.tsx +270 -0
- package/lib/__templates__/expo/client/heroui/primitives/accordion/accordion.types.ts +117 -0
- package/lib/__templates__/expo/client/heroui/primitives/accordion/accordion.utils.ts +12 -0
- package/lib/__templates__/expo/client/heroui/primitives/accordion/index.ts +2 -0
- package/lib/__templates__/expo/client/heroui/primitives/activity-indicator/activity-indicator.tsx +50 -0
- package/lib/__templates__/expo/client/heroui/primitives/activity-indicator/activity-indicator.types.ts +24 -0
- package/lib/__templates__/expo/client/heroui/primitives/activity-indicator/index.ts +2 -0
- package/lib/__templates__/expo/client/heroui/primitives/alert/alert.tsx +124 -0
- package/lib/__templates__/expo/client/heroui/primitives/alert/alert.types.ts +87 -0
- package/lib/__templates__/expo/client/heroui/primitives/alert/index.ts +2 -0
- package/lib/__templates__/expo/client/heroui/primitives/avatar/avatar.tsx +171 -0
- package/lib/__templates__/expo/client/heroui/primitives/avatar/avatar.types.ts +62 -0
- package/lib/__templates__/expo/client/heroui/primitives/avatar/avatar.utils.ts +102 -0
- package/lib/__templates__/expo/client/heroui/primitives/avatar/index.ts +2 -0
- package/lib/__templates__/expo/client/heroui/primitives/bottom-sheet/bottom-sheet.tsx +235 -0
- package/lib/__templates__/expo/client/heroui/primitives/bottom-sheet/bottom-sheet.types.ts +127 -0
- package/lib/__templates__/expo/client/heroui/primitives/bottom-sheet/index.ts +2 -0
- package/lib/__templates__/expo/client/heroui/primitives/checkbox/checkbox.tsx +119 -0
- package/lib/__templates__/expo/client/heroui/primitives/checkbox/checkbox.types.ts +37 -0
- package/lib/__templates__/expo/client/heroui/primitives/checkbox/index.ts +2 -0
- package/lib/__templates__/expo/client/heroui/primitives/dialog/dialog.tsx +274 -0
- package/lib/__templates__/expo/client/heroui/primitives/dialog/dialog.types.ts +129 -0
- package/lib/__templates__/expo/client/heroui/primitives/dialog/index.ts +2 -0
- package/lib/__templates__/expo/client/heroui/primitives/input-otp/index.ts +3 -0
- package/lib/__templates__/expo/client/heroui/primitives/input-otp/input-otp.tsx +431 -0
- package/lib/__templates__/expo/client/heroui/primitives/input-otp/input-otp.types.ts +169 -0
- package/lib/__templates__/expo/client/heroui/primitives/input-otp/input-otp.utils.ts +31 -0
- package/lib/__templates__/expo/client/heroui/primitives/label/index.ts +2 -0
- package/lib/__templates__/expo/client/heroui/primitives/label/label.tsx +24 -0
- package/lib/__templates__/expo/client/heroui/primitives/label/label.types.ts +39 -0
- package/lib/__templates__/expo/client/heroui/primitives/menu/index.ts +2 -0
- package/lib/__templates__/expo/client/heroui/primitives/menu/menu.tsx +765 -0
- package/lib/__templates__/expo/client/heroui/primitives/menu/menu.types.ts +401 -0
- package/lib/__templates__/expo/client/heroui/primitives/popover/index.ts +2 -0
- package/lib/__templates__/expo/client/heroui/primitives/popover/popover.tsx +382 -0
- package/lib/__templates__/expo/client/heroui/primitives/popover/popover.types.ts +201 -0
- package/lib/__templates__/expo/client/heroui/primitives/portal/index.ts +1 -0
- package/lib/__templates__/expo/client/heroui/primitives/portal/portal.tsx +126 -0
- package/lib/__templates__/expo/client/heroui/primitives/radio/index.ts +2 -0
- package/lib/__templates__/expo/client/heroui/primitives/radio/radio.tsx +133 -0
- package/lib/__templates__/expo/client/heroui/primitives/radio/radio.types.ts +47 -0
- package/lib/__templates__/expo/client/heroui/primitives/radio-group/index.ts +2 -0
- package/lib/__templates__/expo/client/heroui/primitives/radio-group/radio-group.tsx +114 -0
- package/lib/__templates__/expo/client/heroui/primitives/radio-group/radio-group.types.ts +65 -0
- package/lib/__templates__/expo/client/heroui/primitives/select/index.ts +2 -0
- package/lib/__templates__/expo/client/heroui/primitives/select/select.tsx +705 -0
- package/lib/__templates__/expo/client/heroui/primitives/select/select.types.ts +409 -0
- package/lib/__templates__/expo/client/heroui/primitives/select/select.utils.ts +35 -0
- package/lib/__templates__/expo/client/heroui/primitives/slider/index.ts +3 -0
- package/lib/__templates__/expo/client/heroui/primitives/slider/slider.tsx +464 -0
- package/lib/__templates__/expo/client/heroui/primitives/slider/slider.types.ts +208 -0
- package/lib/__templates__/expo/client/heroui/primitives/slider/slider.utils.ts +93 -0
- package/lib/__templates__/expo/client/heroui/primitives/slot/index.ts +1 -0
- package/lib/__templates__/expo/client/heroui/primitives/slot/slot.tsx +122 -0
- package/lib/__templates__/expo/client/heroui/primitives/slot/types.ts +19 -0
- package/lib/__templates__/expo/client/heroui/primitives/slot/utils.ts +96 -0
- package/lib/__templates__/expo/client/heroui/primitives/switch/index.ts +2 -0
- package/lib/__templates__/expo/client/heroui/primitives/switch/switch.tsx +61 -0
- package/lib/__templates__/expo/client/heroui/primitives/switch/switch.types.ts +55 -0
- package/lib/__templates__/expo/client/heroui/primitives/tabs/index.ts +2 -0
- package/lib/__templates__/expo/client/heroui/primitives/tabs/tabs.tsx +202 -0
- package/lib/__templates__/expo/client/heroui/primitives/tabs/tabs.types.ts +77 -0
- package/lib/__templates__/expo/client/heroui/primitives/tag-group/index.ts +2 -0
- package/lib/__templates__/expo/client/heroui/primitives/tag-group/tag-group.tsx +324 -0
- package/lib/__templates__/expo/client/heroui/primitives/tag-group/tag-group.types.ts +119 -0
- package/lib/__templates__/expo/client/heroui/primitives/toast/index.ts +2 -0
- package/lib/__templates__/expo/client/heroui/primitives/toast/toast.tsx +138 -0
- package/lib/__templates__/expo/client/heroui/primitives/toast/toast.types.ts +86 -0
- package/lib/__templates__/expo/client/heroui/providers/animation-settings/index.ts +8 -0
- package/lib/__templates__/expo/client/heroui/providers/animation-settings/provider.tsx +47 -0
- package/lib/__templates__/expo/client/heroui/providers/animation-settings/types.ts +27 -0
- package/lib/__templates__/expo/client/heroui/providers/hero-ui-native/index.ts +2 -0
- package/lib/__templates__/expo/client/heroui/providers/hero-ui-native/provider.tsx +67 -0
- package/lib/__templates__/expo/client/heroui/providers/hero-ui-native/types.ts +114 -0
- package/lib/__templates__/expo/client/heroui/providers/hero-ui-native-raw/index.ts +2 -0
- package/lib/__templates__/expo/client/heroui/providers/hero-ui-native-raw/provider.tsx +50 -0
- package/lib/__templates__/expo/client/heroui/providers/hero-ui-native-raw/types.ts +39 -0
- package/lib/__templates__/expo/client/heroui/providers/text-component/index.ts +2 -0
- package/lib/__templates__/expo/client/heroui/providers/text-component/provider.tsx +9 -0
- package/lib/__templates__/expo/client/heroui/providers/text-component/types.ts +52 -0
- package/lib/__templates__/expo/client/heroui/providers/toast/index.ts +3 -0
- package/lib/__templates__/expo/client/heroui/providers/toast/insets-container.tsx +87 -0
- package/lib/__templates__/expo/client/heroui/providers/toast/provider.tsx +431 -0
- package/lib/__templates__/expo/client/heroui/providers/toast/reducer.ts +34 -0
- package/lib/__templates__/expo/client/heroui/providers/toast/toast-config.context.ts +27 -0
- package/lib/__templates__/expo/client/heroui/providers/toast/toast-item-renderer.tsx +45 -0
- package/lib/__templates__/expo/client/heroui/providers/toast/types.ts +373 -0
- package/lib/__templates__/expo/client/heroui/styles/index.css +3 -0
- package/lib/__templates__/expo/client/heroui/styles/theme.css +112 -0
- package/lib/__templates__/expo/client/heroui/styles/utilities.css +8 -0
- package/lib/__templates__/expo/client/heroui/styles/variables.css +146 -0
- package/lib/__templates__/expo/client/package.json +4 -1
- package/lib/__templates__/expo/package.json +1 -1
- package/lib/__templates__/expo/pnpm-lock.yaml +68 -0
- package/lib/__templates__/taro/_npmrc +3 -0
- package/lib/__templates__/taro/eslint.config.mjs +51 -0
- package/lib/__templates__/taro/package.json +4 -4
- package/lib/__templates__/taro/project.config.json +1 -8
- package/lib/cli.js +16 -4
- package/package.json +2 -1
|
@@ -0,0 +1,373 @@
|
|
|
1
|
+
import type { SharedValue } from 'react-native-reanimated';
|
|
2
|
+
import type { ToastRootProps } from '../../components/toast/toast.types';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Global toast configuration
|
|
6
|
+
* These values are used as defaults for all toasts unless overridden locally
|
|
7
|
+
*/
|
|
8
|
+
export interface ToastGlobalConfig
|
|
9
|
+
extends Pick<
|
|
10
|
+
ToastRootProps,
|
|
11
|
+
'variant' | 'placement' | 'isSwipeable' | 'animation'
|
|
12
|
+
> {}
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Insets for spacing from screen edges
|
|
16
|
+
*/
|
|
17
|
+
export interface ToastInsets {
|
|
18
|
+
/**
|
|
19
|
+
* Inset from the top edge in pixels (added to safe area inset)
|
|
20
|
+
* @default Platform-specific: iOS = 0, Android = 12
|
|
21
|
+
*/
|
|
22
|
+
top?: number;
|
|
23
|
+
/**
|
|
24
|
+
* Inset from the bottom edge in pixels (added to safe area inset)
|
|
25
|
+
* @default Platform-specific: iOS = 6, Android = 12
|
|
26
|
+
*/
|
|
27
|
+
bottom?: number;
|
|
28
|
+
/**
|
|
29
|
+
* Inset from the left edge in pixels (added to safe area inset)
|
|
30
|
+
* @default 12
|
|
31
|
+
*/
|
|
32
|
+
left?: number;
|
|
33
|
+
/**
|
|
34
|
+
* Inset from the right edge in pixels (added to safe area inset)
|
|
35
|
+
* @default 12
|
|
36
|
+
*/
|
|
37
|
+
right?: number;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Props for the ToastProvider component
|
|
42
|
+
*/
|
|
43
|
+
export interface ToastProviderProps {
|
|
44
|
+
/**
|
|
45
|
+
* When true, uses a regular View instead of FullWindowOverlay on iOS for toasts.
|
|
46
|
+
* Enables React Native element inspector but toasts won't appear above native modals.
|
|
47
|
+
* @default false
|
|
48
|
+
*/
|
|
49
|
+
disableFullWindowOverlay?: boolean;
|
|
50
|
+
/**
|
|
51
|
+
* Global toast configuration
|
|
52
|
+
* These values are used as defaults for all toasts unless overridden locally
|
|
53
|
+
* Local configs have precedence over global config
|
|
54
|
+
*/
|
|
55
|
+
defaultProps?: ToastGlobalConfig;
|
|
56
|
+
/**
|
|
57
|
+
* Insets for spacing from screen edges (added to safe area insets)
|
|
58
|
+
* @default Platform-specific:
|
|
59
|
+
* - iOS: { top: 0, bottom: 6, left: 12, right: 12 }
|
|
60
|
+
* - Android: { top: 12, bottom: 12, left: 12, right: 12 }
|
|
61
|
+
*/
|
|
62
|
+
insets?: ToastInsets;
|
|
63
|
+
/**
|
|
64
|
+
* Maximum number of visible toasts before opacity starts fading
|
|
65
|
+
* Controls when toast items begin to fade out as they move beyond the visible stack
|
|
66
|
+
* @default 3
|
|
67
|
+
*/
|
|
68
|
+
maxVisibleToasts?: number;
|
|
69
|
+
/**
|
|
70
|
+
* Custom wrapper function to wrap the toast content
|
|
71
|
+
* Receives children and should return a component that wraps them
|
|
72
|
+
* The wrapper should apply flex: 1 (via className or style) to ensure proper layout
|
|
73
|
+
* Can be any component wrapper - KeyboardAvoidingView, View, or any custom component
|
|
74
|
+
*
|
|
75
|
+
* @example
|
|
76
|
+
* ```tsx
|
|
77
|
+
* <ToastProvider
|
|
78
|
+
* contentWrapper={(children) => (
|
|
79
|
+
* <KeyboardAvoidingView
|
|
80
|
+
* behavior="padding"
|
|
81
|
+
* keyboardVerticalOffset={24}
|
|
82
|
+
* className="flex-1"
|
|
83
|
+
* >
|
|
84
|
+
* {children}
|
|
85
|
+
* </KeyboardAvoidingView>
|
|
86
|
+
* )}
|
|
87
|
+
* >
|
|
88
|
+
* ```
|
|
89
|
+
*/
|
|
90
|
+
contentWrapper?: (children: React.ReactNode) => React.ReactElement;
|
|
91
|
+
/**
|
|
92
|
+
* Children to render
|
|
93
|
+
*/
|
|
94
|
+
children?: React.ReactNode;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Props passed to the toast component function
|
|
99
|
+
*/
|
|
100
|
+
export interface ToastComponentProps {
|
|
101
|
+
/**
|
|
102
|
+
* The unique ID of the toast
|
|
103
|
+
*/
|
|
104
|
+
id: string;
|
|
105
|
+
/**
|
|
106
|
+
* The index of the toast in the array (0-based)
|
|
107
|
+
*/
|
|
108
|
+
index: number;
|
|
109
|
+
/**
|
|
110
|
+
* The total number of toasts currently displayed
|
|
111
|
+
*/
|
|
112
|
+
total: SharedValue<number>;
|
|
113
|
+
/**
|
|
114
|
+
* Heights of all toast items, keyed by toast ID
|
|
115
|
+
*/
|
|
116
|
+
heights: SharedValue<Record<string, number>>;
|
|
117
|
+
/**
|
|
118
|
+
* Maximum number of visible toasts before opacity starts fading
|
|
119
|
+
* Controls when toast items begin to fade out as they move beyond the visible stack
|
|
120
|
+
* @default 3
|
|
121
|
+
*/
|
|
122
|
+
maxVisibleToasts?: number;
|
|
123
|
+
/**
|
|
124
|
+
* Show a new toast
|
|
125
|
+
*/
|
|
126
|
+
show: (options: string | ToastShowOptions) => string;
|
|
127
|
+
/**
|
|
128
|
+
* Hide one or more toasts
|
|
129
|
+
* - No argument: hides the last toast in the array
|
|
130
|
+
* - "all": hides all toasts
|
|
131
|
+
* - Single ID: hides that toast
|
|
132
|
+
* - Array of IDs: hides those toasts
|
|
133
|
+
*/
|
|
134
|
+
hide: (ids?: string | string[] | 'all') => void;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
/**
|
|
138
|
+
* Configuration for showing a default styled toast (usage pattern 2)
|
|
139
|
+
* Used when component is not provided
|
|
140
|
+
*/
|
|
141
|
+
export interface ToastShowConfig
|
|
142
|
+
extends Pick<
|
|
143
|
+
ToastRootProps,
|
|
144
|
+
'variant' | 'placement' | 'isSwipeable' | 'animation'
|
|
145
|
+
> {
|
|
146
|
+
/**
|
|
147
|
+
* Duration in milliseconds before the toast automatically disappears
|
|
148
|
+
* Set to `'persistent'` to prevent auto-hide (toast will remain until manually dismissed)
|
|
149
|
+
* @default 4000
|
|
150
|
+
*/
|
|
151
|
+
duration?: number | 'persistent';
|
|
152
|
+
/**
|
|
153
|
+
* Optional ID for the toast
|
|
154
|
+
* If not provided, one will be generated automatically
|
|
155
|
+
*/
|
|
156
|
+
id?: string;
|
|
157
|
+
/**
|
|
158
|
+
* Label text for the toast
|
|
159
|
+
*/
|
|
160
|
+
label?: string;
|
|
161
|
+
/**
|
|
162
|
+
* Description text for the toast
|
|
163
|
+
*/
|
|
164
|
+
description?: string;
|
|
165
|
+
/**
|
|
166
|
+
* Action button label text
|
|
167
|
+
*/
|
|
168
|
+
actionLabel?: string;
|
|
169
|
+
/**
|
|
170
|
+
* Callback function called when the action button is pressed
|
|
171
|
+
* Receives show and hide functions for programmatic toast control
|
|
172
|
+
*/
|
|
173
|
+
onActionPress?: (helpers: {
|
|
174
|
+
show: (options: string | ToastShowOptions) => string;
|
|
175
|
+
hide: (ids?: string | string[] | 'all') => void;
|
|
176
|
+
}) => void;
|
|
177
|
+
/**
|
|
178
|
+
* Icon element to display in the toast
|
|
179
|
+
*/
|
|
180
|
+
icon?: React.ReactNode;
|
|
181
|
+
/**
|
|
182
|
+
* Callback function called when the toast is shown
|
|
183
|
+
*/
|
|
184
|
+
onShow?: () => void;
|
|
185
|
+
/**
|
|
186
|
+
* Callback function called when the toast is hidden
|
|
187
|
+
*/
|
|
188
|
+
onHide?: () => void;
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
/**
|
|
192
|
+
* Options for showing a toast with custom component (usage pattern 3)
|
|
193
|
+
* Used when component is provided
|
|
194
|
+
*/
|
|
195
|
+
export interface ToastShowOptionsWithComponent {
|
|
196
|
+
/**
|
|
197
|
+
* Optional ID for the toast
|
|
198
|
+
* If not provided, one will be generated automatically
|
|
199
|
+
*/
|
|
200
|
+
id?: string;
|
|
201
|
+
/**
|
|
202
|
+
* A function that receives toast props and returns a React element
|
|
203
|
+
*/
|
|
204
|
+
component: (props: ToastComponentProps) => React.ReactElement;
|
|
205
|
+
/**
|
|
206
|
+
* Duration in milliseconds before the toast automatically disappears
|
|
207
|
+
* Set to `'persistent'` to prevent auto-hide (toast will remain until manually dismissed)
|
|
208
|
+
* @default 4000
|
|
209
|
+
*/
|
|
210
|
+
duration?: number | 'persistent';
|
|
211
|
+
/**
|
|
212
|
+
* Callback function called when the toast is shown
|
|
213
|
+
*/
|
|
214
|
+
onShow?: () => void;
|
|
215
|
+
/**
|
|
216
|
+
* Callback function called when the toast is hidden
|
|
217
|
+
*/
|
|
218
|
+
onHide?: () => void;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
/**
|
|
222
|
+
* Conditional type for toast show options
|
|
223
|
+
* - If component is provided: only id, component, onShow, onHide are allowed
|
|
224
|
+
* - If component is NOT provided: all config props are available
|
|
225
|
+
*/
|
|
226
|
+
export type ToastShowOptions =
|
|
227
|
+
| ToastShowOptionsWithComponent
|
|
228
|
+
| (ToastShowConfig & { component?: never });
|
|
229
|
+
|
|
230
|
+
/**
|
|
231
|
+
* Represents a single toast item in the state
|
|
232
|
+
*/
|
|
233
|
+
export interface ToastItem {
|
|
234
|
+
/**
|
|
235
|
+
* Unique identifier for the toast
|
|
236
|
+
*/
|
|
237
|
+
id: string;
|
|
238
|
+
/**
|
|
239
|
+
* A function that receives toast props and returns a React element
|
|
240
|
+
*/
|
|
241
|
+
component: (props: ToastComponentProps) => React.ReactElement;
|
|
242
|
+
/**
|
|
243
|
+
* Duration in milliseconds before the toast automatically disappears
|
|
244
|
+
* Set to `'persistent'` to prevent auto-hide (toast will remain until manually dismissed)
|
|
245
|
+
* @default 4000
|
|
246
|
+
*/
|
|
247
|
+
duration?: number | 'persistent';
|
|
248
|
+
/**
|
|
249
|
+
* Callback function called when the toast is shown
|
|
250
|
+
*/
|
|
251
|
+
onShow?: () => void;
|
|
252
|
+
/**
|
|
253
|
+
* Callback function called when the toast is hidden
|
|
254
|
+
*/
|
|
255
|
+
onHide?: () => void;
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
/**
|
|
259
|
+
* Actions for the toast reducer
|
|
260
|
+
*/
|
|
261
|
+
export type ToastAction =
|
|
262
|
+
| { type: 'SHOW'; payload: ToastItem }
|
|
263
|
+
| { type: 'HIDE'; payload: { ids: string[] } }
|
|
264
|
+
| { type: 'HIDE_ALL' };
|
|
265
|
+
|
|
266
|
+
/**
|
|
267
|
+
* Toast manager API
|
|
268
|
+
*/
|
|
269
|
+
export interface ToastManager {
|
|
270
|
+
/**
|
|
271
|
+
* Show a toast
|
|
272
|
+
* @param options - Toast configuration options or simple string
|
|
273
|
+
* @returns The ID of the shown toast
|
|
274
|
+
*
|
|
275
|
+
* @example
|
|
276
|
+
* ```tsx
|
|
277
|
+
* const toast = useToast();
|
|
278
|
+
*
|
|
279
|
+
* // Simple string (usage pattern 1)
|
|
280
|
+
* toast.show('This is toast');
|
|
281
|
+
*
|
|
282
|
+
* // Config object with default styling (usage pattern 2)
|
|
283
|
+
* toast.show({
|
|
284
|
+
* label: 'Success!',
|
|
285
|
+
* description: 'Your action was completed',
|
|
286
|
+
* variant: 'success',
|
|
287
|
+
* actionLabel: 'Undo',
|
|
288
|
+
* onActionPress: ({ show, hide }) => hide(),
|
|
289
|
+
* });
|
|
290
|
+
*
|
|
291
|
+
* // Custom component (usage pattern 3)
|
|
292
|
+
* toast.show({
|
|
293
|
+
* component: (props) => <Toast>Hello</Toast>,
|
|
294
|
+
* });
|
|
295
|
+
*
|
|
296
|
+
* // With custom ID
|
|
297
|
+
* toast.show({ id: 'my-toast', component: (props) => <Toast>Hello</Toast> });
|
|
298
|
+
* ```
|
|
299
|
+
*/
|
|
300
|
+
show: (options: string | ToastShowOptions) => string;
|
|
301
|
+
|
|
302
|
+
/**
|
|
303
|
+
* Hide one or more toasts
|
|
304
|
+
*
|
|
305
|
+
* @param ids - Optional ID(s) of toast(s) to hide
|
|
306
|
+
* - No argument: hides the last toast in the array
|
|
307
|
+
* - "all": hides all toasts
|
|
308
|
+
* - Single ID: hides that toast
|
|
309
|
+
* - Array of IDs: hides those toasts
|
|
310
|
+
*
|
|
311
|
+
* @example
|
|
312
|
+
* ```tsx
|
|
313
|
+
* const toast = useToast();
|
|
314
|
+
*
|
|
315
|
+
* toast.hide(); // Hide the last toast
|
|
316
|
+
* toast.hide('all'); // Hide all toasts
|
|
317
|
+
* toast.hide('my-toast'); // Hide specific toast
|
|
318
|
+
* toast.hide(['toast-1', 'toast-2']); // Hide multiple toasts
|
|
319
|
+
* ```
|
|
320
|
+
*/
|
|
321
|
+
hide: (ids?: string | string[] | 'all') => void;
|
|
322
|
+
}
|
|
323
|
+
|
|
324
|
+
/**
|
|
325
|
+
* Props for the ToastItemRenderer component
|
|
326
|
+
*/
|
|
327
|
+
export interface ToastItemRendererProps {
|
|
328
|
+
/**
|
|
329
|
+
* The toast item to render
|
|
330
|
+
*/
|
|
331
|
+
toastItem: ToastItem;
|
|
332
|
+
/**
|
|
333
|
+
* The index of the toast in the array (0-based)
|
|
334
|
+
*/
|
|
335
|
+
index: number;
|
|
336
|
+
/**
|
|
337
|
+
* The total number of toasts currently displayed
|
|
338
|
+
*/
|
|
339
|
+
total: SharedValue<number>;
|
|
340
|
+
/**
|
|
341
|
+
* Heights of all toast items, keyed by toast ID
|
|
342
|
+
*/
|
|
343
|
+
heights: SharedValue<Record<string, number>>;
|
|
344
|
+
/**
|
|
345
|
+
* Maximum number of visible toasts before opacity starts fading
|
|
346
|
+
* Controls when toast items begin to fade out as they move beyond the visible stack
|
|
347
|
+
* @default 3
|
|
348
|
+
*/
|
|
349
|
+
maxVisibleToasts?: number;
|
|
350
|
+
/**
|
|
351
|
+
* Show a new toast
|
|
352
|
+
*/
|
|
353
|
+
show: (options: string | ToastShowOptions) => string;
|
|
354
|
+
/**
|
|
355
|
+
* Hide one or more toasts
|
|
356
|
+
* - No argument: hides the last toast in the array
|
|
357
|
+
* - "all": hides all toasts
|
|
358
|
+
* - Single ID: hides that toast
|
|
359
|
+
* - Array of IDs: hides those toasts
|
|
360
|
+
*/
|
|
361
|
+
hide: (ids?: string | string[] | 'all') => void;
|
|
362
|
+
}
|
|
363
|
+
|
|
364
|
+
/**
|
|
365
|
+
* Context value for the toast provider
|
|
366
|
+
*/
|
|
367
|
+
export interface ToasterContextValue {
|
|
368
|
+
toast: ToastManager;
|
|
369
|
+
/**
|
|
370
|
+
* Whether any toast is currently visible
|
|
371
|
+
*/
|
|
372
|
+
isToastVisible: boolean;
|
|
373
|
+
}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
@theme inline static {
|
|
2
|
+
--color-background: var(--background);
|
|
3
|
+
--color-foreground: var(--foreground);
|
|
4
|
+
|
|
5
|
+
--color-surface: var(--surface);
|
|
6
|
+
--color-surface-foreground: var(--surface-foreground);
|
|
7
|
+
--color-surface-hover: color-mix(in oklab, var(--surface) 92%, var(--surface-foreground) 8%);
|
|
8
|
+
|
|
9
|
+
--color-surface-secondary: var(--surface-secondary);
|
|
10
|
+
--color-surface-secondary-foreground: var(--surface-secondary-foreground);
|
|
11
|
+
|
|
12
|
+
--color-surface-tertiary: var(--surface-tertiary);
|
|
13
|
+
--color-surface-tertiary-foreground: var(--surface-tertiary-foreground);
|
|
14
|
+
|
|
15
|
+
--color-overlay: var(--overlay);
|
|
16
|
+
--color-overlay-foreground: var(--overlay-foreground);
|
|
17
|
+
|
|
18
|
+
--color-muted: var(--muted);
|
|
19
|
+
|
|
20
|
+
--color-accent: var(--accent);
|
|
21
|
+
--color-accent-foreground: var(--accent-foreground);
|
|
22
|
+
|
|
23
|
+
--color-segment: var(--segment);
|
|
24
|
+
--color-segment-foreground: var(--segment-foreground);
|
|
25
|
+
|
|
26
|
+
--color-border: var(--border);
|
|
27
|
+
--color-separator: var(--separator);
|
|
28
|
+
--color-focus: var(--focus);
|
|
29
|
+
--color-link: var(--link);
|
|
30
|
+
|
|
31
|
+
--color-default: var(--default);
|
|
32
|
+
--color-default-foreground: var(--default-foreground);
|
|
33
|
+
|
|
34
|
+
--color-success: var(--success);
|
|
35
|
+
--color-success-foreground: var(--success-foreground);
|
|
36
|
+
|
|
37
|
+
--color-warning: var(--warning);
|
|
38
|
+
--color-warning-foreground: var(--warning-foreground);
|
|
39
|
+
|
|
40
|
+
--color-danger: var(--danger);
|
|
41
|
+
--color-danger-foreground: var(--danger-foreground);
|
|
42
|
+
|
|
43
|
+
/* Form Field Tokens */
|
|
44
|
+
--color-field: var(--field-background, var(--default));
|
|
45
|
+
--color-field-foreground: var(--field-foreground, var(--foreground));
|
|
46
|
+
--color-field-placeholder: var(--field-placeholder, var(--muted));
|
|
47
|
+
--color-field-border: var(--field-border, var(--border));
|
|
48
|
+
--radius-field: var(--field-radius, var(--radius-xl));
|
|
49
|
+
--border-width-field: var(--field-border-width, var(--border-width));
|
|
50
|
+
|
|
51
|
+
--shadow-surface: var(--surface-shadow);
|
|
52
|
+
--shadow-overlay: var(--overlay-shadow);
|
|
53
|
+
--shadow-field: var(--field-shadow);
|
|
54
|
+
|
|
55
|
+
/* Calculated Variables */
|
|
56
|
+
|
|
57
|
+
/* Colors */
|
|
58
|
+
|
|
59
|
+
/* --- background shades --- */
|
|
60
|
+
--color-background-secondary: color-mix(in oklab, var(--background) 96%, var(--foreground) 4%);
|
|
61
|
+
--color-background-tertiary: color-mix(in oklab, var(--background) 92%, var(--foreground) 8%);
|
|
62
|
+
--color-background-inverse: var(--foreground);
|
|
63
|
+
|
|
64
|
+
/* ------------------------- */
|
|
65
|
+
--color-default-hover: color-mix(in oklab, var(--default) 96%, var(--default-foreground) 4%);
|
|
66
|
+
--color-accent-hover: color-mix(in oklab, var(--accent) 90%, var(--accent-foreground) 10%);
|
|
67
|
+
--color-success-hover: color-mix(in oklab, var(--success) 90%, var(--success-foreground) 10%);
|
|
68
|
+
--color-warning-hover: color-mix(in oklab, var(--warning) 90%, var(--warning-foreground) 10%);
|
|
69
|
+
--color-danger-hover: color-mix(in oklab, var(--danger) 90%, var(--danger-foreground) 10%);
|
|
70
|
+
|
|
71
|
+
/* Form Field Colors */
|
|
72
|
+
--color-field-hover: color-mix(in oklab, var(--field-background, var(--default)) 90%, var(--field-foreground, var(--foreground)) 2%);
|
|
73
|
+
--color-field-focus: var(--field-background, var(--default));
|
|
74
|
+
--color-field-border-hover: color-mix(in oklab, var(--field-border, var(--border)) 88%, var(--field-foreground, var(--foreground)) 10%);
|
|
75
|
+
--color-field-border-focus: color-mix(in oklab, var(--field-border, var(--border)) 74%, var(--field-foreground, var(--foreground)) 22%);
|
|
76
|
+
|
|
77
|
+
/* Soft Colors */
|
|
78
|
+
--color-accent-soft: color-mix(in oklab, var(--accent) 15%, transparent);
|
|
79
|
+
--color-accent-soft-foreground: var(--accent);
|
|
80
|
+
--color-accent-soft-hover: color-mix(in oklab, var(--accent) 20%, transparent);
|
|
81
|
+
|
|
82
|
+
--color-danger-soft: color-mix(in oklab, var(--danger) 15%, transparent);
|
|
83
|
+
--color-danger-soft-foreground: var(--danger);
|
|
84
|
+
--color-danger-soft-hover: color-mix(in oklab, var(--danger) 20%, transparent);
|
|
85
|
+
|
|
86
|
+
--color-warning-soft: color-mix(in oklab, var(--warning) 15%, transparent);
|
|
87
|
+
--color-warning-soft-foreground: var(--warning);
|
|
88
|
+
--color-warning-soft-hover: color-mix(in oklab, var(--warning) 20%, transparent);
|
|
89
|
+
|
|
90
|
+
--color-success-soft: color-mix(in oklab, var(--success) 15%, transparent);
|
|
91
|
+
--color-success-soft-foreground: var(--success);
|
|
92
|
+
--color-success-soft-hover: color-mix(in oklab, var(--success) 20%, transparent);
|
|
93
|
+
|
|
94
|
+
/* Separator Colors - Levels */
|
|
95
|
+
--color-separator-secondary: color-mix(in oklab, var(--surface) 85%, var(--surface-foreground) 15%);
|
|
96
|
+
--color-separator-tertiary: color-mix(in oklab, var(--surface) 81%, var(--surface-foreground) 19%);
|
|
97
|
+
|
|
98
|
+
/* Border Colors - Levels (progressive contrast: default → secondary → tertiary) */
|
|
99
|
+
/* Light mode: lighter → darker | Dark mode: darker → lighter */
|
|
100
|
+
--color-border-secondary: color-mix(in oklab, var(--surface) 78%, var(--surface-foreground) 22%);
|
|
101
|
+
--color-border-tertiary: color-mix(in oklab, var(--surface) 66%, var(--surface-foreground) 34%);
|
|
102
|
+
|
|
103
|
+
/* Radius and default sizes - defaults can change by just changing the --radius */
|
|
104
|
+
--radius-xs: calc(var(--radius) * 0.25); /* 0.125rem (2px) */
|
|
105
|
+
--radius-sm: calc(var(--radius) * 0.5); /* 0.25rem (4px) */
|
|
106
|
+
--radius-md: calc(var(--radius) * 0.75); /* 0.375rem (6px) */
|
|
107
|
+
--radius-lg: calc(var(--radius) * 1); /* 0.5rem (8px) */
|
|
108
|
+
--radius-xl: calc(var(--radius) * 1.5); /* 0.75rem (12px) */
|
|
109
|
+
--radius-2xl: calc(var(--radius) * 2); /* 1rem (16px) */
|
|
110
|
+
--radius-3xl: calc(var(--radius) * 3); /* 1.5rem (24px) */
|
|
111
|
+
--radius-4xl: calc(var(--radius) * 4); /* 2rem (32px) */
|
|
112
|
+
}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
@theme {
|
|
2
|
+
/* Primitive Colors (Do not change between light and dark) */
|
|
3
|
+
--white: oklch(100% 0 0);
|
|
4
|
+
--black: oklch(0% 0 0);
|
|
5
|
+
--snow: oklch(0.9911 0 0);
|
|
6
|
+
--eclipse: oklch(0.2103 0.0059 285.89);
|
|
7
|
+
|
|
8
|
+
/* Border */
|
|
9
|
+
--border-width: 1px;
|
|
10
|
+
--field-border-width: 0px;
|
|
11
|
+
|
|
12
|
+
/* Base radius */
|
|
13
|
+
--radius: 0.5rem;
|
|
14
|
+
--field-radius: calc(var(--radius) * 1.5);
|
|
15
|
+
|
|
16
|
+
/* Opacity */
|
|
17
|
+
--opacity-disabled: 0.5;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
@layer theme {
|
|
21
|
+
:root {
|
|
22
|
+
@variant light {
|
|
23
|
+
/* Base Colors */
|
|
24
|
+
--background: oklch(0.9702 0 0);
|
|
25
|
+
--foreground: var(--eclipse);
|
|
26
|
+
|
|
27
|
+
/* Surface: Used for non-overlay components (cards, accordions, disclosure groups) */
|
|
28
|
+
--surface: var(--white);
|
|
29
|
+
--surface-foreground: var(--foreground);
|
|
30
|
+
|
|
31
|
+
--surface-secondary: oklch(0.9524 0.0013 286.37);
|
|
32
|
+
--surface-secondary-foreground: var(--foreground);
|
|
33
|
+
|
|
34
|
+
--surface-tertiary: oklch(0.9373 0.0013 286.37);
|
|
35
|
+
--surface-tertiary-foreground: var(--foreground);
|
|
36
|
+
|
|
37
|
+
/* Overlay: Used for floating/overlay components (dialogs, popovers, modals, menus) */
|
|
38
|
+
--overlay: var(--white);
|
|
39
|
+
--overlay-foreground: var(--foreground);
|
|
40
|
+
|
|
41
|
+
--muted: oklch(0.5517 0.0138 285.94);
|
|
42
|
+
|
|
43
|
+
--default: oklch(94% 0.001 286.375);
|
|
44
|
+
--default-foreground: var(--eclipse);
|
|
45
|
+
|
|
46
|
+
--accent: oklch(0.6204 0.195 253.83);
|
|
47
|
+
--accent-foreground: var(--snow);
|
|
48
|
+
|
|
49
|
+
/* Form Fields */
|
|
50
|
+
--field-background: var(--white);
|
|
51
|
+
--field-foreground: oklch(0.2103 0.0059 285.89);
|
|
52
|
+
--field-placeholder: var(--muted);
|
|
53
|
+
--field-border: transparent; /* no border by default on form fields */
|
|
54
|
+
|
|
55
|
+
/* Status Colors */
|
|
56
|
+
--success: oklch(0.7329 0.1935 150.81);
|
|
57
|
+
--success-foreground: var(--eclipse);
|
|
58
|
+
|
|
59
|
+
--warning: oklch(0.7819 0.1585 72.33);
|
|
60
|
+
--warning-foreground: var(--eclipse);
|
|
61
|
+
|
|
62
|
+
--danger: oklch(0.6532 0.2328 25.74);
|
|
63
|
+
--danger-foreground: var(--snow);
|
|
64
|
+
|
|
65
|
+
/* Component Colors */
|
|
66
|
+
--segment: var(--white);
|
|
67
|
+
--segment-foreground: var(--eclipse);
|
|
68
|
+
|
|
69
|
+
/* Misc Colors */
|
|
70
|
+
--border: oklch(90% 0.004 286.32);
|
|
71
|
+
--separator: oklch(74% 0.004 286.32);
|
|
72
|
+
--focus: var(--accent);
|
|
73
|
+
--link: var(--foreground);
|
|
74
|
+
|
|
75
|
+
/* Shadows */
|
|
76
|
+
--surface-shadow:
|
|
77
|
+
0 2px 4px 0 rgba(0, 0, 0, 0.04), 0 1px 2px 0 rgba(0, 0, 0, 0.06),
|
|
78
|
+
0 0 1px 0 rgba(0, 0, 0, 0.06);
|
|
79
|
+
--overlay-shadow:
|
|
80
|
+
0 2px 8px 0 rgba(0, 0, 0, 0.02), 0 -6px 12px 0 rgba(0, 0, 0, 0.01),
|
|
81
|
+
0 14px 28px 0 rgba(0, 0, 0, 0.03);
|
|
82
|
+
--field-shadow:
|
|
83
|
+
0 2px 4px 0 rgba(0, 0, 0, 0.04), 0 1px 2px 0 rgba(0, 0, 0, 0.06),
|
|
84
|
+
0 0 1px 0 rgba(0, 0, 0, 0.06);
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
@variant dark {
|
|
88
|
+
/* Base Colors */
|
|
89
|
+
--background: oklch(12% 0.005 285.823);
|
|
90
|
+
--foreground: var(--snow);
|
|
91
|
+
|
|
92
|
+
/* Surface: Used for non-overlay components (cards, accordions, disclosure groups) */
|
|
93
|
+
--surface: oklch(0.2103 0.0059 285.89);
|
|
94
|
+
--surface-foreground: var(--foreground);
|
|
95
|
+
|
|
96
|
+
--surface-secondary: oklch(0.257 0.0037 286.14);
|
|
97
|
+
--surface-secondary-foreground: var(--foreground);
|
|
98
|
+
|
|
99
|
+
--surface-tertiary: oklch(0.2721 0.0024 247.91);
|
|
100
|
+
--surface-tertiary-foreground: var(--foreground);
|
|
101
|
+
|
|
102
|
+
/* Overlay: Used for floating/overlay components (dialogs, popovers, modals, menus) - lighter for contrast */
|
|
103
|
+
--overlay: oklch(0.2103 0.0059 285.89);
|
|
104
|
+
--overlay-foreground: var(--foreground);
|
|
105
|
+
|
|
106
|
+
--muted: oklch(70.5% 0.015 286.067);
|
|
107
|
+
|
|
108
|
+
--default: oklch(27.4% 0.006 286.033);
|
|
109
|
+
--default-foreground: var(--snow);
|
|
110
|
+
|
|
111
|
+
--accent: oklch(0.6204 0.195 253.83);
|
|
112
|
+
--accent-foreground: var(--snow);
|
|
113
|
+
|
|
114
|
+
/* Form Field Defaults - Colors (only the ones that are different from light theme) */
|
|
115
|
+
--field-background: oklch(0.2103 0.0059 285.89);
|
|
116
|
+
--field-foreground: var(--foreground);
|
|
117
|
+
--field-placeholder: var(--muted);
|
|
118
|
+
--field-border: transparent; /* no border by default on form fields */
|
|
119
|
+
|
|
120
|
+
/* Status Colors */
|
|
121
|
+
--success: oklch(0.7329 0.1935 150.81);
|
|
122
|
+
--success-foreground: var(--eclipse);
|
|
123
|
+
|
|
124
|
+
--warning: oklch(0.8203 0.1388 76.34);
|
|
125
|
+
--warning-foreground: var(--eclipse);
|
|
126
|
+
|
|
127
|
+
--danger: oklch(0.594 0.1967 24.63);
|
|
128
|
+
--danger-foreground: var(--snow);
|
|
129
|
+
|
|
130
|
+
/* Component Colors */
|
|
131
|
+
--segment: oklch(0.3964 0.01 285.93);
|
|
132
|
+
--segment-foreground: var(--foreground);
|
|
133
|
+
|
|
134
|
+
/* Misc Colors */
|
|
135
|
+
--border: oklch(28% 0.006 286.033);
|
|
136
|
+
--separator: oklch(40% 0.006 286.033);
|
|
137
|
+
--focus: var(--accent);
|
|
138
|
+
--link: var(--foreground);
|
|
139
|
+
|
|
140
|
+
/* Shadows */
|
|
141
|
+
--surface-shadow: 0 0 0 0 transparent inset; /* No shadow on dark mode */
|
|
142
|
+
--overlay-shadow: 0 0 1px 0 rgba(255, 255, 255, 0.2) inset;
|
|
143
|
+
--field-shadow: 0 0 0 0 transparent inset; /* Transparent shadow to allow ring utilities to work */
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
}
|
|
@@ -62,7 +62,10 @@
|
|
|
62
62
|
"react-native-web": "~0.21.0",
|
|
63
63
|
"react-native-webview": "13.15.0",
|
|
64
64
|
"react-native-worklets": "0.5.1",
|
|
65
|
-
"zod": "^4.2.1"
|
|
65
|
+
"zod": "^4.2.1",
|
|
66
|
+
"@gorhom/bottom-sheet": "^5.2.8",
|
|
67
|
+
"tailwind-merge": "^3.4.0",
|
|
68
|
+
"tailwind-variants": "^3.2.2"
|
|
66
69
|
},
|
|
67
70
|
"devDependencies": {
|
|
68
71
|
"@babel/core": "^7.25.2",
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"preinstall": "npx only-allow pnpm",
|
|
10
10
|
"lint:client": "npm run lint --prefix ./client",
|
|
11
11
|
"lint:server": "npm run lint --prefix ./server",
|
|
12
|
-
"lint": "npm run lint --prefix ./client; npm run lint --prefix ./server"
|
|
12
|
+
"lint:all": "npm run lint --prefix ./client; npm run lint --prefix ./server"
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {},
|
|
15
15
|
"devDependencies": {},
|