@coopdigital/react 0.53.0 → 0.55.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 +3 -3
- package/dist/components/Button/Button.d.ts +1 -1
- package/dist/components/Button/Button.js +4 -3
- package/dist/components/Card/Card.js +2 -1
- package/dist/components/DatePicker/DatePicker.d.ts +2 -1
- package/dist/components/DatePicker/DatePicker.js +6 -5
- package/dist/components/Expandable/Expandable.js +5 -5
- package/dist/components/Pill/Pill.js +1 -1
- package/dist/components/Searchbox/Searchbox.d.ts +21 -5
- package/dist/components/Searchbox/Searchbox.js +41 -27
- package/dist/components/Squircle/Squircle.js +1 -1
- package/dist/components/TextInput/TextInput.d.ts +5 -1
- package/dist/components/TextInput/TextInput.js +8 -2
- package/dist/components/icons/AccountCircleFilledIcon.d.ts +6 -0
- package/dist/components/icons/AccountCircleFilledIcon.js +20 -0
- package/dist/components/icons/AccountCircleIcon.d.ts +6 -0
- package/dist/components/icons/AccountCircleIcon.js +20 -0
- package/dist/components/icons/AccountFilledIcon.d.ts +6 -0
- package/dist/components/icons/AccountFilledIcon.js +20 -0
- package/dist/components/icons/AccountIcon.d.ts +6 -0
- package/dist/components/icons/AccountIcon.js +20 -0
- package/dist/components/icons/AddIcon.js +2 -2
- package/dist/components/icons/AppsFilledIcon.d.ts +6 -0
- package/dist/components/icons/AppsFilledIcon.js +20 -0
- package/dist/components/icons/{CoopIcon.d.ts → AppsIcon.d.ts} +1 -1
- package/dist/components/icons/AppsIcon.js +20 -0
- package/dist/components/icons/ArrowDownIcon.js +2 -2
- package/dist/components/icons/ArrowLeftIcon.js +2 -2
- package/dist/components/icons/ArrowRightIcon.js +2 -2
- package/dist/components/icons/ArrowUpIcon.js +2 -2
- package/dist/components/icons/BackspaceFilledIcon.d.ts +6 -0
- package/dist/components/icons/BackspaceFilledIcon.js +20 -0
- package/dist/components/icons/{AvatarAltIcon.d.ts → BackspaceIcon.d.ts} +1 -1
- package/dist/components/icons/BackspaceIcon.js +20 -0
- package/dist/components/icons/{CoopLocationIcon.d.ts → BasketFilledIcon.d.ts} +1 -1
- package/dist/components/icons/BasketFilledIcon.js +20 -0
- package/dist/components/icons/BasketIcon.js +2 -2
- package/dist/components/icons/BellFilledIcon.d.ts +6 -0
- package/dist/components/icons/BellFilledIcon.js +20 -0
- package/dist/components/icons/BellIcon.d.ts +6 -0
- package/dist/components/icons/BellIcon.js +20 -0
- package/dist/components/icons/{CloseIcon.d.ts → BroomIcon.d.ts} +1 -1
- package/dist/components/icons/BroomIcon.js +20 -0
- package/dist/components/icons/CalendarFilledIcon.d.ts +6 -0
- package/dist/components/icons/CalendarFilledIcon.js +20 -0
- package/dist/components/icons/CalendarIcon.js +2 -2
- package/dist/components/icons/CashFilledIcon.d.ts +6 -0
- package/dist/components/icons/CashFilledIcon.js +20 -0
- package/dist/components/icons/CashIcon.d.ts +6 -0
- package/dist/components/icons/CashIcon.js +20 -0
- package/dist/components/icons/ChevronDownIcon.js +2 -2
- package/dist/components/icons/ChevronLeftIcon.js +2 -2
- package/dist/components/icons/ChevronRightIcon.js +2 -2
- package/dist/components/icons/ChevronUpIcon.js +2 -2
- package/dist/components/icons/CircleBurgerFilledIcon.d.ts +6 -0
- package/dist/components/icons/CircleBurgerFilledIcon.js +20 -0
- package/dist/components/icons/CircleBurgerIcon.d.ts +6 -0
- package/dist/components/icons/CircleBurgerIcon.js +20 -0
- package/dist/components/icons/ClipboardFilledIcon.d.ts +6 -0
- package/dist/components/icons/ClipboardFilledIcon.js +20 -0
- package/dist/components/icons/ClipboardIcon.d.ts +6 -0
- package/dist/components/icons/ClipboardIcon.js +20 -0
- package/dist/components/icons/{InformationIcon.d.ts → ClockFilledIcon.d.ts} +1 -1
- package/dist/components/icons/ClockFilledIcon.js +20 -0
- package/dist/components/icons/ClockIcon.js +2 -2
- package/dist/components/icons/CloseAltFilledIcon.d.ts +6 -0
- package/dist/components/icons/CloseAltFilledIcon.js +20 -0
- package/dist/components/icons/CloseAltIcon.js +2 -2
- package/dist/components/icons/{VanIcon.d.ts → CogIcon.d.ts} +1 -1
- package/dist/components/icons/CogIcon.js +20 -0
- package/dist/components/icons/CommunityFilledIcon.d.ts +6 -0
- package/dist/components/icons/CommunityFilledIcon.js +20 -0
- package/dist/components/icons/CommunityIcon.d.ts +6 -0
- package/dist/components/icons/CommunityIcon.js +20 -0
- package/dist/components/icons/{QuestionIcon.d.ts → ComputerIcon.d.ts} +1 -1
- package/dist/components/icons/ComputerIcon.js +20 -0
- package/dist/components/icons/ContactFilledIcon.d.ts +6 -0
- package/dist/components/icons/ContactFilledIcon.js +20 -0
- package/dist/components/icons/ContactIcon.d.ts +6 -0
- package/dist/components/icons/ContactIcon.js +20 -0
- package/dist/components/icons/ContactlessFilledIcon.d.ts +6 -0
- package/dist/components/icons/ContactlessFilledIcon.js +20 -0
- package/dist/components/icons/ContactlessIcon.d.ts +6 -0
- package/dist/components/icons/ContactlessIcon.js +20 -0
- package/dist/components/icons/{SettingsIcon.d.ts → CoopLiveIcon.d.ts} +1 -1
- package/dist/components/icons/CoopLiveIcon.js +20 -0
- package/dist/components/icons/CoopLocationFilledIcon.d.ts +6 -0
- package/dist/components/icons/{CoopLocationIcon.js → CoopLocationFilledIcon.js} +5 -5
- package/dist/components/icons/{CoopCardIcon.d.ts → CoopLogoIcon.d.ts} +1 -1
- package/dist/components/icons/CoopLogoIcon.js +20 -0
- package/dist/components/icons/CoopMembershipCardFilledIcon.d.ts +6 -0
- package/dist/components/icons/CoopMembershipCardFilledIcon.js +20 -0
- package/dist/components/icons/CreditCardFilledIcon.d.ts +6 -0
- package/dist/components/icons/CreditCardFilledIcon.js +20 -0
- package/dist/components/icons/CreditCardIcon.d.ts +6 -0
- package/dist/components/icons/CreditCardIcon.js +20 -0
- package/dist/components/icons/CrossIcon.d.ts +6 -0
- package/dist/components/icons/CrossIcon.js +20 -0
- package/dist/components/icons/DocumentIcon.d.ts +6 -0
- package/dist/components/icons/DocumentIcon.js +20 -0
- package/dist/components/icons/DownloadIcon.js +2 -2
- package/dist/components/icons/EnterStoreIcon.d.ts +6 -0
- package/dist/components/icons/EnterStoreIcon.js +20 -0
- package/dist/components/icons/ExitStoreIcon.d.ts +6 -0
- package/dist/components/icons/ExitStoreIcon.js +20 -0
- package/dist/components/icons/EyeFilledIcon.d.ts +6 -0
- package/dist/components/icons/EyeFilledIcon.js +20 -0
- package/dist/components/icons/EyeIcon.d.ts +6 -0
- package/dist/components/icons/EyeIcon.js +20 -0
- package/dist/components/icons/EyeStrikeFilledIcon.d.ts +6 -0
- package/dist/components/icons/EyeStrikeFilledIcon.js +20 -0
- package/dist/components/icons/EyeStrikeIcon.d.ts +6 -0
- package/dist/components/icons/EyeStrikeIcon.js +20 -0
- package/dist/components/icons/FeedbackFilledIcon.d.ts +6 -0
- package/dist/components/icons/FeedbackFilledIcon.js +20 -0
- package/dist/components/icons/FeedbackIcon.d.ts +6 -0
- package/dist/components/icons/FeedbackIcon.js +20 -0
- package/dist/components/icons/{AvatarIcon.d.ts → FilterIcon.d.ts} +1 -1
- package/dist/components/icons/FilterIcon.js +20 -0
- package/dist/components/icons/GiftCardFilledIcon.d.ts +6 -0
- package/dist/components/icons/GiftCardFilledIcon.js +20 -0
- package/dist/components/icons/GiftCardIcon.d.ts +6 -0
- package/dist/components/icons/GiftCardIcon.js +20 -0
- package/dist/components/icons/GiftFilledIcon.d.ts +6 -0
- package/dist/components/icons/GiftFilledIcon.js +20 -0
- package/dist/components/icons/GiftIcon.d.ts +6 -0
- package/dist/components/icons/GiftIcon.js +20 -0
- package/dist/components/icons/HelpFilledIcon.d.ts +6 -0
- package/dist/components/icons/HelpFilledIcon.js +20 -0
- package/dist/components/icons/HelpIcon.d.ts +6 -0
- package/dist/components/icons/HelpIcon.js +20 -0
- package/dist/components/icons/HomeFilledIcon.d.ts +6 -0
- package/dist/components/icons/HomeFilledIcon.js +20 -0
- package/dist/components/icons/HomeIcon.js +2 -2
- package/dist/components/icons/HowDoIAssistantIcon.d.ts +6 -0
- package/dist/components/icons/HowDoIAssistantIcon.js +20 -0
- package/dist/components/icons/InfoIcon.d.ts +6 -0
- package/dist/components/icons/InfoIcon.js +20 -0
- package/dist/components/icons/KebabIcon.d.ts +6 -0
- package/dist/components/icons/KebabIcon.js +20 -0
- package/dist/components/icons/LoadingIcon.js +3 -3
- package/dist/components/icons/LocationFilledIcon.d.ts +6 -0
- package/dist/components/icons/LocationFilledIcon.js +20 -0
- package/dist/components/icons/LocationIcon.js +2 -2
- package/dist/components/icons/LogoutIcon.d.ts +6 -0
- package/dist/components/icons/LogoutIcon.js +20 -0
- package/dist/components/icons/MailIcon.js +2 -2
- package/dist/components/icons/MenuIcon.js +2 -2
- package/dist/components/icons/MessageIcon.js +2 -2
- package/dist/components/icons/MinusIcon.js +2 -2
- package/dist/components/icons/NotesFilledIcon.d.ts +6 -0
- package/dist/components/icons/NotesFilledIcon.js +20 -0
- package/dist/components/icons/NotesIcon.d.ts +6 -0
- package/dist/components/icons/NotesIcon.js +20 -0
- package/dist/components/icons/OpenNewIcon.js +2 -2
- package/dist/components/icons/OwnBagIcon.d.ts +6 -0
- package/dist/components/icons/OwnBagIcon.js +20 -0
- package/dist/components/icons/PadlockIcon.d.ts +6 -0
- package/dist/components/icons/PadlockIcon.js +20 -0
- package/dist/components/icons/PencilIcon.js +2 -2
- package/dist/components/icons/PhoneIcon.js +2 -2
- package/dist/components/icons/PowerIcon.d.ts +6 -0
- package/dist/components/icons/PowerIcon.js +20 -0
- package/dist/components/icons/SaveFilledIcon.d.ts +6 -0
- package/dist/components/icons/SaveFilledIcon.js +20 -0
- package/dist/components/icons/SaveIcon.d.ts +6 -0
- package/dist/components/icons/SaveIcon.js +20 -0
- package/dist/components/icons/ScooterIcon.js +3 -3
- package/dist/components/icons/SearchFilledIcon.d.ts +6 -0
- package/dist/components/icons/SearchFilledIcon.js +20 -0
- package/dist/components/icons/SearchIcon.js +2 -2
- package/dist/components/icons/SendIcon.d.ts +6 -0
- package/dist/components/icons/SendIcon.js +20 -0
- package/dist/components/icons/SpannerIcon.d.ts +6 -0
- package/dist/components/icons/SpannerIcon.js +20 -0
- package/dist/components/icons/StarFilledIcon.d.ts +6 -0
- package/dist/components/icons/StarFilledIcon.js +20 -0
- package/dist/components/icons/StarIcon.d.ts +6 -0
- package/dist/components/icons/StarIcon.js +20 -0
- package/dist/components/icons/TickAltFilledIcon.d.ts +6 -0
- package/dist/components/icons/TickAltFilledIcon.js +20 -0
- package/dist/components/icons/TickAltIcon.js +2 -2
- package/dist/components/icons/TickIcon.js +2 -2
- package/dist/components/icons/TruckIcon.d.ts +6 -0
- package/dist/components/icons/TruckIcon.js +20 -0
- package/dist/components/icons/UserWipeIcon.d.ts +6 -0
- package/dist/components/icons/UserWipeIcon.js +20 -0
- package/dist/components/icons/VoucherFilledIcon.d.ts +6 -0
- package/dist/components/icons/VoucherFilledIcon.js +20 -0
- package/dist/components/icons/VoucherIcon.d.ts +6 -0
- package/dist/components/icons/VoucherIcon.js +20 -0
- package/dist/components/icons/WarningFilledIcon.d.ts +6 -0
- package/dist/components/icons/WarningFilledIcon.js +20 -0
- package/dist/components/icons/WarningIcon.js +2 -2
- package/dist/components/icons/WifiIcon.d.ts +6 -0
- package/dist/components/icons/WifiIcon.js +20 -0
- package/dist/components/icons/WriteIcon.js +2 -2
- package/dist/components/icons/index.d.ts +77 -10
- package/dist/components/icons/index.js +77 -10
- package/dist/types/colors.d.ts +1 -2
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.js +4 -1
- package/package.json +11 -11
- package/src/components/Button/Button.tsx +9 -13
- package/src/components/Card/Card.tsx +2 -1
- package/src/components/DatePicker/DatePicker.tsx +14 -13
- package/src/components/Expandable/Expandable.tsx +5 -10
- package/src/components/Pill/Pill.tsx +1 -1
- package/src/components/Searchbox/Searchbox.tsx +66 -56
- package/src/components/Squircle/Squircle.tsx +1 -1
- package/src/components/TextInput/TextInput.tsx +18 -2
- package/src/components/icons/AccountCircleFilledIcon.tsx +28 -0
- package/src/components/icons/AccountCircleIcon.tsx +28 -0
- package/src/components/icons/AccountFilledIcon.tsx +28 -0
- package/src/components/icons/AccountIcon.tsx +28 -0
- package/src/components/icons/AddIcon.tsx +2 -9
- package/src/components/icons/AppsFilledIcon.tsx +28 -0
- package/src/components/icons/AppsIcon.tsx +28 -0
- package/src/components/icons/ArrowDownIcon.tsx +2 -6
- package/src/components/icons/ArrowLeftIcon.tsx +2 -6
- package/src/components/icons/ArrowRightIcon.tsx +2 -6
- package/src/components/icons/ArrowUpIcon.tsx +2 -6
- package/src/components/icons/BackspaceFilledIcon.tsx +28 -0
- package/src/components/icons/BackspaceIcon.tsx +28 -0
- package/src/components/icons/BasketFilledIcon.tsx +28 -0
- package/src/components/icons/BasketIcon.tsx +2 -9
- package/src/components/icons/BellFilledIcon.tsx +29 -0
- package/src/components/icons/BellIcon.tsx +28 -0
- package/src/components/icons/BroomIcon.tsx +28 -0
- package/src/components/icons/CalendarFilledIcon.tsx +28 -0
- package/src/components/icons/CalendarIcon.tsx +2 -9
- package/src/components/icons/CashFilledIcon.tsx +28 -0
- package/src/components/icons/CashIcon.tsx +33 -0
- package/src/components/icons/ChevronDownIcon.tsx +2 -5
- package/src/components/icons/ChevronLeftIcon.tsx +2 -5
- package/src/components/icons/ChevronRightIcon.tsx +2 -5
- package/src/components/icons/ChevronUpIcon.tsx +2 -5
- package/src/components/icons/CircleBurgerFilledIcon.tsx +28 -0
- package/src/components/icons/CircleBurgerIcon.tsx +28 -0
- package/src/components/icons/ClipboardFilledIcon.tsx +28 -0
- package/src/components/icons/ClipboardIcon.tsx +28 -0
- package/src/components/icons/{InformationIcon.tsx → ClockFilledIcon.tsx} +6 -9
- package/src/components/icons/ClockIcon.tsx +2 -9
- package/src/components/icons/CloseAltFilledIcon.tsx +32 -0
- package/src/components/icons/CloseAltIcon.tsx +2 -13
- package/src/components/icons/CogIcon.tsx +28 -0
- package/src/components/icons/CommunityFilledIcon.tsx +28 -0
- package/src/components/icons/CommunityIcon.tsx +28 -0
- package/src/components/icons/ComputerIcon.tsx +28 -0
- package/src/components/icons/ContactFilledIcon.tsx +28 -0
- package/src/components/icons/ContactIcon.tsx +28 -0
- package/src/components/icons/ContactlessFilledIcon.tsx +28 -0
- package/src/components/icons/ContactlessIcon.tsx +28 -0
- package/src/components/icons/CoopLiveIcon.tsx +29 -0
- package/src/components/icons/CoopLocationFilledIcon.tsx +30 -0
- package/src/components/icons/CoopLogoIcon.tsx +28 -0
- package/src/components/icons/CoopMembershipCardFilledIcon.tsx +40 -0
- package/src/components/icons/CreditCardFilledIcon.tsx +42 -0
- package/src/components/icons/CreditCardIcon.tsx +28 -0
- package/src/components/icons/{CloseIcon.tsx → CrossIcon.tsx} +4 -11
- package/src/components/icons/DocumentIcon.tsx +28 -0
- package/src/components/icons/DownloadIcon.tsx +2 -13
- package/src/components/icons/EnterStoreIcon.tsx +28 -0
- package/src/components/icons/ExitStoreIcon.tsx +28 -0
- package/src/components/icons/EyeFilledIcon.tsx +28 -0
- package/src/components/icons/EyeIcon.tsx +28 -0
- package/src/components/icons/EyeStrikeFilledIcon.tsx +28 -0
- package/src/components/icons/EyeStrikeIcon.tsx +28 -0
- package/src/components/icons/FeedbackFilledIcon.tsx +35 -0
- package/src/components/icons/FeedbackIcon.tsx +28 -0
- package/src/components/icons/FilterIcon.tsx +28 -0
- package/src/components/icons/GiftCardFilledIcon.tsx +28 -0
- package/src/components/icons/GiftCardIcon.tsx +28 -0
- package/src/components/icons/GiftFilledIcon.tsx +28 -0
- package/src/components/icons/GiftIcon.tsx +28 -0
- package/src/components/icons/HelpFilledIcon.tsx +28 -0
- package/src/components/icons/HelpIcon.tsx +28 -0
- package/src/components/icons/HomeFilledIcon.tsx +28 -0
- package/src/components/icons/HomeIcon.tsx +2 -13
- package/src/components/icons/HowDoIAssistantIcon.tsx +28 -0
- package/src/components/icons/InfoIcon.tsx +28 -0
- package/src/components/icons/KebabIcon.tsx +28 -0
- package/src/components/icons/LoadingIcon.tsx +3 -6
- package/src/components/icons/LocationFilledIcon.tsx +28 -0
- package/src/components/icons/LocationIcon.tsx +2 -9
- package/src/components/icons/LogoutIcon.tsx +28 -0
- package/src/components/icons/MailIcon.tsx +2 -5
- package/src/components/icons/MenuIcon.tsx +2 -5
- package/src/components/icons/MessageIcon.tsx +2 -5
- package/src/components/icons/MinusIcon.tsx +2 -5
- package/src/components/icons/NotesFilledIcon.tsx +28 -0
- package/src/components/icons/NotesIcon.tsx +28 -0
- package/src/components/icons/OpenNewIcon.tsx +3 -9
- package/src/components/icons/OwnBagIcon.tsx +28 -0
- package/src/components/icons/PadlockIcon.tsx +28 -0
- package/src/components/icons/PencilIcon.tsx +2 -5
- package/src/components/icons/PhoneIcon.tsx +2 -5
- package/src/components/icons/PowerIcon.tsx +28 -0
- package/src/components/icons/SaveFilledIcon.tsx +28 -0
- package/src/components/icons/SaveIcon.tsx +28 -0
- package/src/components/icons/ScooterIcon.tsx +3 -22
- package/src/components/icons/SearchFilledIcon.tsx +28 -0
- package/src/components/icons/SearchIcon.tsx +9 -9
- package/src/components/icons/SendIcon.tsx +28 -0
- package/src/components/icons/SpannerIcon.tsx +28 -0
- package/src/components/icons/StarFilledIcon.tsx +31 -0
- package/src/components/icons/StarIcon.tsx +28 -0
- package/src/components/icons/TickAltFilledIcon.tsx +32 -0
- package/src/components/icons/TickAltIcon.tsx +2 -9
- package/src/components/icons/TickIcon.tsx +2 -5
- package/src/components/icons/TruckIcon.tsx +28 -0
- package/src/components/icons/UserWipeIcon.tsx +28 -0
- package/src/components/icons/VoucherFilledIcon.tsx +28 -0
- package/src/components/icons/VoucherIcon.tsx +28 -0
- package/src/components/icons/WarningFilledIcon.tsx +28 -0
- package/src/components/icons/WarningIcon.tsx +2 -9
- package/src/components/icons/WifiIcon.tsx +28 -0
- package/src/components/icons/WriteIcon.tsx +5 -17
- package/src/components/icons/index.ts +77 -10
- package/src/types/colors.ts +1 -3
- package/src/utils/index.ts +4 -0
- package/dist/components/icons/AvatarAltIcon.js +0 -20
- package/dist/components/icons/AvatarIcon.js +0 -20
- package/dist/components/icons/CloseIcon.js +0 -20
- package/dist/components/icons/CoopCardIcon.js +0 -20
- package/dist/components/icons/CoopIcon.js +0 -20
- package/dist/components/icons/InformationIcon.js +0 -20
- package/dist/components/icons/QuestionIcon.js +0 -20
- package/dist/components/icons/SettingsIcon.js +0 -20
- package/dist/components/icons/VanIcon.js +0 -20
- package/src/components/icons/AvatarAltIcon.tsx +0 -39
- package/src/components/icons/AvatarIcon.tsx +0 -35
- package/src/components/icons/CoopCardIcon.tsx +0 -32
- package/src/components/icons/CoopIcon.tsx +0 -32
- package/src/components/icons/CoopLocationIcon.tsx +0 -39
- package/src/components/icons/QuestionIcon.tsx +0 -35
- package/src/components/icons/SettingsIcon.tsx +0 -31
- package/src/components/icons/VanIcon.tsx +0 -31
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@coopdigital/react",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.55.0",
|
|
5
5
|
"private": false,
|
|
6
6
|
"publishConfig": {
|
|
7
7
|
"access": "public"
|
|
@@ -58,22 +58,22 @@
|
|
|
58
58
|
"license": "MIT",
|
|
59
59
|
"description": "React components for the Experience Library design system",
|
|
60
60
|
"devDependencies": {
|
|
61
|
-
"@axe-core/playwright": "^4.11.
|
|
61
|
+
"@axe-core/playwright": "^4.11.1",
|
|
62
62
|
"@playwright/test": "^1.58.1",
|
|
63
|
-
"@storybook/addon-a11y": "^10.2.
|
|
64
|
-
"@storybook/addon-docs": "^10.2.
|
|
65
|
-
"@storybook/addon-onboarding": "^10.2.
|
|
66
|
-
"@storybook/react-vite": "^10.2.
|
|
63
|
+
"@storybook/addon-a11y": "^10.2.7",
|
|
64
|
+
"@storybook/addon-docs": "^10.2.7",
|
|
65
|
+
"@storybook/addon-onboarding": "^10.2.7",
|
|
66
|
+
"@storybook/react-vite": "^10.2.7",
|
|
67
67
|
"@testing-library/jest-dom": "^6.9.1",
|
|
68
68
|
"@testing-library/react": "^16.3.2",
|
|
69
|
-
"@types/react": "^19.2.
|
|
69
|
+
"@types/react": "^19.2.13",
|
|
70
70
|
"@types/react-dom": "^19.2.3",
|
|
71
71
|
"react": "^19.2.4",
|
|
72
72
|
"react-dom": "^19.2.4",
|
|
73
73
|
"resize-observer-polyfill": "^1.5.1",
|
|
74
74
|
"serve": "^14.2.5",
|
|
75
|
-
"storybook": "^10.2.
|
|
76
|
-
"storybook-addon-tag-badges": "^3.0.
|
|
75
|
+
"storybook": "^10.2.7",
|
|
76
|
+
"storybook-addon-tag-badges": "^3.0.6"
|
|
77
77
|
},
|
|
78
78
|
"peerDependencies": {
|
|
79
79
|
"react": "^19.1.0",
|
|
@@ -83,10 +83,10 @@
|
|
|
83
83
|
"storybook": "$storybook"
|
|
84
84
|
},
|
|
85
85
|
"dependencies": {
|
|
86
|
-
"@coopdigital/styles": "^0.
|
|
86
|
+
"@coopdigital/styles": "^0.46.0",
|
|
87
87
|
"@radix-ui/react-popover": "^1.1.15",
|
|
88
88
|
"clsx": "^2.1.1",
|
|
89
89
|
"react-day-picker": "^9.12.0"
|
|
90
90
|
},
|
|
91
|
-
"gitHead": "
|
|
91
|
+
"gitHead": "a893acdaff1f6dc817bb01d77988b1bd9dd85ad1"
|
|
92
92
|
}
|
|
@@ -5,6 +5,7 @@ import type { ButtonHTMLAttributes, ForwardRefExoticComponent, JSX, Ref } from "
|
|
|
5
5
|
import clsx from "clsx"
|
|
6
6
|
import React, { useCallback, useState } from "react"
|
|
7
7
|
|
|
8
|
+
import { hasUserBg } from "../../utils"
|
|
8
9
|
import { LoadingIcon } from "../icons"
|
|
9
10
|
|
|
10
11
|
export interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
|
|
@@ -32,16 +33,7 @@ export interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
|
|
|
32
33
|
/** **(Optional)** Specify the Button size. */
|
|
33
34
|
size?: "sm" | "md" | "lg"
|
|
34
35
|
/** **(Optional)** Specify the Button variant. */
|
|
35
|
-
variant?:
|
|
36
|
-
| "green"
|
|
37
|
-
| "blue"
|
|
38
|
-
| "white"
|
|
39
|
-
| "grey"
|
|
40
|
-
| "green-ghost"
|
|
41
|
-
| "blue-ghost"
|
|
42
|
-
| "white-ghost"
|
|
43
|
-
| "grey-ghost"
|
|
44
|
-
| "text"
|
|
36
|
+
variant?: "solid" | "ghost" | "text"
|
|
45
37
|
}
|
|
46
38
|
|
|
47
39
|
type OnClickHandler =
|
|
@@ -60,7 +52,7 @@ export const Button = ({
|
|
|
60
52
|
onClick,
|
|
61
53
|
ref,
|
|
62
54
|
size = "md",
|
|
63
|
-
variant = "
|
|
55
|
+
variant = "solid",
|
|
64
56
|
...props
|
|
65
57
|
}: ButtonProps): JSX.Element => {
|
|
66
58
|
const element: ButtonProps["as"] = as ?? (href ? "a" : "button")
|
|
@@ -85,7 +77,11 @@ export const Button = ({
|
|
|
85
77
|
const componentProps = {
|
|
86
78
|
"aria-disabled": isDisabled ? true : undefined,
|
|
87
79
|
"aria-live": "assertive" as keyof ButtonHTMLAttributes<HTMLButtonElement>["aria-live"],
|
|
88
|
-
className: clsx(
|
|
80
|
+
className: clsx(
|
|
81
|
+
variant == "text" ? "coop-link" : "coop-button",
|
|
82
|
+
!hasUserBg(className) && variant === "solid" && "bg-teal",
|
|
83
|
+
className
|
|
84
|
+
),
|
|
89
85
|
"data-loading": isLoading || isPending ? true : undefined,
|
|
90
86
|
"data-size": size.length && size !== "md" ? size : undefined,
|
|
91
87
|
"data-variant": variant !== "text" ? variant : undefined,
|
|
@@ -99,7 +95,7 @@ export const Button = ({
|
|
|
99
95
|
isPending || isLoading ? (
|
|
100
96
|
<>
|
|
101
97
|
{loadingText}
|
|
102
|
-
<LoadingIcon />
|
|
98
|
+
<LoadingIcon stroke={"currentColor"} strokeWidth={"1px"} />
|
|
103
99
|
</>
|
|
104
100
|
) : (
|
|
105
101
|
children
|
|
@@ -4,6 +4,7 @@ import clsx from "clsx"
|
|
|
4
4
|
import React from "react"
|
|
5
5
|
|
|
6
6
|
import { useSlots } from "../../hooks/useSlots"
|
|
7
|
+
import { hasUserBg } from "../../utils"
|
|
7
8
|
import { ChevronRightIcon } from "../icons/ChevronRightIcon"
|
|
8
9
|
import { Image, ImageProps } from "../Image"
|
|
9
10
|
|
|
@@ -99,7 +100,7 @@ export const Card = ({
|
|
|
99
100
|
const hasLinkWrapper = href && !slots.CardHeading
|
|
100
101
|
|
|
101
102
|
const componentProps = {
|
|
102
|
-
className: clsx("coop-card", className),
|
|
103
|
+
className: clsx("coop-card", !hasUserBg(className) && "bg-white", className),
|
|
103
104
|
"data-image-pos": imagePosition,
|
|
104
105
|
"data-orientation": orientation !== "vertical" ? orientation : undefined,
|
|
105
106
|
...props,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use client"
|
|
2
|
-
import type {
|
|
2
|
+
import type { ChangeEvent, InputHTMLAttributes, JSX, Ref } from "react"
|
|
3
3
|
import type {
|
|
4
4
|
DayPickerProps,
|
|
5
5
|
Formatters,
|
|
@@ -24,7 +24,7 @@ import type {
|
|
|
24
24
|
|
|
25
25
|
import { useId } from "../../hooks/useId"
|
|
26
26
|
import Button from "../Button"
|
|
27
|
-
import {
|
|
27
|
+
import { CalendarIcon, CrossIcon, TickIcon } from "../icons"
|
|
28
28
|
import Popover from "../Popover"
|
|
29
29
|
import TextInput from "../TextInput"
|
|
30
30
|
import {
|
|
@@ -74,12 +74,12 @@ export interface DatePickerProps extends Omit<
|
|
|
74
74
|
error?: boolean
|
|
75
75
|
/** **(Optional)** Specify the Date Picker id. Will be auto-generated if not set. */
|
|
76
76
|
id?: string
|
|
77
|
-
/** **(Optional)** Specify the initial month view for the picker.
|
|
77
|
+
/** **(Optional)** Specify the initial month view for the picker. Combine with `initialSelected` to pre-select a date.
|
|
78
78
|
*
|
|
79
79
|
* Default: today.
|
|
80
80
|
*/
|
|
81
81
|
initialDate?: Date | DateRange
|
|
82
|
-
|
|
82
|
+
/** **(Optional)** Specify whether the initial date should be pre-selected. */
|
|
83
83
|
initialSelected?: boolean
|
|
84
84
|
|
|
85
85
|
/** **(Optional)** Specify the picker mode. */
|
|
@@ -230,7 +230,7 @@ export const DatePicker = ({
|
|
|
230
230
|
)
|
|
231
231
|
|
|
232
232
|
const updateFromInput = useCallback(
|
|
233
|
-
(e:
|
|
233
|
+
(e: ChangeEvent<HTMLInputElement>) => {
|
|
234
234
|
if (shouldSkipParsing(e.currentTarget.value)) {
|
|
235
235
|
setState({
|
|
236
236
|
message: undefined,
|
|
@@ -299,17 +299,18 @@ export const DatePicker = ({
|
|
|
299
299
|
ref={ref}
|
|
300
300
|
required={required}
|
|
301
301
|
size={size}
|
|
302
|
+
suffix={
|
|
303
|
+
<Popover.Trigger aria-label="Choose date" className="coop-datepicker-trigger">
|
|
304
|
+
<CalendarIcon width={24} />
|
|
305
|
+
</Popover.Trigger>
|
|
306
|
+
}
|
|
307
|
+
suffixInline={true}
|
|
302
308
|
value={state?.[mode]?.input ?? ""}
|
|
303
309
|
/>
|
|
304
|
-
<Popover.Trigger asChild>
|
|
305
|
-
<Button className="coop-datepicker-button" disabled={disabled} size={size}>
|
|
306
|
-
Select
|
|
307
|
-
</Button>
|
|
308
|
-
</Popover.Trigger>
|
|
309
310
|
</Popover.Anchor>
|
|
310
311
|
<Popover.Content
|
|
311
312
|
aria-label="Date picker"
|
|
312
|
-
className="coop-datepicker-calendar"
|
|
313
|
+
className="coop-datepicker-calendar bg-white"
|
|
313
314
|
collisionPadding={16}
|
|
314
315
|
sideOffset={4}
|
|
315
316
|
>
|
|
@@ -330,8 +331,8 @@ export const DatePicker = ({
|
|
|
330
331
|
{...calendarProps[mode]}
|
|
331
332
|
/>
|
|
332
333
|
<div className="coop-datepicker-actions">
|
|
333
|
-
<Button aria-label="Cancel" onClick={resetState} size="sm"
|
|
334
|
-
Clear <
|
|
334
|
+
<Button aria-label="Cancel" className="bg-tint-grey" onClick={resetState} size="sm">
|
|
335
|
+
Clear <CrossIcon stroke="black" strokeWidth={1} />
|
|
335
336
|
</Button>
|
|
336
337
|
<Popover.Close asChild>
|
|
337
338
|
<Button aria-label="Accept" size="sm">
|
|
@@ -3,7 +3,7 @@ import type { DetailsHTMLAttributes, HTMLAttributes, JSX, Ref } from "react"
|
|
|
3
3
|
import { clsx } from "clsx"
|
|
4
4
|
|
|
5
5
|
import { useSlots } from "../../hooks/useSlots"
|
|
6
|
-
import {
|
|
6
|
+
import { hasUserBg } from "../../utils"
|
|
7
7
|
import { ChevronDownIcon } from "../icons"
|
|
8
8
|
|
|
9
9
|
export interface ExpandableProps extends DetailsHTMLAttributes<HTMLDetailsElement> {
|
|
@@ -47,9 +47,9 @@ export const Expandable = ({
|
|
|
47
47
|
...props,
|
|
48
48
|
}
|
|
49
49
|
|
|
50
|
-
componentProps.style = {
|
|
51
|
-
|
|
52
|
-
}
|
|
50
|
+
// componentProps.style = {
|
|
51
|
+
// "--bg": `var(--color-${bgClassToColor(componentProps.className)})`,
|
|
52
|
+
// }
|
|
53
53
|
|
|
54
54
|
return (
|
|
55
55
|
<details {...componentProps} ref={ref}>
|
|
@@ -63,12 +63,7 @@ const ExpandableSummary = ({ children, className, ...props }: ExpandableSummaryP
|
|
|
63
63
|
return (
|
|
64
64
|
<summary {...props} className={className}>
|
|
65
65
|
{children}
|
|
66
|
-
<ChevronDownIcon
|
|
67
|
-
className="coop-expandable--icon"
|
|
68
|
-
stroke="currentColor"
|
|
69
|
-
strokeWidth={2}
|
|
70
|
-
width="12"
|
|
71
|
-
/>
|
|
66
|
+
<ChevronDownIcon className="coop-expandable--icon" width="20" />
|
|
72
67
|
</summary>
|
|
73
68
|
)
|
|
74
69
|
}
|
|
@@ -62,7 +62,7 @@ export const Pill = ({
|
|
|
62
62
|
|
|
63
63
|
const PillBadge = ({ children, className }: PillBadgeProps) => {
|
|
64
64
|
return (
|
|
65
|
-
<span className={clsx("coop-pill--badge", !hasUserBg(className) && "bg-
|
|
65
|
+
<span className={clsx("coop-pill--badge", !hasUserBg(className) && "bg-red", className)}>
|
|
66
66
|
{children}
|
|
67
67
|
</span>
|
|
68
68
|
)
|
|
@@ -1,22 +1,20 @@
|
|
|
1
1
|
"use client"
|
|
2
2
|
|
|
3
|
-
import type {
|
|
3
|
+
import type { FormHTMLAttributes, JSX, Ref } from "react"
|
|
4
4
|
|
|
5
5
|
import clsx from "clsx"
|
|
6
6
|
import React, { useCallback, useState } from "react"
|
|
7
7
|
|
|
8
8
|
import { useId } from "../../hooks/useId"
|
|
9
|
+
import { useSlots } from "../../hooks/useSlots"
|
|
9
10
|
import { StandardSizes } from "../../types"
|
|
11
|
+
import { hasUserBorder } from "../../utils"
|
|
10
12
|
import { Button, type ButtonProps } from "../Button"
|
|
11
13
|
import Field from "../Field"
|
|
12
|
-
import { Label as FieldLabel } from "../FieldMarkers/Label"
|
|
13
14
|
import { SearchIcon } from "../icons"
|
|
14
15
|
import TextInput, { TextInputProps } from "../TextInput"
|
|
15
16
|
|
|
16
|
-
export interface SearchboxProps extends
|
|
17
|
-
InputHTMLAttributes<HTMLInputElement>,
|
|
18
|
-
"size" | "type"
|
|
19
|
-
> {
|
|
17
|
+
export interface SearchboxProps extends FormHTMLAttributes<HTMLFormElement> {
|
|
20
18
|
/** **(Optional)** Specify a server endpoint to submit the form. Will be ignored if onSubmit is also set. */
|
|
21
19
|
action?: string
|
|
22
20
|
/** **(Optional)** Specify props to forward to the Button element. Use `label` to set Button text. */
|
|
@@ -32,7 +30,7 @@ export interface SearchboxProps extends Omit<
|
|
|
32
30
|
/** **(Optional)** Specify the TextInput name, also used as the URL search parameter. Defaults to `query`. */
|
|
33
31
|
name?: string
|
|
34
32
|
/** **(Optional)** Callback to run when the form is submitted. If this is an async function, it will be awaited and the Searchbox will be in a pending state until the promise is resolved. */
|
|
35
|
-
onSubmit?: React.
|
|
33
|
+
onSubmit?: React.SubmitEventHandler<HTMLElement> | undefined
|
|
36
34
|
/** **(Optional)** Specify the TextInput placeholder text Do not use in place of a form label. */
|
|
37
35
|
placeholder?: string
|
|
38
36
|
/** **(Optional)** Specify a custom React ref for this component. */
|
|
@@ -40,46 +38,40 @@ export interface SearchboxProps extends Omit<
|
|
|
40
38
|
/** **(Optional)** Specify the Searchbox size. */
|
|
41
39
|
size?: StandardSizes
|
|
42
40
|
/** **(Optional)** Specify the Searchbox variant. */
|
|
43
|
-
variant?:
|
|
44
|
-
| "green"
|
|
45
|
-
| "blue"
|
|
46
|
-
| "white"
|
|
47
|
-
| "grey"
|
|
48
|
-
| "green-ghost"
|
|
49
|
-
| "blue-ghost"
|
|
50
|
-
| "white-ghost"
|
|
51
|
-
| "grey-ghost"
|
|
41
|
+
variant?: "solid" | "ghost"
|
|
52
42
|
}
|
|
53
43
|
|
|
54
|
-
const
|
|
55
|
-
|
|
56
|
-
|
|
44
|
+
const componentSlots = {
|
|
45
|
+
SearchboxButton: null,
|
|
46
|
+
SearchboxInput: null,
|
|
57
47
|
}
|
|
58
48
|
|
|
49
|
+
const defaultButtonText = React.createElement(SearchIcon, {
|
|
50
|
+
alt: "Search",
|
|
51
|
+
stroke: "currentColor",
|
|
52
|
+
width: 24,
|
|
53
|
+
})
|
|
54
|
+
|
|
59
55
|
export const Searchbox = ({
|
|
60
56
|
action,
|
|
61
|
-
|
|
62
|
-
autoCapitalize = "off",
|
|
63
|
-
autoComplete = "off",
|
|
64
|
-
button = defaultButtonProps,
|
|
57
|
+
children,
|
|
65
58
|
className,
|
|
66
|
-
|
|
67
59
|
id,
|
|
68
60
|
label,
|
|
69
61
|
labelVisible = false,
|
|
70
|
-
name = "query",
|
|
71
62
|
onSubmit,
|
|
72
|
-
placeholder,
|
|
73
63
|
ref,
|
|
74
64
|
size = "md",
|
|
75
|
-
variant = "
|
|
65
|
+
variant = "solid",
|
|
76
66
|
...props
|
|
77
67
|
}: SearchboxProps): JSX.Element => {
|
|
68
|
+
const slots = useSlots(componentSlots, children)
|
|
69
|
+
|
|
78
70
|
const [isPending, setIsPending] = useState(false)
|
|
79
71
|
const uid = useId(id)
|
|
80
72
|
|
|
81
73
|
const handleSubmit = useCallback(
|
|
82
|
-
async (event: React.
|
|
74
|
+
async (event: React.SubmitEvent<HTMLFormElement>) => {
|
|
83
75
|
event.preventDefault()
|
|
84
76
|
|
|
85
77
|
if (isPending || !onSubmit) return
|
|
@@ -95,51 +87,69 @@ export const Searchbox = ({
|
|
|
95
87
|
[onSubmit, isPending]
|
|
96
88
|
)
|
|
97
89
|
|
|
90
|
+
let borderClass = ""
|
|
91
|
+
if (!hasUserBorder(className)) {
|
|
92
|
+
borderClass = variant === "ghost" ? "border-teal" : "border-grey"
|
|
93
|
+
}
|
|
94
|
+
|
|
98
95
|
const formProps = {
|
|
99
96
|
action: action ?? undefined,
|
|
100
|
-
className: clsx("coop-searchbox", className),
|
|
97
|
+
className: clsx("coop-searchbox", borderClass, className),
|
|
101
98
|
"data-size": size && size !== "md" ? size : undefined,
|
|
102
|
-
"data-variant": variant.length && variant !== "
|
|
103
|
-
id: uid,
|
|
99
|
+
"data-variant": variant.length && variant !== "solid" ? variant : undefined,
|
|
100
|
+
id: uid + "-form",
|
|
104
101
|
onSubmit: onSubmit ? handleSubmit : undefined,
|
|
102
|
+
...props,
|
|
105
103
|
}
|
|
106
104
|
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
105
|
+
slots.SearchboxButton = React.cloneElement(
|
|
106
|
+
slots.SearchboxButton as React.ReactElement<ButtonProps>,
|
|
107
|
+
{
|
|
108
|
+
isLoading: isPending,
|
|
109
|
+
size,
|
|
110
|
+
}
|
|
111
|
+
)
|
|
114
112
|
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
type: "search",
|
|
124
|
-
...props,
|
|
125
|
-
}
|
|
113
|
+
slots.SearchboxInput = React.cloneElement(
|
|
114
|
+
slots.SearchboxInput as React.ReactElement<TextInputProps>,
|
|
115
|
+
{
|
|
116
|
+
autoCapitalize: "off",
|
|
117
|
+
id: uid,
|
|
118
|
+
size,
|
|
119
|
+
}
|
|
120
|
+
)
|
|
126
121
|
|
|
127
122
|
const labelProps = {
|
|
128
|
-
htmlFor: uid
|
|
123
|
+
htmlFor: uid,
|
|
129
124
|
isVisible: labelVisible,
|
|
130
125
|
}
|
|
131
126
|
|
|
132
127
|
return (
|
|
133
128
|
<form {...formProps} ref={ref}>
|
|
134
|
-
{label && <
|
|
135
|
-
<div className="coop-searchbox--inner">
|
|
136
|
-
<Field>
|
|
137
|
-
|
|
138
|
-
</Field>
|
|
139
|
-
<Button {...buttonProps}>{button.label}</Button>
|
|
129
|
+
{label && <Field.Label {...labelProps}>{label}</Field.Label>}
|
|
130
|
+
<div className={clsx("coop-searchbox--inner")}>
|
|
131
|
+
<Field>{slots.SearchboxInput}</Field>
|
|
132
|
+
{slots.SearchboxButton}
|
|
140
133
|
</div>
|
|
141
134
|
</form>
|
|
142
135
|
)
|
|
143
136
|
}
|
|
144
137
|
|
|
138
|
+
const SearchboxButton = ({ children, ...props }: ButtonProps) => {
|
|
139
|
+
const buttonProps = {
|
|
140
|
+
children: children ?? defaultButtonText,
|
|
141
|
+
...props,
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
return <Button {...buttonProps} />
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
const SearchboxInput = (props: TextInputProps) => <TextInput {...props} />
|
|
148
|
+
|
|
149
|
+
Searchbox.Button = SearchboxButton
|
|
150
|
+
Searchbox.Input = SearchboxInput
|
|
151
|
+
|
|
152
|
+
SearchboxButton.config = { name: "SearchboxButton" }
|
|
153
|
+
SearchboxInput.config = { isField: true, name: "SearchboxInput" }
|
|
154
|
+
|
|
145
155
|
export default Searchbox
|
|
@@ -22,7 +22,7 @@ export const Squircle = ({
|
|
|
22
22
|
...props
|
|
23
23
|
}: SquircleProps): JSX.Element => {
|
|
24
24
|
const componentProps = {
|
|
25
|
-
className: clsx("coop-squircle", !hasUserBg(className) && "bg-offer
|
|
25
|
+
className: clsx("coop-squircle", !hasUserBg(className) && "bg-offer", className),
|
|
26
26
|
"data-size": size.length && size !== "lg" ? size : undefined,
|
|
27
27
|
...props,
|
|
28
28
|
}
|
|
@@ -23,12 +23,16 @@ export interface TextInputProps extends Omit<
|
|
|
23
23
|
placeholder?: string
|
|
24
24
|
/** **(Optional)** Specify the prefix. It can be any valid JSX or string. */
|
|
25
25
|
prefix?: React.ReactNode
|
|
26
|
+
/** **(Optional)** Specify whether the prefix should be rendered inside the input. */
|
|
27
|
+
prefixInline?: boolean
|
|
26
28
|
/** **(Optional)** Specify a custom React ref for this component. */
|
|
27
29
|
ref?: Ref<HTMLInputElement>
|
|
28
30
|
/** **(Optional)** Specify the TextInput size. */
|
|
29
31
|
size?: StandardSizes
|
|
30
32
|
/** **(Optional)** Specify the suffix. It can be any valid JSX or string. */
|
|
31
33
|
suffix?: React.ReactNode
|
|
34
|
+
/** **(Optional)** Specify whether the suffix should be rendered inside the input. */
|
|
35
|
+
suffixInline?: boolean
|
|
32
36
|
/** **(Optional)** Specify the TextInput type. */
|
|
33
37
|
type?:
|
|
34
38
|
| "text"
|
|
@@ -54,9 +58,11 @@ export const TextInput = ({
|
|
|
54
58
|
name,
|
|
55
59
|
placeholder,
|
|
56
60
|
prefix,
|
|
61
|
+
prefixInline = false,
|
|
57
62
|
ref,
|
|
58
63
|
size = "md",
|
|
59
64
|
suffix,
|
|
65
|
+
suffixInline = false,
|
|
60
66
|
type = "text",
|
|
61
67
|
...props
|
|
62
68
|
}: TextInputProps): JSX.Element => {
|
|
@@ -74,12 +80,22 @@ export const TextInput = ({
|
|
|
74
80
|
type,
|
|
75
81
|
...props,
|
|
76
82
|
}
|
|
83
|
+
|
|
84
|
+
const prefixProps = prefix
|
|
85
|
+
? { className: "coop-text-input--prefix", "data-inline": prefixInline || undefined }
|
|
86
|
+
: {}
|
|
87
|
+
|
|
88
|
+
const suffixProps = suffix
|
|
89
|
+
? { className: "coop-text-input--suffix", "data-inline": suffixInline || undefined }
|
|
90
|
+
: {}
|
|
91
|
+
|
|
77
92
|
//const formItemProps = { "aria-disabled": disabled ? true : undefined }
|
|
93
|
+
|
|
78
94
|
return (
|
|
79
95
|
<div className="coop-text-input-wrapper">
|
|
80
|
-
{prefix && <span
|
|
96
|
+
{prefix && <span {...prefixProps}>{prefix}</span>}
|
|
81
97
|
<input {...componentProps} ref={ref} />
|
|
82
|
-
{suffix && <span
|
|
98
|
+
{suffix && <span {...suffixProps}>{suffix}</span>}
|
|
83
99
|
</div>
|
|
84
100
|
)
|
|
85
101
|
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import clsx from "clsx"
|
|
2
|
+
import { type SVGProps } from "react"
|
|
3
|
+
|
|
4
|
+
import { useId } from "../../hooks/useId"
|
|
5
|
+
|
|
6
|
+
interface IconProps extends SVGProps<SVGSVGElement> {
|
|
7
|
+
alt?: string
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export const AccountCircleFilledIcon = ({ alt, className, fill, id, ref, ...props }: IconProps) => {
|
|
11
|
+
const uid = useId(id)
|
|
12
|
+
const componentProps = {
|
|
13
|
+
"aria-labelledby": alt ? uid + "-title" : undefined,
|
|
14
|
+
className: clsx("coop-icon", className),
|
|
15
|
+
"data-icon": "account-circle-filled",
|
|
16
|
+
fill: fill ?? "currentColor",
|
|
17
|
+
id: uid,
|
|
18
|
+
role: alt ? "img" : undefined,
|
|
19
|
+
viewBox: "0 0 32 32",
|
|
20
|
+
...props,
|
|
21
|
+
}
|
|
22
|
+
return (
|
|
23
|
+
<svg {...componentProps} ref={ref}>
|
|
24
|
+
{alt ? <title id={uid + "-title"}>{alt}</title> : null}
|
|
25
|
+
<path d="M16 2c7.732 0 14 6.268 14 14 0 6.34-4.216 11.695-9.997 13.417l-.034.012-.029.008a14 14 0 0 1-3.453.553l-.037.002h-.022q-.211.007-.424.007L16 30 16 29.999V30q-.216 0-.432-.008h-.017l-.042-.003c-1.19-.04-2.34-.229-3.437-.549l-.035-.01-.075-.023a14 14 0 0 1-1.96-.755l-.06-.027-.011-.006C5.238 26.36 2 21.557 2 16 2 8.268 8.268 2 16 2m0 2C9.373 4 4 9.373 4 16a11.95 11.95 0 0 0 2.256 6.997 12.03 12.03 0 0 1 5.92-4.374 6 6 0 1 1 7.648 0 12.03 12.03 0 0 1 5.918 4.374A11.95 11.95 0 0 0 28 16c0-6.627-5.373-12-12-12" />
|
|
26
|
+
</svg>
|
|
27
|
+
)
|
|
28
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import clsx from "clsx"
|
|
2
|
+
import { type SVGProps } from "react"
|
|
3
|
+
|
|
4
|
+
import { useId } from "../../hooks/useId"
|
|
5
|
+
|
|
6
|
+
interface IconProps extends SVGProps<SVGSVGElement> {
|
|
7
|
+
alt?: string
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export const AccountCircleIcon = ({ alt, className, fill, id, ref, ...props }: IconProps) => {
|
|
11
|
+
const uid = useId(id)
|
|
12
|
+
const componentProps = {
|
|
13
|
+
"aria-labelledby": alt ? uid + "-title" : undefined,
|
|
14
|
+
className: clsx("coop-icon", className),
|
|
15
|
+
"data-icon": "account-circle",
|
|
16
|
+
fill: fill ?? "currentColor",
|
|
17
|
+
id: uid,
|
|
18
|
+
role: alt ? "img" : undefined,
|
|
19
|
+
viewBox: "0 0 32 32",
|
|
20
|
+
...props,
|
|
21
|
+
}
|
|
22
|
+
return (
|
|
23
|
+
<svg {...componentProps} ref={ref}>
|
|
24
|
+
{alt ? <title id={uid + "-title"}>{alt}</title> : null}
|
|
25
|
+
<path d="M16 2c7.732 0 14 6.268 14 14 0 6.378-4.265 11.758-10.099 13.447l-.03.01q-.447.127-.904.227l-.038.007q-.126.027-.251.051l-.099.02a14 14 0 0 1-.558.091l-.09.013a13 13 0 0 1-.559.067l-.203.017-.115.01q-.153.011-.306.02l-.033.001a14 14 0 0 1-1.43 0q-.018 0-.034-.002l-.306-.019-.115-.01q-.102-.007-.203-.017l-.225-.025-.087-.01-.245-.03-.093-.014-.236-.037-.1-.016a15 15 0 0 1-.57-.109l-.039-.008a14 14 0 0 1-.903-.227l-.032-.01C6.264 27.757 2 22.377 2 16 2 8.268 8.268 2 16 2m.001 18a9.99 9.99 0 0 0-8.397 4.57A11.95 11.95 0 0 0 16 28c3.27 0 6.23-1.31 8.393-3.43A9.99 9.99 0 0 0 16 20M16 4C9.373 4 4 9.373 4 16a11.95 11.95 0 0 0 2.256 6.997 12.03 12.03 0 0 1 5.92-4.374 6 6 0 1 1 7.648 0 12.03 12.03 0 0 1 5.918 4.374A11.95 11.95 0 0 0 28 16c0-6.627-5.373-12-12-12m0 6a4 4 0 1 0 0 8 4 4 0 0 0 0-8" />
|
|
26
|
+
</svg>
|
|
27
|
+
)
|
|
28
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import clsx from "clsx"
|
|
2
|
+
import { type SVGProps } from "react"
|
|
3
|
+
|
|
4
|
+
import { useId } from "../../hooks/useId"
|
|
5
|
+
|
|
6
|
+
interface IconProps extends SVGProps<SVGSVGElement> {
|
|
7
|
+
alt?: string
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export const AccountFilledIcon = ({ alt, className, fill, id, ref, ...props }: IconProps) => {
|
|
11
|
+
const uid = useId(id)
|
|
12
|
+
const componentProps = {
|
|
13
|
+
"aria-labelledby": alt ? uid + "-title" : undefined,
|
|
14
|
+
className: clsx("coop-icon", className),
|
|
15
|
+
"data-icon": "account-filled",
|
|
16
|
+
fill: fill ?? "currentColor",
|
|
17
|
+
id: uid,
|
|
18
|
+
role: alt ? "img" : undefined,
|
|
19
|
+
viewBox: "0 0 32 32",
|
|
20
|
+
...props,
|
|
21
|
+
}
|
|
22
|
+
return (
|
|
23
|
+
<svg {...componentProps} ref={ref}>
|
|
24
|
+
{alt ? <title id={uid + "-title"}>{alt}</title> : null}
|
|
25
|
+
<path d="M16 2a7 7 0 0 1 4.055 12.703l.075.027a12.03 12.03 0 0 1 7.514 8.36q.063.252.115.51-.117.18-.24.357a14.05 14.05 0 0 1-7.11 5.334A13.9 13.9 0 0 1 16 30c-4.93 0-9.266-2.55-11.76-6.401a12.02 12.02 0 0 1 7.63-8.87l.074-.026A7 7 0 0 1 16 2" />
|
|
26
|
+
</svg>
|
|
27
|
+
)
|
|
28
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import clsx from "clsx"
|
|
2
|
+
import { type SVGProps } from "react"
|
|
3
|
+
|
|
4
|
+
import { useId } from "../../hooks/useId"
|
|
5
|
+
|
|
6
|
+
interface IconProps extends SVGProps<SVGSVGElement> {
|
|
7
|
+
alt?: string
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export const AccountIcon = ({ alt, className, fill, id, ref, ...props }: IconProps) => {
|
|
11
|
+
const uid = useId(id)
|
|
12
|
+
const componentProps = {
|
|
13
|
+
"aria-labelledby": alt ? uid + "-title" : undefined,
|
|
14
|
+
className: clsx("coop-icon", className),
|
|
15
|
+
"data-icon": "account",
|
|
16
|
+
fill: fill ?? "currentColor",
|
|
17
|
+
id: uid,
|
|
18
|
+
role: alt ? "img" : undefined,
|
|
19
|
+
viewBox: "0 0 32 32",
|
|
20
|
+
...props,
|
|
21
|
+
}
|
|
22
|
+
return (
|
|
23
|
+
<svg {...componentProps} ref={ref}>
|
|
24
|
+
{alt ? <title id={uid + "-title"}>{alt}</title> : null}
|
|
25
|
+
<path d="M16 2a7 7 0 0 1 4.055 12.703 12.03 12.03 0 0 1 7.565 8.304l.04.157q.054.216.099.435-.108.166-.22.329l-.075.105-.155.218-.097.13a14 14 0 0 1-.493.623l-.088.101A13.97 13.97 0 0 1 16 30a13.97 13.97 0 0 1-10.565-4.817l-.156-.18q-.085-.103-.169-.207l-.069-.085a13 13 0 0 1-.255-.331l-.097-.13-.155-.218-.074-.105a14 14 0 0 1-.22-.328q.045-.22.098-.436l.04-.157q.041-.165.089-.328.038-.128.078-.254l.066-.21a12 12 0 0 1 .128-.363 12.03 12.03 0 0 1 7.205-7.148A7 7 0 0 1 16 2m0 14c-4.55 0-8.387 3.04-9.598 7.2A11.98 11.98 0 0 0 16 28c3.926 0 7.407-1.887 9.596-4.802C24.385 19.04 20.55 16 16 16m0-12a5 5 0 1 0 0 10 5 5 0 0 0 0-10" />
|
|
26
|
+
</svg>
|
|
27
|
+
)
|
|
28
|
+
}
|
|
@@ -13,7 +13,7 @@ export const AddIcon = ({ alt, className, fill, id, ref, ...props }: IconProps)
|
|
|
13
13
|
"aria-labelledby": alt ? uid + "-title" : undefined,
|
|
14
14
|
className: clsx("coop-icon", className),
|
|
15
15
|
"data-icon": "add",
|
|
16
|
-
fill: fill ?? "
|
|
16
|
+
fill: fill ?? "currentColor",
|
|
17
17
|
id: uid,
|
|
18
18
|
role: alt ? "img" : undefined,
|
|
19
19
|
viewBox: "0 0 32 32",
|
|
@@ -22,14 +22,7 @@ export const AddIcon = ({ alt, className, fill, id, ref, ...props }: IconProps)
|
|
|
22
22
|
return (
|
|
23
23
|
<svg {...componentProps} ref={ref}>
|
|
24
24
|
{alt ? <title id={uid + "-title"}>{alt}</title> : null}
|
|
25
|
-
<path
|
|
26
|
-
d="M24.7 16.72a1 1 0 0 1-.7.28H8a1 1 0 1 1 0-2h16a1 1 0 0 1 1 1 1 1 0 0 1-.3.72"
|
|
27
|
-
fill={fill ?? "currentColor"}
|
|
28
|
-
/>
|
|
29
|
-
<path
|
|
30
|
-
d="M16.72 24.7a1 1 0 0 1-.72.3 1 1 0 0 1-1-1V8a1 1 0 0 1 2 0v16a1 1 0 0 1-.28.7"
|
|
31
|
-
fill={fill ?? "currentColor"}
|
|
32
|
-
/>
|
|
25
|
+
<path d="M15.957 4a1 1 0 0 1 1 1v10H27a1 1 0 1 1 0 2H16.957v10a1 1 0 0 1-2 0V17H5a1 1 0 1 1 0-2h9.957V5a1 1 0 0 1 1-1" />
|
|
33
26
|
</svg>
|
|
34
27
|
)
|
|
35
28
|
}
|