@cocso-ui/react 0.2.21 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/cjs/cn.d.ts +12 -0
- package/dist/cjs/cn.js +17 -0
- package/dist/cjs/components/accordion/accordion.d.ts +25 -0
- package/dist/cjs/components/accordion/accordion.js +54 -0
- package/dist/cjs/components/accordion/accordion.module.css.js +9 -0
- package/dist/cjs/components/alert/alert.d.ts +15 -0
- package/dist/cjs/components/alert/alert.js +44 -0
- package/dist/cjs/components/alert/alert.module.css.js +9 -0
- package/dist/cjs/components/avatar/avatar.d.ts +18 -0
- package/dist/cjs/components/avatar/avatar.js +52 -0
- package/dist/cjs/components/avatar/avatar.module.css.js +9 -0
- package/dist/cjs/components/badge/badge.d.ts +16 -0
- package/dist/cjs/components/badge/badge.js +60 -0
- package/dist/cjs/components/badge/badge.module.css.js +9 -0
- package/dist/cjs/components/breadcrumb/breadcrumb.d.ts +14 -0
- package/dist/cjs/components/breadcrumb/breadcrumb.js +50 -0
- package/dist/cjs/components/breadcrumb/breadcrumb.module.css.js +9 -0
- package/dist/cjs/components/button/button.d.ts +27 -0
- package/dist/cjs/components/button/button.js +83 -0
- package/dist/cjs/components/button/button.module.css.js +9 -0
- package/dist/cjs/components/card/card.d.ts +13 -0
- package/dist/cjs/components/card/card.js +30 -0
- package/dist/cjs/components/card/card.module.css.js +9 -0
- package/dist/cjs/components/checkbox/checkbox.d.ts +20 -0
- package/dist/cjs/components/checkbox/checkbox.js +116 -0
- package/dist/cjs/components/checkbox/checkbox.module.css.js +9 -0
- package/dist/cjs/components/day-picker/day-picker.d.ts +18 -0
- package/dist/cjs/components/day-picker/day-picker.js +117 -0
- package/dist/cjs/components/day-picker/day-picker.module.css.js +9 -0
- package/dist/cjs/components/dialog/dialog.d.ts +29 -0
- package/dist/cjs/components/dialog/dialog.js +103 -0
- package/dist/cjs/components/dialog/dialog.module.css.js +9 -0
- package/dist/cjs/components/dropdown/dropdown.d.ts +16 -0
- package/dist/cjs/components/dropdown/dropdown.js +43 -0
- package/dist/cjs/components/dropdown/dropdown.module.css.js +9 -0
- package/dist/cjs/components/field/field.d.ts +26 -0
- package/dist/cjs/components/field/field.js +49 -0
- package/dist/cjs/components/field/field.module.css.js +9 -0
- package/dist/cjs/components/input/input.d.ts +17 -0
- package/dist/cjs/components/input/input.js +69 -0
- package/dist/cjs/components/input/input.module.css.js +9 -0
- package/dist/cjs/components/link/link.d.ts +28 -0
- package/dist/cjs/components/link/link.js +64 -0
- package/dist/cjs/components/link/link.module.css.js +9 -0
- package/dist/cjs/components/month-picker/month-picker.d.ts +18 -0
- package/dist/cjs/components/month-picker/month-picker.js +108 -0
- package/dist/cjs/components/month-picker/month-picker.module.css.js +9 -0
- package/dist/cjs/components/one-time-password-field/one-time-password-field.d.ts +13 -0
- package/dist/cjs/components/one-time-password-field/one-time-password-field.js +44 -0
- package/dist/cjs/components/one-time-password-field/one-time-password-field.module.css.js +9 -0
- package/dist/cjs/components/pagination/pagination.d.ts +21 -0
- package/dist/cjs/{pagination/Pagination.js → components/pagination/pagination.js} +35 -20
- package/dist/cjs/components/pagination/pagination.module.css.js +9 -0
- package/dist/cjs/components/popover/popover.d.ts +14 -0
- package/dist/cjs/components/popover/popover.js +47 -0
- package/dist/cjs/components/popover/popover.module.css.js +9 -0
- package/dist/cjs/components/progress/progress.d.ts +17 -0
- package/dist/cjs/components/progress/progress.js +43 -0
- package/dist/cjs/components/progress/progress.module.css.js +9 -0
- package/dist/cjs/components/radio-group/radio-group.d.ts +23 -0
- package/dist/cjs/components/radio-group/radio-group.js +53 -0
- package/dist/cjs/components/radio-group/radio-group.module.css.js +9 -0
- package/dist/cjs/components/select/select.d.ts +17 -0
- package/dist/cjs/components/select/select.js +85 -0
- package/dist/cjs/components/select/select.module.css.js +9 -0
- package/dist/cjs/components/skeleton/skeleton.d.ts +15 -0
- package/dist/cjs/components/skeleton/skeleton.js +30 -0
- package/dist/cjs/components/skeleton/skeleton.module.css.js +9 -0
- package/dist/cjs/components/spinner/spinner.d.ts +17 -0
- package/dist/cjs/components/spinner/spinner.js +70 -0
- package/dist/cjs/components/spinner/spinner.module.css.js +9 -0
- package/dist/cjs/components/stock-quantity-status/stock-quantity-status.d.ts +12 -0
- package/dist/cjs/components/stock-quantity-status/stock-quantity-status.js +119 -0
- package/dist/cjs/components/stock-quantity-status/stock-quantity-status.module.css.js +9 -0
- package/dist/cjs/components/switch/switch.d.ts +19 -0
- package/dist/cjs/components/switch/switch.js +74 -0
- package/dist/cjs/components/switch/switch.module.css.js +9 -0
- package/dist/cjs/components/tab/tab.d.ts +16 -0
- package/dist/cjs/components/tab/tab.js +33 -0
- package/dist/cjs/components/tooltip/tooltip.d.ts +17 -0
- package/dist/cjs/components/tooltip/tooltip.js +48 -0
- package/dist/cjs/components/tooltip/tooltip.module.css.js +9 -0
- package/dist/cjs/components/typography/typography.d.ts +30 -0
- package/dist/cjs/components/typography/typography.js +81 -0
- package/dist/cjs/components/typography/typography.module.css.js +9 -0
- package/dist/cjs/ecosystem/codegen/generated/alert.css.js +6 -0
- package/dist/cjs/ecosystem/codegen/generated/alert.js +12 -0
- package/dist/cjs/ecosystem/codegen/generated/avatar.css.js +6 -0
- package/dist/cjs/ecosystem/codegen/generated/avatar.js +13 -0
- package/dist/cjs/ecosystem/codegen/generated/badge.css.js +6 -0
- package/dist/cjs/ecosystem/codegen/generated/badge.js +14 -0
- package/dist/cjs/ecosystem/codegen/generated/breadcrumb.css.js +6 -0
- package/dist/cjs/ecosystem/codegen/generated/breadcrumb.js +12 -0
- package/dist/cjs/ecosystem/codegen/generated/button.css.js +6 -0
- package/dist/cjs/ecosystem/codegen/generated/button.js +14 -0
- package/dist/cjs/ecosystem/codegen/generated/card.css.js +6 -0
- package/dist/cjs/ecosystem/codegen/generated/card.js +13 -0
- package/dist/cjs/ecosystem/codegen/generated/checkbox.css.js +6 -0
- package/dist/cjs/ecosystem/codegen/generated/checkbox.js +13 -0
- package/dist/cjs/ecosystem/codegen/generated/input.css.js +6 -0
- package/dist/cjs/ecosystem/codegen/generated/input.js +12 -0
- package/dist/cjs/ecosystem/codegen/generated/link.css.js +6 -0
- package/dist/cjs/ecosystem/codegen/generated/link.js +12 -0
- package/dist/cjs/ecosystem/codegen/generated/progress.css.js +6 -0
- package/dist/cjs/ecosystem/codegen/generated/progress.js +13 -0
- package/dist/cjs/ecosystem/codegen/generated/radio.css.js +6 -0
- package/dist/cjs/ecosystem/codegen/generated/radio.js +13 -0
- package/dist/cjs/ecosystem/codegen/generated/select.css.js +6 -0
- package/dist/cjs/ecosystem/codegen/generated/select.js +12 -0
- package/dist/cjs/ecosystem/codegen/generated/skeleton.css.js +6 -0
- package/dist/cjs/ecosystem/codegen/generated/skeleton.js +13 -0
- package/dist/cjs/ecosystem/codegen/generated/spinner-geometry.js +33 -0
- package/dist/cjs/ecosystem/codegen/generated/spinner.css.js +6 -0
- package/dist/cjs/ecosystem/codegen/generated/spinner.js +13 -0
- package/dist/cjs/ecosystem/codegen/generated/stock-quantity-status.css.js +6 -0
- package/dist/cjs/ecosystem/codegen/generated/stock-quantity-status.js +12 -0
- package/dist/cjs/ecosystem/codegen/generated/switch.css.js +6 -0
- package/dist/cjs/ecosystem/codegen/generated/switch.js +14 -0
- package/dist/cjs/index.d.ts +30 -19
- package/dist/cjs/index.js +65 -43
- package/dist/cjs/token/color.d.ts +12 -0
- package/dist/cjs/token/color.js +93 -81
- package/dist/cjs/token/radius.d.ts +12 -0
- package/dist/cjs/token/radius.js +14 -0
- package/dist/cjs/token/spacing.d.ts +24 -23
- package/dist/cjs/token/spacing.js +24 -23
- package/dist/cjs/token/typography.d.ts +17 -0
- package/dist/cjs/token/typography.js +17 -6
- package/dist/esm/cn.d.mts +12 -0
- package/dist/esm/cn.mjs +15 -0
- package/dist/esm/components/accordion/accordion.d.mts +25 -0
- package/dist/esm/components/accordion/accordion.mjs +52 -0
- package/dist/esm/components/accordion/accordion.module.css.mjs +3 -0
- package/dist/esm/components/alert/alert.d.mts +15 -0
- package/dist/esm/components/alert/alert.mjs +41 -0
- package/dist/esm/components/alert/alert.module.css.mjs +3 -0
- package/dist/esm/components/avatar/avatar.d.mts +18 -0
- package/dist/esm/components/avatar/avatar.mjs +49 -0
- package/dist/esm/components/avatar/avatar.module.css.mjs +3 -0
- package/dist/esm/components/badge/badge.d.mts +16 -0
- package/dist/esm/components/badge/badge.mjs +57 -0
- package/dist/esm/components/badge/badge.module.css.mjs +3 -0
- package/dist/esm/components/breadcrumb/breadcrumb.d.mts +14 -0
- package/dist/esm/components/breadcrumb/breadcrumb.mjs +47 -0
- package/dist/esm/components/breadcrumb/breadcrumb.module.css.mjs +3 -0
- package/dist/esm/components/button/button.d.mts +27 -0
- package/dist/esm/components/button/button.mjs +80 -0
- package/dist/esm/components/button/button.module.css.mjs +3 -0
- package/dist/esm/components/card/card.d.mts +13 -0
- package/dist/esm/components/card/card.mjs +27 -0
- package/dist/esm/components/card/card.module.css.mjs +3 -0
- package/dist/esm/components/checkbox/checkbox.d.mts +20 -0
- package/dist/esm/components/checkbox/checkbox.mjs +113 -0
- package/dist/esm/components/checkbox/checkbox.module.css.mjs +3 -0
- package/dist/esm/components/day-picker/day-picker.d.mts +18 -0
- package/dist/esm/components/day-picker/day-picker.mjs +115 -0
- package/dist/esm/components/day-picker/day-picker.module.css.mjs +3 -0
- package/dist/esm/components/dialog/dialog.d.mts +29 -0
- package/dist/esm/components/dialog/dialog.mjs +101 -0
- package/dist/esm/components/dialog/dialog.module.css.mjs +3 -0
- package/dist/esm/components/dropdown/dropdown.d.mts +16 -0
- package/dist/esm/components/dropdown/dropdown.mjs +41 -0
- package/dist/esm/components/dropdown/dropdown.module.css.mjs +3 -0
- package/dist/esm/components/field/field.d.mts +26 -0
- package/dist/esm/components/field/field.mjs +46 -0
- package/dist/esm/components/field/field.module.css.mjs +3 -0
- package/dist/esm/components/input/input.d.mts +17 -0
- package/dist/esm/components/input/input.mjs +66 -0
- package/dist/esm/components/input/input.module.css.mjs +3 -0
- package/dist/esm/components/link/link.d.mts +28 -0
- package/dist/esm/components/link/link.mjs +61 -0
- package/dist/esm/components/link/link.module.css.mjs +3 -0
- package/dist/esm/components/month-picker/month-picker.d.mts +18 -0
- package/dist/esm/components/month-picker/month-picker.mjs +106 -0
- package/dist/esm/components/month-picker/month-picker.module.css.mjs +3 -0
- package/dist/esm/components/one-time-password-field/one-time-password-field.d.mts +13 -0
- package/dist/esm/components/one-time-password-field/one-time-password-field.mjs +42 -0
- package/dist/esm/components/one-time-password-field/one-time-password-field.module.css.mjs +3 -0
- package/dist/esm/components/pagination/pagination.d.mts +21 -0
- package/dist/esm/{pagination/Pagination.mjs → components/pagination/pagination.mjs} +30 -15
- package/dist/esm/components/pagination/pagination.module.css.mjs +3 -0
- package/dist/esm/components/popover/popover.d.mts +14 -0
- package/dist/esm/components/popover/popover.mjs +45 -0
- package/dist/esm/components/popover/popover.module.css.mjs +3 -0
- package/dist/esm/components/progress/progress.d.mts +17 -0
- package/dist/esm/components/progress/progress.mjs +40 -0
- package/dist/esm/components/progress/progress.module.css.mjs +3 -0
- package/dist/esm/components/radio-group/radio-group.d.mts +23 -0
- package/dist/esm/components/radio-group/radio-group.mjs +50 -0
- package/dist/esm/components/radio-group/radio-group.module.css.mjs +3 -0
- package/dist/esm/components/select/select.d.mts +17 -0
- package/dist/esm/components/select/select.mjs +82 -0
- package/dist/esm/components/select/select.module.css.mjs +3 -0
- package/dist/esm/components/skeleton/skeleton.d.mts +15 -0
- package/dist/esm/components/skeleton/skeleton.mjs +27 -0
- package/dist/esm/components/skeleton/skeleton.module.css.mjs +3 -0
- package/dist/esm/components/spinner/spinner.d.mts +17 -0
- package/dist/esm/components/spinner/spinner.mjs +67 -0
- package/dist/esm/components/spinner/spinner.module.css.mjs +3 -0
- package/dist/esm/components/stock-quantity-status/stock-quantity-status.d.mts +12 -0
- package/dist/esm/components/stock-quantity-status/stock-quantity-status.mjs +116 -0
- package/dist/esm/components/stock-quantity-status/stock-quantity-status.module.css.mjs +3 -0
- package/dist/esm/components/switch/switch.d.mts +19 -0
- package/dist/esm/components/switch/switch.mjs +71 -0
- package/dist/esm/components/switch/switch.module.css.mjs +3 -0
- package/dist/esm/components/tab/tab.d.mts +16 -0
- package/dist/esm/components/tab/tab.mjs +31 -0
- package/dist/esm/components/tooltip/tooltip.d.mts +17 -0
- package/dist/esm/components/tooltip/tooltip.mjs +46 -0
- package/dist/esm/components/tooltip/tooltip.module.css.mjs +3 -0
- package/dist/esm/components/typography/typography.d.mts +30 -0
- package/dist/esm/components/typography/typography.mjs +79 -0
- package/dist/esm/components/typography/typography.module.css.mjs +3 -0
- package/dist/esm/ecosystem/codegen/generated/alert.mjs +10 -0
- package/dist/esm/ecosystem/codegen/generated/avatar.mjs +11 -0
- package/dist/esm/ecosystem/codegen/generated/badge.mjs +12 -0
- package/dist/esm/ecosystem/codegen/generated/breadcrumb.mjs +10 -0
- package/dist/esm/ecosystem/codegen/generated/button.mjs +12 -0
- package/dist/esm/ecosystem/codegen/generated/card.mjs +11 -0
- package/dist/esm/ecosystem/codegen/generated/checkbox.mjs +11 -0
- package/dist/esm/ecosystem/codegen/generated/input.mjs +10 -0
- package/dist/esm/ecosystem/codegen/generated/link.mjs +10 -0
- package/dist/esm/ecosystem/codegen/generated/progress.mjs +11 -0
- package/dist/esm/ecosystem/codegen/generated/radio.mjs +11 -0
- package/dist/esm/ecosystem/codegen/generated/select.mjs +10 -0
- package/dist/esm/ecosystem/codegen/generated/skeleton.mjs +11 -0
- package/dist/esm/ecosystem/codegen/generated/spinner-geometry.mjs +30 -0
- package/dist/esm/ecosystem/codegen/generated/spinner.mjs +11 -0
- package/dist/esm/ecosystem/codegen/generated/stock-quantity-status.mjs +10 -0
- package/dist/esm/ecosystem/codegen/generated/switch.mjs +12 -0
- package/dist/esm/index.css +7 -1
- package/dist/esm/index.d.mts +30 -19
- package/dist/esm/index.mjs +31 -20
- package/dist/esm/token/color.d.mts +12 -0
- package/dist/esm/token/color.mjs +93 -81
- package/dist/esm/token/radius.d.mts +12 -0
- package/dist/esm/token/radius.mjs +12 -0
- package/dist/esm/token/spacing.d.mts +24 -23
- package/dist/esm/token/spacing.mjs +24 -23
- package/dist/esm/token/typography.d.mts +17 -0
- package/dist/esm/token/typography.mjs +17 -6
- package/package.json +29 -26
- package/dist/cjs/accordion/Accordion.d.ts +0 -15
- package/dist/cjs/accordion/Accordion.js +0 -71
- package/dist/cjs/accordion/Accordion.module.css.js +0 -9
- package/dist/cjs/badge/Badge.d.ts +0 -13
- package/dist/cjs/badge/Badge.js +0 -50
- package/dist/cjs/badge/Badge.module.css.js +0 -9
- package/dist/cjs/button/Button.d.ts +0 -23
- package/dist/cjs/button/Button.js +0 -117
- package/dist/cjs/button/Button.module.css.js +0 -9
- package/dist/cjs/checkbox/Checkbox.d.ts +0 -18
- package/dist/cjs/checkbox/Checkbox.js +0 -117
- package/dist/cjs/checkbox/Checkbox.module.css.js +0 -9
- package/dist/cjs/day-picker/DayPicker.d.ts +0 -14
- package/dist/cjs/day-picker/DayPicker.js +0 -98
- package/dist/cjs/day-picker/DayPicker.module.css.js +0 -9
- package/dist/cjs/dropdown/Dropdown.d.ts +0 -11
- package/dist/cjs/dropdown/Dropdown.js +0 -55
- package/dist/cjs/dropdown/Dropdown.module.css.js +0 -9
- package/dist/cjs/link/Link.d.ts +0 -16
- package/dist/cjs/link/Link.js +0 -35
- package/dist/cjs/link/Link.module.css.js +0 -9
- package/dist/cjs/modal/Modal.d.ts +0 -12
- package/dist/cjs/modal/Modal.js +0 -106
- package/dist/cjs/modal/Modal.module.css.js +0 -9
- package/dist/cjs/month-picker/MonthPicker.d.ts +0 -14
- package/dist/cjs/month-picker/MonthPicker.js +0 -91
- package/dist/cjs/month-picker/MonthPicker.module.css.js +0 -9
- package/dist/cjs/one-time-password-field/OneTimePasswordField.d.ts +0 -8
- package/dist/cjs/one-time-password-field/OneTimePasswordField.js +0 -52
- package/dist/cjs/one-time-password-field/OneTimePasswordField.module.css.js +0 -9
- package/dist/cjs/pagination/Pagination.d.ts +0 -13
- package/dist/cjs/pagination/Pagination.module.css.js +0 -9
- package/dist/cjs/popover/Popover.d.ts +0 -10
- package/dist/cjs/popover/Popover.js +0 -44
- package/dist/cjs/popover/Popover.module.css.js +0 -9
- package/dist/cjs/radio-group/RadioGroup.d.ts +0 -9
- package/dist/cjs/radio-group/RadioGroup.js +0 -66
- package/dist/cjs/radio-group/RadioGroup.module.css.js +0 -9
- package/dist/cjs/select/Select.d.ts +0 -13
- package/dist/cjs/select/Select.js +0 -85
- package/dist/cjs/select/Select.module.css.js +0 -9
- package/dist/cjs/spinner/Spinner.d.ts +0 -14
- package/dist/cjs/spinner/Spinner.js +0 -40
- package/dist/cjs/spinner/Spinner.module.css.js +0 -9
- package/dist/cjs/stock-quantity-status/StockQuantityStatus.d.ts +0 -12
- package/dist/cjs/stock-quantity-status/StockQuantityStatus.js +0 -105
- package/dist/cjs/stock-quantity-status/StockQuantityStatus.module.css.js +0 -9
- package/dist/cjs/switch/Switch.d.ts +0 -16
- package/dist/cjs/switch/Switch.js +0 -89
- package/dist/cjs/switch/Switch.module.css.js +0 -9
- package/dist/cjs/tab/Tab.d.ts +0 -10
- package/dist/cjs/tab/Tab.js +0 -64
- package/dist/cjs/typography/Typography.d.ts +0 -33
- package/dist/cjs/typography/Typography.js +0 -90
- package/dist/cjs/typography/Typography.module.css.js +0 -9
- package/dist/esm/accordion/Accordion.d.mts +0 -15
- package/dist/esm/accordion/Accordion.mjs +0 -50
- package/dist/esm/accordion/Accordion.module.css.mjs +0 -3
- package/dist/esm/badge/Badge.d.mts +0 -13
- package/dist/esm/badge/Badge.mjs +0 -48
- package/dist/esm/badge/Badge.module.css.mjs +0 -3
- package/dist/esm/button/Button.d.mts +0 -23
- package/dist/esm/button/Button.mjs +0 -115
- package/dist/esm/button/Button.module.css.mjs +0 -3
- package/dist/esm/checkbox/Checkbox.d.mts +0 -18
- package/dist/esm/checkbox/Checkbox.mjs +0 -96
- package/dist/esm/checkbox/Checkbox.module.css.mjs +0 -3
- package/dist/esm/day-picker/DayPicker.d.mts +0 -14
- package/dist/esm/day-picker/DayPicker.mjs +0 -96
- package/dist/esm/day-picker/DayPicker.module.css.mjs +0 -3
- package/dist/esm/dropdown/Dropdown.d.mts +0 -11
- package/dist/esm/dropdown/Dropdown.mjs +0 -34
- package/dist/esm/dropdown/Dropdown.module.css.mjs +0 -3
- package/dist/esm/link/Link.d.mts +0 -16
- package/dist/esm/link/Link.mjs +0 -33
- package/dist/esm/link/Link.module.css.mjs +0 -3
- package/dist/esm/modal/Modal.d.mts +0 -12
- package/dist/esm/modal/Modal.mjs +0 -85
- package/dist/esm/modal/Modal.module.css.mjs +0 -3
- package/dist/esm/month-picker/MonthPicker.d.mts +0 -14
- package/dist/esm/month-picker/MonthPicker.mjs +0 -89
- package/dist/esm/month-picker/MonthPicker.module.css.mjs +0 -3
- package/dist/esm/one-time-password-field/OneTimePasswordField.d.mts +0 -8
- package/dist/esm/one-time-password-field/OneTimePasswordField.mjs +0 -31
- package/dist/esm/one-time-password-field/OneTimePasswordField.module.css.mjs +0 -3
- package/dist/esm/pagination/Pagination.d.mts +0 -13
- package/dist/esm/pagination/Pagination.module.css.mjs +0 -3
- package/dist/esm/popover/Popover.d.mts +0 -10
- package/dist/esm/popover/Popover.mjs +0 -23
- package/dist/esm/popover/Popover.module.css.mjs +0 -3
- package/dist/esm/radio-group/RadioGroup.d.mts +0 -9
- package/dist/esm/radio-group/RadioGroup.mjs +0 -45
- package/dist/esm/radio-group/RadioGroup.module.css.mjs +0 -3
- package/dist/esm/select/Select.d.mts +0 -13
- package/dist/esm/select/Select.mjs +0 -83
- package/dist/esm/select/Select.module.css.mjs +0 -3
- package/dist/esm/spinner/Spinner.d.mts +0 -14
- package/dist/esm/spinner/Spinner.mjs +0 -38
- package/dist/esm/spinner/Spinner.module.css.mjs +0 -3
- package/dist/esm/stock-quantity-status/StockQuantityStatus.d.mts +0 -12
- package/dist/esm/stock-quantity-status/StockQuantityStatus.mjs +0 -102
- package/dist/esm/stock-quantity-status/StockQuantityStatus.module.css.mjs +0 -3
- package/dist/esm/switch/Switch.d.mts +0 -16
- package/dist/esm/switch/Switch.mjs +0 -68
- package/dist/esm/switch/Switch.module.css.mjs +0 -3
- package/dist/esm/tab/Tab.d.mts +0 -10
- package/dist/esm/tab/Tab.mjs +0 -43
- package/dist/esm/typography/Typography.d.mts +0 -33
- package/dist/esm/typography/Typography.mjs +0 -88
- package/dist/esm/typography/Typography.module.css.mjs +0 -3
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { checkbox } from '../../ecosystem/codegen/generated/checkbox.mjs';
|
|
3
|
+
import { CheckIcon, CheckIndeterminateSmallIcon } from '@cocso-ui/react-icons';
|
|
4
|
+
import { useId, useRef, useState } from 'react';
|
|
5
|
+
import { match } from 'ts-pattern';
|
|
6
|
+
import { cn } from '../../cn.mjs';
|
|
7
|
+
import styles from './checkbox.module.css.mjs';
|
|
8
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
9
|
+
import { colors } from '../../token/color.mjs';
|
|
10
|
+
import { Typography } from '../typography/typography.mjs';
|
|
11
|
+
import { Checkbox as Checkbox$1 } from '@base-ui/react/checkbox';
|
|
12
|
+
|
|
13
|
+
/** Check/uncheck toggle with support for an indeterminate state. */
|
|
14
|
+
function Checkbox({
|
|
15
|
+
ref,
|
|
16
|
+
id: _id,
|
|
17
|
+
className,
|
|
18
|
+
style: _style,
|
|
19
|
+
size = "medium",
|
|
20
|
+
status: statusProp,
|
|
21
|
+
defaultStatus,
|
|
22
|
+
onChange,
|
|
23
|
+
label,
|
|
24
|
+
disabled,
|
|
25
|
+
...props
|
|
26
|
+
}) {
|
|
27
|
+
const generatedId = useId();
|
|
28
|
+
const id = _id ?? generatedId;
|
|
29
|
+
const isControlledRef = useRef(statusProp !== undefined);
|
|
30
|
+
const isControlled = isControlledRef.current;
|
|
31
|
+
if (process.env.NODE_ENV !== "production") {
|
|
32
|
+
if (isControlled !== (statusProp !== undefined)) {
|
|
33
|
+
console.error("Checkbox: switching between controlled and uncontrolled mode is not supported. " + "Use `status` (controlled) or `defaultStatus` (uncontrolled) for the component lifetime.");
|
|
34
|
+
}
|
|
35
|
+
if (statusProp !== undefined && defaultStatus !== undefined) {
|
|
36
|
+
console.error("Checkbox: `status` and `defaultStatus` are mutually exclusive. " + "Use `status` for controlled mode or `defaultStatus` for uncontrolled mode.");
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
const [internalStatus, setInternalStatus] = useState(defaultStatus ?? "off");
|
|
40
|
+
const status = isControlled ? statusProp : internalStatus;
|
|
41
|
+
const handleCheckedChange = checked => {
|
|
42
|
+
if (!disabled) {
|
|
43
|
+
const nextStatus = checked ? "on" : "off";
|
|
44
|
+
if (!isControlled) {
|
|
45
|
+
setInternalStatus(nextStatus);
|
|
46
|
+
}
|
|
47
|
+
onChange?.(nextStatus);
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
const style = {
|
|
51
|
+
..._style,
|
|
52
|
+
"--cocso-checkbox-color": colors.white
|
|
53
|
+
};
|
|
54
|
+
const checkedState = getCheckedState(status);
|
|
55
|
+
return /*#__PURE__*/jsxs("div", {
|
|
56
|
+
className: cn(checkbox({
|
|
57
|
+
size,
|
|
58
|
+
status
|
|
59
|
+
}), styles.wrapper, className),
|
|
60
|
+
style: style,
|
|
61
|
+
children: [/*#__PURE__*/jsxs(Checkbox$1.Root, {
|
|
62
|
+
checked: checkedState.checked,
|
|
63
|
+
className: styles.checkbox,
|
|
64
|
+
disabled: disabled,
|
|
65
|
+
id: id,
|
|
66
|
+
indeterminate: checkedState.indeterminate,
|
|
67
|
+
onCheckedChange: handleCheckedChange,
|
|
68
|
+
ref: ref,
|
|
69
|
+
...props,
|
|
70
|
+
children: [/*#__PURE__*/jsx(Checkbox$1.Indicator, {
|
|
71
|
+
className: styles.indicator,
|
|
72
|
+
style: {
|
|
73
|
+
opacity: status === "on" ? 1 : 0
|
|
74
|
+
},
|
|
75
|
+
children: /*#__PURE__*/jsx(CheckIcon, {
|
|
76
|
+
className: styles.icon,
|
|
77
|
+
size: 24
|
|
78
|
+
})
|
|
79
|
+
}), /*#__PURE__*/jsx("div", {
|
|
80
|
+
"aria-hidden": "true",
|
|
81
|
+
className: styles.indicator,
|
|
82
|
+
style: {
|
|
83
|
+
opacity: status === "intermediate" ? 1 : 0
|
|
84
|
+
},
|
|
85
|
+
children: /*#__PURE__*/jsx(CheckIndeterminateSmallIcon, {
|
|
86
|
+
className: styles.icon,
|
|
87
|
+
size: 24
|
|
88
|
+
})
|
|
89
|
+
})]
|
|
90
|
+
}), label && /*#__PURE__*/jsx(Typography, {
|
|
91
|
+
"aria-disabled": disabled,
|
|
92
|
+
className: styles.label,
|
|
93
|
+
render: /*#__PURE__*/jsx("label", {
|
|
94
|
+
htmlFor: id,
|
|
95
|
+
children: label
|
|
96
|
+
}),
|
|
97
|
+
size: size,
|
|
98
|
+
type: "body"
|
|
99
|
+
})]
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
const getCheckedState = status => match(status).with("on", () => ({
|
|
103
|
+
checked: true,
|
|
104
|
+
indeterminate: false
|
|
105
|
+
})).with("intermediate", () => ({
|
|
106
|
+
checked: false,
|
|
107
|
+
indeterminate: true
|
|
108
|
+
})).with("off", () => ({
|
|
109
|
+
checked: false,
|
|
110
|
+
indeterminate: false
|
|
111
|
+
})).exhaustive();
|
|
112
|
+
|
|
113
|
+
export { Checkbox };
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { Locale } from 'date-fns';
|
|
3
|
+
import { ComponentProps, ReactElement } from 'react';
|
|
4
|
+
|
|
5
|
+
interface DayPickerProps extends Omit<ComponentProps<"div">, "children"> {
|
|
6
|
+
dateFormat?: string;
|
|
7
|
+
disabled?: boolean;
|
|
8
|
+
locale?: Locale;
|
|
9
|
+
maxDate?: Date;
|
|
10
|
+
minDate?: Date;
|
|
11
|
+
onValueChange?: (value: Date | null) => void;
|
|
12
|
+
trigger?: ReactElement;
|
|
13
|
+
value?: Date;
|
|
14
|
+
}
|
|
15
|
+
declare function DayPicker({ ref, className, value, onValueChange, disabled, trigger, locale, dateFormat, minDate, maxDate, ...props }: DayPickerProps): react_jsx_runtime.JSX.Element;
|
|
16
|
+
|
|
17
|
+
export { DayPicker };
|
|
18
|
+
export type { DayPickerProps };
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { ArrowIOSBackwardIcon, ArrowIOSForwardIcon } from '@cocso-ui/react-icons';
|
|
3
|
+
import { format } from 'date-fns';
|
|
4
|
+
import { ko } from 'date-fns/locale';
|
|
5
|
+
import { useState } from 'react';
|
|
6
|
+
import DatePicker from 'react-datepicker';
|
|
7
|
+
import { cn } from '../../cn.mjs';
|
|
8
|
+
import styles from './day-picker.module.css.mjs';
|
|
9
|
+
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
10
|
+
import { Dropdown } from '../dropdown/dropdown.mjs';
|
|
11
|
+
import { Button } from '../button/button.mjs';
|
|
12
|
+
import { Typography } from '../typography/typography.mjs';
|
|
13
|
+
|
|
14
|
+
function DayPicker({
|
|
15
|
+
ref,
|
|
16
|
+
className,
|
|
17
|
+
value,
|
|
18
|
+
onValueChange,
|
|
19
|
+
disabled,
|
|
20
|
+
trigger,
|
|
21
|
+
locale = ko,
|
|
22
|
+
dateFormat = "yyyy년 MM월 dd일",
|
|
23
|
+
minDate,
|
|
24
|
+
maxDate,
|
|
25
|
+
...props
|
|
26
|
+
}) {
|
|
27
|
+
const [open, setOpen] = useState(false);
|
|
28
|
+
const handleChange = date => {
|
|
29
|
+
onValueChange?.(date);
|
|
30
|
+
setOpen(false);
|
|
31
|
+
};
|
|
32
|
+
return /*#__PURE__*/jsx("div", {
|
|
33
|
+
className: cn(styles.root, className),
|
|
34
|
+
ref: ref,
|
|
35
|
+
...props,
|
|
36
|
+
children: /*#__PURE__*/jsxs(Dropdown, {
|
|
37
|
+
onOpenChange: setOpen,
|
|
38
|
+
open: open,
|
|
39
|
+
children: [/*#__PURE__*/jsx(Dropdown.Trigger, {
|
|
40
|
+
render: trigger ?? /*#__PURE__*/jsx(Button, {
|
|
41
|
+
disabled: disabled,
|
|
42
|
+
size: "small",
|
|
43
|
+
variant: "outline",
|
|
44
|
+
children: value ? format(value, dateFormat, {
|
|
45
|
+
locale
|
|
46
|
+
}) : "Select date"
|
|
47
|
+
})
|
|
48
|
+
}), /*#__PURE__*/jsx(Dropdown.Content, {
|
|
49
|
+
"aria-label": "Select date",
|
|
50
|
+
className: styles.content,
|
|
51
|
+
children: /*#__PURE__*/jsx(DatePicker, {
|
|
52
|
+
dateFormat: dateFormat,
|
|
53
|
+
dayClassName: date => {
|
|
54
|
+
const day = date.getDay();
|
|
55
|
+
if (day === 0) {
|
|
56
|
+
return styles.sunday;
|
|
57
|
+
}
|
|
58
|
+
if (day === 6) {
|
|
59
|
+
return styles.saturday;
|
|
60
|
+
}
|
|
61
|
+
return "";
|
|
62
|
+
},
|
|
63
|
+
disabled: disabled,
|
|
64
|
+
inline: true,
|
|
65
|
+
locale: locale,
|
|
66
|
+
maxDate: maxDate,
|
|
67
|
+
minDate: minDate,
|
|
68
|
+
onChange: handleChange,
|
|
69
|
+
renderCustomHeader: ({
|
|
70
|
+
date,
|
|
71
|
+
decreaseMonth,
|
|
72
|
+
increaseMonth,
|
|
73
|
+
prevMonthButtonDisabled,
|
|
74
|
+
nextMonthButtonDisabled
|
|
75
|
+
}) => /*#__PURE__*/jsxs(Fragment, {
|
|
76
|
+
children: [/*#__PURE__*/jsx(Typography, {
|
|
77
|
+
size: "small",
|
|
78
|
+
type: "body",
|
|
79
|
+
weight: "semibold",
|
|
80
|
+
children: date.toLocaleDateString(locale.code ?? "ko-KR", {
|
|
81
|
+
year: "numeric",
|
|
82
|
+
month: "long"
|
|
83
|
+
})
|
|
84
|
+
}), /*#__PURE__*/jsxs("div", {
|
|
85
|
+
className: styles.menu,
|
|
86
|
+
children: [/*#__PURE__*/jsx(Button, {
|
|
87
|
+
className: styles.arrow,
|
|
88
|
+
disabled: prevMonthButtonDisabled,
|
|
89
|
+
onClick: decreaseMonth,
|
|
90
|
+
size: "x-small",
|
|
91
|
+
svgOnly: true,
|
|
92
|
+
type: "button",
|
|
93
|
+
variant: "outline",
|
|
94
|
+
children: /*#__PURE__*/jsx(ArrowIOSBackwardIcon, {})
|
|
95
|
+
}), /*#__PURE__*/jsx(Button, {
|
|
96
|
+
className: styles.arrow,
|
|
97
|
+
disabled: nextMonthButtonDisabled,
|
|
98
|
+
onClick: increaseMonth,
|
|
99
|
+
size: "x-small",
|
|
100
|
+
svgOnly: true,
|
|
101
|
+
type: "button",
|
|
102
|
+
variant: "outline",
|
|
103
|
+
children: /*#__PURE__*/jsx(ArrowIOSForwardIcon, {})
|
|
104
|
+
})]
|
|
105
|
+
})]
|
|
106
|
+
}),
|
|
107
|
+
selected: value,
|
|
108
|
+
showPopperArrow: false
|
|
109
|
+
})
|
|
110
|
+
})]
|
|
111
|
+
})
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
export { DayPicker };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var styles = {"root":"day-picker-module_root__QVrbb","content":"day-picker-module_content__34qUu","menu":"day-picker-module_menu__2eMt0","arrow":"day-picker-module_arrow__p9QLq","sunday":"day-picker-module_sunday__nVavs","saturday":"day-picker-module_saturday__ZYoB9"};
|
|
2
|
+
|
|
3
|
+
export { styles as default };
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ComponentProps, ReactElement } from 'react';
|
|
3
|
+
import { Dialog as Dialog$1 } from '@base-ui/react/dialog';
|
|
4
|
+
|
|
5
|
+
type DialogSize = "small" | "medium" | "large";
|
|
6
|
+
declare function DialogContent({ className, size, children, ...props }: ComponentProps<typeof Dialog$1.Popup> & {
|
|
7
|
+
size?: DialogSize;
|
|
8
|
+
}): react_jsx_runtime.JSX.Element;
|
|
9
|
+
interface DialogCloseProps extends ComponentProps<typeof Dialog$1.Close> {
|
|
10
|
+
render?: ReactElement;
|
|
11
|
+
}
|
|
12
|
+
declare function DialogClose({ className, render: renderProp, children, ...props }: DialogCloseProps): react_jsx_runtime.JSX.Element;
|
|
13
|
+
declare function DialogTitle({ className, children, ...props }: ComponentProps<typeof Dialog$1.Title>): react_jsx_runtime.JSX.Element;
|
|
14
|
+
declare function DialogDescription({ className, children, ...props }: ComponentProps<typeof Dialog$1.Description>): react_jsx_runtime.JSX.Element;
|
|
15
|
+
/**
|
|
16
|
+
* Modal dialog. Compose with `Dialog.Trigger`, `Dialog.Content`, `Dialog.Title`,
|
|
17
|
+
* `Dialog.Description`, and `Dialog.Close`.
|
|
18
|
+
*/
|
|
19
|
+
declare const Dialog: typeof Dialog$1.Root & {
|
|
20
|
+
displayName: "Dialog";
|
|
21
|
+
Trigger: Dialog$1.Trigger;
|
|
22
|
+
Content: typeof DialogContent;
|
|
23
|
+
Close: typeof DialogClose;
|
|
24
|
+
Title: typeof DialogTitle;
|
|
25
|
+
Description: typeof DialogDescription;
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
export { Dialog };
|
|
29
|
+
export type { DialogCloseProps, DialogSize };
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { CloseIcon } from '@cocso-ui/react-icons';
|
|
2
|
+
import { cn } from '../../cn.mjs';
|
|
3
|
+
import styles from './dialog.module.css.mjs';
|
|
4
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
5
|
+
import { Typography } from '../typography/typography.mjs';
|
|
6
|
+
import { colors } from '../../token/color.mjs';
|
|
7
|
+
import { Button } from '../button/button.mjs';
|
|
8
|
+
import { Dialog as Dialog$1 } from '@base-ui/react/dialog';
|
|
9
|
+
|
|
10
|
+
function DialogContent({
|
|
11
|
+
className,
|
|
12
|
+
size = "medium",
|
|
13
|
+
children,
|
|
14
|
+
...props
|
|
15
|
+
}) {
|
|
16
|
+
return /*#__PURE__*/jsxs(Dialog$1.Portal, {
|
|
17
|
+
children: [/*#__PURE__*/jsx(Dialog$1.Backdrop, {
|
|
18
|
+
className: styles.overlay
|
|
19
|
+
}), /*#__PURE__*/jsx(Dialog$1.Popup, {
|
|
20
|
+
className: cn(styles.panel, styles[size], className),
|
|
21
|
+
...props,
|
|
22
|
+
children: children
|
|
23
|
+
})]
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
function DialogClose({
|
|
27
|
+
className,
|
|
28
|
+
render: renderProp,
|
|
29
|
+
children,
|
|
30
|
+
...props
|
|
31
|
+
}) {
|
|
32
|
+
if (renderProp) {
|
|
33
|
+
return /*#__PURE__*/jsx(Dialog$1.Close, {
|
|
34
|
+
className: className,
|
|
35
|
+
render: renderProp,
|
|
36
|
+
...props
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
return /*#__PURE__*/jsx(Dialog$1.Close, {
|
|
40
|
+
"aria-label": "Close",
|
|
41
|
+
className: cn(styles.close, className),
|
|
42
|
+
render: /*#__PURE__*/jsx(Button, {
|
|
43
|
+
size: "x-small",
|
|
44
|
+
svgOnly: true,
|
|
45
|
+
variant: "outline",
|
|
46
|
+
children: /*#__PURE__*/jsx(CloseIcon, {
|
|
47
|
+
size: 14
|
|
48
|
+
})
|
|
49
|
+
}),
|
|
50
|
+
...props,
|
|
51
|
+
children: children
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
function DialogTitle({
|
|
55
|
+
className,
|
|
56
|
+
children,
|
|
57
|
+
...props
|
|
58
|
+
}) {
|
|
59
|
+
return /*#__PURE__*/jsx(Dialog$1.Title, {
|
|
60
|
+
className: cn(styles.title, className),
|
|
61
|
+
render: /*#__PURE__*/jsx(Typography, {
|
|
62
|
+
size: 20,
|
|
63
|
+
type: "custom",
|
|
64
|
+
weight: "bold"
|
|
65
|
+
}),
|
|
66
|
+
...props,
|
|
67
|
+
children: children
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
function DialogDescription({
|
|
71
|
+
className,
|
|
72
|
+
children,
|
|
73
|
+
...props
|
|
74
|
+
}) {
|
|
75
|
+
return /*#__PURE__*/jsx(Dialog$1.Description, {
|
|
76
|
+
className: cn(styles.description, className),
|
|
77
|
+
render: /*#__PURE__*/jsx(Typography, {
|
|
78
|
+
color: colors.textSecondary,
|
|
79
|
+
size: 14,
|
|
80
|
+
type: "custom",
|
|
81
|
+
weight: "medium"
|
|
82
|
+
}),
|
|
83
|
+
...props,
|
|
84
|
+
children: children
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* Modal dialog. Compose with `Dialog.Trigger`, `Dialog.Content`, `Dialog.Title`,
|
|
90
|
+
* `Dialog.Description`, and `Dialog.Close`.
|
|
91
|
+
*/
|
|
92
|
+
const Dialog = Object.assign(Dialog$1.Root, {
|
|
93
|
+
displayName: "Dialog",
|
|
94
|
+
Trigger: Dialog$1.Trigger,
|
|
95
|
+
Content: DialogContent,
|
|
96
|
+
Close: DialogClose,
|
|
97
|
+
Title: DialogTitle,
|
|
98
|
+
Description: DialogDescription
|
|
99
|
+
});
|
|
100
|
+
|
|
101
|
+
export { Dialog };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var styles = {"overlay":"dialog-module_overlay__aJLpW","overlay-show":"dialog-module_overlay-show__gzSZE","panel":"dialog-module_panel__5XCTU","content-show":"dialog-module_content-show__rVhLI","small":"dialog-module_small__JObfk","medium":"dialog-module_medium__Xxtor","large":"dialog-module_large__O71LV","close":"dialog-module_close__cuRe9","title":"dialog-module_title__E36pq","description":"dialog-module_description__DNssa"};
|
|
2
|
+
|
|
3
|
+
export { styles as default };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ComponentProps, ReactNode } from 'react';
|
|
3
|
+
import { Menu } from '@base-ui/react/menu';
|
|
4
|
+
|
|
5
|
+
declare function DropdownContent({ className, ...props }: ComponentProps<typeof Menu.Popup>): react_jsx_runtime.JSX.Element;
|
|
6
|
+
declare function DropdownItem({ className, prefix, children, ...props }: Omit<ComponentProps<typeof Menu.Item>, "prefix"> & {
|
|
7
|
+
prefix?: ReactNode;
|
|
8
|
+
}): react_jsx_runtime.JSX.Element;
|
|
9
|
+
declare const Dropdown: (<Payload>(props: Menu.Root.Props<Payload>) => react_jsx_runtime.JSX.Element) & {
|
|
10
|
+
displayName: "Dropdown";
|
|
11
|
+
Trigger: Menu.Trigger;
|
|
12
|
+
Content: typeof DropdownContent;
|
|
13
|
+
Item: typeof DropdownItem;
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
export { Dropdown };
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { cn } from '../../cn.mjs';
|
|
2
|
+
import styles from './dropdown.module.css.mjs';
|
|
3
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
4
|
+
import { Menu } from '@base-ui/react/menu';
|
|
5
|
+
|
|
6
|
+
function DropdownContent({
|
|
7
|
+
className,
|
|
8
|
+
...props
|
|
9
|
+
}) {
|
|
10
|
+
return /*#__PURE__*/jsx(Menu.Portal, {
|
|
11
|
+
children: /*#__PURE__*/jsx(Menu.Positioner, {
|
|
12
|
+
children: /*#__PURE__*/jsx(Menu.Popup, {
|
|
13
|
+
className: cn(styles.content, className),
|
|
14
|
+
...props
|
|
15
|
+
})
|
|
16
|
+
})
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
function DropdownItem({
|
|
20
|
+
className,
|
|
21
|
+
prefix,
|
|
22
|
+
children,
|
|
23
|
+
...props
|
|
24
|
+
}) {
|
|
25
|
+
return /*#__PURE__*/jsxs(Menu.Item, {
|
|
26
|
+
className: cn(styles.item, className),
|
|
27
|
+
...props,
|
|
28
|
+
children: [prefix && /*#__PURE__*/jsx("span", {
|
|
29
|
+
className: styles.prefix,
|
|
30
|
+
children: prefix
|
|
31
|
+
}), children]
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
const Dropdown = Object.assign(Menu.Root, {
|
|
35
|
+
displayName: "Dropdown",
|
|
36
|
+
Trigger: Menu.Trigger,
|
|
37
|
+
Content: DropdownContent,
|
|
38
|
+
Item: DropdownItem
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
export { Dropdown };
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
|
|
4
|
+
interface FieldContextValue {
|
|
5
|
+
descriptionId?: string;
|
|
6
|
+
errorId?: string;
|
|
7
|
+
}
|
|
8
|
+
declare const useField: () => FieldContextValue;
|
|
9
|
+
interface FieldProps {
|
|
10
|
+
children: ReactNode;
|
|
11
|
+
description?: string;
|
|
12
|
+
error?: string;
|
|
13
|
+
htmlFor?: string;
|
|
14
|
+
label: string;
|
|
15
|
+
optionalLabel?: string;
|
|
16
|
+
/**
|
|
17
|
+
* `true` = required field (no indicator shown).
|
|
18
|
+
* `false` = explicitly optional — shows "(Optional)" indicator.
|
|
19
|
+
* `undefined` = no indicator shown.
|
|
20
|
+
*/
|
|
21
|
+
required?: boolean;
|
|
22
|
+
}
|
|
23
|
+
declare function Field({ children, label, htmlFor, required, optionalLabel, error, description, }: FieldProps): react_jsx_runtime.JSX.Element;
|
|
24
|
+
|
|
25
|
+
export { Field, useField };
|
|
26
|
+
export type { FieldProps };
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useId, useContext, createContext } from 'react';
|
|
3
|
+
import styles from './field.module.css.mjs';
|
|
4
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
5
|
+
|
|
6
|
+
const FieldContext = /*#__PURE__*/createContext({});
|
|
7
|
+
const useField = () => useContext(FieldContext);
|
|
8
|
+
function Field({
|
|
9
|
+
children,
|
|
10
|
+
label,
|
|
11
|
+
htmlFor,
|
|
12
|
+
required,
|
|
13
|
+
optionalLabel,
|
|
14
|
+
error,
|
|
15
|
+
description
|
|
16
|
+
}) {
|
|
17
|
+
const descriptionId = useId();
|
|
18
|
+
const errorId = useId();
|
|
19
|
+
return /*#__PURE__*/jsx(FieldContext.Provider, {
|
|
20
|
+
value: {
|
|
21
|
+
descriptionId: !error && description ? descriptionId : undefined,
|
|
22
|
+
errorId: error ? errorId : undefined
|
|
23
|
+
},
|
|
24
|
+
children: /*#__PURE__*/jsxs("div", {
|
|
25
|
+
className: styles.root,
|
|
26
|
+
children: [/*#__PURE__*/jsxs("label", {
|
|
27
|
+
className: styles.label,
|
|
28
|
+
htmlFor: htmlFor,
|
|
29
|
+
children: [label, required === false && /*#__PURE__*/jsx("span", {
|
|
30
|
+
className: styles.optional,
|
|
31
|
+
children: optionalLabel ?? "(Optional)"
|
|
32
|
+
})]
|
|
33
|
+
}), children, error && /*#__PURE__*/jsx("p", {
|
|
34
|
+
className: styles.errorMessage,
|
|
35
|
+
id: errorId,
|
|
36
|
+
children: error
|
|
37
|
+
}), !error && description && /*#__PURE__*/jsx("p", {
|
|
38
|
+
className: styles.description,
|
|
39
|
+
id: descriptionId,
|
|
40
|
+
children: description
|
|
41
|
+
})]
|
|
42
|
+
})
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export { Field, useField };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ComponentProps } from 'react';
|
|
3
|
+
|
|
4
|
+
type InputSize = "large" | "medium" | "small" | "x-small";
|
|
5
|
+
interface InputProps extends Omit<ComponentProps<"input">, "size"> {
|
|
6
|
+
description?: string;
|
|
7
|
+
disabled?: boolean;
|
|
8
|
+
error?: boolean | string;
|
|
9
|
+
label?: string;
|
|
10
|
+
size?: InputSize;
|
|
11
|
+
stretch?: boolean;
|
|
12
|
+
}
|
|
13
|
+
/** Text input component with size and variant options. */
|
|
14
|
+
declare function Input({ ref, className, style: _style, size, disabled, error, stretch, label, description, id: _id, ...props }: InputProps): react_jsx_runtime.JSX.Element;
|
|
15
|
+
|
|
16
|
+
export { Input };
|
|
17
|
+
export type { InputProps, InputSize };
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { input } from '../../ecosystem/codegen/generated/input.mjs';
|
|
3
|
+
import { useId } from 'react';
|
|
4
|
+
import { cn } from '../../cn.mjs';
|
|
5
|
+
import styles from './input.module.css.mjs';
|
|
6
|
+
import { jsx } from 'react/jsx-runtime';
|
|
7
|
+
import { Field, useField } from '../field/field.mjs';
|
|
8
|
+
|
|
9
|
+
/** Text input component with size and variant options. */
|
|
10
|
+
function Input({
|
|
11
|
+
ref,
|
|
12
|
+
className,
|
|
13
|
+
style: _style,
|
|
14
|
+
size = "medium",
|
|
15
|
+
disabled = false,
|
|
16
|
+
error = false,
|
|
17
|
+
stretch = false,
|
|
18
|
+
label,
|
|
19
|
+
description,
|
|
20
|
+
id: _id,
|
|
21
|
+
...props
|
|
22
|
+
}) {
|
|
23
|
+
const generatedId = useId();
|
|
24
|
+
const id = _id ?? generatedId;
|
|
25
|
+
const hasError = !!error;
|
|
26
|
+
const errorMessage = typeof error === "string" ? error : undefined;
|
|
27
|
+
const style = {
|
|
28
|
+
..._style
|
|
29
|
+
};
|
|
30
|
+
const inputEl = /*#__PURE__*/jsx(FieldAwareInput, {
|
|
31
|
+
"aria-invalid": hasError || undefined,
|
|
32
|
+
className: cn(input({
|
|
33
|
+
size
|
|
34
|
+
}), styles.input, stretch && styles.stretch, hasError && styles.error, className),
|
|
35
|
+
disabled: disabled,
|
|
36
|
+
id: id,
|
|
37
|
+
ref: ref,
|
|
38
|
+
style: style,
|
|
39
|
+
...props
|
|
40
|
+
});
|
|
41
|
+
if (label) {
|
|
42
|
+
return /*#__PURE__*/jsx(Field, {
|
|
43
|
+
description: description,
|
|
44
|
+
error: errorMessage,
|
|
45
|
+
htmlFor: id,
|
|
46
|
+
label: label,
|
|
47
|
+
required: props.required,
|
|
48
|
+
children: inputEl
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
return inputEl;
|
|
52
|
+
}
|
|
53
|
+
function FieldAwareInput({
|
|
54
|
+
"aria-describedby": callerDescribedBy,
|
|
55
|
+
...props
|
|
56
|
+
}) {
|
|
57
|
+
const field = useField();
|
|
58
|
+
const fieldDescribedBy = field.errorId ?? field.descriptionId;
|
|
59
|
+
const describedBy = [fieldDescribedBy, callerDescribedBy].filter(Boolean).join(" ") || undefined;
|
|
60
|
+
return /*#__PURE__*/jsx("input", {
|
|
61
|
+
"aria-describedby": describedBy,
|
|
62
|
+
...props
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
export { Input };
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ExternalLinkIcon } from '@cocso-ui/react-icons';
|
|
3
|
+
import { ComponentProps } from 'react';
|
|
4
|
+
import { useRender } from '@base-ui/react/use-render';
|
|
5
|
+
import { LineHeight, FontWeight } from '../../token/typography.mjs';
|
|
6
|
+
import { TypographyProps } from '../typography/typography.mjs';
|
|
7
|
+
|
|
8
|
+
type LinkSize = "large" | "medium" | "small" | "x-small";
|
|
9
|
+
type LinkVariant = "inline" | "current" | "plain";
|
|
10
|
+
interface LinkProps extends ComponentProps<"a"> {
|
|
11
|
+
indicator?: boolean;
|
|
12
|
+
lineHeight?: LineHeight;
|
|
13
|
+
render?: useRender.RenderProp;
|
|
14
|
+
size?: TypographyProps["size"];
|
|
15
|
+
type?: TypographyProps["type"];
|
|
16
|
+
variant?: LinkVariant;
|
|
17
|
+
weight?: FontWeight;
|
|
18
|
+
}
|
|
19
|
+
declare function LinkComponent({ ref, render: renderProp, className, style: _style, size, type, weight, lineHeight, variant, indicator, ...props }: LinkProps): react_jsx_runtime.JSX.Element;
|
|
20
|
+
declare function ExternalIcon({ className, ...props }: ComponentProps<typeof ExternalLinkIcon>): react_jsx_runtime.JSX.Element;
|
|
21
|
+
/** Styled anchor/link component with inline, current, and plain variants. */
|
|
22
|
+
declare const Link: typeof LinkComponent & {
|
|
23
|
+
displayName: "Link";
|
|
24
|
+
ExternalIcon: typeof ExternalIcon;
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
export { Link };
|
|
28
|
+
export type { LinkProps, LinkSize, LinkVariant };
|