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,307 @@
|
|
|
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, formatAxisTick as r, formatValue as i, linearScale as a, niceTicks as o, normalizeLineInput as s, seriesExtent as c } from "../shared/chartMath.js";
|
|
5
|
+
import { useChartSize as l } from "../shared/useChartSize.js";
|
|
6
|
+
import u from "./LineChart.module.js";
|
|
7
|
+
import { useId as d, 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/LineChart/LineChart.tsx
|
|
10
|
+
var _ = {
|
|
11
|
+
lines: [],
|
|
12
|
+
ticks: [],
|
|
13
|
+
categoryLabels: [],
|
|
14
|
+
samples: [],
|
|
15
|
+
plotLeft: 0,
|
|
16
|
+
plotRight: 0,
|
|
17
|
+
plotTop: 0,
|
|
18
|
+
plotBottom: 0
|
|
19
|
+
};
|
|
20
|
+
function v({ labels: 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: "Label"
|
|
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: i(e.data[t] ?? 0) }, e.label))] }, e)) })]
|
|
35
|
+
})
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
function y({ 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.legendSwatchLine}`,
|
|
52
|
+
style: { background: t.color },
|
|
53
|
+
"aria-hidden": !0
|
|
54
|
+
}), /* @__PURE__ */ h("span", { children: t.label })]
|
|
55
|
+
}) }, t.label);
|
|
56
|
+
})
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
function b(e, t) {
|
|
60
|
+
let n = 0, r = Infinity;
|
|
61
|
+
return t.forEach((t) => {
|
|
62
|
+
let i = Math.abs(t.x - e);
|
|
63
|
+
i < r && (r = i, n = t.index);
|
|
64
|
+
}), n;
|
|
65
|
+
}
|
|
66
|
+
function x({ data: x, labels: S, series: C, title: w, description: T, variant: E = "area", height: D = 240, showGrid: O = !0, showTable: k = !0, includeZero: A = !1, emptyLabel: j = "No data for this range", isLoading: M = !1, className: N = "" }) {
|
|
67
|
+
let [P, F] = p(null), [I, L] = p(null), { ref: R, width: z } = l(D), B = `linechart-grid-${d().replace(/[^a-zA-Z0-9_-]/g, "")}`, { labels: V, series: H } = f(() => s({
|
|
68
|
+
data: x,
|
|
69
|
+
labels: S,
|
|
70
|
+
series: C
|
|
71
|
+
}), [
|
|
72
|
+
x,
|
|
73
|
+
S,
|
|
74
|
+
C
|
|
75
|
+
]), U = H.some((e) => e.data.some((e) => Number.isFinite(e))), W = !V.length || !H.length || !U, G = E === "area", K = H.filter((e) => e.label.trim().length > 0), q = K.length >= 2, J = f(() => {
|
|
76
|
+
if (W || z <= 0) return _;
|
|
77
|
+
let e = n.left, t = z - n.right, i = n.top, s = D - n.bottom, [l, u] = c(H, { includeZero: A }), { ticks: d, min: f, max: p } = o(l, u, 5), m = a([f, p], [s, i]), h = a([0, Math.max(V.length - 1, 1)], [e, t]), g = H.map((n) => {
|
|
78
|
+
let r = V.map((e, t) => ({
|
|
79
|
+
x: h(t),
|
|
80
|
+
y: m(n.data[t] ?? 0)
|
|
81
|
+
})), i = r.map((e, t) => `${t === 0 ? "M" : "L"} ${e.x} ${e.y}`).join(" "), a = G ? `${i} L ${r[r.length - 1]?.x ?? t} ${s} L ${r[0]?.x ?? e} ${s} Z` : "";
|
|
82
|
+
return {
|
|
83
|
+
...n,
|
|
84
|
+
points: r,
|
|
85
|
+
linePath: i,
|
|
86
|
+
areaPath: a
|
|
87
|
+
};
|
|
88
|
+
}), v = V.map((e, t) => ({
|
|
89
|
+
label: e,
|
|
90
|
+
x: h(t),
|
|
91
|
+
y: s + 18
|
|
92
|
+
}));
|
|
93
|
+
return {
|
|
94
|
+
lines: g,
|
|
95
|
+
ticks: d.map((n) => ({
|
|
96
|
+
value: n,
|
|
97
|
+
label: r(n),
|
|
98
|
+
x: e - 8,
|
|
99
|
+
y: m(n),
|
|
100
|
+
gridX1: e,
|
|
101
|
+
gridX2: t,
|
|
102
|
+
gridY1: m(n),
|
|
103
|
+
gridY2: m(n)
|
|
104
|
+
})),
|
|
105
|
+
categoryLabels: v,
|
|
106
|
+
samples: V.map((n, r) => {
|
|
107
|
+
let i = h(r), a = r === 0 ? e : (h(r - 1) + i) / 2, o = r === V.length - 1 ? t : (i + h(r + 1)) / 2;
|
|
108
|
+
return {
|
|
109
|
+
index: r,
|
|
110
|
+
label: n,
|
|
111
|
+
x: i,
|
|
112
|
+
hitX: a,
|
|
113
|
+
hitWidth: Math.max(o - a, 1)
|
|
114
|
+
};
|
|
115
|
+
}),
|
|
116
|
+
plotLeft: e,
|
|
117
|
+
plotRight: t,
|
|
118
|
+
plotTop: i,
|
|
119
|
+
plotBottom: s
|
|
120
|
+
};
|
|
121
|
+
}, [
|
|
122
|
+
D,
|
|
123
|
+
A,
|
|
124
|
+
G,
|
|
125
|
+
W,
|
|
126
|
+
V,
|
|
127
|
+
H,
|
|
128
|
+
z
|
|
129
|
+
]), Y = I ? J.lines.filter((e) => e.label === I) : J.lines, X = P === null ? null : J.samples[P] ?? null, Z = !!(X && z > 0 && X.x > z * .6), Q = (e) => {
|
|
130
|
+
if (!J.samples.length) return;
|
|
131
|
+
let t = e.currentTarget.getBoundingClientRect(), n = J.plotRight - J.plotLeft;
|
|
132
|
+
if (n <= 0 || t.width <= 0) return;
|
|
133
|
+
let r = J.plotLeft + (e.clientX - t.left) / t.width * n;
|
|
134
|
+
F(b(r, J.samples));
|
|
135
|
+
}, $ = () => F(null);
|
|
136
|
+
return /* @__PURE__ */ h(t, {
|
|
137
|
+
title: w,
|
|
138
|
+
description: T,
|
|
139
|
+
legend: q ? /* @__PURE__ */ h(y, {
|
|
140
|
+
series: K,
|
|
141
|
+
active: I,
|
|
142
|
+
onActivate: L,
|
|
143
|
+
onClear: () => L(null)
|
|
144
|
+
}) : void 0,
|
|
145
|
+
table: k ? /* @__PURE__ */ h(v, {
|
|
146
|
+
labels: V,
|
|
147
|
+
series: H
|
|
148
|
+
}) : void 0,
|
|
149
|
+
isEmpty: W,
|
|
150
|
+
emptyLabel: j,
|
|
151
|
+
isLoading: M,
|
|
152
|
+
className: N,
|
|
153
|
+
children: /* @__PURE__ */ g("div", {
|
|
154
|
+
ref: R,
|
|
155
|
+
className: u.plot,
|
|
156
|
+
children: [/* @__PURE__ */ g("svg", {
|
|
157
|
+
className: u.chart,
|
|
158
|
+
width: z || "100%",
|
|
159
|
+
height: D,
|
|
160
|
+
role: "img",
|
|
161
|
+
"aria-label": w,
|
|
162
|
+
children: [
|
|
163
|
+
O && G && z > 0 ? /* @__PURE__ */ h("defs", { children: /* @__PURE__ */ g("mask", {
|
|
164
|
+
id: B,
|
|
165
|
+
maskUnits: "userSpaceOnUse",
|
|
166
|
+
children: [/* @__PURE__ */ h("rect", {
|
|
167
|
+
x: J.plotLeft,
|
|
168
|
+
y: J.plotTop,
|
|
169
|
+
width: Math.max(J.plotRight - J.plotLeft, 1),
|
|
170
|
+
height: Math.max(J.plotBottom - J.plotTop, 1),
|
|
171
|
+
fill: "white"
|
|
172
|
+
}), J.lines.map((e) => e.areaPath ? /* @__PURE__ */ h("path", {
|
|
173
|
+
d: e.areaPath,
|
|
174
|
+
fill: "black"
|
|
175
|
+
}, `grid-mask-${e.label}`) : null)]
|
|
176
|
+
}) }) : null,
|
|
177
|
+
O ? /* @__PURE__ */ h("g", {
|
|
178
|
+
mask: G && z > 0 ? `url(#${B})` : void 0,
|
|
179
|
+
children: J.ticks.map((e) => /* @__PURE__ */ h("line", {
|
|
180
|
+
x1: e.gridX1,
|
|
181
|
+
x2: e.gridX2,
|
|
182
|
+
y1: Math.round(e.gridY1) + .5,
|
|
183
|
+
y2: Math.round(e.gridY1) + .5,
|
|
184
|
+
className: u.grid,
|
|
185
|
+
vectorEffect: "non-scaling-stroke"
|
|
186
|
+
}, e.value))
|
|
187
|
+
}) : null,
|
|
188
|
+
z > 0 && !O ? /* @__PURE__ */ g(m, { children: [/* @__PURE__ */ h("line", {
|
|
189
|
+
className: u.axis,
|
|
190
|
+
x1: J.plotLeft,
|
|
191
|
+
x2: J.plotLeft,
|
|
192
|
+
y1: J.plotTop,
|
|
193
|
+
y2: J.plotBottom
|
|
194
|
+
}), /* @__PURE__ */ h("line", {
|
|
195
|
+
className: u.axis,
|
|
196
|
+
x1: J.plotLeft,
|
|
197
|
+
x2: J.plotRight,
|
|
198
|
+
y1: J.plotBottom,
|
|
199
|
+
y2: J.plotBottom
|
|
200
|
+
})] }) : null,
|
|
201
|
+
J.lines.map((e) => {
|
|
202
|
+
let t = !!I && I !== e.label;
|
|
203
|
+
return /* @__PURE__ */ g("g", {
|
|
204
|
+
className: `${u.series}${t ? ` ${u.seriesDimmed}` : ""}`,
|
|
205
|
+
children: [G && e.areaPath ? /* @__PURE__ */ h("path", {
|
|
206
|
+
className: u.area,
|
|
207
|
+
d: e.areaPath,
|
|
208
|
+
fill: e.color
|
|
209
|
+
}) : null, /* @__PURE__ */ h("path", {
|
|
210
|
+
className: u.line,
|
|
211
|
+
d: e.linePath,
|
|
212
|
+
stroke: e.color
|
|
213
|
+
})]
|
|
214
|
+
}, e.label);
|
|
215
|
+
}),
|
|
216
|
+
X ? /* @__PURE__ */ h("line", {
|
|
217
|
+
className: u.crosshair,
|
|
218
|
+
x1: X.x,
|
|
219
|
+
x2: X.x,
|
|
220
|
+
y1: J.plotTop,
|
|
221
|
+
y2: J.plotBottom
|
|
222
|
+
}) : null,
|
|
223
|
+
X ? Y.map((e) => {
|
|
224
|
+
let t = e.points[X.index];
|
|
225
|
+
return t ? /* @__PURE__ */ h("circle", {
|
|
226
|
+
className: u.dot,
|
|
227
|
+
cx: t.x,
|
|
228
|
+
cy: t.y,
|
|
229
|
+
r: 5,
|
|
230
|
+
fill: e.color
|
|
231
|
+
}, `dot-${e.label}`) : null;
|
|
232
|
+
}) : null,
|
|
233
|
+
J.categoryLabels.map((e) => /* @__PURE__ */ h("text", {
|
|
234
|
+
x: e.x,
|
|
235
|
+
y: e.y,
|
|
236
|
+
className: u.categoryLabel,
|
|
237
|
+
textAnchor: "middle",
|
|
238
|
+
dominantBaseline: "hanging",
|
|
239
|
+
children: e.label
|
|
240
|
+
}, e.label)),
|
|
241
|
+
J.ticks.map((e) => /* @__PURE__ */ h("text", {
|
|
242
|
+
x: e.x,
|
|
243
|
+
y: e.y,
|
|
244
|
+
className: u.tickLabel,
|
|
245
|
+
textAnchor: "end",
|
|
246
|
+
dominantBaseline: "middle",
|
|
247
|
+
children: e.label
|
|
248
|
+
}, `tick-${e.value}`)),
|
|
249
|
+
z > 0 ? /* @__PURE__ */ h("rect", {
|
|
250
|
+
className: u.overlay,
|
|
251
|
+
x: J.plotLeft,
|
|
252
|
+
y: J.plotTop,
|
|
253
|
+
width: Math.max(J.plotRight - J.plotLeft, 1),
|
|
254
|
+
height: Math.max(J.plotBottom - J.plotTop, 1),
|
|
255
|
+
onPointerMove: Q,
|
|
256
|
+
onPointerLeave: $
|
|
257
|
+
}) : null,
|
|
258
|
+
J.samples.map((e) => /* @__PURE__ */ h("rect", {
|
|
259
|
+
className: u.hit,
|
|
260
|
+
x: e.hitX,
|
|
261
|
+
y: J.plotTop,
|
|
262
|
+
width: e.hitWidth,
|
|
263
|
+
height: Math.max(J.plotBottom - J.plotTop, 1),
|
|
264
|
+
tabIndex: 0,
|
|
265
|
+
role: "button",
|
|
266
|
+
"aria-label": `${e.label}: ${H.map((t) => `${t.label} ${i(t.data[e.index] ?? 0)}`).join(", ")}`,
|
|
267
|
+
onFocus: () => F(e.index),
|
|
268
|
+
onBlur: $
|
|
269
|
+
}, `hit-${e.label}-${e.index}`))
|
|
270
|
+
]
|
|
271
|
+
}), X ? /* @__PURE__ */ g("div", {
|
|
272
|
+
className: `${e.tooltip}${Z ? ` ${e.tooltipFlip}` : ""}`,
|
|
273
|
+
style: {
|
|
274
|
+
left: X.x,
|
|
275
|
+
top: J.plotTop
|
|
276
|
+
},
|
|
277
|
+
role: "status",
|
|
278
|
+
"aria-live": "polite",
|
|
279
|
+
children: [/* @__PURE__ */ h("p", {
|
|
280
|
+
className: e.tooltipTitle,
|
|
281
|
+
children: X.label
|
|
282
|
+
}), Y.map((t) => /* @__PURE__ */ g("div", {
|
|
283
|
+
className: e.tooltipRow,
|
|
284
|
+
children: [
|
|
285
|
+
/* @__PURE__ */ h("span", {
|
|
286
|
+
className: e.tooltipKey,
|
|
287
|
+
style: { background: t.color },
|
|
288
|
+
"aria-hidden": !0
|
|
289
|
+
}),
|
|
290
|
+
/* @__PURE__ */ h("span", {
|
|
291
|
+
className: e.tooltipShare,
|
|
292
|
+
children: t.label
|
|
293
|
+
}),
|
|
294
|
+
/* @__PURE__ */ h("span", {
|
|
295
|
+
className: e.tooltipValue,
|
|
296
|
+
children: i(t.data[X.index] ?? 0)
|
|
297
|
+
})
|
|
298
|
+
]
|
|
299
|
+
}, t.label))]
|
|
300
|
+
}) : null]
|
|
301
|
+
})
|
|
302
|
+
});
|
|
303
|
+
}
|
|
304
|
+
//#endregion
|
|
305
|
+
export { x as LineChart };
|
|
306
|
+
|
|
307
|
+
//# sourceMappingURL=LineChart.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LineChart.js","names":[],"sources":["../../../ui/LineChart/LineChart.tsx"],"sourcesContent":["\"use client\";\n\nimport { useId, useMemo, useState, type PointerEvent as ReactPointerEvent } from \"react\";\nimport { ChartFrame } from \"../shared/ChartFrame\";\nimport frameStyles from \"../shared/ChartFrame.module.css\";\nimport {\n CHART_MARGINS,\n formatAxisTick,\n formatValue,\n linearScale,\n niceTicks,\n normalizeLineInput,\n seriesExtent,\n type ChartSeries,\n} from \"../shared/chartMath\";\nimport { useChartSize } from \"../shared/useChartSize\";\nimport type { LineChartProps } from \"./LineChart.types\";\nimport styles from \"./LineChart.module.css\";\n\nexport type { LineChartProps, LineChartVariant } from \"./LineChart.types\";\n\ntype Point = { x: number; y: number };\n\ntype LineGeom = ChartSeries & {\n points: Point[];\n linePath: string;\n areaPath: string;\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\ntype SampleHit = {\n index: number;\n label: string;\n x: number;\n hitX: number;\n hitWidth: number;\n};\n\nconst EMPTY_LAYOUT = {\n lines: [] as LineGeom[],\n ticks: [] as TickMark[],\n categoryLabels: [] as CategoryLabel[],\n samples: [] as SampleHit[],\n plotLeft: 0,\n plotRight: 0,\n plotTop: 0,\n plotBottom: 0,\n};\n\nfunction ChartTable({ labels, series }: { labels: string[]; series: ChartSeries[] }) {\n return (\n <div className={frameStyles.tableScroll}>\n <table className={frameStyles.table}>\n <thead>\n <tr>\n <th scope=\"col\">Label</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 {labels.map((label, index) => (\n <tr key={label}>\n <th scope=\"row\">{label}</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.legendSwatchLine}`}\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\nfunction nearestIndex(x: number, samples: SampleHit[]) {\n let best = 0;\n let bestDist = Infinity;\n samples.forEach((sample) => {\n const dist = Math.abs(sample.x - x);\n if (dist < bestDist) {\n bestDist = dist;\n best = sample.index;\n }\n });\n return best;\n}\n\nexport function LineChart({\n data,\n labels: labelsProp,\n series: seriesProp,\n title,\n description,\n variant = \"area\",\n height = 240,\n showGrid = true,\n showTable = true,\n includeZero = false,\n emptyLabel = \"No data for this range\",\n isLoading = false,\n className = \"\",\n}: LineChartProps) {\n const [activeIndex, setActiveIndex] = useState<number | null>(null);\n const [highlighted, setHighlighted] = useState<string | null>(null);\n const { ref, width } = useChartSize(height);\n const gridMaskId = `linechart-grid-${useId().replace(/[^a-zA-Z0-9_-]/g, \"\")}`;\n\n const { labels, series } = useMemo(\n () => normalizeLineInput({ data, labels: labelsProp, series: seriesProp }),\n [data, labelsProp, seriesProp],\n );\n\n const hasValues = series.some((entry) => entry.data.some((value) => Number.isFinite(value)));\n const isEmpty = !labels.length || !series.length || !hasValues;\n const isArea = variant === \"area\";\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 });\n const { ticks, min, max } = niceTicks(rawMin, rawMax, 5);\n const yScale = linearScale([min, max], [plotBottom, plotTop]);\n const xScale = linearScale([0, Math.max(labels.length - 1, 1)], [plotLeft, plotRight]);\n\n const lines: LineGeom[] = series.map((entry) => {\n const points = labels.map((_, index) => ({\n x: xScale(index),\n y: yScale(entry.data[index] ?? 0),\n }));\n const linePath = points.map((point, index) => `${index === 0 ? \"M\" : \"L\"} ${point.x} ${point.y}`).join(\" \");\n const areaPath = isArea\n ? `${linePath} L ${points[points.length - 1]?.x ?? plotRight} ${plotBottom} L ${points[0]?.x ?? plotLeft} ${plotBottom} Z`\n : \"\";\n return { ...entry, points, linePath, areaPath };\n });\n\n const categoryLabels: CategoryLabel[] = labels.map((label, index) => ({\n label,\n x: xScale(index),\n y: plotBottom + 18,\n }));\n\n const tickMarks: TickMark[] = ticks.map((tick) => ({\n value: tick,\n label: formatAxisTick(tick),\n x: plotLeft - 8,\n y: yScale(tick),\n gridX1: plotLeft,\n gridX2: plotRight,\n gridY1: yScale(tick),\n gridY2: yScale(tick),\n }));\n\n const samples: SampleHit[] = labels.map((label, index) => {\n const x = xScale(index);\n const prev = index === 0 ? plotLeft : (xScale(index - 1) + x) / 2;\n const next = index === labels.length - 1 ? plotRight : (x + xScale(index + 1)) / 2;\n return { index, label, x, hitX: prev, hitWidth: Math.max(next - prev, 1) };\n });\n\n return { lines, ticks: tickMarks, categoryLabels, samples, plotLeft, plotRight, plotTop, plotBottom };\n }, [height, includeZero, isArea, isEmpty, labels, series, width]);\n\n const visibleLines = highlighted\n ? layout.lines.filter((line) => line.label === highlighted)\n : layout.lines;\n const activeSample = activeIndex !== null ? (layout.samples[activeIndex] ?? null) : null;\n const flipTooltip = Boolean(activeSample && width > 0 && activeSample.x > width * 0.6);\n\n const handlePlotPointer = (event: ReactPointerEvent<SVGRectElement>) => {\n if (!layout.samples.length) return;\n const rect = event.currentTarget.getBoundingClientRect();\n const plotWidth = layout.plotRight - layout.plotLeft;\n if (plotWidth <= 0 || rect.width <= 0) return;\n const x = layout.plotLeft + ((event.clientX - rect.left) / rect.width) * plotWidth;\n setActiveIndex(nearestIndex(x, layout.samples));\n };\n\n const clearSample = () => setActiveIndex(null);\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 labels={labels} 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 && isArea && width > 0 ? (\n <defs>\n <mask id={gridMaskId} maskUnits=\"userSpaceOnUse\">\n <rect\n x={layout.plotLeft}\n y={layout.plotTop}\n width={Math.max(layout.plotRight - layout.plotLeft, 1)}\n height={Math.max(layout.plotBottom - layout.plotTop, 1)}\n fill=\"white\"\n />\n {layout.lines.map((line) =>\n line.areaPath ? <path key={`grid-mask-${line.label}`} d={line.areaPath} fill=\"black\" /> : null,\n )}\n </mask>\n </defs>\n ) : null}\n {showGrid ? (\n <g mask={isArea && width > 0 ? `url(#${gridMaskId})` : undefined}>\n {layout.ticks.map((tick) => (\n <line\n key={tick.value}\n x1={tick.gridX1}\n x2={tick.gridX2}\n y1={Math.round(tick.gridY1) + 0.5}\n y2={Math.round(tick.gridY1) + 0.5}\n className={styles.grid}\n vectorEffect=\"non-scaling-stroke\"\n />\n ))}\n </g>\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.lines.map((line) => {\n const dimmed = Boolean(highlighted) && highlighted !== line.label;\n return (\n <g\n key={line.label}\n className={`${styles.series}${dimmed ? ` ${styles.seriesDimmed}` : \"\"}`}\n >\n {isArea && line.areaPath ? (\n <path className={styles.area} d={line.areaPath} fill={line.color} />\n ) : null}\n <path className={styles.line} d={line.linePath} stroke={line.color} />\n </g>\n );\n })}\n {activeSample ? (\n <line\n className={styles.crosshair}\n x1={activeSample.x}\n x2={activeSample.x}\n y1={layout.plotTop}\n y2={layout.plotBottom}\n />\n ) : null}\n {activeSample\n ? visibleLines.map((line) => {\n const point = line.points[activeSample.index];\n if (!point) return null;\n return (\n <circle\n key={`dot-${line.label}`}\n className={styles.dot}\n cx={point.x}\n cy={point.y}\n r={5}\n fill={line.color}\n />\n );\n })\n : null}\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=\"middle\"\n dominantBaseline=\"hanging\"\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=\"end\"\n dominantBaseline=\"middle\"\n >\n {tick.label}\n </text>\n ))}\n {width > 0 ? (\n <rect\n className={styles.overlay}\n x={layout.plotLeft}\n y={layout.plotTop}\n width={Math.max(layout.plotRight - layout.plotLeft, 1)}\n height={Math.max(layout.plotBottom - layout.plotTop, 1)}\n onPointerMove={handlePlotPointer}\n onPointerLeave={clearSample}\n />\n ) : null}\n {layout.samples.map((sample) => (\n <rect\n key={`hit-${sample.label}-${sample.index}`}\n className={styles.hit}\n x={sample.hitX}\n y={layout.plotTop}\n width={sample.hitWidth}\n height={Math.max(layout.plotBottom - layout.plotTop, 1)}\n tabIndex={0}\n role=\"button\"\n aria-label={`${sample.label}: ${series\n .map((entry) => `${entry.label} ${formatValue(entry.data[sample.index] ?? 0)}`)\n .join(\", \")}`}\n onFocus={() => setActiveIndex(sample.index)}\n onBlur={clearSample}\n />\n ))}\n </svg>\n {activeSample ? (\n <div\n className={`${frameStyles.tooltip}${flipTooltip ? ` ${frameStyles.tooltipFlip}` : \"\"}`}\n style={{ left: activeSample.x, top: layout.plotTop }}\n role=\"status\"\n aria-live=\"polite\"\n >\n <p className={frameStyles.tooltipTitle}>{activeSample.label}</p>\n {visibleLines.map((line) => (\n <div key={line.label} className={frameStyles.tooltipRow}>\n <span className={frameStyles.tooltipKey} style={{ background: line.color }} aria-hidden />\n <span className={frameStyles.tooltipShare}>{line.label}</span>\n <span className={frameStyles.tooltipValue}>{formatValue(line.data[activeSample.index] ?? 0)}</span>\n </div>\n ))}\n </div>\n ) : null}\n </div>\n </ChartFrame>\n );\n}\n"],"mappings":"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"}
|
|
@@ -1,51 +1,51 @@
|
|
|
1
|
-
.
|
|
1
|
+
._plot_1i56x_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_1i56x_8 {
|
|
9
9
|
display: block;
|
|
10
10
|
width: 100%;
|
|
11
11
|
overflow: visible;
|
|
12
12
|
}
|
|
13
13
|
|
|
14
|
-
.
|
|
14
|
+
._grid_1i56x_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_1i56x_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
|
+
._crosshair_1i56x_28 {
|
|
29
29
|
stroke: var(--text-muted);
|
|
30
30
|
stroke-width: 1;
|
|
31
31
|
opacity: 0.45;
|
|
32
32
|
pointer-events: none;
|
|
33
33
|
}
|
|
34
34
|
|
|
35
|
-
.
|
|
35
|
+
._series_1i56x_35 {
|
|
36
36
|
transition: opacity 0.48s cubic-bezier(0.22, 1, 0.36, 1);
|
|
37
37
|
}
|
|
38
38
|
|
|
39
|
-
.
|
|
39
|
+
._seriesDimmed_1i56x_39 {
|
|
40
40
|
opacity: 0.45;
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
-
.
|
|
43
|
+
._area_1i56x_43 {
|
|
44
44
|
fill-opacity: 0.15;
|
|
45
45
|
pointer-events: none;
|
|
46
46
|
}
|
|
47
47
|
|
|
48
|
-
.
|
|
48
|
+
._line_1i56x_48 {
|
|
49
49
|
fill: none;
|
|
50
50
|
stroke-width: 2.5;
|
|
51
51
|
stroke-linecap: round;
|
|
@@ -53,14 +53,14 @@
|
|
|
53
53
|
pointer-events: none;
|
|
54
54
|
}
|
|
55
55
|
|
|
56
|
-
.
|
|
56
|
+
._dot_1i56x_56 {
|
|
57
57
|
stroke: var(--surface-card);
|
|
58
58
|
stroke-width: 2.5;
|
|
59
59
|
pointer-events: none;
|
|
60
60
|
}
|
|
61
61
|
|
|
62
|
-
.
|
|
63
|
-
.
|
|
62
|
+
._categoryLabel_1i56x_62,
|
|
63
|
+
._tickLabel_1i56x_63 {
|
|
64
64
|
fill: var(--text-muted);
|
|
65
65
|
font-family: var(--font-sans);
|
|
66
66
|
font-size: var(--type-size-caption);
|
|
@@ -68,26 +68,26 @@
|
|
|
68
68
|
pointer-events: none;
|
|
69
69
|
}
|
|
70
70
|
|
|
71
|
-
.
|
|
71
|
+
._hit_1i56x_71 {
|
|
72
72
|
fill: transparent;
|
|
73
73
|
cursor: pointer;
|
|
74
74
|
outline: none;
|
|
75
75
|
pointer-events: none;
|
|
76
76
|
}
|
|
77
77
|
|
|
78
|
-
.
|
|
78
|
+
._hit_1i56x_71:focus-visible {
|
|
79
79
|
outline: var(--border-focus-width) solid var(--focus-ring);
|
|
80
80
|
outline-offset: var(--space-inset-2xs);
|
|
81
81
|
}
|
|
82
82
|
|
|
83
|
-
.
|
|
83
|
+
._overlay_1i56x_83 {
|
|
84
84
|
fill: transparent;
|
|
85
85
|
cursor: pointer;
|
|
86
86
|
touch-action: none;
|
|
87
87
|
}
|
|
88
88
|
|
|
89
89
|
@media (prefers-reduced-motion: reduce) {
|
|
90
|
-
.
|
|
90
|
+
._series_1i56x_35 {
|
|
91
91
|
transition: opacity var(--motion-interaction-duration) var(--motion-interaction-easing);
|
|
92
92
|
}
|
|
93
93
|
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import "./LineChart.module.css";
|
|
2
|
+
//#region ui/LineChart/LineChart.module.css
|
|
3
|
+
var e = "_plot_1i56x_1", t = "_chart_1i56x_8", n = "_grid_1i56x_14", r = "_axis_1i56x_21", i = "_crosshair_1i56x_28", a = "_series_1i56x_35", o = "_seriesDimmed_1i56x_39", s = "_area_1i56x_43", c = "_line_1i56x_48", l = "_dot_1i56x_56", u = "_categoryLabel_1i56x_62", d = "_tickLabel_1i56x_63", f = "_hit_1i56x_71", p = "_overlay_1i56x_83", m = {
|
|
4
|
+
plot: e,
|
|
5
|
+
chart: t,
|
|
6
|
+
grid: n,
|
|
7
|
+
axis: r,
|
|
8
|
+
crosshair: i,
|
|
9
|
+
series: a,
|
|
10
|
+
seriesDimmed: o,
|
|
11
|
+
area: s,
|
|
12
|
+
line: c,
|
|
13
|
+
dot: l,
|
|
14
|
+
categoryLabel: u,
|
|
15
|
+
tickLabel: d,
|
|
16
|
+
hit: f,
|
|
17
|
+
overlay: p
|
|
18
|
+
};
|
|
19
|
+
//#endregion
|
|
20
|
+
export { s as area, r as axis, u as categoryLabel, t as chart, i as crosshair, m as default, l as dot, n as grid, f as hit, c as line, p as overlay, e as plot, a as series, o as seriesDimmed, d as tickLabel };
|
|
21
|
+
|
|
22
|
+
//# sourceMappingURL=LineChart.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LineChart.module.js","names":[],"sources":["../../../ui/LineChart/LineChart.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.crosshair {\n stroke: var(--text-muted);\n stroke-width: 1;\n opacity: 0.45;\n pointer-events: none;\n}\n\n.series {\n transition: opacity 0.48s cubic-bezier(0.22, 1, 0.36, 1);\n}\n\n.seriesDimmed {\n opacity: 0.45;\n}\n\n.area {\n fill-opacity: 0.15;\n pointer-events: none;\n}\n\n.line {\n fill: none;\n stroke-width: 2.5;\n stroke-linecap: round;\n stroke-linejoin: round;\n pointer-events: none;\n}\n\n.dot {\n stroke: var(--surface-card);\n stroke-width: 2.5;\n pointer-events: none;\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.hit {\n fill: transparent;\n cursor: pointer;\n outline: none;\n pointer-events: none;\n}\n\n.hit:focus-visible {\n outline: var(--border-focus-width) solid var(--focus-ring);\n outline-offset: var(--space-inset-2xs);\n}\n\n.overlay {\n fill: transparent;\n cursor: pointer;\n touch-action: none;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .series {\n transition: opacity var(--motion-interaction-duration) var(--motion-interaction-easing);\n }\n}\n"],"mappings":""}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ChartDatum, ChartSeries } from '../shared/chartMath';
|
|
2
|
+
export type LineChartVariant = "line" | "area";
|
|
3
|
+
export interface LineChartProps {
|
|
4
|
+
data?: ChartDatum[];
|
|
5
|
+
labels?: string[];
|
|
6
|
+
series?: ChartSeries[];
|
|
7
|
+
title?: string;
|
|
8
|
+
description?: string;
|
|
9
|
+
variant?: LineChartVariant;
|
|
10
|
+
height?: number;
|
|
11
|
+
showGrid?: boolean;
|
|
12
|
+
showTable?: boolean;
|
|
13
|
+
includeZero?: boolean;
|
|
14
|
+
emptyLabel?: string;
|
|
15
|
+
isLoading?: boolean;
|
|
16
|
+
className?: string;
|
|
17
|
+
}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { LoadingAnimationProps } from './LoadingAnimation.types';
|
|
2
|
+
export type { LoadingAnimationProps, LoadingAnimationSize, LoadingAnimationVariant, } from './LoadingAnimation.types';
|
|
3
|
+
export declare function LoadingAnimation({ label, size, variant, className, }: LoadingAnimationProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import e from "./LoadingAnimation.module.js";
|
|
2
|
+
import { jsx as t } from "react/jsx-runtime";
|
|
3
|
+
//#region ui/LoadingAnimation/LoadingAnimation.tsx
|
|
4
|
+
var n = Array.from({ length: 9 }, (e, t) => t);
|
|
5
|
+
function r({ label: r = "Loading", size: i = "md", variant: a = "grid", className: o = "" }) {
|
|
6
|
+
return /* @__PURE__ */ t("span", {
|
|
7
|
+
className: `${e.root} ${e[i]} ${e[a]} ${o}`.trim(),
|
|
8
|
+
role: "status",
|
|
9
|
+
"aria-label": r,
|
|
10
|
+
"aria-live": "polite",
|
|
11
|
+
children: n.map((r) => /* @__PURE__ */ t("span", {
|
|
12
|
+
className: e.dot,
|
|
13
|
+
style: {
|
|
14
|
+
"--loading-index": r,
|
|
15
|
+
"--loading-phase": r / (n.length - 1)
|
|
16
|
+
},
|
|
17
|
+
"aria-hidden": "true"
|
|
18
|
+
}, r))
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
//#endregion
|
|
22
|
+
export { r as LoadingAnimation };
|
|
23
|
+
|
|
24
|
+
//# sourceMappingURL=LoadingAnimation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LoadingAnimation.js","names":[],"sources":["../../../ui/LoadingAnimation/LoadingAnimation.tsx"],"sourcesContent":["import type { CSSProperties } from \"react\";\nimport type { LoadingAnimationProps } from \"./LoadingAnimation.types\";\nimport styles from \"./LoadingAnimation.module.css\";\n\nexport type {\n LoadingAnimationProps,\n LoadingAnimationSize,\n LoadingAnimationVariant,\n} from \"./LoadingAnimation.types\";\n\nconst DOTS = Array.from({ length: 9 }, (_, index) => index);\n\nexport function LoadingAnimation({\n label = \"Loading\",\n size = \"md\",\n variant = \"grid\",\n className = \"\",\n}: LoadingAnimationProps) {\n return (\n <span\n className={`${styles.root} ${styles[size]} ${styles[variant]} ${className}`.trim()}\n role=\"status\"\n aria-label={label}\n aria-live=\"polite\"\n >\n {DOTS.map((index) => (\n <span\n className={styles.dot}\n style={\n {\n \"--loading-index\": index,\n \"--loading-phase\": index / (DOTS.length - 1),\n } as CSSProperties\n }\n aria-hidden=\"true\"\n key={index}\n />\n ))}\n </span>\n );\n}\n"],"mappings":";;;AAUA,IAAM,IAAO,MAAM,KAAK,EAAE,QAAQ,EAAE,IAAI,GAAG,MAAU,CAAK;AAE1D,SAAgB,EAAiB,EAC/B,WAAQ,WACR,UAAO,MACP,aAAU,QACV,eAAY,MACY;CACxB,OACE,kBAAC,QAAD;EACE,WAAW,GAAG,EAAO,KAAK,GAAG,EAAO,GAAM,GAAG,EAAO,GAAS,GAAG,IAAY,KAAK;EACjF,MAAK;EACL,cAAY;EACZ,aAAU;EAET,UAAA,EAAK,KAAK,MACT,kBAAC,QAAD;GACE,WAAW,EAAO;GAClB,OACE;IACE,mBAAmB;IACnB,mBAAmB,KAAS,EAAK,SAAS;GAC5C;GAEF,eAAY;EAEb,GADM,CACN,CACF;CACG,CAAA;AAEV"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
.
|
|
1
|
+
._root_15iqu_1 {
|
|
2
2
|
--loading-animation-duration: calc(var(--motion-modal-duration) * 5);
|
|
3
3
|
--loading-dot-size: var(--space-2);
|
|
4
4
|
display: inline-grid;
|
|
@@ -10,44 +10,44 @@
|
|
|
10
10
|
background: var(--surface-muted);
|
|
11
11
|
}
|
|
12
12
|
|
|
13
|
-
.
|
|
13
|
+
._dot_15iqu_13 {
|
|
14
14
|
position: relative;
|
|
15
15
|
inline-size: var(--loading-dot-size);
|
|
16
16
|
block-size: var(--loading-dot-size);
|
|
17
17
|
}
|
|
18
18
|
|
|
19
|
-
.
|
|
20
|
-
.
|
|
19
|
+
._dot_15iqu_13::before,
|
|
20
|
+
._dot_15iqu_13::after {
|
|
21
21
|
position: absolute;
|
|
22
22
|
inset: 0;
|
|
23
23
|
border-radius: var(--radius-full);
|
|
24
24
|
content: "";
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
-
.
|
|
27
|
+
._dot_15iqu_13::before {
|
|
28
28
|
background: var(--text-primary);
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
-
.
|
|
31
|
+
._dot_15iqu_13::after {
|
|
32
32
|
background: var(--text-inverse);
|
|
33
33
|
opacity: 0.35;
|
|
34
|
-
animation:
|
|
34
|
+
animation: _loading-dot-crossfade_15iqu_1 var(--loading-animation-duration) var(--motion-expand-easing) infinite;
|
|
35
35
|
animation-delay: calc(var(--loading-animation-duration) * var(--loading-phase) * -1);
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
.
|
|
38
|
+
._sm_15iqu_38 {
|
|
39
39
|
--loading-dot-size: 0.3rem;
|
|
40
40
|
gap: 0.2rem;
|
|
41
41
|
padding: var(--space-1);
|
|
42
42
|
}
|
|
43
43
|
|
|
44
|
-
.
|
|
44
|
+
._lg_15iqu_44 {
|
|
45
45
|
--loading-dot-size: var(--space-3);
|
|
46
46
|
gap: var(--space-2);
|
|
47
47
|
padding: var(--space-3);
|
|
48
48
|
}
|
|
49
49
|
|
|
50
|
-
@keyframes
|
|
50
|
+
@keyframes _loading-dot-crossfade_15iqu_1 {
|
|
51
51
|
0%,
|
|
52
52
|
100% {
|
|
53
53
|
opacity: 0;
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
}
|
|
60
60
|
|
|
61
61
|
@media (prefers-reduced-motion: reduce) {
|
|
62
|
-
.
|
|
62
|
+
._dot_15iqu_13::after {
|
|
63
63
|
animation: none;
|
|
64
64
|
opacity: 0.5;
|
|
65
65
|
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import "./LoadingAnimation.module.css";
|
|
2
|
+
//#region ui/LoadingAnimation/LoadingAnimation.module.css
|
|
3
|
+
var e = "_root_15iqu_1", t = "_dot_15iqu_13", n = "_sm_15iqu_38", r = "_lg_15iqu_44", i = {
|
|
4
|
+
root: e,
|
|
5
|
+
dot: t,
|
|
6
|
+
"loading-dot-crossfade": "_loading-dot-crossfade_15iqu_1",
|
|
7
|
+
sm: n,
|
|
8
|
+
lg: r
|
|
9
|
+
};
|
|
10
|
+
//#endregion
|
|
11
|
+
export { i as default, t as dot, r as lg, e as root, n as sm };
|
|
12
|
+
|
|
13
|
+
//# sourceMappingURL=LoadingAnimation.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LoadingAnimation.module.js","names":[],"sources":["../../../ui/LoadingAnimation/LoadingAnimation.module.css"],"sourcesContent":[".root {\n --loading-animation-duration: calc(var(--motion-modal-duration) * 5);\n --loading-dot-size: var(--space-2);\n display: inline-grid;\n grid-template-columns: repeat(3, auto);\n gap: var(--space-1);\n padding: var(--space-2);\n border: var(--border-width-thin) solid var(--border-faint);\n border-radius: var(--radius-surface-sm);\n background: var(--surface-muted);\n}\n\n.dot {\n position: relative;\n inline-size: var(--loading-dot-size);\n block-size: var(--loading-dot-size);\n}\n\n.dot::before,\n.dot::after {\n position: absolute;\n inset: 0;\n border-radius: var(--radius-full);\n content: \"\";\n}\n\n.dot::before {\n background: var(--text-primary);\n}\n\n.dot::after {\n background: var(--text-inverse);\n opacity: 0.35;\n animation: loading-dot-crossfade var(--loading-animation-duration) var(--motion-expand-easing) infinite;\n animation-delay: calc(var(--loading-animation-duration) * var(--loading-phase) * -1);\n}\n\n.sm {\n --loading-dot-size: 0.3rem;\n gap: 0.2rem;\n padding: var(--space-1);\n}\n\n.lg {\n --loading-dot-size: var(--space-3);\n gap: var(--space-2);\n padding: var(--space-3);\n}\n\n@keyframes loading-dot-crossfade {\n 0%,\n 100% {\n opacity: 0;\n }\n\n 50% {\n opacity: 0.85;\n }\n}\n\n@media (prefers-reduced-motion: reduce) {\n .dot::after {\n animation: none;\n opacity: 0.5;\n }\n}\n"],"mappings":""}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
export type LoadingAnimationSize = "sm" | "md" | "lg";
|
|
2
2
|
export type LoadingAnimationVariant = "grid";
|
|
3
|
-
|
|
4
3
|
export interface LoadingAnimationProps {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
label?: string;
|
|
5
|
+
size?: LoadingAnimationSize;
|
|
6
|
+
variant?: LoadingAnimationVariant;
|
|
7
|
+
className?: string;
|
|
9
8
|
}
|