agentic-ds-kit 0.1.0 → 0.2.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 +6 -7
- package/dist/lib/tokens.css +637 -0
- package/dist/src/index.d.ts +67 -0
- package/dist/src/index.js +69 -0
- package/dist/src/tokens.d.ts +0 -0
- package/dist/src/tokens.js +2 -0
- package/dist/ui/Accordion/Accordion.d.ts +3 -0
- package/dist/ui/Accordion/Accordion.js +49 -0
- package/dist/ui/Accordion/Accordion.js.map +1 -0
- package/{ui → dist/ui}/Accordion/Accordion.module.css +11 -11
- package/dist/ui/Accordion/Accordion.module.js +16 -0
- package/dist/ui/Accordion/Accordion.module.js.map +1 -0
- package/dist/ui/Accordion/Accordion.types.d.ts +9 -0
- package/dist/ui/Accordion/index.d.ts +2 -0
- package/dist/ui/Alert/Alert.d.ts +3 -0
- package/dist/ui/Alert/Alert.js +36 -0
- package/dist/ui/Alert/Alert.js.map +1 -0
- package/{ui → dist/ui}/Alert/Alert.module.css +12 -12
- package/dist/ui/Alert/Alert.module.js +17 -0
- package/dist/ui/Alert/Alert.module.js.map +1 -0
- package/{ui/Alert/Alert.types.ts → dist/ui/Alert/Alert.types.d.ts} +3 -4
- package/dist/ui/Alert/index.d.ts +2 -0
- package/dist/ui/AlertDialog/AlertDialog.d.ts +3 -0
- package/dist/ui/AlertDialog/AlertDialog.js +76 -0
- package/dist/ui/AlertDialog/AlertDialog.js.map +1 -0
- package/{ui → dist/ui}/AlertDialog/AlertDialog.module.css +11 -11
- package/dist/ui/AlertDialog/AlertDialog.module.js +17 -0
- package/dist/ui/AlertDialog/AlertDialog.module.js.map +1 -0
- package/dist/ui/AlertDialog/AlertDialog.types.d.ts +13 -0
- package/dist/ui/AlertDialog/index.d.ts +2 -0
- package/dist/ui/AppHeader/AppHeader.d.ts +3 -0
- package/dist/ui/AppHeader/AppHeader.js +57 -0
- package/dist/ui/AppHeader/AppHeader.js.map +1 -0
- package/{ui → dist/ui}/AppHeader/AppHeader.module.css +15 -15
- package/dist/ui/AppHeader/AppHeader.module.js +17 -0
- package/dist/ui/AppHeader/AppHeader.module.js.map +1 -0
- package/dist/ui/AppHeader/AppHeader.types.d.ts +26 -0
- package/dist/ui/AppHeader/index.d.ts +2 -0
- package/dist/ui/AppNav/AppNav.d.ts +3 -0
- package/dist/ui/AppNav/AppNav.js +108 -0
- package/dist/ui/AppNav/AppNav.js.map +1 -0
- package/{ui → dist/ui}/AppNav/AppNav.module.css +27 -27
- package/dist/ui/AppNav/AppNav.module.js +28 -0
- package/dist/ui/AppNav/AppNav.module.js.map +1 -0
- package/dist/ui/AppNav/AppNav.types.d.ts +21 -0
- package/{ui/AppNav/index.ts → dist/ui/AppNav/index.d.ts} +2 -2
- package/dist/ui/Avatar/Avatar.d.ts +3 -0
- package/dist/ui/Avatar/Avatar.js +48 -0
- package/dist/ui/Avatar/Avatar.js.map +1 -0
- package/{ui → dist/ui}/Avatar/Avatar.module.css +7 -7
- package/dist/ui/Avatar/Avatar.module.js +15 -0
- package/dist/ui/Avatar/Avatar.module.js.map +1 -0
- package/dist/ui/Avatar/Avatar.types.d.ts +7 -0
- package/dist/ui/Avatar/index.d.ts +2 -0
- package/dist/ui/AvatarGroup/AvatarGroup.d.ts +3 -0
- package/dist/ui/AvatarGroup/AvatarGroup.js +31 -0
- package/dist/ui/AvatarGroup/AvatarGroup.js.map +1 -0
- package/{ui → dist/ui}/AvatarGroup/AvatarGroup.module.css +7 -7
- package/dist/ui/AvatarGroup/AvatarGroup.module.js +14 -0
- package/dist/ui/AvatarGroup/AvatarGroup.module.js.map +1 -0
- package/dist/ui/AvatarGroup/AvatarGroup.types.d.ts +13 -0
- package/dist/ui/AvatarGroup/index.d.ts +2 -0
- package/dist/ui/Badge/Badge.d.ts +3 -0
- package/dist/ui/Badge/Badge.js +35 -0
- package/dist/ui/Badge/Badge.js.map +1 -0
- package/{ui → dist/ui}/Badge/Badge.module.css +14 -14
- package/dist/ui/Badge/Badge.module.js +20 -0
- package/dist/ui/Badge/Badge.module.js.map +1 -0
- package/{ui/Badge/Badge.types.ts → dist/ui/Badge/Badge.types.d.ts} +6 -7
- package/dist/ui/Badge/index.d.ts +2 -0
- package/dist/ui/BarChart/BarChart.d.ts +3 -0
- package/dist/ui/BarChart/BarChart.js +242 -0
- package/dist/ui/BarChart/BarChart.js.map +1 -0
- package/{ui → dist/ui}/BarChart/BarChart.module.css +10 -10
- package/dist/ui/BarChart/BarChart.module.js +16 -0
- package/dist/ui/BarChart/BarChart.module.js.map +1 -0
- package/dist/ui/BarChart/BarChart.types.d.ts +16 -0
- package/dist/ui/BarChart/index.d.ts +2 -0
- package/dist/ui/Breadcrumb/Breadcrumb.d.ts +3 -0
- package/dist/ui/Breadcrumb/Breadcrumb.js +78 -0
- package/dist/ui/Breadcrumb/Breadcrumb.js.map +1 -0
- package/{ui → dist/ui}/Breadcrumb/Breadcrumb.module.css +11 -11
- package/dist/ui/Breadcrumb/Breadcrumb.module.js +16 -0
- package/dist/ui/Breadcrumb/Breadcrumb.module.js.map +1 -0
- package/dist/ui/Breadcrumb/Breadcrumb.types.d.ts +12 -0
- package/dist/ui/Breadcrumb/index.d.ts +2 -0
- package/dist/ui/Button/Button.d.ts +3 -0
- package/dist/ui/Button/Button.js +44 -0
- package/dist/ui/Button/Button.js.map +1 -0
- package/{ui → dist/ui}/Button/Button.module.css +20 -20
- package/dist/ui/Button/Button.module.js +20 -0
- package/dist/ui/Button/Button.module.js.map +1 -0
- package/dist/ui/Button/Button.types.d.ts +17 -0
- package/dist/ui/Button/index.d.ts +2 -0
- package/dist/ui/Button/lucideName.d.ts +5 -0
- package/dist/ui/Button/lucideName.js +103 -0
- package/dist/ui/Button/lucideName.js.map +1 -0
- package/dist/ui/ButtonGroup/ButtonGroup.d.ts +3 -0
- package/dist/ui/ButtonGroup/ButtonGroup.js +15 -0
- package/dist/ui/ButtonGroup/ButtonGroup.js.map +1 -0
- package/dist/ui/ButtonGroup/ButtonGroup.module.css +31 -0
- package/dist/ui/ButtonGroup/ButtonGroup.module.js +7 -0
- package/dist/ui/ButtonGroup/ButtonGroup.module.js.map +1 -0
- package/dist/ui/ButtonGroup/ButtonGroup.types.d.ts +5 -0
- package/dist/ui/ButtonGroup/index.d.ts +2 -0
- package/dist/ui/Calendar/Calendar.d.ts +3 -0
- package/dist/ui/Calendar/Calendar.js +205 -0
- package/dist/ui/Calendar/Calendar.js.map +1 -0
- package/{ui → dist/ui}/Calendar/Calendar.module.css +22 -22
- package/dist/ui/Calendar/Calendar.module.js +20 -0
- package/dist/ui/Calendar/Calendar.module.js.map +1 -0
- package/dist/ui/Calendar/Calendar.types.d.ts +10 -0
- package/dist/ui/Calendar/index.d.ts +2 -0
- package/dist/ui/Card/Card.d.ts +3 -0
- package/dist/ui/Card/Card.js +57 -0
- package/dist/ui/Card/Card.js.map +1 -0
- package/{ui → dist/ui}/Card/Card.module.css +13 -13
- package/dist/ui/Card/Card.module.js +18 -0
- package/dist/ui/Card/Card.module.js.map +1 -0
- package/dist/ui/Card/Card.types.d.ts +20 -0
- package/{ui/Card/index.ts → dist/ui/Card/index.d.ts} +2 -2
- package/dist/ui/Carousel/Carousel.d.ts +3 -0
- package/dist/ui/Carousel/Carousel.js +99 -0
- package/dist/ui/Carousel/Carousel.js.map +1 -0
- package/{ui → dist/ui}/Carousel/Carousel.module.css +22 -22
- package/dist/ui/Carousel/Carousel.module.js +21 -0
- package/dist/ui/Carousel/Carousel.module.js.map +1 -0
- package/dist/ui/Carousel/Carousel.types.d.ts +15 -0
- package/dist/ui/Carousel/index.d.ts +2 -0
- package/dist/ui/Cell/Cell.d.ts +3 -0
- package/dist/ui/Cell/Cell.js +215 -0
- package/dist/ui/Cell/Cell.js.map +1 -0
- package/{ui → dist/ui}/Cell/Cell.module.css +23 -23
- package/dist/ui/Cell/Cell.module.js +27 -0
- package/dist/ui/Cell/Cell.module.js.map +1 -0
- package/dist/ui/Cell/Cell.types.d.ts +46 -0
- package/dist/ui/Cell/index.d.ts +2 -0
- package/dist/ui/Chat/Chat.d.ts +3 -0
- package/dist/ui/Chat/Chat.js +149 -0
- package/dist/ui/Chat/Chat.js.map +1 -0
- package/{ui → dist/ui}/Chat/Chat.module.css +21 -21
- package/dist/ui/Chat/Chat.module.js +27 -0
- package/dist/ui/Chat/Chat.module.js.map +1 -0
- package/dist/ui/Chat/Chat.types.d.ts +35 -0
- package/dist/ui/Chat/index.d.ts +2 -0
- package/dist/ui/Checkbox/Checkbox.d.ts +3 -0
- package/dist/ui/Checkbox/Checkbox.js +64 -0
- package/dist/ui/Checkbox/Checkbox.js.map +1 -0
- package/{ui → dist/ui}/Checkbox/Checkbox.module.css +28 -28
- package/dist/ui/Checkbox/Checkbox.module.js +16 -0
- package/dist/ui/Checkbox/Checkbox.module.js.map +1 -0
- package/dist/ui/Checkbox/Checkbox.types.d.ts +14 -0
- package/dist/ui/Checkbox/index.d.ts +2 -0
- package/dist/ui/Collapsible/Collapsible.d.ts +3 -0
- package/dist/ui/Collapsible/Collapsible.js +50 -0
- package/dist/ui/Collapsible/Collapsible.js.map +1 -0
- package/{ui → dist/ui}/Collapsible/Collapsible.module.css +8 -8
- package/dist/ui/Collapsible/Collapsible.module.js +14 -0
- package/dist/ui/Collapsible/Collapsible.module.js.map +1 -0
- package/dist/ui/Collapsible/Collapsible.types.d.ts +8 -0
- package/dist/ui/Collapsible/index.d.ts +2 -0
- package/dist/ui/Command/Command.d.ts +3 -0
- package/dist/ui/Command/Command.js +120 -0
- package/dist/ui/Command/Command.js.map +1 -0
- package/{ui → dist/ui}/Command/Command.module.css +22 -22
- package/dist/ui/Command/Command.module.js +22 -0
- package/dist/ui/Command/Command.module.js.map +1 -0
- package/dist/ui/Command/Command.types.d.ts +18 -0
- package/dist/ui/Command/index.d.ts +2 -0
- package/dist/ui/DataTable/DataTable.d.ts +3 -0
- package/dist/ui/DataTable/DataTable.js +324 -0
- package/dist/ui/DataTable/DataTable.js.map +1 -0
- package/{ui → dist/ui}/DataTable/DataTable.module.css +34 -34
- package/dist/ui/DataTable/DataTable.module.js +27 -0
- package/dist/ui/DataTable/DataTable.module.js.map +1 -0
- package/dist/ui/DataTable/DataTable.types.d.ts +28 -0
- package/dist/ui/DataTable/index.d.ts +2 -0
- package/dist/ui/DatePicker/DatePicker.d.ts +3 -0
- package/dist/ui/DatePicker/DatePicker.js +92 -0
- package/dist/ui/DatePicker/DatePicker.js.map +1 -0
- package/{ui → dist/ui}/DatePicker/DatePicker.module.css +7 -7
- package/dist/ui/DatePicker/DatePicker.module.js +14 -0
- package/dist/ui/DatePicker/DatePicker.module.js.map +1 -0
- package/dist/ui/DatePicker/DatePicker.types.d.ts +14 -0
- package/dist/ui/DatePicker/index.d.ts +2 -0
- package/dist/ui/Drawer/Drawer.d.ts +3 -0
- package/dist/ui/Drawer/Drawer.js +82 -0
- package/dist/ui/Drawer/Drawer.js.map +1 -0
- package/{ui → dist/ui}/Drawer/Drawer.module.css +31 -31
- package/dist/ui/Drawer/Drawer.module.js +26 -0
- package/dist/ui/Drawer/Drawer.module.js.map +1 -0
- package/dist/ui/Drawer/Drawer.types.d.ts +12 -0
- package/dist/ui/Drawer/index.d.ts +2 -0
- package/dist/ui/DropdownMenu/DropdownMenu.d.ts +3 -0
- package/dist/ui/DropdownMenu/DropdownMenu.js +378 -0
- package/dist/ui/DropdownMenu/DropdownMenu.js.map +1 -0
- package/{ui → dist/ui}/DropdownMenu/DropdownMenu.module.css +53 -53
- package/dist/ui/DropdownMenu/DropdownMenu.module.js +42 -0
- package/dist/ui/DropdownMenu/DropdownMenu.module.js.map +1 -0
- package/dist/ui/DropdownMenu/DropdownMenu.types.d.ts +44 -0
- package/dist/ui/DropdownMenu/index.d.ts +2 -0
- package/dist/ui/Empty/Empty.d.ts +3 -0
- package/dist/ui/Empty/Empty.js +43 -0
- package/dist/ui/Empty/Empty.js.map +1 -0
- package/{ui → dist/ui}/Empty/Empty.module.css +9 -9
- package/dist/ui/Empty/Empty.module.js +16 -0
- package/dist/ui/Empty/Empty.module.js.map +1 -0
- package/dist/ui/Empty/Empty.types.d.ts +9 -0
- package/dist/ui/Empty/index.d.ts +2 -0
- package/dist/ui/Field/Field.d.ts +3 -0
- package/dist/ui/Field/Field.js +38 -0
- package/dist/ui/Field/Field.js.map +1 -0
- package/{ui → dist/ui}/Field/Field.module.css +11 -11
- package/dist/ui/Field/Field.module.js +15 -0
- package/dist/ui/Field/Field.module.js.map +1 -0
- package/dist/ui/Field/Field.types.d.ts +10 -0
- package/dist/ui/Field/index.d.ts +2 -0
- package/dist/ui/FieldSet/FieldSet.d.ts +3 -0
- package/dist/ui/FieldSet/FieldSet.js +26 -0
- package/dist/ui/FieldSet/FieldSet.js.map +1 -0
- package/{ui → dist/ui}/FieldSet/FieldSet.module.css +4 -4
- package/dist/ui/FieldSet/FieldSet.module.js +12 -0
- package/dist/ui/FieldSet/FieldSet.module.js.map +1 -0
- package/dist/ui/FieldSet/FieldSet.types.d.ts +6 -0
- package/dist/ui/FieldSet/index.d.ts +2 -0
- package/dist/ui/HeaderCell/HeaderCell.d.ts +3 -0
- package/dist/ui/HeaderCell/HeaderCell.js +42 -0
- package/dist/ui/HeaderCell/HeaderCell.js.map +1 -0
- package/{ui → dist/ui}/HeaderCell/HeaderCell.module.css +14 -14
- package/dist/ui/HeaderCell/HeaderCell.module.js +19 -0
- package/dist/ui/HeaderCell/HeaderCell.module.js.map +1 -0
- package/dist/ui/HeaderCell/HeaderCell.types.d.ts +17 -0
- package/dist/ui/HeaderCell/index.d.ts +2 -0
- package/dist/ui/Input/Input.d.ts +3 -0
- package/dist/ui/Input/Input.js +58 -0
- package/dist/ui/Input/Input.js.map +1 -0
- package/{ui → dist/ui}/Input/Input.module.css +12 -12
- package/dist/ui/Input/Input.module.js +13 -0
- package/dist/ui/Input/Input.module.js.map +1 -0
- package/dist/ui/Input/Input.types.d.ts +21 -0
- package/dist/ui/Input/index.d.ts +2 -0
- package/dist/ui/InputOTP/InputOTP.d.ts +3 -0
- package/dist/ui/InputOTP/InputOTP.js +86 -0
- package/dist/ui/InputOTP/InputOTP.js.map +1 -0
- package/{ui → dist/ui}/InputOTP/InputOTP.module.css +20 -20
- package/dist/ui/InputOTP/InputOTP.module.js +20 -0
- package/dist/ui/InputOTP/InputOTP.module.js.map +1 -0
- package/dist/ui/InputOTP/InputOTP.types.d.ts +18 -0
- package/{ui/InputOTP/index.ts → dist/ui/InputOTP/index.d.ts} +2 -2
- package/dist/ui/InsightCard/InsightCard.d.ts +3 -0
- package/dist/ui/InsightCard/InsightCard.js +89 -0
- package/dist/ui/InsightCard/InsightCard.js.map +1 -0
- package/{ui → dist/ui}/InsightCard/InsightCard.module.css +23 -23
- package/dist/ui/InsightCard/InsightCard.module.js +29 -0
- package/dist/ui/InsightCard/InsightCard.module.js.map +1 -0
- package/dist/ui/InsightCard/InsightCard.types.d.ts +18 -0
- package/dist/ui/InsightCard/index.d.ts +2 -0
- package/dist/ui/LineChart/LineChart.d.ts +3 -0
- package/dist/ui/LineChart/LineChart.js +307 -0
- package/dist/ui/LineChart/LineChart.js.map +1 -0
- package/{ui → dist/ui}/LineChart/LineChart.module.css +16 -16
- package/dist/ui/LineChart/LineChart.module.js +22 -0
- package/dist/ui/LineChart/LineChart.module.js.map +1 -0
- package/dist/ui/LineChart/LineChart.types.d.ts +17 -0
- package/dist/ui/LineChart/index.d.ts +2 -0
- package/dist/ui/LoadingAnimation/LoadingAnimation.d.ts +3 -0
- package/dist/ui/LoadingAnimation/LoadingAnimation.js +24 -0
- package/dist/ui/LoadingAnimation/LoadingAnimation.js.map +1 -0
- package/{ui → dist/ui}/LoadingAnimation/LoadingAnimation.module.css +11 -11
- package/dist/ui/LoadingAnimation/LoadingAnimation.module.js +13 -0
- package/dist/ui/LoadingAnimation/LoadingAnimation.module.js.map +1 -0
- package/{ui/LoadingAnimation/LoadingAnimation.types.ts → dist/ui/LoadingAnimation/LoadingAnimation.types.d.ts} +4 -5
- package/dist/ui/LoadingAnimation/index.d.ts +2 -0
- package/dist/ui/Modal/Modal.d.ts +3 -0
- package/dist/ui/Modal/Modal.js +66 -0
- package/dist/ui/Modal/Modal.js.map +1 -0
- package/{ui → dist/ui}/Modal/Modal.module.css +7 -7
- package/dist/ui/Modal/Modal.module.js +12 -0
- package/dist/ui/Modal/Modal.module.js.map +1 -0
- package/dist/ui/Modal/Modal.types.d.ts +13 -0
- package/dist/ui/Modal/index.d.ts +2 -0
- package/dist/ui/ModalCard/ModalCard.d.ts +3 -0
- package/dist/ui/ModalCard/ModalCard.js +56 -0
- package/dist/ui/ModalCard/ModalCard.js.map +1 -0
- package/{ui → dist/ui}/ModalCard/ModalCard.module.css +20 -20
- package/dist/ui/ModalCard/ModalCard.module.js +20 -0
- package/dist/ui/ModalCard/ModalCard.module.js.map +1 -0
- package/dist/ui/ModalCard/ModalCard.types.d.ts +13 -0
- package/dist/ui/ModalCard/index.d.ts +2 -0
- package/dist/ui/NavigationMenu/NavigationMenu.d.ts +3 -0
- package/dist/ui/NavigationMenu/NavigationMenu.js +35 -0
- package/dist/ui/NavigationMenu/NavigationMenu.js.map +1 -0
- package/{ui → dist/ui}/NavigationMenu/NavigationMenu.module.css +5 -5
- package/dist/ui/NavigationMenu/NavigationMenu.module.js +11 -0
- package/dist/ui/NavigationMenu/NavigationMenu.module.js.map +1 -0
- package/dist/ui/NavigationMenu/NavigationMenu.types.d.ts +18 -0
- package/dist/ui/NavigationMenu/index.d.ts +2 -0
- package/dist/ui/NumberTransition/NumberTransition.d.ts +3 -0
- package/dist/ui/NumberTransition/NumberTransition.js +54 -0
- package/dist/ui/NumberTransition/NumberTransition.js.map +1 -0
- package/{ui → dist/ui}/NumberTransition/NumberTransition.module.css +21 -21
- package/dist/ui/NumberTransition/NumberTransition.module.js +20 -0
- package/dist/ui/NumberTransition/NumberTransition.module.js.map +1 -0
- package/dist/ui/NumberTransition/NumberTransition.types.d.ts +8 -0
- package/dist/ui/NumberTransition/index.d.ts +2 -0
- package/dist/ui/PageHeader/PageHeader.d.ts +3 -0
- package/dist/ui/PageHeader/PageHeader.js +44 -0
- package/dist/ui/PageHeader/PageHeader.js.map +1 -0
- package/{ui → dist/ui}/PageHeader/PageHeader.module.css +8 -8
- package/dist/ui/PageHeader/PageHeader.module.js +16 -0
- package/dist/ui/PageHeader/PageHeader.module.js.map +1 -0
- package/dist/ui/PageHeader/PageHeader.types.d.ts +11 -0
- package/dist/ui/PageHeader/index.d.ts +2 -0
- package/dist/ui/Pagination/Pagination.d.ts +3 -0
- package/dist/ui/Pagination/Pagination.js +109 -0
- package/dist/ui/Pagination/Pagination.js.map +1 -0
- package/{ui → dist/ui}/Pagination/Pagination.module.css +3 -3
- package/dist/ui/Pagination/Pagination.module.js +11 -0
- package/dist/ui/Pagination/Pagination.module.js.map +1 -0
- package/dist/ui/Pagination/Pagination.types.d.ts +11 -0
- package/dist/ui/Pagination/index.d.ts +2 -0
- package/dist/ui/PieChart/PieChart.d.ts +3 -0
- package/dist/ui/PieChart/PieChart.js +254 -0
- package/dist/ui/PieChart/PieChart.js.map +1 -0
- package/{ui → dist/ui}/PieChart/PieChart.module.css +22 -22
- package/dist/ui/PieChart/PieChart.module.js +22 -0
- package/dist/ui/PieChart/PieChart.module.js.map +1 -0
- package/dist/ui/PieChart/PieChart.types.d.ts +20 -0
- package/{ui/PieChart/index.ts → dist/ui/PieChart/index.d.ts} +2 -2
- package/dist/ui/Progress/Progress.d.ts +3 -0
- package/dist/ui/Progress/Progress.js +117 -0
- package/dist/ui/Progress/Progress.js.map +1 -0
- package/{ui → dist/ui}/Progress/Progress.module.css +42 -42
- package/dist/ui/Progress/Progress.module.js +32 -0
- package/dist/ui/Progress/Progress.module.js.map +1 -0
- package/{ui/Progress/Progress.types.ts → dist/ui/Progress/Progress.types.d.ts} +8 -9
- package/dist/ui/Progress/index.d.ts +2 -0
- package/dist/ui/ProgressSteps/ProgressSteps.d.ts +3 -0
- package/dist/ui/ProgressSteps/ProgressSteps.js +92 -0
- package/dist/ui/ProgressSteps/ProgressSteps.js.map +1 -0
- package/{ui → dist/ui}/ProgressSteps/ProgressSteps.module.css +33 -33
- package/dist/ui/ProgressSteps/ProgressSteps.module.js +31 -0
- package/dist/ui/ProgressSteps/ProgressSteps.module.js.map +1 -0
- package/{ui/ProgressSteps/ProgressSteps.types.ts → dist/ui/ProgressSteps/ProgressSteps.types.d.ts} +10 -12
- package/dist/ui/ProgressSteps/index.d.ts +2 -0
- package/dist/ui/RadioGroup/RadioGroup.d.ts +3 -0
- package/dist/ui/RadioGroup/RadioGroup.js +87 -0
- package/dist/ui/RadioGroup/RadioGroup.js.map +1 -0
- package/{ui → dist/ui}/RadioGroup/RadioGroup.module.css +48 -48
- package/dist/ui/RadioGroup/RadioGroup.module.js +27 -0
- package/dist/ui/RadioGroup/RadioGroup.module.js.map +1 -0
- package/dist/ui/RadioGroup/RadioGroup.types.d.ts +27 -0
- package/dist/ui/RadioGroup/index.d.ts +2 -0
- package/dist/ui/Scoreboard/Scoreboard.d.ts +3 -0
- package/dist/ui/Scoreboard/Scoreboard.js +33 -0
- package/dist/ui/Scoreboard/Scoreboard.js.map +1 -0
- package/{ui → dist/ui}/Scoreboard/Scoreboard.module.css +11 -11
- package/dist/ui/Scoreboard/Scoreboard.module.js +15 -0
- package/dist/ui/Scoreboard/Scoreboard.module.js.map +1 -0
- package/dist/ui/Scoreboard/Scoreboard.types.d.ts +6 -0
- package/dist/ui/Scoreboard/index.d.ts +2 -0
- package/dist/ui/Scorecard/Scorecard.d.ts +3 -0
- package/dist/ui/Scorecard/Scorecard.js +76 -0
- package/dist/ui/Scorecard/Scorecard.js.map +1 -0
- package/{ui → dist/ui}/Scorecard/Scorecard.module.css +25 -25
- package/dist/ui/Scorecard/Scorecard.module.js +26 -0
- package/dist/ui/Scorecard/Scorecard.module.js.map +1 -0
- package/dist/ui/Scorecard/Scorecard.types.d.ts +15 -0
- package/dist/ui/Scorecard/index.d.ts +2 -0
- package/dist/ui/Section/Section.d.ts +3 -0
- package/dist/ui/Section/Section.js +54 -0
- package/dist/ui/Section/Section.js.map +1 -0
- package/{ui → dist/ui}/Section/Section.module.css +15 -15
- package/dist/ui/Section/Section.module.js +21 -0
- package/dist/ui/Section/Section.module.js.map +1 -0
- package/dist/ui/Section/Section.types.d.ts +13 -0
- package/dist/ui/Section/index.d.ts +2 -0
- package/dist/ui/Select/Select.d.ts +3 -0
- package/dist/ui/Select/Select.js +59 -0
- package/dist/ui/Select/Select.js.map +1 -0
- package/dist/ui/Select/Select.types.d.ts +24 -0
- package/dist/ui/Select/index.d.ts +2 -0
- package/dist/ui/ShimmerText/ShimmerText.d.ts +3 -0
- package/dist/ui/ShimmerText/ShimmerText.js +35 -0
- package/dist/ui/ShimmerText/ShimmerText.js.map +1 -0
- package/{ui → dist/ui}/ShimmerText/ShimmerText.module.css +8 -8
- package/dist/ui/ShimmerText/ShimmerText.module.js +14 -0
- package/dist/ui/ShimmerText/ShimmerText.module.js.map +1 -0
- package/dist/ui/ShimmerText/ShimmerText.types.d.ts +10 -0
- package/dist/ui/ShimmerText/index.d.ts +2 -0
- package/dist/ui/SideNav/SideNav.d.ts +3 -0
- package/dist/ui/SideNav/SideNav.js +176 -0
- package/dist/ui/SideNav/SideNav.js.map +1 -0
- package/{ui → dist/ui}/SideNav/SideNav.module.css +54 -54
- package/dist/ui/SideNav/SideNav.module.js +32 -0
- package/dist/ui/SideNav/SideNav.module.js.map +1 -0
- package/dist/ui/SideNav/SideNav.types.d.ts +38 -0
- package/dist/ui/SideNav/index.d.ts +2 -0
- package/dist/ui/Slider/Slider.d.ts +3 -0
- package/dist/ui/Slider/Slider.js +129 -0
- package/dist/ui/Slider/Slider.js.map +1 -0
- package/{ui → dist/ui}/Slider/Slider.module.css +18 -18
- package/dist/ui/Slider/Slider.module.js +15 -0
- package/dist/ui/Slider/Slider.module.js.map +1 -0
- package/dist/ui/Slider/Slider.types.d.ts +10 -0
- package/dist/ui/Slider/index.d.ts +2 -0
- package/dist/ui/Spinner/Spinner.d.ts +3 -0
- package/dist/ui/Spinner/Spinner.js +24 -0
- package/dist/ui/Spinner/Spinner.js.map +1 -0
- package/{ui → dist/ui}/Spinner/Spinner.module.css +11 -11
- package/dist/ui/Spinner/Spinner.module.js +15 -0
- package/dist/ui/Spinner/Spinner.module.js.map +1 -0
- package/{ui/Spinner/Spinner.types.ts → dist/ui/Spinner/Spinner.types.d.ts} +2 -3
- package/dist/ui/Spinner/index.d.ts +2 -0
- package/dist/ui/Switch/Switch.d.ts +3 -0
- package/dist/ui/Switch/Switch.js +45 -0
- package/dist/ui/Switch/Switch.js.map +1 -0
- package/{ui → dist/ui}/Switch/Switch.module.css +27 -27
- package/dist/ui/Switch/Switch.module.js +18 -0
- package/dist/ui/Switch/Switch.module.js.map +1 -0
- package/dist/ui/Switch/Switch.types.d.ts +11 -0
- package/dist/ui/Switch/index.d.ts +2 -0
- package/dist/ui/Table/Table.d.ts +3 -0
- package/dist/ui/Table/Table.js +84 -0
- package/dist/ui/Table/Table.js.map +1 -0
- package/{ui → dist/ui}/Table/Table.module.css +24 -24
- package/dist/ui/Table/Table.module.js +22 -0
- package/dist/ui/Table/Table.module.js.map +1 -0
- package/dist/ui/Table/Table.types.d.ts +22 -0
- package/dist/ui/Table/index.d.ts +2 -0
- package/dist/ui/Tabs/Tabs.d.ts +3 -0
- package/dist/ui/Tabs/Tabs.js +112 -0
- package/dist/ui/Tabs/Tabs.js.map +1 -0
- package/{ui → dist/ui}/Tabs/Tabs.module.css +26 -26
- package/dist/ui/Tabs/Tabs.module.js +18 -0
- package/dist/ui/Tabs/Tabs.module.js.map +1 -0
- package/dist/ui/Tabs/Tabs.types.d.ts +18 -0
- package/dist/ui/Tabs/index.d.ts +2 -0
- package/dist/ui/Textarea/Textarea.d.ts +3 -0
- package/dist/ui/Textarea/Textarea.js +26 -0
- package/dist/ui/Textarea/Textarea.js.map +1 -0
- package/{ui → dist/ui}/Textarea/Textarea.module.css +15 -15
- package/dist/ui/Textarea/Textarea.module.js +13 -0
- package/dist/ui/Textarea/Textarea.module.js.map +1 -0
- package/dist/ui/Textarea/Textarea.types.d.ts +13 -0
- package/dist/ui/Textarea/index.d.ts +2 -0
- package/dist/ui/ThinkingAnimation/ThinkingAnimation.d.ts +3 -0
- package/dist/ui/ThinkingAnimation/ThinkingAnimation.js +28 -0
- package/dist/ui/ThinkingAnimation/ThinkingAnimation.js.map +1 -0
- package/{ui → dist/ui}/ThinkingAnimation/ThinkingAnimation.module.css +13 -13
- package/dist/ui/ThinkingAnimation/ThinkingAnimation.module.js +15 -0
- package/dist/ui/ThinkingAnimation/ThinkingAnimation.module.js.map +1 -0
- package/dist/ui/ThinkingAnimation/ThinkingAnimation.types.d.ts +7 -0
- package/dist/ui/ThinkingAnimation/index.d.ts +2 -0
- package/dist/ui/Timeline/Timeline.d.ts +3 -0
- package/dist/ui/Timeline/Timeline.js +50 -0
- package/dist/ui/Timeline/Timeline.js.map +1 -0
- package/{ui → dist/ui}/Timeline/Timeline.module.css +16 -16
- package/dist/ui/Timeline/Timeline.module.js +20 -0
- package/dist/ui/Timeline/Timeline.module.js.map +1 -0
- package/dist/ui/Timeline/Timeline.types.d.ts +14 -0
- package/{ui/Timeline/index.ts → dist/ui/Timeline/index.d.ts} +2 -2
- package/dist/ui/Toast/Toast.d.ts +3 -0
- package/dist/ui/Toast/Toast.js +86 -0
- package/dist/ui/Toast/Toast.js.map +1 -0
- package/{ui → dist/ui}/Toast/Toast.module.css +20 -20
- package/dist/ui/Toast/Toast.module.js +24 -0
- package/dist/ui/Toast/Toast.module.js.map +1 -0
- package/dist/ui/Toast/Toast.types.d.ts +15 -0
- package/dist/ui/Toast/index.d.ts +2 -0
- package/dist/ui/Tooltip/Tooltip.d.ts +12 -0
- package/dist/ui/Tooltip/Tooltip.js +51 -0
- package/dist/ui/Tooltip/Tooltip.js.map +1 -0
- package/{ui → dist/ui}/Tooltip/Tooltip.module.css +17 -17
- package/dist/ui/Tooltip/Tooltip.module.js +16 -0
- package/dist/ui/Tooltip/Tooltip.module.js.map +1 -0
- package/dist/ui/Tooltip/index.d.ts +2 -0
- package/dist/ui/patterns/ActivityPattern/ActivityFeed.d.ts +4 -0
- package/dist/ui/patterns/ActivityPattern/ActivityFeed.js +162 -0
- package/dist/ui/patterns/ActivityPattern/ActivityFeed.js.map +1 -0
- package/dist/ui/patterns/ActivityPattern/ActivityPattern.d.ts +5 -0
- package/dist/ui/patterns/ActivityPattern/ActivityPattern.js +168 -0
- package/dist/ui/patterns/ActivityPattern/ActivityPattern.js.map +1 -0
- package/dist/ui/patterns/ActivityPattern/ActivityTasks.d.ts +11 -0
- package/dist/ui/patterns/ActivityPattern/ActivityTasks.js +89 -0
- package/dist/ui/patterns/ActivityPattern/ActivityTasks.js.map +1 -0
- package/dist/ui/patterns/ActivityPattern/TaskDrawer.d.ts +21 -0
- package/dist/ui/patterns/ActivityPattern/TaskDrawer.js +184 -0
- package/dist/ui/patterns/ActivityPattern/TaskDrawer.js.map +1 -0
- package/{ui → dist/ui}/patterns/ActivityPattern/TaskDrawer.module.css +6 -6
- package/dist/ui/patterns/ActivityPattern/TaskDrawer.module.js +14 -0
- package/dist/ui/patterns/ActivityPattern/TaskDrawer.module.js.map +1 -0
- package/dist/ui/patterns/ActivityPattern/index.d.ts +2 -0
- package/dist/ui/patterns/AssistantWorkspacePattern/AssistantWorkspacePattern.d.ts +5 -0
- package/dist/ui/patterns/AssistantWorkspacePattern/AssistantWorkspacePattern.js +123 -0
- package/dist/ui/patterns/AssistantWorkspacePattern/AssistantWorkspacePattern.js.map +1 -0
- package/{ui → dist/ui}/patterns/AssistantWorkspacePattern/AssistantWorkspacePattern.module.css +3 -3
- package/dist/ui/patterns/AssistantWorkspacePattern/AssistantWorkspacePattern.module.js +11 -0
- package/dist/ui/patterns/AssistantWorkspacePattern/AssistantWorkspacePattern.module.js.map +1 -0
- package/dist/ui/patterns/AssistantWorkspacePattern/index.d.ts +2 -0
- package/dist/ui/patterns/DashboardPattern/DashboardPattern.d.ts +4 -0
- package/dist/ui/patterns/DashboardPattern/DashboardPattern.js +225 -0
- package/dist/ui/patterns/DashboardPattern/DashboardPattern.js.map +1 -0
- package/dist/ui/patterns/DashboardPattern/index.d.ts +1 -0
- package/dist/ui/patterns/EmptyFirstRunPattern/EmptyFirstRunPattern.d.ts +8 -0
- package/dist/ui/patterns/EmptyFirstRunPattern/EmptyFirstRunPattern.js +109 -0
- package/dist/ui/patterns/EmptyFirstRunPattern/EmptyFirstRunPattern.js.map +1 -0
- package/dist/ui/patterns/EmptyFirstRunPattern/index.d.ts +2 -0
- package/dist/ui/patterns/InboxPattern/InboxPattern.d.ts +5 -0
- package/dist/ui/patterns/InboxPattern/InboxPattern.js +275 -0
- package/dist/ui/patterns/InboxPattern/InboxPattern.js.map +1 -0
- package/{ui → dist/ui}/patterns/InboxPattern/InboxPattern.module.css +6 -6
- package/dist/ui/patterns/InboxPattern/InboxPattern.module.js +14 -0
- package/dist/ui/patterns/InboxPattern/InboxPattern.module.js.map +1 -0
- package/dist/ui/patterns/InboxPattern/InboxReplyDrawer.d.ts +7 -0
- package/dist/ui/patterns/InboxPattern/InboxReplyDrawer.js +87 -0
- package/dist/ui/patterns/InboxPattern/InboxReplyDrawer.js.map +1 -0
- package/dist/ui/patterns/InboxPattern/inbox-data.d.ts +15 -0
- package/dist/ui/patterns/InboxPattern/inbox-data.js +86 -0
- package/dist/ui/patterns/InboxPattern/inbox-data.js.map +1 -0
- package/dist/ui/patterns/InboxPattern/index.d.ts +2 -0
- package/dist/ui/patterns/InviteMembersPattern/InviteMembersPattern.d.ts +9 -0
- package/dist/ui/patterns/InviteMembersPattern/InviteMembersPattern.js +158 -0
- package/dist/ui/patterns/InviteMembersPattern/InviteMembersPattern.js.map +1 -0
- package/dist/ui/patterns/InviteMembersPattern/index.d.ts +2 -0
- package/dist/ui/patterns/ListDetailPattern/ListDetailPattern.d.ts +16 -0
- package/dist/ui/patterns/ListDetailPattern/ListDetailPattern.js +143 -0
- package/dist/ui/patterns/ListDetailPattern/ListDetailPattern.js.map +1 -0
- package/{ui → dist/ui}/patterns/ListDetailPattern/ListDetailPattern.module.css +5 -5
- package/dist/ui/patterns/ListDetailPattern/ListDetailPattern.module.js +12 -0
- package/dist/ui/patterns/ListDetailPattern/ListDetailPattern.module.js.map +1 -0
- package/dist/ui/patterns/ListDetailPattern/index.d.ts +2 -0
- package/dist/ui/patterns/SettingsFormPattern/SettingsFormPattern.d.ts +7 -0
- package/dist/ui/patterns/SettingsFormPattern/SettingsFormPattern.js +127 -0
- package/dist/ui/patterns/SettingsFormPattern/SettingsFormPattern.js.map +1 -0
- package/{ui → dist/ui}/patterns/SettingsFormPattern/SettingsFormPattern.module.css +2 -2
- package/dist/ui/patterns/SettingsFormPattern/SettingsFormPattern.module.js +10 -0
- package/dist/ui/patterns/SettingsFormPattern/SettingsFormPattern.module.js.map +1 -0
- package/dist/ui/patterns/SettingsFormPattern/index.d.ts +2 -0
- package/dist/ui/shared/ChartFrame.d.ts +14 -0
- package/dist/ui/shared/ChartFrame.js +61 -0
- package/dist/ui/shared/ChartFrame.js.map +1 -0
- package/{ui → dist/ui}/shared/ChartFrame.module.css +41 -41
- package/dist/ui/shared/ChartFrame.module.js +39 -0
- package/dist/ui/shared/ChartFrame.module.js.map +1 -0
- package/dist/ui/shared/chartMath.d.ts +78 -0
- package/dist/ui/shared/chartMath.js +127 -0
- package/dist/ui/shared/chartMath.js.map +1 -0
- package/{ui → dist/ui}/shared/controls.module.css +8 -8
- package/dist/ui/shared/controls.module.js +13 -0
- package/dist/ui/shared/controls.module.js.map +1 -0
- package/dist/ui/shared/useChartSize.d.ts +5 -0
- package/dist/ui/shared/useChartSize.js +22 -0
- package/dist/ui/shared/useChartSize.js.map +1 -0
- package/package.json +28 -8
- package/skills/prototype-from-kit/SKILL.md +1 -1
- package/src/index.ts +0 -71
- package/ui/Accordion/Accordion.tsx +0 -51
- package/ui/Accordion/Accordion.types.ts +0 -10
- package/ui/Accordion/index.ts +0 -2
- package/ui/Alert/Alert.tsx +0 -27
- package/ui/Alert/index.ts +0 -2
- package/ui/AlertDialog/AlertDialog.tsx +0 -109
- package/ui/AlertDialog/AlertDialog.types.ts +0 -14
- package/ui/AlertDialog/index.ts +0 -6
- package/ui/AppHeader/AppHeader.tsx +0 -70
- package/ui/AppHeader/AppHeader.types.ts +0 -28
- package/ui/AppHeader/index.ts +0 -2
- package/ui/AppNav/AppNav.tsx +0 -137
- package/ui/AppNav/AppNav.types.ts +0 -24
- package/ui/Avatar/Avatar.tsx +0 -62
- package/ui/Avatar/Avatar.types.ts +0 -8
- package/ui/Avatar/index.ts +0 -2
- package/ui/AvatarGroup/AvatarGroup.tsx +0 -29
- package/ui/AvatarGroup/AvatarGroup.types.ts +0 -16
- package/ui/AvatarGroup/index.ts +0 -2
- package/ui/Badge/Badge.tsx +0 -43
- package/ui/Badge/index.ts +0 -2
- package/ui/BarChart/BarChart.tsx +0 -380
- package/ui/BarChart/BarChart.types.ts +0 -18
- package/ui/BarChart/index.ts +0 -2
- package/ui/Breadcrumb/Breadcrumb.tsx +0 -89
- package/ui/Breadcrumb/Breadcrumb.types.ts +0 -14
- package/ui/Breadcrumb/index.ts +0 -2
- package/ui/Button/Button.tsx +0 -49
- package/ui/Button/Button.types.ts +0 -18
- package/ui/Button/index.ts +0 -2
- package/ui/Button/lucideName.tsx +0 -188
- package/ui/ButtonGroup/ButtonGroup.module.css +0 -31
- package/ui/ButtonGroup/ButtonGroup.tsx +0 -12
- package/ui/ButtonGroup/ButtonGroup.types.ts +0 -6
- package/ui/ButtonGroup/index.ts +0 -2
- package/ui/Calendar/Calendar.tsx +0 -296
- package/ui/Calendar/Calendar.types.ts +0 -11
- package/ui/Calendar/index.ts +0 -2
- package/ui/Card/Card.tsx +0 -69
- package/ui/Card/Card.types.ts +0 -23
- package/ui/Carousel/Carousel.tsx +0 -152
- package/ui/Carousel/Carousel.types.ts +0 -17
- package/ui/Carousel/index.ts +0 -7
- package/ui/Cell/Cell.tsx +0 -300
- package/ui/Cell/Cell.types.ts +0 -69
- package/ui/Cell/index.ts +0 -11
- package/ui/Chat/Chat.tsx +0 -175
- package/ui/Chat/Chat.types.ts +0 -39
- package/ui/Chat/index.ts +0 -2
- package/ui/Checkbox/Checkbox.tsx +0 -70
- package/ui/Checkbox/Checkbox.types.ts +0 -15
- package/ui/Checkbox/index.ts +0 -2
- package/ui/Collapsible/Collapsible.tsx +0 -59
- package/ui/Collapsible/Collapsible.types.ts +0 -9
- package/ui/Collapsible/index.ts +0 -2
- package/ui/Command/Command.tsx +0 -152
- package/ui/Command/Command.types.ts +0 -20
- package/ui/Command/index.ts +0 -2
- package/ui/DataTable/DataTable.tsx +0 -429
- package/ui/DataTable/DataTable.types.ts +0 -35
- package/ui/DataTable/index.ts +0 -8
- package/ui/DatePicker/DatePicker.tsx +0 -123
- package/ui/DatePicker/DatePicker.types.ts +0 -15
- package/ui/DatePicker/index.ts +0 -2
- package/ui/Drawer/Drawer.tsx +0 -112
- package/ui/Drawer/Drawer.types.ts +0 -14
- package/ui/Drawer/index.ts +0 -2
- package/ui/DropdownMenu/DropdownMenu.tsx +0 -580
- package/ui/DropdownMenu/DropdownMenu.types.ts +0 -48
- package/ui/DropdownMenu/index.ts +0 -8
- package/ui/Empty/Empty.tsx +0 -35
- package/ui/Empty/Empty.types.ts +0 -10
- package/ui/Empty/index.ts +0 -2
- package/ui/Field/Field.tsx +0 -46
- package/ui/Field/Field.types.ts +0 -12
- package/ui/Field/index.ts +0 -2
- package/ui/FieldSet/FieldSet.tsx +0 -14
- package/ui/FieldSet/FieldSet.types.ts +0 -7
- package/ui/FieldSet/index.ts +0 -2
- package/ui/HeaderCell/HeaderCell.tsx +0 -71
- package/ui/HeaderCell/HeaderCell.types.ts +0 -18
- package/ui/HeaderCell/index.ts +0 -2
- package/ui/Input/Input.tsx +0 -65
- package/ui/Input/Input.types.ts +0 -22
- package/ui/Input/index.ts +0 -2
- package/ui/InputOTP/InputOTP.tsx +0 -136
- package/ui/InputOTP/InputOTP.types.ts +0 -19
- package/ui/InsightCard/InsightCard.tsx +0 -90
- package/ui/InsightCard/InsightCard.types.ts +0 -20
- package/ui/InsightCard/index.ts +0 -7
- package/ui/LineChart/LineChart.tsx +0 -424
- package/ui/LineChart/LineChart.types.ts +0 -19
- package/ui/LineChart/index.ts +0 -2
- package/ui/LoadingAnimation/LoadingAnimation.tsx +0 -41
- package/ui/LoadingAnimation/index.ts +0 -6
- package/ui/Modal/Modal.tsx +0 -114
- package/ui/Modal/Modal.types.ts +0 -15
- package/ui/Modal/index.ts +0 -2
- package/ui/ModalCard/ModalCard.tsx +0 -58
- package/ui/ModalCard/ModalCard.types.ts +0 -15
- package/ui/ModalCard/index.ts +0 -2
- package/ui/NavigationMenu/NavigationMenu.tsx +0 -57
- package/ui/NavigationMenu/NavigationMenu.types.ts +0 -22
- package/ui/NavigationMenu/index.ts +0 -7
- package/ui/NumberTransition/NumberTransition.tsx +0 -78
- package/ui/NumberTransition/NumberTransition.types.ts +0 -9
- package/ui/NumberTransition/index.ts +0 -2
- package/ui/PageHeader/PageHeader.tsx +0 -39
- package/ui/PageHeader/PageHeader.types.ts +0 -12
- package/ui/PageHeader/index.ts +0 -2
- package/ui/Pagination/Pagination.tsx +0 -147
- package/ui/Pagination/Pagination.types.ts +0 -12
- package/ui/Pagination/index.ts +0 -2
- package/ui/PieChart/PieChart.tsx +0 -293
- package/ui/PieChart/PieChart.types.ts +0 -22
- package/ui/Progress/Progress.tsx +0 -167
- package/ui/Progress/index.ts +0 -8
- package/ui/ProgressSteps/ProgressSteps.tsx +0 -105
- package/ui/ProgressSteps/index.ts +0 -8
- package/ui/RadioGroup/RadioGroup.tsx +0 -116
- package/ui/RadioGroup/RadioGroup.types.ts +0 -30
- package/ui/RadioGroup/index.ts +0 -8
- package/ui/Scoreboard/Scoreboard.tsx +0 -41
- package/ui/Scoreboard/Scoreboard.types.ts +0 -7
- package/ui/Scoreboard/index.ts +0 -2
- package/ui/Scorecard/Scorecard.tsx +0 -92
- package/ui/Scorecard/Scorecard.types.ts +0 -18
- package/ui/Scorecard/index.ts +0 -2
- package/ui/Section/Section.tsx +0 -75
- package/ui/Section/Section.types.ts +0 -15
- package/ui/Section/index.ts +0 -2
- package/ui/Select/Select.module.css +0 -7
- package/ui/Select/Select.tsx +0 -113
- package/ui/Select/Select.types.ts +0 -26
- package/ui/Select/index.ts +0 -2
- package/ui/ShimmerText/ShimmerText.tsx +0 -48
- package/ui/ShimmerText/ShimmerText.types.ts +0 -12
- package/ui/ShimmerText/index.ts +0 -2
- package/ui/SideNav/SideNav.tsx +0 -222
- package/ui/SideNav/SideNav.types.ts +0 -42
- package/ui/SideNav/index.ts +0 -8
- package/ui/Slider/Slider.tsx +0 -187
- package/ui/Slider/Slider.types.ts +0 -11
- package/ui/Slider/index.ts +0 -2
- package/ui/Spinner/Spinner.tsx +0 -19
- package/ui/Spinner/index.ts +0 -2
- package/ui/Switch/Switch.tsx +0 -65
- package/ui/Switch/Switch.types.ts +0 -12
- package/ui/Switch/index.ts +0 -2
- package/ui/Table/Table.tsx +0 -108
- package/ui/Table/Table.types.ts +0 -26
- package/ui/Table/index.ts +0 -8
- package/ui/Tabs/Tabs.tsx +0 -150
- package/ui/Tabs/Tabs.types.ts +0 -21
- package/ui/Tabs/index.ts +0 -2
- package/ui/Textarea/Textarea.tsx +0 -38
- package/ui/Textarea/Textarea.types.ts +0 -14
- package/ui/Textarea/index.ts +0 -2
- package/ui/ThinkingAnimation/ThinkingAnimation.tsx +0 -31
- package/ui/ThinkingAnimation/ThinkingAnimation.types.ts +0 -8
- package/ui/ThinkingAnimation/index.ts +0 -2
- package/ui/Timeline/Timeline.tsx +0 -47
- package/ui/Timeline/Timeline.types.ts +0 -16
- package/ui/Toast/Toast.tsx +0 -89
- package/ui/Toast/Toast.types.ts +0 -17
- package/ui/Toast/index.ts +0 -2
- package/ui/Tooltip/Tooltip.tsx +0 -101
- package/ui/Tooltip/index.ts +0 -2
- package/ui/patterns/ActivityPattern/ActivityFeed.tsx +0 -77
- package/ui/patterns/ActivityPattern/ActivityPattern.tsx +0 -120
- package/ui/patterns/ActivityPattern/ActivityTasks.tsx +0 -86
- package/ui/patterns/ActivityPattern/TaskDrawer.tsx +0 -186
- package/ui/patterns/ActivityPattern/index.ts +0 -2
- package/ui/patterns/AssistantWorkspacePattern/AssistantWorkspacePattern.tsx +0 -159
- package/ui/patterns/AssistantWorkspacePattern/index.ts +0 -2
- package/ui/patterns/DashboardPattern/DashboardPattern.tsx +0 -102
- package/ui/patterns/DashboardPattern/index.ts +0 -1
- package/ui/patterns/DashboardPattern/patterns.module.css +0 -6
- package/ui/patterns/EmptyFirstRunPattern/EmptyFirstRunPattern.tsx +0 -125
- package/ui/patterns/EmptyFirstRunPattern/index.ts +0 -2
- package/ui/patterns/InboxPattern/InboxPattern.tsx +0 -192
- package/ui/patterns/InboxPattern/InboxReplyDrawer.tsx +0 -97
- package/ui/patterns/InboxPattern/inbox-data.ts +0 -101
- package/ui/patterns/InboxPattern/index.ts +0 -2
- package/ui/patterns/InviteMembersPattern/InviteMembersPattern.tsx +0 -148
- package/ui/patterns/InviteMembersPattern/index.ts +0 -2
- package/ui/patterns/ListDetailPattern/ListDetailPattern.tsx +0 -145
- package/ui/patterns/ListDetailPattern/index.ts +0 -2
- package/ui/patterns/SettingsFormPattern/SettingsFormPattern.tsx +0 -89
- package/ui/patterns/SettingsFormPattern/index.ts +0 -3
- package/ui/shared/ChartFrame.tsx +0 -87
- package/ui/shared/chartMath.ts +0 -228
- package/ui/shared/useChartSize.ts +0 -22
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import e from "../shared/ChartFrame.module.js";
|
|
3
|
+
import { ChartFrame as t } from "../shared/ChartFrame.js";
|
|
4
|
+
import { CHART_MARGINS as n, colorAt as r, formatAxisTick as i, formatValue as a, linearScale as o, niceTicks as s, normalizeBarInput as c, seriesExtent as l } from "../shared/chartMath.js";
|
|
5
|
+
import { useChartSize as u } from "../shared/useChartSize.js";
|
|
6
|
+
import d from "./BarChart.module.js";
|
|
7
|
+
import { useMemo as f, useState as p } from "react";
|
|
8
|
+
import { Fragment as m, jsx as h, jsxs as g } from "react/jsx-runtime";
|
|
9
|
+
//#region ui/BarChart/BarChart.tsx
|
|
10
|
+
var _ = 32, v = {
|
|
11
|
+
bars: [],
|
|
12
|
+
ticks: [],
|
|
13
|
+
categoryLabels: [],
|
|
14
|
+
baseline: 0,
|
|
15
|
+
plotLeft: 0,
|
|
16
|
+
plotRight: 0,
|
|
17
|
+
plotTop: 0,
|
|
18
|
+
plotBottom: 0
|
|
19
|
+
};
|
|
20
|
+
function y({ categories: t, series: n }) {
|
|
21
|
+
return /* @__PURE__ */ h("div", {
|
|
22
|
+
className: e.tableScroll,
|
|
23
|
+
children: /* @__PURE__ */ g("table", {
|
|
24
|
+
className: e.table,
|
|
25
|
+
children: [/* @__PURE__ */ h("thead", { children: /* @__PURE__ */ g("tr", { children: [/* @__PURE__ */ h("th", {
|
|
26
|
+
scope: "col",
|
|
27
|
+
children: "Category"
|
|
28
|
+
}), n.map((e) => /* @__PURE__ */ h("th", {
|
|
29
|
+
scope: "col",
|
|
30
|
+
children: e.label
|
|
31
|
+
}, e.label))] }) }), /* @__PURE__ */ h("tbody", { children: t.map((e, t) => /* @__PURE__ */ g("tr", { children: [/* @__PURE__ */ h("th", {
|
|
32
|
+
scope: "row",
|
|
33
|
+
children: e
|
|
34
|
+
}), n.map((e) => /* @__PURE__ */ h("td", { children: a(e.data[t] ?? 0) }, e.label))] }, e)) })]
|
|
35
|
+
})
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
function b({ series: t, active: n, onActivate: r, onClear: i }) {
|
|
39
|
+
return /* @__PURE__ */ h("ul", {
|
|
40
|
+
className: `${e.legend} ${e.legendInteractive}`,
|
|
41
|
+
children: t.map((t) => {
|
|
42
|
+
let a = !!n && n !== t.label;
|
|
43
|
+
return /* @__PURE__ */ h("li", { children: /* @__PURE__ */ g("button", {
|
|
44
|
+
type: "button",
|
|
45
|
+
className: `${e.legendItem} ${e.legendButton}${a ? ` ${e.legendItemDimmed}` : ""}`,
|
|
46
|
+
onMouseEnter: () => r(t.label),
|
|
47
|
+
onMouseLeave: i,
|
|
48
|
+
onFocus: () => r(t.label),
|
|
49
|
+
onBlur: i,
|
|
50
|
+
children: [/* @__PURE__ */ h("span", {
|
|
51
|
+
className: `${e.legendSwatch} ${e.legendSwatchPill}`,
|
|
52
|
+
style: { background: t.color },
|
|
53
|
+
"aria-hidden": !0
|
|
54
|
+
}), /* @__PURE__ */ h("span", { children: t.label })]
|
|
55
|
+
}) }, t.label);
|
|
56
|
+
})
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
function x({ data: x, categories: S, series: C, title: w, description: T, orientation: E = "vertical", height: D = 240, showGrid: O = !0, showTable: k = !0, emptyLabel: A = "No data for this range", isLoading: j = !1, className: M = "" }) {
|
|
60
|
+
let [N, P] = p(null), [F, I] = p(null), { ref: L, width: R } = u(D), { categories: z, series: B } = f(() => c({
|
|
61
|
+
data: x,
|
|
62
|
+
categories: S,
|
|
63
|
+
series: C
|
|
64
|
+
}), [
|
|
65
|
+
x,
|
|
66
|
+
S,
|
|
67
|
+
C
|
|
68
|
+
]), V = B.some((e) => e.data.some((e) => Number.isFinite(e) && e !== 0)), H = !z.length || !B.length || !V, U = E === "vertical", W = B.length === 1, G = B.filter((e) => e.label.trim().length > 0), K = G.length >= 2, q = f(() => {
|
|
69
|
+
if (H || R <= 0) return v;
|
|
70
|
+
let e = n.left, t = R - n.right, a = n.top, c = D - n.bottom, [u, d] = l(B, { includeZero: !0 }), { ticks: f, min: p, max: m } = s(u, d, 5), h = o([p, m], U ? [c, a] : [e, t]), g = z.length, y = B.length, b = (U ? t - e : c - a) / Math.max(g, 1), S = b * .24, C = y > 1 ? 4 : 0, w = Math.max(b - S * 2, 8), T = Math.min(_, Math.max(8, (w - C * Math.max(y - 1, 0)) / y)), E = y * T + Math.max(y - 1, 0) * C;
|
|
71
|
+
return {
|
|
72
|
+
bars: z.flatMap((t, n) => {
|
|
73
|
+
let i = (U ? e + n * b : a + n * b) + (b - E) / 2;
|
|
74
|
+
return B.map((e, a) => {
|
|
75
|
+
let o = e.data[n] ?? 0, s = i + a * (T + C), c = h(o), l = h(0), u = W ? r(n, x?.[n]?.color) : e.color ?? r(a), d = U ? s : Math.min(l, c), f = U ? Math.min(l, c) : s, p = U ? T : Math.abs(c - l), m = U ? Math.abs(c - l) : T;
|
|
76
|
+
return {
|
|
77
|
+
key: `${t}-${e.label}`,
|
|
78
|
+
category: t,
|
|
79
|
+
series: e.label,
|
|
80
|
+
color: u,
|
|
81
|
+
x: d,
|
|
82
|
+
y: f,
|
|
83
|
+
width: p,
|
|
84
|
+
height: m,
|
|
85
|
+
value: o,
|
|
86
|
+
cx: d + p / 2,
|
|
87
|
+
cy: f + m / 2
|
|
88
|
+
};
|
|
89
|
+
});
|
|
90
|
+
}),
|
|
91
|
+
ticks: f.map((n) => ({
|
|
92
|
+
value: n,
|
|
93
|
+
label: i(n),
|
|
94
|
+
x: U ? e - 8 : h(n),
|
|
95
|
+
y: U ? h(n) : c + 18,
|
|
96
|
+
gridX1: U ? e : h(n),
|
|
97
|
+
gridX2: U ? t : h(n),
|
|
98
|
+
gridY1: U ? h(n) : a,
|
|
99
|
+
gridY2: U ? h(n) : c
|
|
100
|
+
})),
|
|
101
|
+
categoryLabels: z.map((t, n) => ({
|
|
102
|
+
label: t,
|
|
103
|
+
x: U ? e + n * b + b / 2 : e - 8,
|
|
104
|
+
y: U ? c + 18 : a + n * b + b / 2
|
|
105
|
+
})),
|
|
106
|
+
baseline: h(0),
|
|
107
|
+
plotLeft: e,
|
|
108
|
+
plotRight: t,
|
|
109
|
+
plotTop: a,
|
|
110
|
+
plotBottom: c
|
|
111
|
+
};
|
|
112
|
+
}, [
|
|
113
|
+
z,
|
|
114
|
+
x,
|
|
115
|
+
D,
|
|
116
|
+
H,
|
|
117
|
+
W,
|
|
118
|
+
U,
|
|
119
|
+
B,
|
|
120
|
+
R
|
|
121
|
+
]), J = q.bars.find((e) => e.key === N) ?? null, Y = !!(J && R > 0 && J.cx > R * .6), X = (e) => F ? e.series !== F : N ? e.key !== N : !1;
|
|
122
|
+
return /* @__PURE__ */ h(t, {
|
|
123
|
+
title: w,
|
|
124
|
+
description: T,
|
|
125
|
+
legend: K ? /* @__PURE__ */ h(b, {
|
|
126
|
+
series: G,
|
|
127
|
+
active: F,
|
|
128
|
+
onActivate: I,
|
|
129
|
+
onClear: () => I(null)
|
|
130
|
+
}) : void 0,
|
|
131
|
+
table: k ? /* @__PURE__ */ h(y, {
|
|
132
|
+
categories: z,
|
|
133
|
+
series: B
|
|
134
|
+
}) : void 0,
|
|
135
|
+
isEmpty: H,
|
|
136
|
+
emptyLabel: A,
|
|
137
|
+
isLoading: j,
|
|
138
|
+
className: M,
|
|
139
|
+
children: /* @__PURE__ */ g("div", {
|
|
140
|
+
ref: L,
|
|
141
|
+
className: d.plot,
|
|
142
|
+
children: [/* @__PURE__ */ g("svg", {
|
|
143
|
+
className: d.chart,
|
|
144
|
+
width: R || "100%",
|
|
145
|
+
height: D,
|
|
146
|
+
role: "img",
|
|
147
|
+
"aria-label": w,
|
|
148
|
+
children: [
|
|
149
|
+
O ? q.ticks.map((e) => {
|
|
150
|
+
let t = e.gridY1 === e.gridY2, n = t ? e.gridX1 : Math.round(e.gridX1) + .5, r = t ? e.gridX2 : Math.round(e.gridX2) + .5, i = t ? Math.round(e.gridY1) + .5 : e.gridY1, a = t ? Math.round(e.gridY2) + .5 : e.gridY2;
|
|
151
|
+
return /* @__PURE__ */ h("line", {
|
|
152
|
+
x1: n,
|
|
153
|
+
x2: r,
|
|
154
|
+
y1: i,
|
|
155
|
+
y2: a,
|
|
156
|
+
className: d.grid,
|
|
157
|
+
vectorEffect: "non-scaling-stroke"
|
|
158
|
+
}, e.value);
|
|
159
|
+
}) : null,
|
|
160
|
+
R > 0 && !O ? /* @__PURE__ */ g(m, { children: [/* @__PURE__ */ h("line", {
|
|
161
|
+
className: d.axis,
|
|
162
|
+
x1: q.plotLeft,
|
|
163
|
+
x2: q.plotLeft,
|
|
164
|
+
y1: q.plotTop,
|
|
165
|
+
y2: q.plotBottom
|
|
166
|
+
}), /* @__PURE__ */ h("line", {
|
|
167
|
+
className: d.axis,
|
|
168
|
+
x1: q.plotLeft,
|
|
169
|
+
x2: q.plotRight,
|
|
170
|
+
y1: q.plotBottom,
|
|
171
|
+
y2: q.plotBottom
|
|
172
|
+
})] }) : null,
|
|
173
|
+
q.bars.map((e) => /* @__PURE__ */ h("rect", {
|
|
174
|
+
className: `${d.bar}${X(e) ? ` ${d.barDimmed}` : ""}`,
|
|
175
|
+
x: e.x,
|
|
176
|
+
y: e.y,
|
|
177
|
+
width: e.width,
|
|
178
|
+
height: e.height,
|
|
179
|
+
fill: e.color,
|
|
180
|
+
rx: 2,
|
|
181
|
+
tabIndex: 0,
|
|
182
|
+
role: "button",
|
|
183
|
+
"aria-label": `${e.category} ${e.series}: ${a(e.value)}`,
|
|
184
|
+
onMouseEnter: () => P(e.key),
|
|
185
|
+
onMouseLeave: () => P(null),
|
|
186
|
+
onFocus: () => P(e.key),
|
|
187
|
+
onBlur: () => P(null)
|
|
188
|
+
}, e.key)),
|
|
189
|
+
q.categoryLabels.map((e) => /* @__PURE__ */ h("text", {
|
|
190
|
+
x: e.x,
|
|
191
|
+
y: e.y,
|
|
192
|
+
className: d.categoryLabel,
|
|
193
|
+
textAnchor: U ? "middle" : "end",
|
|
194
|
+
dominantBaseline: U ? "hanging" : "middle",
|
|
195
|
+
children: e.label
|
|
196
|
+
}, e.label)),
|
|
197
|
+
q.ticks.map((e) => /* @__PURE__ */ h("text", {
|
|
198
|
+
x: e.x,
|
|
199
|
+
y: e.y,
|
|
200
|
+
className: d.tickLabel,
|
|
201
|
+
textAnchor: U ? "end" : "middle",
|
|
202
|
+
dominantBaseline: U ? "middle" : "hanging",
|
|
203
|
+
children: e.label
|
|
204
|
+
}, `tick-${e.value}`))
|
|
205
|
+
]
|
|
206
|
+
}), J ? /* @__PURE__ */ g("div", {
|
|
207
|
+
className: `${e.tooltip}${Y ? ` ${e.tooltipFlip}` : ""}`,
|
|
208
|
+
style: {
|
|
209
|
+
left: J.cx,
|
|
210
|
+
top: J.cy
|
|
211
|
+
},
|
|
212
|
+
role: "status",
|
|
213
|
+
"aria-live": "polite",
|
|
214
|
+
children: [/* @__PURE__ */ h("p", {
|
|
215
|
+
className: e.tooltipTitle,
|
|
216
|
+
children: J.category
|
|
217
|
+
}), /* @__PURE__ */ g("div", {
|
|
218
|
+
className: e.tooltipRow,
|
|
219
|
+
children: [
|
|
220
|
+
/* @__PURE__ */ h("span", {
|
|
221
|
+
className: e.tooltipKey,
|
|
222
|
+
style: { background: J.color },
|
|
223
|
+
"aria-hidden": !0
|
|
224
|
+
}),
|
|
225
|
+
/* @__PURE__ */ h("span", {
|
|
226
|
+
className: e.tooltipShare,
|
|
227
|
+
children: J.series
|
|
228
|
+
}),
|
|
229
|
+
/* @__PURE__ */ h("span", {
|
|
230
|
+
className: e.tooltipValue,
|
|
231
|
+
children: a(J.value)
|
|
232
|
+
})
|
|
233
|
+
]
|
|
234
|
+
})]
|
|
235
|
+
}) : null]
|
|
236
|
+
})
|
|
237
|
+
});
|
|
238
|
+
}
|
|
239
|
+
//#endregion
|
|
240
|
+
export { x as BarChart };
|
|
241
|
+
|
|
242
|
+
//# sourceMappingURL=BarChart.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BarChart.js","names":[],"sources":["../../../ui/BarChart/BarChart.tsx"],"sourcesContent":["\"use client\";\n\nimport { useMemo, useState } from \"react\";\nimport { ChartFrame } from \"../shared/ChartFrame\";\nimport frameStyles from \"../shared/ChartFrame.module.css\";\nimport {\n CHART_MARGINS,\n colorAt,\n formatAxisTick,\n formatValue,\n linearScale,\n niceTicks,\n normalizeBarInput,\n seriesExtent,\n type ChartSeries,\n} from \"../shared/chartMath\";\nimport { useChartSize } from \"../shared/useChartSize\";\nimport type { BarChartProps } from \"./BarChart.types\";\nimport styles from \"./BarChart.module.css\";\n\nexport type { BarChartProps, BarChartOrientation } from \"./BarChart.types\";\n\nconst DEFAULT_MAX_BAR_WIDTH = 32;\n\ntype BarGeom = {\n key: string;\n category: string;\n series: string;\n color: string;\n x: number;\n y: number;\n width: number;\n height: number;\n value: number;\n cx: number;\n cy: number;\n};\n\ntype TickMark = {\n value: number;\n label: string;\n x: number;\n y: number;\n gridX1: number;\n gridX2: number;\n gridY1: number;\n gridY2: number;\n};\n\ntype CategoryLabel = { label: string; x: number; y: number };\n\nconst EMPTY_LAYOUT = {\n bars: [] as BarGeom[],\n ticks: [] as TickMark[],\n categoryLabels: [] as CategoryLabel[],\n baseline: 0,\n plotLeft: 0,\n plotRight: 0,\n plotTop: 0,\n plotBottom: 0,\n};\n\nfunction ChartTable({ categories, series }: { categories: string[]; series: ChartSeries[] }) {\n return (\n <div className={frameStyles.tableScroll}>\n <table className={frameStyles.table}>\n <thead>\n <tr>\n <th scope=\"col\">Category</th>\n {series.map((entry) => (\n <th key={entry.label} scope=\"col\">\n {entry.label}\n </th>\n ))}\n </tr>\n </thead>\n <tbody>\n {categories.map((category, index) => (\n <tr key={category}>\n <th scope=\"row\">{category}</th>\n {series.map((entry) => (\n <td key={entry.label}>{formatValue(entry.data[index] ?? 0)}</td>\n ))}\n </tr>\n ))}\n </tbody>\n </table>\n </div>\n );\n}\n\nfunction Legend({\n series,\n active,\n onActivate,\n onClear,\n}: {\n series: ChartSeries[];\n active: string | null;\n onActivate: (label: string) => void;\n onClear: () => void;\n}) {\n return (\n <ul className={`${frameStyles.legend} ${frameStyles.legendInteractive}`}>\n {series.map((entry) => {\n const dimmed = Boolean(active) && active !== entry.label;\n return (\n <li key={entry.label}>\n <button\n type=\"button\"\n className={`${frameStyles.legendItem} ${frameStyles.legendButton}${dimmed ? ` ${frameStyles.legendItemDimmed}` : \"\"}`}\n onMouseEnter={() => onActivate(entry.label)}\n onMouseLeave={onClear}\n onFocus={() => onActivate(entry.label)}\n onBlur={onClear}\n >\n <span\n className={`${frameStyles.legendSwatch} ${frameStyles.legendSwatchPill}`}\n style={{ background: entry.color }}\n aria-hidden\n />\n <span>{entry.label}</span>\n </button>\n </li>\n );\n })}\n </ul>\n );\n}\n\nexport function BarChart({\n data,\n categories: categoriesProp,\n series: seriesProp,\n title,\n description,\n orientation = \"vertical\",\n height = 240,\n showGrid = true,\n showTable = true,\n emptyLabel = \"No data for this range\",\n isLoading = false,\n className = \"\",\n}: BarChartProps) {\n const [activeBar, setActiveBar] = useState<string | null>(null);\n const [highlighted, setHighlighted] = useState<string | null>(null);\n const { ref, width } = useChartSize(height);\n\n const { categories, series } = useMemo(\n () => normalizeBarInput({ data, categories: categoriesProp, series: seriesProp }),\n [data, categoriesProp, seriesProp],\n );\n\n const hasValues = series.some((entry) => entry.data.some((value) => Number.isFinite(value) && value !== 0));\n const isEmpty = !categories.length || !series.length || !hasValues;\n const isVertical = orientation === \"vertical\";\n const isSingleSeries = series.length === 1;\n const labelledSeries = series.filter((entry) => entry.label.trim().length > 0);\n const showLegend = labelledSeries.length >= 2;\n\n const layout = useMemo(() => {\n if (isEmpty || width <= 0) return EMPTY_LAYOUT;\n\n const plotLeft = CHART_MARGINS.left;\n const plotRight = width - CHART_MARGINS.right;\n const plotTop = CHART_MARGINS.top;\n const plotBottom = height - CHART_MARGINS.bottom;\n\n const [rawMin, rawMax] = seriesExtent(series, { includeZero: true });\n const { ticks, min, max } = niceTicks(rawMin, rawMax, 5);\n const valueScale = linearScale(\n [min, max],\n isVertical ? [plotBottom, plotTop] : [plotLeft, plotRight],\n );\n\n const groupCount = categories.length;\n const seriesCount = series.length;\n const plotSpan = isVertical ? plotRight - plotLeft : plotBottom - plotTop;\n const groupSize = plotSpan / Math.max(groupCount, 1);\n const bandPad = groupSize * 0.24;\n const barGap = seriesCount > 1 ? 4 : 0;\n const inner = Math.max(groupSize - bandPad * 2, 8);\n const barWidth = Math.min(\n DEFAULT_MAX_BAR_WIDTH,\n Math.max(8, (inner - barGap * Math.max(seriesCount - 1, 0)) / seriesCount),\n );\n const clusterWidth = seriesCount * barWidth + Math.max(seriesCount - 1, 0) * barGap;\n\n const bars: BarGeom[] = categories.flatMap((category, categoryIndex) => {\n const groupStart = isVertical\n ? plotLeft + categoryIndex * groupSize\n : plotTop + categoryIndex * groupSize;\n const clusterStart = groupStart + (groupSize - clusterWidth) / 2;\n return series.map((entry, seriesIndex) => {\n const value = entry.data[categoryIndex] ?? 0;\n const start = clusterStart + seriesIndex * (barWidth + barGap);\n const end = valueScale(value);\n const origin = valueScale(0);\n const color = isSingleSeries\n ? colorAt(categoryIndex, data?.[categoryIndex]?.color)\n : (entry.color ?? colorAt(seriesIndex));\n const x = isVertical ? start : Math.min(origin, end);\n const y = isVertical ? Math.min(origin, end) : start;\n const barW = isVertical ? barWidth : Math.abs(end - origin);\n const barH = isVertical ? Math.abs(end - origin) : barWidth;\n return {\n key: `${category}-${entry.label}`,\n category,\n series: entry.label,\n color,\n x,\n y,\n width: barW,\n height: barH,\n value,\n cx: x + barW / 2,\n cy: y + barH / 2,\n };\n });\n });\n\n const tickMarks: TickMark[] = ticks.map((tick) => ({\n value: tick,\n label: formatAxisTick(tick),\n x: isVertical ? plotLeft - 8 : valueScale(tick),\n y: isVertical ? valueScale(tick) : plotBottom + 18,\n gridX1: isVertical ? plotLeft : valueScale(tick),\n gridX2: isVertical ? plotRight : valueScale(tick),\n gridY1: isVertical ? valueScale(tick) : plotTop,\n gridY2: isVertical ? valueScale(tick) : plotBottom,\n }));\n\n const categoryLabels: CategoryLabel[] = categories.map((label, index) => ({\n label,\n x: isVertical ? plotLeft + index * groupSize + groupSize / 2 : plotLeft - 8,\n y: isVertical ? plotBottom + 18 : plotTop + index * groupSize + groupSize / 2,\n }));\n\n return {\n bars,\n ticks: tickMarks,\n categoryLabels,\n baseline: valueScale(0),\n plotLeft,\n plotRight,\n plotTop,\n plotBottom,\n };\n }, [categories, data, height, isEmpty, isSingleSeries, isVertical, series, width]);\n\n const active = layout.bars.find((bar) => bar.key === activeBar) ?? null;\n const flipTooltip = Boolean(active && width > 0 && active.cx > width * 0.6);\n\n const isDimmed = (bar: BarGeom) => {\n if (highlighted) return bar.series !== highlighted;\n if (activeBar) return bar.key !== activeBar;\n return false;\n };\n\n return (\n <ChartFrame\n title={title}\n description={description}\n legend={showLegend ? (\n <Legend\n series={labelledSeries}\n active={highlighted}\n onActivate={setHighlighted}\n onClear={() => setHighlighted(null)}\n />\n ) : undefined}\n table={showTable ? <ChartTable categories={categories} series={series} /> : undefined}\n isEmpty={isEmpty}\n emptyLabel={emptyLabel}\n isLoading={isLoading}\n className={className}\n >\n <div ref={ref} className={styles.plot}>\n <svg className={styles.chart} width={width || \"100%\"} height={height} role=\"img\" aria-label={title}>\n {showGrid\n ? layout.ticks.map((tick) => {\n const horizontal = tick.gridY1 === tick.gridY2;\n const x1 = horizontal ? tick.gridX1 : Math.round(tick.gridX1) + 0.5;\n const x2 = horizontal ? tick.gridX2 : Math.round(tick.gridX2) + 0.5;\n const y1 = horizontal ? Math.round(tick.gridY1) + 0.5 : tick.gridY1;\n const y2 = horizontal ? Math.round(tick.gridY2) + 0.5 : tick.gridY2;\n return (\n <line\n key={tick.value}\n x1={x1}\n x2={x2}\n y1={y1}\n y2={y2}\n className={styles.grid}\n vectorEffect=\"non-scaling-stroke\"\n />\n );\n })\n : null}\n {width > 0 && !showGrid ? (\n <>\n <line\n className={styles.axis}\n x1={layout.plotLeft}\n x2={layout.plotLeft}\n y1={layout.plotTop}\n y2={layout.plotBottom}\n />\n <line\n className={styles.axis}\n x1={layout.plotLeft}\n x2={layout.plotRight}\n y1={layout.plotBottom}\n y2={layout.plotBottom}\n />\n </>\n ) : null}\n {layout.bars.map((bar) => (\n <rect\n key={bar.key}\n className={`${styles.bar}${isDimmed(bar) ? ` ${styles.barDimmed}` : \"\"}`}\n x={bar.x}\n y={bar.y}\n width={bar.width}\n height={bar.height}\n fill={bar.color}\n rx={2}\n tabIndex={0}\n role=\"button\"\n aria-label={`${bar.category} ${bar.series}: ${formatValue(bar.value)}`}\n onMouseEnter={() => setActiveBar(bar.key)}\n onMouseLeave={() => setActiveBar(null)}\n onFocus={() => setActiveBar(bar.key)}\n onBlur={() => setActiveBar(null)}\n />\n ))}\n {layout.categoryLabels.map((entry) => (\n <text\n key={entry.label}\n x={entry.x}\n y={entry.y}\n className={styles.categoryLabel}\n textAnchor={isVertical ? \"middle\" : \"end\"}\n dominantBaseline={isVertical ? \"hanging\" : \"middle\"}\n >\n {entry.label}\n </text>\n ))}\n {layout.ticks.map((tick) => (\n <text\n key={`tick-${tick.value}`}\n x={tick.x}\n y={tick.y}\n className={styles.tickLabel}\n textAnchor={isVertical ? \"end\" : \"middle\"}\n dominantBaseline={isVertical ? \"middle\" : \"hanging\"}\n >\n {tick.label}\n </text>\n ))}\n </svg>\n {active ? (\n <div\n className={`${frameStyles.tooltip}${flipTooltip ? ` ${frameStyles.tooltipFlip}` : \"\"}`}\n style={{ left: active.cx, top: active.cy }}\n role=\"status\"\n aria-live=\"polite\"\n >\n <p className={frameStyles.tooltipTitle}>{active.category}</p>\n <div className={frameStyles.tooltipRow}>\n <span className={frameStyles.tooltipKey} style={{ background: active.color }} aria-hidden />\n <span className={frameStyles.tooltipShare}>{active.series}</span>\n <span className={frameStyles.tooltipValue}>{formatValue(active.value)}</span>\n </div>\n </div>\n ) : null}\n </div>\n </ChartFrame>\n );\n}\n"],"mappings":"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"}
|
|
@@ -1,47 +1,47 @@
|
|
|
1
|
-
.
|
|
1
|
+
._plot_1odui_1 {
|
|
2
2
|
position: relative;
|
|
3
3
|
width: 100%;
|
|
4
4
|
min-width: 0;
|
|
5
5
|
overflow: visible;
|
|
6
6
|
}
|
|
7
7
|
|
|
8
|
-
.
|
|
8
|
+
._chart_1odui_8 {
|
|
9
9
|
display: block;
|
|
10
10
|
width: 100%;
|
|
11
11
|
overflow: visible;
|
|
12
12
|
}
|
|
13
13
|
|
|
14
|
-
.
|
|
14
|
+
._grid_1odui_14 {
|
|
15
15
|
stroke: var(--border-strong);
|
|
16
16
|
stroke-width: 1;
|
|
17
17
|
shape-rendering: crispEdges;
|
|
18
18
|
pointer-events: none;
|
|
19
19
|
}
|
|
20
20
|
|
|
21
|
-
.
|
|
21
|
+
._axis_1odui_21 {
|
|
22
22
|
stroke: var(--border-strong);
|
|
23
23
|
stroke-width: 1;
|
|
24
24
|
shape-rendering: crispEdges;
|
|
25
25
|
pointer-events: none;
|
|
26
26
|
}
|
|
27
27
|
|
|
28
|
-
.
|
|
28
|
+
._bar_1odui_28 {
|
|
29
29
|
cursor: pointer;
|
|
30
30
|
outline: none;
|
|
31
31
|
transition: opacity 0.48s cubic-bezier(0.22, 1, 0.36, 1);
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
-
.
|
|
34
|
+
._barDimmed_1odui_34 {
|
|
35
35
|
opacity: 0.45;
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
.
|
|
38
|
+
._bar_1odui_28:focus-visible {
|
|
39
39
|
outline: var(--border-focus-width) solid var(--focus-ring);
|
|
40
40
|
outline-offset: var(--space-inset-2xs);
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
-
.
|
|
44
|
-
.
|
|
43
|
+
._categoryLabel_1odui_43,
|
|
44
|
+
._tickLabel_1odui_44 {
|
|
45
45
|
fill: var(--text-muted);
|
|
46
46
|
font-family: var(--font-sans);
|
|
47
47
|
font-size: var(--type-size-caption);
|
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
}
|
|
51
51
|
|
|
52
52
|
@media (prefers-reduced-motion: reduce) {
|
|
53
|
-
.
|
|
53
|
+
._bar_1odui_28 {
|
|
54
54
|
transition: opacity var(--motion-interaction-duration) var(--motion-interaction-easing);
|
|
55
55
|
}
|
|
56
56
|
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import "./BarChart.module.css";
|
|
2
|
+
//#region ui/BarChart/BarChart.module.css
|
|
3
|
+
var e = "_plot_1odui_1", t = "_chart_1odui_8", n = "_grid_1odui_14", r = "_axis_1odui_21", i = "_bar_1odui_28", a = "_barDimmed_1odui_34", o = "_categoryLabel_1odui_43", s = "_tickLabel_1odui_44", c = {
|
|
4
|
+
plot: e,
|
|
5
|
+
chart: t,
|
|
6
|
+
grid: n,
|
|
7
|
+
axis: r,
|
|
8
|
+
bar: i,
|
|
9
|
+
barDimmed: a,
|
|
10
|
+
categoryLabel: o,
|
|
11
|
+
tickLabel: s
|
|
12
|
+
};
|
|
13
|
+
//#endregion
|
|
14
|
+
export { r as axis, i as bar, a as barDimmed, o as categoryLabel, t as chart, c as default, n as grid, e as plot, s as tickLabel };
|
|
15
|
+
|
|
16
|
+
//# sourceMappingURL=BarChart.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BarChart.module.js","names":[],"sources":["../../../ui/BarChart/BarChart.module.css"],"sourcesContent":[".plot {\n position: relative;\n width: 100%;\n min-width: 0;\n overflow: visible;\n}\n\n.chart {\n display: block;\n width: 100%;\n overflow: visible;\n}\n\n.grid {\n stroke: var(--border-strong);\n stroke-width: 1;\n shape-rendering: crispEdges;\n pointer-events: none;\n}\n\n.axis {\n stroke: var(--border-strong);\n stroke-width: 1;\n shape-rendering: crispEdges;\n pointer-events: none;\n}\n\n.bar {\n cursor: pointer;\n outline: none;\n transition: opacity 0.48s cubic-bezier(0.22, 1, 0.36, 1);\n}\n\n.barDimmed {\n opacity: 0.45;\n}\n\n.bar:focus-visible {\n outline: var(--border-focus-width) solid var(--focus-ring);\n outline-offset: var(--space-inset-2xs);\n}\n\n.categoryLabel,\n.tickLabel {\n fill: var(--text-muted);\n font-family: var(--font-sans);\n font-size: var(--type-size-caption);\n font-variant-numeric: tabular-nums;\n pointer-events: none;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .bar {\n transition: opacity var(--motion-interaction-duration) var(--motion-interaction-easing);\n }\n}\n"],"mappings":""}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ChartDatum, ChartSeries } from '../shared/chartMath';
|
|
2
|
+
export type BarChartOrientation = "vertical" | "horizontal";
|
|
3
|
+
export interface BarChartProps {
|
|
4
|
+
data?: ChartDatum[];
|
|
5
|
+
categories?: string[];
|
|
6
|
+
series?: ChartSeries[];
|
|
7
|
+
title?: string;
|
|
8
|
+
description?: string;
|
|
9
|
+
orientation?: BarChartOrientation;
|
|
10
|
+
height?: number;
|
|
11
|
+
showGrid?: boolean;
|
|
12
|
+
showTable?: boolean;
|
|
13
|
+
emptyLabel?: string;
|
|
14
|
+
isLoading?: boolean;
|
|
15
|
+
className?: string;
|
|
16
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { LucideByName as e } from "../Button/lucideName.js";
|
|
2
|
+
import t from "./Breadcrumb.module.js";
|
|
3
|
+
import { jsx as n } from "react/jsx-runtime";
|
|
4
|
+
//#region ui/Breadcrumb/Breadcrumb.tsx
|
|
5
|
+
function r(e, t) {
|
|
6
|
+
if (t == null || !Number.isFinite(t) || t < 1 || e.length <= t) return e.map((e, t) => ({
|
|
7
|
+
kind: "item",
|
|
8
|
+
item: e,
|
|
9
|
+
index: t
|
|
10
|
+
}));
|
|
11
|
+
let n = Math.max(t - 1, 0), r = e.slice(-n), i = e.length - r.length, a = [{
|
|
12
|
+
kind: "item",
|
|
13
|
+
item: e[0],
|
|
14
|
+
index: 0
|
|
15
|
+
}, { kind: "ellipsis" }];
|
|
16
|
+
return r.forEach((e, t) => {
|
|
17
|
+
a.push({
|
|
18
|
+
kind: "item",
|
|
19
|
+
item: e,
|
|
20
|
+
index: i + t
|
|
21
|
+
});
|
|
22
|
+
}), a;
|
|
23
|
+
}
|
|
24
|
+
function i({ items: i, separator: a = "chevron", maxItems: o }) {
|
|
25
|
+
let s = r(i, o), c = i.length - 1;
|
|
26
|
+
return /* @__PURE__ */ n("nav", {
|
|
27
|
+
"aria-label": "Breadcrumb",
|
|
28
|
+
children: /* @__PURE__ */ n("ol", {
|
|
29
|
+
className: t.list,
|
|
30
|
+
children: s.map((r, i) => {
|
|
31
|
+
let o = r.kind === "ellipsis" ? "ellipsis" : `crumb-${r.index}`, l = i < s.length - 1 ? /* @__PURE__ */ n("li", {
|
|
32
|
+
className: t.separator,
|
|
33
|
+
"aria-hidden": "true",
|
|
34
|
+
children: a === "slash" ? /* @__PURE__ */ n("span", {
|
|
35
|
+
className: t.slash,
|
|
36
|
+
children: "/"
|
|
37
|
+
}) : /* @__PURE__ */ n(e, {
|
|
38
|
+
name: "ChevronRight",
|
|
39
|
+
size: 14
|
|
40
|
+
})
|
|
41
|
+
}, `sep-${i}`) : null;
|
|
42
|
+
if (r.kind === "ellipsis") return [/* @__PURE__ */ n("li", {
|
|
43
|
+
className: t.ellipsis,
|
|
44
|
+
"aria-hidden": "true",
|
|
45
|
+
children: /* @__PURE__ */ n(e, {
|
|
46
|
+
name: "Ellipsis",
|
|
47
|
+
size: 14
|
|
48
|
+
})
|
|
49
|
+
}, o), l];
|
|
50
|
+
let u = r.index === c ? /* @__PURE__ */ n("span", {
|
|
51
|
+
className: t.current,
|
|
52
|
+
"aria-current": "page",
|
|
53
|
+
children: r.item.label
|
|
54
|
+
}) : r.item.onClick ? /* @__PURE__ */ n("button", {
|
|
55
|
+
type: "button",
|
|
56
|
+
className: t.link,
|
|
57
|
+
onClick: r.item.onClick,
|
|
58
|
+
children: r.item.label
|
|
59
|
+
}) : r.item.href ? /* @__PURE__ */ n("a", {
|
|
60
|
+
className: t.link,
|
|
61
|
+
href: r.item.href,
|
|
62
|
+
children: r.item.label
|
|
63
|
+
}) : /* @__PURE__ */ n("span", {
|
|
64
|
+
className: t.crumb,
|
|
65
|
+
children: r.item.label
|
|
66
|
+
});
|
|
67
|
+
return [/* @__PURE__ */ n("li", {
|
|
68
|
+
className: t.item,
|
|
69
|
+
children: u
|
|
70
|
+
}, o), l];
|
|
71
|
+
})
|
|
72
|
+
})
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
//#endregion
|
|
76
|
+
export { i as Breadcrumb };
|
|
77
|
+
|
|
78
|
+
//# sourceMappingURL=Breadcrumb.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Breadcrumb.js","names":[],"sources":["../../../ui/Breadcrumb/Breadcrumb.tsx"],"sourcesContent":["import { LucideByName } from \"../Button/lucideName\";\nimport type { BreadcrumbItem, BreadcrumbProps } from \"./Breadcrumb.types\";\nimport styles from \"./Breadcrumb.module.css\";\n\nexport type { BreadcrumbItem, BreadcrumbProps, BreadcrumbSeparator } from \"./Breadcrumb.types\";\n\ntype VisibleNode =\n | { kind: \"ellipsis\" }\n | { kind: \"item\"; item: BreadcrumbItem; index: number };\n\nfunction visibleNodes(items: BreadcrumbItem[], maxItems?: number): VisibleNode[] {\n if (\n maxItems == null ||\n !Number.isFinite(maxItems) ||\n maxItems < 1 ||\n items.length <= maxItems\n ) {\n return items.map((item, index) => ({ kind: \"item\", item, index }));\n }\n\n const tailCount = Math.max(maxItems - 1, 0);\n const tail = items.slice(-tailCount);\n const tailStart = items.length - tail.length;\n const nodes: VisibleNode[] = [{ kind: \"item\", item: items[0], index: 0 }, { kind: \"ellipsis\" }];\n\n tail.forEach((item, offset) => {\n nodes.push({ kind: \"item\", item, index: tailStart + offset });\n });\n\n return nodes;\n}\n\nexport function Breadcrumb({ items, separator = \"chevron\", maxItems }: BreadcrumbProps) {\n const nodes = visibleNodes(items, maxItems);\n const lastIndex = items.length - 1;\n\n return (\n <nav aria-label=\"Breadcrumb\">\n <ol className={styles.list}>\n {nodes.map((node, position) => {\n const key = node.kind === \"ellipsis\" ? \"ellipsis\" : `crumb-${node.index}`;\n const after =\n position < nodes.length - 1 ? (\n <li key={`sep-${position}`} className={styles.separator} aria-hidden=\"true\">\n {separator === \"slash\" ? (\n <span className={styles.slash}>/</span>\n ) : (\n <LucideByName name=\"ChevronRight\" size={14} />\n )}\n </li>\n ) : null;\n\n if (node.kind === \"ellipsis\") {\n return [\n <li key={key} className={styles.ellipsis} aria-hidden=\"true\">\n <LucideByName name=\"Ellipsis\" size={14} />\n </li>,\n after,\n ];\n }\n\n const isCurrent = node.index === lastIndex;\n const content = isCurrent ? (\n <span className={styles.current} aria-current=\"page\">\n {node.item.label}\n </span>\n ) : node.item.onClick ? (\n <button type=\"button\" className={styles.link} onClick={node.item.onClick}>\n {node.item.label}\n </button>\n ) : node.item.href ? (\n <a className={styles.link} href={node.item.href}>\n {node.item.label}\n </a>\n ) : (\n <span className={styles.crumb}>{node.item.label}</span>\n );\n\n return [\n <li key={key} className={styles.item}>\n {content}\n </li>,\n after,\n ];\n })}\n </ol>\n </nav>\n );\n}\n"],"mappings":";;;;AAUA,SAAS,EAAa,GAAyB,GAAkC;CAC/E,IACE,KAAY,QACZ,CAAC,OAAO,SAAS,CAAQ,KACzB,IAAW,KACX,EAAM,UAAU,GAEhB,OAAO,EAAM,KAAK,GAAM,OAAW;EAAE,MAAM;EAAQ;EAAM;CAAM,EAAE;CAGnE,IAAM,IAAY,KAAK,IAAI,IAAW,GAAG,CAAC,GACpC,IAAO,EAAM,MAAM,CAAC,CAAS,GAC7B,IAAY,EAAM,SAAS,EAAK,QAChC,IAAuB,CAAC;EAAE,MAAM;EAAQ,MAAM,EAAM;EAAI,OAAO;CAAE,GAAG,EAAE,MAAM,WAAW,CAAC;CAM9F,OAJA,EAAK,SAAS,GAAM,MAAW;EAC7B,EAAM,KAAK;GAAE,MAAM;GAAQ;GAAM,OAAO,IAAY;EAAO,CAAC;CAC9D,CAAC,GAEM;AACT;AAEA,SAAgB,EAAW,EAAE,UAAO,eAAY,WAAW,eAA6B;CACtF,IAAM,IAAQ,EAAa,GAAO,CAAQ,GACpC,IAAY,EAAM,SAAS;CAEjC,OACE,kBAAC,OAAD;EAAK,cAAW;EACd,UAAA,kBAAC,MAAD;GAAI,WAAW,EAAO;GACnB,UAAA,EAAM,KAAK,GAAM,MAAa;IAC7B,IAAM,IAAM,EAAK,SAAS,aAAa,aAAa,SAAS,EAAK,SAC5D,IACJ,IAAW,EAAM,SAAS,IACxB,kBAAC,MAAD;KAA4B,WAAW,EAAO;KAAW,eAAY;KAClE,UAAA,MAAc,UACb,kBAAC,QAAD;MAAM,WAAW,EAAO;MAAO,UAAA;KAAO,CAAA,IAEtC,kBAAC,GAAD;MAAc,MAAK;MAAe,MAAM;KAAK,CAAA;IAE7C,GANK,OAAO,GAMZ,IACF;IAEN,IAAI,EAAK,SAAS,YAChB,OAAO,CACL,kBAAC,MAAD;KAAc,WAAW,EAAO;KAAU,eAAY;KACpD,UAAA,kBAAC,GAAD;MAAc,MAAK;MAAW,MAAM;KAAK,CAAA;IACvC,GAFK,CAEL,GACJ,CACF;IAIF,IAAM,IADY,EAAK,UAAU,IAE/B,kBAAC,QAAD;KAAM,WAAW,EAAO;KAAS,gBAAa;KAC3C,UAAA,EAAK,KAAK;IACP,CAAA,IACJ,EAAK,KAAK,UACZ,kBAAC,UAAD;KAAQ,MAAK;KAAS,WAAW,EAAO;KAAM,SAAS,EAAK,KAAK;KAC9D,UAAA,EAAK,KAAK;IACL,CAAA,IACN,EAAK,KAAK,OACZ,kBAAC,KAAD;KAAG,WAAW,EAAO;KAAM,MAAM,EAAK,KAAK;KACxC,UAAA,EAAK,KAAK;IACV,CAAA,IAEH,kBAAC,QAAD;KAAM,WAAW,EAAO;KAAQ,UAAA,EAAK,KAAK;IAAY,CAAA;IAGxD,OAAO,CACL,kBAAC,MAAD;KAAc,WAAW,EAAO;KAC7B,UAAA;IACC,GAFK,CAEL,GACJ,CACF;GACF,CAAC;EACC,CAAA;CACD,CAAA;AAET"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
.
|
|
1
|
+
._list_1ruma_1 {
|
|
2
2
|
display: flex;
|
|
3
3
|
flex-wrap: wrap;
|
|
4
4
|
align-items: center;
|
|
@@ -11,19 +11,19 @@
|
|
|
11
11
|
line-height: var(--type-line-body);
|
|
12
12
|
}
|
|
13
13
|
|
|
14
|
-
.
|
|
14
|
+
._item_1ruma_14 {
|
|
15
15
|
display: flex;
|
|
16
16
|
align-items: center;
|
|
17
17
|
gap: var(--space-1);
|
|
18
18
|
}
|
|
19
19
|
|
|
20
|
-
.
|
|
20
|
+
._link_1ruma_20 {
|
|
21
21
|
color: var(--text-secondary);
|
|
22
22
|
text-decoration: none;
|
|
23
23
|
border-radius: var(--radius-control-sm);
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
-
button.
|
|
26
|
+
button._link_1ruma_20 {
|
|
27
27
|
appearance: none;
|
|
28
28
|
margin: 0;
|
|
29
29
|
padding: 0;
|
|
@@ -33,32 +33,32 @@ button.link {
|
|
|
33
33
|
cursor: pointer;
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
-
.
|
|
36
|
+
._link_1ruma_20:hover {
|
|
37
37
|
color: var(--text-primary);
|
|
38
38
|
text-decoration: underline;
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
-
.
|
|
41
|
+
._link_1ruma_20:focus-visible {
|
|
42
42
|
outline: var(--border-focus-width) solid var(--focus-ring);
|
|
43
43
|
outline-offset: var(--space-inset-2xs);
|
|
44
44
|
}
|
|
45
45
|
|
|
46
|
-
.
|
|
46
|
+
._current_1ruma_46 {
|
|
47
47
|
color: var(--text-primary);
|
|
48
48
|
font-weight: var(--type-weight-label);
|
|
49
49
|
}
|
|
50
50
|
|
|
51
|
-
.
|
|
51
|
+
._crumb_1ruma_51 {
|
|
52
52
|
color: var(--text-secondary);
|
|
53
53
|
}
|
|
54
54
|
|
|
55
|
-
.
|
|
56
|
-
.
|
|
55
|
+
._separator_1ruma_55,
|
|
56
|
+
._ellipsis_1ruma_56 {
|
|
57
57
|
display: flex;
|
|
58
58
|
align-items: center;
|
|
59
59
|
color: var(--icon-muted);
|
|
60
60
|
}
|
|
61
61
|
|
|
62
|
-
.
|
|
62
|
+
._slash_1ruma_62 {
|
|
63
63
|
color: var(--text-muted);
|
|
64
64
|
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import "./Breadcrumb.module.css";
|
|
2
|
+
//#region ui/Breadcrumb/Breadcrumb.module.css
|
|
3
|
+
var e = "_list_1ruma_1", t = "_item_1ruma_14", n = "_link_1ruma_20", r = "_current_1ruma_46", i = "_crumb_1ruma_51", a = "_separator_1ruma_55", o = "_ellipsis_1ruma_56", s = "_slash_1ruma_62", c = {
|
|
4
|
+
list: e,
|
|
5
|
+
item: t,
|
|
6
|
+
link: n,
|
|
7
|
+
current: r,
|
|
8
|
+
crumb: i,
|
|
9
|
+
separator: a,
|
|
10
|
+
ellipsis: o,
|
|
11
|
+
slash: s
|
|
12
|
+
};
|
|
13
|
+
//#endregion
|
|
14
|
+
export { i as crumb, r as current, c as default, o as ellipsis, t as item, n as link, e as list, a as separator, s as slash };
|
|
15
|
+
|
|
16
|
+
//# sourceMappingURL=Breadcrumb.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Breadcrumb.module.js","names":[],"sources":["../../../ui/Breadcrumb/Breadcrumb.module.css"],"sourcesContent":[".list {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--space-1);\n margin: 0;\n padding: 0;\n list-style: none;\n font-family: var(--font-sans);\n font-size: var(--type-size-body-sm);\n line-height: var(--type-line-body);\n}\n\n.item {\n display: flex;\n align-items: center;\n gap: var(--space-1);\n}\n\n.link {\n color: var(--text-secondary);\n text-decoration: none;\n border-radius: var(--radius-control-sm);\n}\n\nbutton.link {\n appearance: none;\n margin: 0;\n padding: 0;\n border: 0;\n background: transparent;\n font: inherit;\n cursor: pointer;\n}\n\n.link:hover {\n color: var(--text-primary);\n text-decoration: underline;\n}\n\n.link:focus-visible {\n outline: var(--border-focus-width) solid var(--focus-ring);\n outline-offset: var(--space-inset-2xs);\n}\n\n.current {\n color: var(--text-primary);\n font-weight: var(--type-weight-label);\n}\n\n.crumb {\n color: var(--text-secondary);\n}\n\n.separator,\n.ellipsis {\n display: flex;\n align-items: center;\n color: var(--icon-muted);\n}\n\n.slash {\n color: var(--text-muted);\n}\n"],"mappings":""}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export interface BreadcrumbItem {
|
|
2
|
+
label: string;
|
|
3
|
+
href?: string;
|
|
4
|
+
/** In-app select. When set, the crumb is a button (or a link that does not navigate). */
|
|
5
|
+
onClick?: () => void;
|
|
6
|
+
}
|
|
7
|
+
export type BreadcrumbSeparator = "chevron" | "slash";
|
|
8
|
+
export interface BreadcrumbProps {
|
|
9
|
+
items: BreadcrumbItem[];
|
|
10
|
+
separator?: BreadcrumbSeparator;
|
|
11
|
+
maxItems?: number;
|
|
12
|
+
}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { ButtonProps } from './Button.types';
|
|
2
|
+
export type { ButtonProps, ButtonSize, ButtonVariant, ButtonType, ButtonShape } from './Button.types';
|
|
3
|
+
export declare function Button({ children, size, variant, shape, block, disabled, type, onClick, iconStart, iconEnd, ariaLabel, }: ButtonProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { LucideByName as e } from "./lucideName.js";
|
|
2
|
+
import t from "./Button.module.js";
|
|
3
|
+
import { jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
4
|
+
//#region ui/Button/Button.tsx
|
|
5
|
+
var i = {
|
|
6
|
+
sm: 14,
|
|
7
|
+
md: 16,
|
|
8
|
+
lg: 18
|
|
9
|
+
};
|
|
10
|
+
function a({ children: a, size: o = "md", variant: s = "primary", shape: c = "default", block: l = !1, disabled: u = !1, type: d = "button", onClick: f, iconStart: p, iconEnd: m, ariaLabel: h }) {
|
|
11
|
+
let g = !!(a && a.trim()), _ = !g && !!p, v = i[o];
|
|
12
|
+
return /* @__PURE__ */ r("button", {
|
|
13
|
+
type: d,
|
|
14
|
+
disabled: u,
|
|
15
|
+
"aria-disabled": u || void 0,
|
|
16
|
+
"aria-label": _ ? h : void 0,
|
|
17
|
+
onClick: f,
|
|
18
|
+
className: [
|
|
19
|
+
t.button,
|
|
20
|
+
t[o],
|
|
21
|
+
t[s],
|
|
22
|
+
c === "pill" ? t.pill : "",
|
|
23
|
+
l ? t.block : "",
|
|
24
|
+
_ ? t.iconOnly : ""
|
|
25
|
+
].filter(Boolean).join(" "),
|
|
26
|
+
children: [
|
|
27
|
+
/* @__PURE__ */ n(e, {
|
|
28
|
+
name: p,
|
|
29
|
+
size: v,
|
|
30
|
+
className: t.icon
|
|
31
|
+
}),
|
|
32
|
+
g ? /* @__PURE__ */ n("span", { children: a }) : null,
|
|
33
|
+
/* @__PURE__ */ n(e, {
|
|
34
|
+
name: m,
|
|
35
|
+
size: v,
|
|
36
|
+
className: t.icon
|
|
37
|
+
})
|
|
38
|
+
]
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
//#endregion
|
|
42
|
+
export { a as Button };
|
|
43
|
+
|
|
44
|
+
//# sourceMappingURL=Button.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Button.js","names":[],"sources":["../../../ui/Button/Button.tsx"],"sourcesContent":["import type { ButtonProps } from \"./Button.types\";\nimport { LucideByName } from \"./lucideName\";\nimport styles from \"./Button.module.css\";\n\nexport type { ButtonProps, ButtonSize, ButtonVariant, ButtonType, ButtonShape } from \"./Button.types\";\n\nconst ICON_SIZE = { sm: 14, md: 16, lg: 18 } as const;\n\nexport function Button({\n children,\n size = \"md\",\n variant = \"primary\",\n shape = \"default\",\n block = false,\n disabled = false,\n type = \"button\",\n onClick,\n iconStart,\n iconEnd,\n ariaLabel,\n}: ButtonProps) {\n const hasLabel = Boolean(children && children.trim());\n const iconOnly = !hasLabel && Boolean(iconStart);\n const iconPx = ICON_SIZE[size];\n\n return (\n <button\n type={type}\n disabled={disabled}\n aria-disabled={disabled || undefined}\n aria-label={iconOnly ? ariaLabel : undefined}\n onClick={onClick}\n className={[\n styles.button,\n styles[size],\n styles[variant],\n shape === \"pill\" ? styles.pill : \"\",\n block ? styles.block : \"\",\n iconOnly ? styles.iconOnly : \"\",\n ]\n .filter(Boolean)\n .join(\" \")}\n >\n <LucideByName name={iconStart} size={iconPx} className={styles.icon} />\n {hasLabel ? <span>{children}</span> : null}\n <LucideByName name={iconEnd} size={iconPx} className={styles.icon} />\n </button>\n );\n}\n"],"mappings":";;;;AAMA,IAAM,IAAY;CAAE,IAAI;CAAI,IAAI;CAAI,IAAI;AAAG;AAE3C,SAAgB,EAAO,EACrB,aACA,UAAO,MACP,aAAU,WACV,WAAQ,WACR,WAAQ,IACR,cAAW,IACX,UAAO,UACP,YACA,cACA,YACA,gBACc;CACd,IAAM,IAAW,GAAQ,KAAY,EAAS,KAAK,IAC7C,IAAW,CAAC,KAAY,EAAQ,GAChC,IAAS,EAAU;CAEzB,OACE,kBAAC,UAAD;EACQ;EACI;EACV,iBAAe,KAAY,KAAA;EAC3B,cAAY,IAAW,IAAY,KAAA;EAC1B;EACT,WAAW;GACT,EAAO;GACP,EAAO;GACP,EAAO;GACP,MAAU,SAAS,EAAO,OAAO;GACjC,IAAQ,EAAO,QAAQ;GACvB,IAAW,EAAO,WAAW;EAC/B,CAAC,CACE,OAAO,OAAO,CAAC,CACf,KAAK,GAAG;EAfb,UAAA;GAiBE,kBAAC,GAAD;IAAc,MAAM;IAAW,MAAM;IAAQ,WAAW,EAAO;GAAO,CAAA;GACrE,IAAW,kBAAC,QAAD,EAAO,YAAe,CAAA,IAAI;GACtC,kBAAC,GAAD;IAAc,MAAM;IAAS,MAAM;IAAQ,WAAW,EAAO;GAAO,CAAA;EAC9D;;AAEZ"}
|