@oneplatformdev/ui 0.1.99-beta.27 → 0.1.99-beta.270
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/Accordion/Accordion.d.ts +1 -1
- package/Accordion/Accordion.d.ts.map +1 -1
- package/Accordion/Accordion.js +48 -26
- package/Accordion/Accordion.js.map +1 -1
- package/AlertDialog/AlertDialog.stories.js +66 -23
- package/AlertDialog/AlertDialog.stories.js.map +1 -1
- package/AlertDialog/AlertDialogRoot.d.ts.map +1 -1
- package/AlertDialog/AlertDialogRoot.js +19 -18
- package/AlertDialog/AlertDialogRoot.js.map +1 -1
- package/Button/Button.d.ts.map +1 -1
- package/Button/Button.js +40 -40
- package/Button/Button.js.map +1 -1
- package/Button/Button.stories.js +15 -12
- package/Button/Button.stories.js.map +1 -1
- package/Button/Button.utils.d.ts +3 -0
- package/Button/Button.utils.d.ts.map +1 -0
- package/Button/Button.utils.js +14 -0
- package/Button/Button.utils.js.map +1 -0
- package/Button/buttonVariants.d.ts +2 -2
- package/Button/buttonVariants.d.ts.map +1 -1
- package/Button/buttonVariants.js +38 -6
- package/Button/buttonVariants.js.map +1 -1
- package/Button/index.d.ts +1 -0
- package/Button/index.d.ts.map +1 -1
- package/Button/index.js +8 -6
- package/Button/index.js.map +1 -1
- package/ButtonIcon/ButtonIcon.d.ts.map +1 -1
- package/ButtonIcon/ButtonIcon.js +47 -47
- package/ButtonIcon/ButtonIcon.js.map +1 -1
- package/ButtonIcon/ButtonIcon.stories.js +35 -33
- package/ButtonIcon/ButtonIcon.stories.js.map +1 -1
- package/ButtonIcon/buttonIconVariants.d.ts +1 -1
- package/ButtonIcon/buttonIconVariants.d.ts.map +1 -1
- package/ButtonIcon/buttonIconVariants.js +3 -2
- package/ButtonIcon/buttonIconVariants.js.map +1 -1
- package/CHANGELOG.md +1527 -0
- package/Card/Card.d.ts.map +1 -1
- package/Card/Card.js +22 -21
- package/Card/Card.js.map +1 -1
- package/Checkbox/Checkbox.d.ts.map +1 -1
- package/Checkbox/Checkbox.js +35 -33
- package/Checkbox/Checkbox.js.map +1 -1
- package/Checkbox/Checkbox.stories.js +108 -0
- package/Checkbox/Checkbox.stories.js.map +1 -0
- package/Checkbox/Checkbox.types.d.ts +2 -1
- package/Checkbox/Checkbox.types.d.ts.map +1 -1
- package/Combobox/Combobox.d.ts +4 -2
- package/Combobox/Combobox.d.ts.map +1 -1
- package/Combobox/Combobox.js +222 -192
- package/Combobox/Combobox.js.map +1 -1
- package/Combobox/Combobox.stories.js +231 -85
- package/Combobox/Combobox.stories.js.map +1 -1
- package/Combobox/Combobox.types.d.ts +88 -24
- package/Combobox/Combobox.types.d.ts.map +1 -1
- package/Combobox/Combobox.types.js +4 -1
- package/Combobox/Combobox.types.js.map +1 -1
- package/Combobox/ComboboxOptionItem.d.ts +5 -3
- package/Combobox/ComboboxOptionItem.d.ts.map +1 -1
- package/Combobox/ComboboxOptionItem.js +80 -23
- package/Combobox/ComboboxOptionItem.js.map +1 -1
- package/Combobox/ComboboxRenderContent.d.ts +28 -0
- package/Combobox/ComboboxRenderContent.d.ts.map +1 -0
- package/Combobox/ComboboxRenderContent.js +142 -0
- package/Combobox/ComboboxRenderContent.js.map +1 -0
- package/Combobox/ComboboxRenderOptions.d.ts +4 -0
- package/Combobox/ComboboxRenderOptions.d.ts.map +1 -0
- package/Combobox/ComboboxRenderOptions.js +53 -0
- package/Combobox/ComboboxRenderOptions.js.map +1 -0
- package/Combobox/ComboboxRenderTrigger.d.ts +18 -0
- package/Combobox/ComboboxRenderTrigger.d.ts.map +1 -0
- package/Combobox/ComboboxRenderTrigger.js +118 -0
- package/Combobox/ComboboxRenderTrigger.js.map +1 -0
- package/Command/Command.d.ts +6 -1
- package/Command/Command.d.ts.map +1 -1
- package/Command/Command.js +66 -48
- package/Command/Command.js.map +1 -1
- package/ContextPopover/ContextDropdownMenu.d.ts +12 -0
- package/ContextPopover/ContextDropdownMenu.d.ts.map +1 -0
- package/ContextPopover/ContextDropdownMenu.js +41 -0
- package/ContextPopover/ContextDropdownMenu.js.map +1 -0
- package/ContextPopover/ContextPopover.d.ts +12 -0
- package/ContextPopover/ContextPopover.d.ts.map +1 -0
- package/ContextPopover/ContextPopover.js +34 -0
- package/ContextPopover/ContextPopover.js.map +1 -0
- package/ContextPopover/index.d.ts +4 -0
- package/ContextPopover/index.d.ts.map +1 -0
- package/ContextPopover/index.js +9 -0
- package/ContextPopover/index.js.map +1 -0
- package/ContextPopover/useContextPopoverHandler.d.ts +14 -0
- package/ContextPopover/useContextPopoverHandler.d.ts.map +1 -0
- package/ContextPopover/useContextPopoverHandler.js +21 -0
- package/ContextPopover/useContextPopoverHandler.js.map +1 -0
- package/DataTable/DataTable.js +6 -6
- package/DataTable/useDataTable.d.ts +1 -1
- package/Dialog/Dialog.d.ts +4 -1
- package/Dialog/Dialog.d.ts.map +1 -1
- package/Dialog/Dialog.js +82 -40
- package/Dialog/Dialog.js.map +1 -1
- package/Dialog/Dialog.stories.js +108 -0
- package/Dialog/Dialog.stories.js.map +1 -0
- package/Dialog/Dialog.types.d.ts +4 -0
- package/Dialog/Dialog.types.d.ts.map +1 -0
- package/Dialog/Dialog.types.js +2 -0
- package/Dialog/Dialog.types.js.map +1 -0
- package/Dialog/index.d.ts +1 -0
- package/Dialog/index.d.ts.map +1 -1
- package/Dialog/useDialogClosePosition.d.ts +11 -0
- package/Dialog/useDialogClosePosition.d.ts.map +1 -0
- package/Dialog/useDialogClosePosition.js +50 -0
- package/Dialog/useDialogClosePosition.js.map +1 -0
- package/DropdownMenu/DropdownMenu.d.ts.map +1 -1
- package/DropdownMenu/DropdownMenu.js +33 -20
- package/DropdownMenu/DropdownMenu.js.map +1 -1
- package/Dropzone/Dropzone.d.ts.map +1 -1
- package/Dropzone/Dropzone.js +340 -141
- package/Dropzone/Dropzone.js.map +1 -1
- package/Dropzone/Dropzone.stories.js +308 -0
- package/Dropzone/Dropzone.stories.js.map +1 -0
- package/Dropzone/Dropzone.types.d.ts +17 -1
- package/Dropzone/Dropzone.types.d.ts.map +1 -1
- package/Dropzone/Dropzone.types.js +19 -8
- package/Dropzone/Dropzone.types.js.map +1 -1
- package/Dropzone/DropzoneFilePreview.d.ts.map +1 -1
- package/Dropzone/DropzoneFilePreview.js +46 -26
- package/Dropzone/DropzoneFilePreview.js.map +1 -1
- package/Dropzone/DropzoneSinglePickPreview.d.ts +5 -2
- package/Dropzone/DropzoneSinglePickPreview.d.ts.map +1 -1
- package/Dropzone/DropzoneSinglePickPreview.js +119 -22
- package/Dropzone/DropzoneSinglePickPreview.js.map +1 -1
- package/Dropzone/index.js +7 -5
- package/Form/FormRenderControl.d.ts +1 -1
- package/Form/FormRenderControl.d.ts.map +1 -1
- package/Form/FormRenderControl.js +51 -24
- package/Form/FormRenderControl.js.map +1 -1
- package/Form/FormRenderControl.types.d.ts +4 -1
- package/Form/FormRenderControl.types.d.ts.map +1 -1
- package/FormCombobox/FormCombobox.d.ts +4 -2
- package/FormCombobox/FormCombobox.d.ts.map +1 -1
- package/FormCombobox/FormCombobox.js +30 -17
- package/FormCombobox/FormCombobox.js.map +1 -1
- package/FormCombobox/FormCombobox.types.d.ts +6 -2
- package/FormCombobox/FormCombobox.types.d.ts.map +1 -1
- package/FormDatePicker/FormDatePicker.d.ts.map +1 -1
- package/FormDatePicker/FormDatePicker.js +18 -16
- package/FormDatePicker/FormDatePicker.js.map +1 -1
- package/FormDropzone/FormDropzone.d.ts.map +1 -1
- package/FormDropzone/FormDropzone.js +11 -9
- package/FormDropzone/FormDropzone.js.map +1 -1
- package/FormInput/FormInput.d.ts.map +1 -1
- package/FormInput/FormInput.js +47 -28
- package/FormInput/FormInput.js.map +1 -1
- package/FormInput/FormInput.stories.js +61 -0
- package/FormInput/FormInput.stories.js.map +1 -0
- package/FormInput/FormInput.types.d.ts +1 -0
- package/FormInput/FormInput.types.d.ts.map +1 -1
- package/FormSelect/FormSelect.d.ts.map +1 -1
- package/FormSelect/FormSelect.js +33 -29
- package/FormSelect/FormSelect.js.map +1 -1
- package/FormTextarea/FormTextarea.d.ts.map +1 -1
- package/FormTextarea/FormTextarea.js +15 -12
- package/FormTextarea/FormTextarea.js.map +1 -1
- package/InfoBlock/InfoBlock.d.ts +7 -0
- package/InfoBlock/InfoBlock.d.ts.map +1 -0
- package/InfoBlock/InfoBlock.js +28 -0
- package/InfoBlock/InfoBlock.js.map +1 -0
- package/InfoBlock/InfoBlock.stories.js +50 -0
- package/InfoBlock/InfoBlock.stories.js.map +1 -0
- package/InfoBlock/InfoBlock.types.d.ts +9 -0
- package/InfoBlock/InfoBlock.types.d.ts.map +1 -0
- package/InfoBlock/InfoBlock.types.js +2 -0
- package/InfoBlock/InfoBlock.types.js.map +1 -0
- package/InfoBlock/index.d.ts +3 -0
- package/InfoBlock/index.d.ts.map +1 -0
- package/InfoBlock/index.js +5 -0
- package/InfoBlock/index.js.map +1 -0
- package/InfoBlock/infoBlockVariants.d.ts +6 -0
- package/InfoBlock/infoBlockVariants.d.ts.map +1 -0
- package/InfoBlock/infoBlockVariants.js +27 -0
- package/InfoBlock/infoBlockVariants.js.map +1 -0
- package/Input/Input.d.ts.map +1 -1
- package/Input/Input.js +104 -53
- package/Input/Input.js.map +1 -1
- package/Input/Input.stories.js +225 -0
- package/Input/Input.stories.js.map +1 -0
- package/Input/Input.types.d.ts +5 -0
- package/Input/Input.types.d.ts.map +1 -1
- package/LoadingMask/LoadingMask.d.ts +1 -2
- package/LoadingMask/LoadingMask.d.ts.map +1 -1
- package/LoadingMask/LoadingMask.js +8 -8
- package/LoadingMask/LoadingMask.js.map +1 -1
- package/LoadingMask/LoadingMask.types.d.ts +1 -0
- package/LoadingMask/LoadingMask.types.d.ts.map +1 -1
- package/Popover/Popover.d.ts +3 -1
- package/Popover/Popover.d.ts.map +1 -1
- package/Popover/Popover.js +15 -10
- package/Popover/Popover.js.map +1 -1
- package/ScrollArea/ScrollArea.d.ts +5 -1
- package/ScrollArea/ScrollArea.d.ts.map +1 -1
- package/ScrollArea/ScrollArea.js +23 -17
- package/ScrollArea/ScrollArea.js.map +1 -1
- package/Search/Search.d.ts.map +1 -1
- package/Search/Search.js +40 -31
- package/Search/Search.js.map +1 -1
- package/Select/Select.d.ts.map +1 -1
- package/Select/Select.js +53 -48
- package/Select/Select.js.map +1 -1
- package/Select/Select.types.d.ts +4 -0
- package/Select/Select.types.d.ts.map +1 -1
- package/Select/SelectRoot.d.ts.map +1 -1
- package/Select/SelectRoot.js +81 -68
- package/Select/SelectRoot.js.map +1 -1
- package/Switch/Switch.d.ts +1 -1
- package/Switch/Switch.d.ts.map +1 -1
- package/Switch/Switch.js +19 -9
- package/Switch/Switch.js.map +1 -1
- package/Switch/Switch.stories.js +62 -0
- package/Switch/Switch.stories.js.map +1 -0
- package/Textarea/Textarea.d.ts.map +1 -1
- package/Textarea/Textarea.js +50 -45
- package/Textarea/Textarea.js.map +1 -1
- package/Textarea/Textarea.types.d.ts +3 -1
- package/Textarea/Textarea.types.d.ts.map +1 -1
- package/Toast/Toast.d.ts +1 -1
- package/Toast/toastVariants.d.ts +1 -1
- package/Tooltip/QuestionMarkIcon.svg.js +6 -0
- package/Tooltip/QuestionMarkIcon.svg.js.map +1 -0
- package/Tooltip/Tooltip.d.ts.map +1 -1
- package/Tooltip/Tooltip.js +52 -32
- package/Tooltip/Tooltip.js.map +1 -1
- package/Tooltip/Tooltip.types.d.ts +10 -0
- package/Tooltip/Tooltip.types.d.ts.map +1 -1
- package/Tooltip/tooltipVariants.d.ts +4 -0
- package/Tooltip/tooltipVariants.d.ts.map +1 -0
- package/Tooltip/tooltipVariants.js +23 -0
- package/Tooltip/tooltipVariants.js.map +1 -0
- package/index.d.ts +2 -0
- package/index.d.ts.map +1 -1
- package/index.js +352 -340
- package/index.js.map +1 -1
- package/package.json +10 -6
- package/styles.css +1 -0
- package/vite-env.d.js +2 -0
- package/vite-env.d.js.map +1 -0
- package/vite-env.d.ts +7 -0
- package/Combobox/ComboboxOptions.d.ts +0 -4
- package/Combobox/ComboboxOptions.d.ts.map +0 -1
- package/Combobox/ComboboxOptions.js +0 -64
- package/Combobox/ComboboxOptions.js.map +0 -1
- package/Form/FormTooltipButton.d.ts +0 -6
- package/Form/FormTooltipButton.d.ts.map +0 -1
- package/Form/FormTooltipButton.js +0 -33
- package/Form/FormTooltipButton.js.map +0 -1
package/Button/Button.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.js","sources":["../../src/Button/Button.tsx"],"sourcesContent":["import * as React from \"react\"\r\nimport { Slot } from \"@radix-ui/react-slot\"\r\n\r\nimport { cn } from \"@oneplatformdev/utils\"\r\nimport { ButtonVarianceProps, buttonVariants } from './buttonVariants';\r\nimport {
|
|
1
|
+
{"version":3,"file":"Button.js","sources":["../../src/Button/Button.tsx"],"sourcesContent":["import * as React from \"react\"\r\nimport { Slot } from \"@radix-ui/react-slot\"\r\n\r\nimport { cn } from \"@oneplatformdev/utils\"\r\nimport { ButtonVarianceProps, buttonVariants } from './buttonVariants';\r\nimport { type ButtonProps } from './Button.types';\r\n\r\nimport { Tooltip } from '../Tooltip';\r\nimport { LoadedIcon } from \"../LoadedIcon\";\r\nimport { renderInnerIcon } from \"./Button.utils\";\r\n\r\nconst normalizedVariantProperties = (props: ButtonVarianceProps): ButtonVarianceProps => {\r\n const { variant, size, color } = props;\r\n const vls = { color, variant, size }\r\n if ((variant as string) === 'default') {\r\n console.warn('Button variant \"default\" is deprecated. Please use \"variant=contained color=primary\" instead.')\r\n vls.variant = 'contained'\r\n vls.color = 'primary'\r\n return vls\r\n }\r\n if ((size as string) === 'icon') {\r\n console.warn('Button size \"icon\" is deprecated. Please use \"<ButtonIcon/>\" component instead.')\r\n vls.variant = 'contained'\r\n vls.color = 'secondary'\r\n return vls\r\n // throw new Error('Button variant \"transparent\" is removed. Please use \"variant=none\" instead.')\r\n }\r\n if ((variant as string) === 'transparent') {\r\n console.warn('Button variant \"transparent\" is removed. Please use \"variant=none\" instead.')\r\n throw new Error('Button variant \"transparent\" is removed. Please use \"variant=none\" instead.')\r\n }\r\n if ((variant as string) === 'outline') {\r\n console.warn('Button variant \"outline\" is deprecated. Please use \"variant=outlined color=primary\" instead.')\r\n vls.variant = 'outlined'\r\n vls.color = 'primary'\r\n return vls\r\n }\r\n if ((variant as string) === 'secondary') {\r\n console.warn('Button variant \"secondary\" is deprecated. Please use \"variant=contained color=secondary\" instead.')\r\n vls.variant = 'contained'\r\n vls.color = 'secondary'\r\n return vls\r\n }\r\n if ((variant as string) === 'destructive') {\r\n console.warn('Button variant \"destructive\" is deprecated. Please use \"variant=contained color=error\" instead.')\r\n vls.variant = 'contained'\r\n vls.color = 'error'\r\n return vls\r\n }\r\n return vls;\r\n}\r\n\r\n/**\r\n * Universal Button component used for triggering actions and UI interactions.\r\n * Supports variants, sizes, colors, start/end icon adornments, custom slot content,\r\n * tooltip integration, loading state, and polymorphic rendering via `asChild`.\r\n *\r\n * @public\r\n * @see [Documentation](#) // TODO: add link to docs\r\n *\r\n * @example\r\n * > Import:\r\n * ```tsx\r\n * import { Button } from '@oneplatformdev/ui/Button';\r\n * ```\r\n * > Basic usage:\r\n * ```tsx\r\n * <Button>Click me</Button>\r\n * ```\r\n * > Variant and size:\r\n * ```tsx\r\n * <Button variant=\"outline\" size=\"lg\">Large Button</Button>\r\n * ```\r\n * > With icons:\r\n * ```tsx\r\n * <Button startAdornment={<PlusIcon />}>Create</Button>\r\n * <Button endAdornment={<ArrowRightIcon />}>Next</Button>\r\n * ```\r\n * > Icon style button:\r\n * ```tsx\r\n * <Button size=\"icon\">\r\n * <PlusIcon />\r\n * </Button>\r\n * ```\r\n * > Polymorphic rendering (`asChild`):\r\n * ```tsx\r\n * <Button asChild>\r\n * <a href=\"/dashboard\">Go to Dashboard</a>\r\n * </Button>\r\n * ```\r\n * > Tooltip via `message` or native `title`:\r\n * ```tsx\r\n * <Button title=\"Tooltip text\">Hover me</Button>\r\n * <Button message=\"Tooltip content\">Hover me</Button>\r\n * ```\r\n * > Loading state:\r\n * ```tsx\r\n * <Button loading>Processing...</Button>\r\n * ```\r\n * > Disabled:\r\n * ```tsx\r\n * <Button disabled>Disabled</Button>\r\n * ```\r\n *\r\n * Sizes\r\n * xs — compact, for tight UI areas. Classes: rounded-sm p-1 gap-1 text-xs min-h-4 min-w-14.\r\n * sm — small; slightly larger than xs. Classes: rounded-md p-1 gap-1 text-sm min-h-6 min-w-20.\r\n * md — default/text-heavy buttons. Classes: min-h-8 min-w-[102px] rounded-lg gap-1 px-2 py-1 text-sm leading-[1.12] [&_svg]:size-6.\r\n * lg — large/call-to-action. Classes: min-h-10 min-w-35 rounded-lg gap-1 px-3 py-2 text-base leading-normal [&_svg]:size-6.\r\n *\r\n * @remarks\r\n * - Designed for texted usage. If you need icon-only, use `ButtonIcon`.\r\n * - Works with any SVG React component or element, e.g. lucide-react, heroicons, custom icons.\r\n *\r\n * @see {@link ButtonIcon} for icon-only buttons\r\n */\r\nexport const Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\r\n (props, ref) => {\r\n const {\r\n disabled,\r\n className,\r\n variant,\r\n color,\r\n size,\r\n asChild = false,\r\n title = '',\r\n tooltip,\r\n tooltipProps = {},\r\n message,\r\n loading = false,\r\n children,\r\n startAdornment,\r\n endAdornment,\r\n screenReader,\r\n ...rest\r\n } = props;\r\n const Comp = asChild ? Slot : \"button\"\r\n const msg = message || tooltip || title;\r\n\r\n const content = asChild\r\n ? children\r\n : (\r\n <>\r\n {!!startAdornment && (\r\n <LoadedIcon loading={loading} size={size}>\r\n {renderInnerIcon(startAdornment)}\r\n </LoadedIcon>\r\n )}\r\n\r\n {children}\r\n\r\n {!!endAdornment && (\r\n <LoadedIcon loading={loading} size={size}>\r\n {renderInnerIcon(endAdornment)}\r\n </LoadedIcon>\r\n )}\r\n\r\n {!!screenReader && <span className=\"sr-only\">{typeof screenReader === 'string' ? screenReader : screenReader.text}</span>}\r\n </>\r\n )\r\n\r\n const cmp = (\r\n <Comp\r\n type='button'\r\n ref={ref}\r\n disabled={disabled}\r\n className={cn(\r\n buttonVariants({\r\n ...normalizedVariantProperties({ variant, size, color }),\r\n className\r\n }),\r\n loading && 'pointer-events-none opacity-80 user-select-none',\r\n )}\r\n {...rest}\r\n >\r\n {content}\r\n </Comp>\r\n )\r\n\r\n if (!msg) return cmp\r\n return (\r\n <Tooltip\r\n {...(tooltipProps || {})}\r\n open={tooltipProps.open ?? (disabled || loading || !msg) ? false : undefined}\r\n message={msg}\r\n >\r\n {cmp}\r\n </Tooltip>\r\n )\r\n }\r\n)\r\nButton.displayName = \"Button\"\r\nexport default Button;\r\n"],"names":["normalizedVariantProperties","props","variant","size","color","vls","Button","React","ref","disabled","className","asChild","title","tooltip","tooltipProps","message","loading","children","startAdornment","endAdornment","screenReader","rest","Comp","Slot","msg","content","jsxs","Fragment","jsx","LoadedIcon","renderInnerIcon","cmp","cn","buttonVariants","Tooltip"],"mappings":";;;;;;;;AAWA,MAAMA,IAA8B,CAACC,MAAoD;AACvF,QAAM,EAAE,SAAAC,GAAS,MAAAC,GAAM,OAAAC,EAAA,IAAUH,GAC3BI,IAAM,EAAE,OAAAD,GAAO,SAAAF,GAAS,MAAAC,EAAA;AAC9B,MAAKD,MAAuB;AAC1B,mBAAQ,KAAK,+FAA+F,GAC5GG,EAAI,UAAU,aACdA,EAAI,QAAQ,WACLA;AAET,MAAKF,MAAoB;AACvB,mBAAQ,KAAK,iFAAiF,GAC9FE,EAAI,UAAU,aACdA,EAAI,QAAQ,aACLA;AAGT,MAAKH,MAAuB;AAC1B,kBAAQ,KAAK,6EAA6E,GACpF,IAAI,MAAM,6EAA6E;AAE/F,SAAKA,MAAuB,aAC1B,QAAQ,KAAK,8FAA8F,GAC3GG,EAAI,UAAU,YACdA,EAAI,QAAQ,WACLA,KAEJH,MAAuB,eAC1B,QAAQ,KAAK,mGAAmG,GAChHG,EAAI,UAAU,aACdA,EAAI,QAAQ,aACLA,MAEJH,MAAuB,kBAC1B,QAAQ,KAAK,iGAAiG,GAC9GG,EAAI,UAAU,aACdA,EAAI,QAAQ,UACLA;AAGX,GAkEaC,IAASC,EAAM;AAAA,EAC1B,CAACN,GAAOO,MAAQ;AACd,UAAM;AAAA,MACJ,UAAAC;AAAA,MACA,WAAAC;AAAA,MACA,SAAAR;AAAA,MACA,OAAAE;AAAA,MACA,MAAAD;AAAA,MACA,SAAAQ,IAAU;AAAA,MACV,OAAAC,IAAQ;AAAA,MACR,SAAAC;AAAA,MACA,cAAAC,IAAe,CAAA;AAAA,MACf,SAAAC;AAAA,MACA,SAAAC,IAAU;AAAA,MACV,UAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,cAAAC;AAAA,MACA,cAAAC;AAAA,MACA,GAAGC;AAAA,IAAA,IACDpB,GACEqB,IAAOX,IAAUY,IAAO,UACxBC,IAAMT,KAAWF,KAAWD,GAE5Ba,IAAUd,IACZM,IAEA,gBAAAS,EAAAC,GAAA,EACG,UAAA;AAAA,MAAA,CAAC,CAACT,KACD,gBAAAU,EAACC,GAAA,EAAW,SAAAb,GAAkB,MAAAb,GAC3B,UAAA2B,EAAgBZ,CAAc,GACjC;AAAA,MAGDD;AAAA,MAEA,CAAC,CAACE,KACD,gBAAAS,EAACC,KAAW,SAAAb,GAAkB,MAAAb,GAC3B,UAAA2B,EAAgBX,CAAY,GAC/B;AAAA,MAGD,CAAC,CAACC,KAAgB,gBAAAQ,EAAC,QAAA,EAAK,WAAU,WAAW,UAAA,OAAOR,KAAiB,WAAWA,IAAeA,EAAa,KAAA,CAAK;AAAA,IAAA,GACpH,GAGEW,IACJ,gBAAAH;AAAA,MAACN;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,KAAAd;AAAA,QACA,UAAAC;AAAA,QACA,WAAWuB;AAAA,UACTC,EAAe;AAAA,YACb,GAAGjC,EAA4B,EAAE,SAAAE,GAAS,MAAAC,GAAM,OAAAC,GAAO;AAAA,YACvD,WAAAM;AAAA,UAAA,CACD;AAAA,UACDM,KAAW;AAAA,QAAA;AAAA,QAEZ,GAAGK;AAAA,QAEH,UAAAI;AAAA,MAAA;AAAA,IAAA;AAIL,WAAKD,IAEH,gBAAAI;AAAA,MAACM;AAAA,MAAA;AAAA,QACE,GAAIpB,KAAgB,CAAA;AAAA,QACrB,MAAMA,EAAa,SAASL,KAAYO,KAAW,CAACQ,KAAO,KAAQ;AAAA,QACnE,SAASA;AAAA,QAER,UAAAO;AAAA,MAAA;AAAA,IAAA,IAPYA;AAAA,EAUnB;AACF;AACAzB,EAAO,cAAc;"}
|
package/Button/Button.stories.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as t, jsxs as i } from "react/jsx-runtime";
|
|
2
2
|
import { Button as o } from "./Button.js";
|
|
3
|
-
import { FileDownIcon as m, Trash2Icon as
|
|
3
|
+
import { FileDownIcon as m, Trash2Icon as u, PlusIcon as n } from "lucide-react";
|
|
4
4
|
import { DashedWrapper as a } from "../.storybook/Wrappers.js";
|
|
5
5
|
const r = (e) => /* @__PURE__ */ t(
|
|
6
6
|
"div",
|
|
@@ -23,13 +23,13 @@ const r = (e) => /* @__PURE__ */ t(
|
|
|
23
23
|
l
|
|
24
24
|
))
|
|
25
25
|
}
|
|
26
|
-
),
|
|
26
|
+
), p = ["none", "contained", "outlined", "ghost", "text"], g = ["primary", "secondary", "error"], f = ["xs", "sm", "md", "lg"], h = "contained", y = "primary", v = "lg", s = {
|
|
27
27
|
undefined: void 0,
|
|
28
28
|
"<PlusIcon />": /* @__PURE__ */ t(n, {}),
|
|
29
|
-
"<Trash2Icon />": /* @__PURE__ */ t(
|
|
29
|
+
"<Trash2Icon />": /* @__PURE__ */ t(u, {}),
|
|
30
30
|
"<FileDownIcon />": /* @__PURE__ */ t(m, {}),
|
|
31
31
|
PlusIcon: n,
|
|
32
|
-
Trash2Icon:
|
|
32
|
+
Trash2Icon: u,
|
|
33
33
|
FileDownIcon: m
|
|
34
34
|
}, d = {
|
|
35
35
|
title: "Button",
|
|
@@ -63,7 +63,7 @@ const r = (e) => /* @__PURE__ */ t(
|
|
|
63
63
|
variant: {
|
|
64
64
|
name: "variant",
|
|
65
65
|
description: "Button variant from ButtonProps",
|
|
66
|
-
options:
|
|
66
|
+
options: p,
|
|
67
67
|
control: { type: "inline-radio" }
|
|
68
68
|
},
|
|
69
69
|
color: {
|
|
@@ -126,12 +126,12 @@ const r = (e) => /* @__PURE__ */ t(
|
|
|
126
126
|
startAdornment: /* @__PURE__ */ t(n, {}),
|
|
127
127
|
endAdornment: /* @__PURE__ */ t(n, {}),
|
|
128
128
|
children: "children"
|
|
129
|
-
},
|
|
129
|
+
}, x = {
|
|
130
130
|
args: {
|
|
131
131
|
...d.args,
|
|
132
132
|
children: "_children_"
|
|
133
133
|
}
|
|
134
|
-
},
|
|
134
|
+
}, D = {
|
|
135
135
|
render: (e) => /* @__PURE__ */ i(a, { children: [
|
|
136
136
|
/* @__PURE__ */ t(o, { ...e }),
|
|
137
137
|
/* @__PURE__ */ t(o, { ...e, startAdornment: /* @__PURE__ */ t(n, {}) }),
|
|
@@ -225,7 +225,8 @@ const r = (e) => /* @__PURE__ */ t(
|
|
|
225
225
|
render: (e) => /* @__PURE__ */ t("div", { className: "flex", children: /* @__PURE__ */ i(a, { children: [
|
|
226
226
|
/* @__PURE__ */ t(r, { ...e, variant: "contained" }),
|
|
227
227
|
/* @__PURE__ */ t(r, { ...e, variant: "outlined" }),
|
|
228
|
-
/* @__PURE__ */ t(r, { ...e, variant: "ghost" })
|
|
228
|
+
/* @__PURE__ */ t(r, { ...e, variant: "ghost" }),
|
|
229
|
+
/* @__PURE__ */ t(r, { ...e, variant: "text" })
|
|
229
230
|
] }) })
|
|
230
231
|
}, T = {
|
|
231
232
|
args: {
|
|
@@ -241,7 +242,8 @@ const r = (e) => /* @__PURE__ */ t(
|
|
|
241
242
|
render: (e) => /* @__PURE__ */ t("div", { className: "flex", children: /* @__PURE__ */ i(a, { children: [
|
|
242
243
|
/* @__PURE__ */ t(r, { ...e, variant: "contained" }),
|
|
243
244
|
/* @__PURE__ */ t(r, { ...e, variant: "outlined" }),
|
|
244
|
-
/* @__PURE__ */ t(r, { ...e, variant: "ghost" })
|
|
245
|
+
/* @__PURE__ */ t(r, { ...e, variant: "ghost" }),
|
|
246
|
+
/* @__PURE__ */ t(r, { ...e, variant: "text" })
|
|
245
247
|
] }) })
|
|
246
248
|
}, _ = {
|
|
247
249
|
args: {
|
|
@@ -257,12 +259,13 @@ const r = (e) => /* @__PURE__ */ t(
|
|
|
257
259
|
render: (e) => /* @__PURE__ */ t("div", { className: "flex", children: /* @__PURE__ */ i(a, { children: [
|
|
258
260
|
/* @__PURE__ */ t(r, { ...e, variant: "contained" }),
|
|
259
261
|
/* @__PURE__ */ t(r, { ...e, variant: "outlined" }),
|
|
260
|
-
/* @__PURE__ */ t(r, { ...e, variant: "ghost" })
|
|
262
|
+
/* @__PURE__ */ t(r, { ...e, variant: "ghost" }),
|
|
263
|
+
/* @__PURE__ */ t(r, { ...e, variant: "text" })
|
|
261
264
|
] }) })
|
|
262
265
|
};
|
|
263
266
|
export {
|
|
264
|
-
|
|
265
|
-
|
|
267
|
+
x as Default,
|
|
268
|
+
D as Disabled,
|
|
266
269
|
_ as Error,
|
|
267
270
|
S as Loading,
|
|
268
271
|
V as Primary,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.stories.js","sources":["../../src/Button/Button.stories.tsx"],"sourcesContent":["import type { Meta, StoryObj } from '@storybook/react';\r\n\r\nimport { Button } from './Button';\r\nimport { ButtonProps } from './Button.types';\r\nimport React from 'react';\r\nimport { PlusIcon, Trash2Icon, FileDownIcon } from 'lucide-react';\r\nimport { DashedWrapper } from \"../../.storybook/Wrappers\";\r\n\r\nconst States = (props: ButtonProps) => (\r\n <div\r\n style={{\r\n position: 'relative',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: '16px',\r\n }}\r\n >\r\n {[ 'default', 'hover', 'focus', 'active', 'disabled', 'loading' ]\r\n .map((state) => (\r\n <Button\r\n key={state}\r\n id={state}\r\n {...props}\r\n disabled={state === 'disabled' || props.disabled}\r\n loading={state === 'loading' || props.loading}\r\n >\r\n {props.children}\r\n </Button>\r\n ))}\r\n </div>\r\n);\r\n\r\nconst variants: ButtonProps['variant'][] = [ 'none', 'contained', 'outlined', 'ghost' ]\r\nconst colors: ButtonProps['color'][] = [ 'primary', 'secondary', 'error' ]\r\nconst sizes: ButtonProps['size'][] = [ 'xs', 'sm', 'md', 'lg' ]\r\n\r\nconst variant_default: ButtonProps['variant'] = 'contained';\r\nconst color_default: ButtonProps['color'] = 'primary';\r\nconst size_default: ButtonProps['size'] = 'lg';\r\n\r\nconst iconMap = {\r\n 'undefined': undefined,\r\n \"<PlusIcon />\": <PlusIcon/>,\r\n \"<Trash2Icon />\": <Trash2Icon/>,\r\n \"<FileDownIcon />\": <FileDownIcon/>,\r\n PlusIcon: PlusIcon,\r\n Trash2Icon: Trash2Icon,\r\n FileDownIcon: FileDownIcon,\r\n};\r\n\r\nconst meta = {\r\n title: 'Button',\r\n component: Button,\r\n // render: Template,\r\n args: {\r\n tooltip: undefined,\r\n asChild: false,\r\n //\r\n variant: variant_default,\r\n color: color_default,\r\n size: size_default,\r\n loading: false,\r\n disabled: false,\r\n startAdornment: undefined,\r\n endAdornment: undefined,\r\n slotProps: {},\r\n tooltipProps: {}\r\n },\r\n argTypes: {\r\n tooltip: {\r\n name: 'tooltip',\r\n description: 'Button tooltip from ButtonProps [deprecated, use title and message instead]',\r\n control: false,\r\n },\r\n asChild: {\r\n name: 'asChild',\r\n description: 'Button asChild from ButtonProps [boolean]',\r\n control: false\r\n },\r\n variant: {\r\n name: 'variant',\r\n description: 'Button variant from ButtonProps',\r\n options: variants,\r\n control: { type: 'inline-radio', }\r\n },\r\n color: {\r\n name: 'color',\r\n description: 'Button color from ButtonProps',\r\n options: colors,\r\n control: { type: 'inline-radio' }\r\n },\r\n size: {\r\n name: 'size',\r\n description: 'Button size from ButtonProps',\r\n options: sizes,\r\n control: { type: 'inline-radio' }\r\n },\r\n title: {\r\n name: 'title',\r\n description: \"Button tooltip title from HTMLAttributes<HTMLButtonElement> [string only]\",\r\n control: { type: 'text' },\r\n },\r\n message: {\r\n name: 'message',\r\n description: 'Button tooltip message from ButtonProps [ReactNode]',\r\n control: { type: \"object\" },\r\n },\r\n startAdornment: {\r\n name: 'startAdornment',\r\n description: 'Button startAdornment from ButtonProps [`undefined` | `ComponentType<SVGProps<SVGSVGElement>>` | `ReactElement<SVGProps<SVGSVGElement>>`]',\r\n options: Object.keys(iconMap),\r\n mapping: iconMap,\r\n control: { type: 'inline-radio' },\r\n },\r\n endAdornment: {\r\n name: 'endAdornment',\r\n description: 'Button endAdornment from ButtonProps [`undefined` | `ComponentType<SVGProps<SVGSVGElement>>` | `ReactElement<SVGProps<SVGSVGElement>>`]',\r\n options: Object.keys(iconMap),\r\n mapping: iconMap,\r\n control: { type: 'inline-radio' },\r\n },\r\n slotProps: {\r\n name: 'slotProps',\r\n description: 'Button slotProps from ButtonProps [object]',\r\n control: { type: \"object\" },\r\n },\r\n tooltipProps: {\r\n name: 'tooltipProps',\r\n description: 'Button tooltipProps from ButtonProps [object]',\r\n control: { type: \"object\" },\r\n },\r\n },\r\n parameters: {\r\n pseudo: {\r\n hover: '#hover',\r\n focus: '#focus',\r\n active: '#active',\r\n disabled: '#disabled',\r\n },\r\n }\r\n} satisfies Meta<typeof Button>;\r\nexport default meta;\r\n\r\ntype Story = StoryObj<typeof meta>;\r\nconst args: Story['args'] = {\r\n ...meta.args,\r\n startAdornment: <PlusIcon/>,\r\n endAdornment: <PlusIcon/>,\r\n children: 'children',\r\n}\r\n\r\nexport const Default: Story = {\r\n args: {\r\n ...meta.args,\r\n children: '_children_',\r\n }\r\n};\r\n\r\nexport const Disabled: Story = {\r\n render: (props) => (\r\n <DashedWrapper>\r\n <Button {...props} />\r\n <Button {...props} startAdornment={<PlusIcon/>}/>\r\n <Button {...props} startAdornment={<PlusIcon/>} endAdornment={<PlusIcon/>}/>\r\n <Button {...props} endAdornment={<PlusIcon/>}/>\r\n </DashedWrapper>\r\n ),\r\n args: {\r\n ...meta.args,\r\n disabled: true,\r\n children: 'disabled',\r\n }\r\n};\r\n\r\nexport const Loading: Story = {\r\n render: (props) => (\r\n <DashedWrapper>\r\n <Button {...props} />\r\n <Button {...props} startAdornment={<PlusIcon/>}/>\r\n <Button {...props} startAdornment={<PlusIcon/>} endAdornment={<PlusIcon/>}/>\r\n <Button {...props} endAdornment={<PlusIcon/>}/>\r\n </DashedWrapper>\r\n ),\r\n args: {\r\n children: 'Loading…',\r\n loading: true,\r\n },\r\n};\r\n\r\nexport const Tooltips: Story = {\r\n render: (props) => (\r\n <DashedWrapper>\r\n <div style={{ display: 'flex', flexDirection: 'column', gap: '16px' }}>\r\n <Button\r\n {...props}\r\n title='delayDuration: 0'\r\n tooltipProps={{ delayDuration: 0 }}\r\n >\r\n delayDuration: 0\r\n </Button>\r\n <Button\r\n {...props}\r\n title='delayDuration: 300 [default]'\r\n tooltipProps={{ delayDuration: 300 }}\r\n >\r\n delayDuration: 300\r\n </Button>\r\n <Button\r\n {...props}\r\n title='delayDuration: 700'\r\n tooltipProps={{ delayDuration: 700 }}\r\n >\r\n delayDuration: 700\r\n </Button>\r\n\r\n <Button {...props} title='title_string'>title</Button>\r\n <Button {...props} message='message_string'>message: string</Button>\r\n <Button\r\n {...props}\r\n message={<span>message_node_span</span>}\r\n >\r\n message: ReactNode\r\n </Button>\r\n <Button\r\n {...props}\r\n message='message_string'\r\n tooltipProps={{\r\n showQuestionMark: true\r\n }}\r\n >\r\n showQuestionMark: true\r\n </Button>\r\n </div>\r\n </DashedWrapper>\r\n ),\r\n args: {\r\n children: 'tooltips',\r\n tooltipProps: {\r\n defaultOpen: true\r\n },\r\n },\r\n};\r\n\r\nexport const Primary: Story = {\r\n args: {\r\n ...args,\r\n color: 'primary',\r\n size: 'lg',\r\n children: 'Створити',\r\n },\r\n argTypes: {\r\n variant: { control: false },\r\n color: { control: false },\r\n },\r\n render: (props) => (\r\n <div className='flex'>\r\n <DashedWrapper>\r\n <States {...props} variant='contained'/>\r\n <States {...props} variant='outlined'/>\r\n <States {...props} variant='ghost'/>\r\n </DashedWrapper>\r\n </div>\r\n ),\r\n};\r\n\r\nexport const Secondary: Story = {\r\n args: {\r\n ...args,\r\n color: 'secondary',\r\n size: 'lg',\r\n children: 'Створити',\r\n },\r\n argTypes: {\r\n variant: { control: false },\r\n color: { control: false },\r\n },\r\n render: (props) => (\r\n <div className='flex'>\r\n <DashedWrapper>\r\n <States {...props} variant='contained'/>\r\n <States {...props} variant='outlined'/>\r\n <States {...props} variant='ghost'/>\r\n </DashedWrapper>\r\n </div>\r\n ),\r\n};\r\n\r\nexport const Error: Story = {\r\n args: {\r\n ...args,\r\n color: 'error',\r\n size: 'lg',\r\n children: 'Створити',\r\n },\r\n argTypes: {\r\n variant: { control: false },\r\n color: { control: false },\r\n },\r\n render: (props) => (\r\n <div className='flex'>\r\n <DashedWrapper>\r\n <States {...props} variant='contained'/>\r\n <States {...props} variant='outlined'/>\r\n <States {...props} variant='ghost'/>\r\n </DashedWrapper>\r\n </div>\r\n ),\r\n};\r\n"],"names":["States","props","jsx","state","Button","variants","colors","sizes","variant_default","color_default","size_default","iconMap","PlusIcon","Trash2Icon","FileDownIcon","meta","args","Default","Disabled","jsxs","DashedWrapper","Loading","Tooltips","Primary","Secondary","Error"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Button.stories.js","sources":["../../src/Button/Button.stories.tsx"],"sourcesContent":["import type { Meta, StoryObj } from '@storybook/react';\r\n\r\nimport { Button } from './Button';\r\nimport { ButtonProps } from './Button.types';\r\nimport React from 'react';\r\nimport { PlusIcon, Trash2Icon, FileDownIcon } from 'lucide-react';\r\nimport { DashedWrapper } from \"../../.storybook/Wrappers\";\r\n\r\nconst States = (props: ButtonProps) => (\r\n <div\r\n style={{\r\n position: 'relative',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: '16px',\r\n }}\r\n >\r\n {[ 'default', 'hover', 'focus', 'active', 'disabled', 'loading' ]\r\n .map((state) => (\r\n <Button\r\n key={state}\r\n id={state}\r\n {...props}\r\n disabled={state === 'disabled' || props.disabled}\r\n loading={state === 'loading' || props.loading}\r\n >\r\n {props.children}\r\n </Button>\r\n ))}\r\n </div>\r\n);\r\n\r\nconst variants: ButtonProps['variant'][] = [ 'none', 'contained', 'outlined', 'ghost', 'text' ]\r\nconst colors: ButtonProps['color'][] = [ 'primary', 'secondary', 'error' ]\r\nconst sizes: ButtonProps['size'][] = [ 'xs', 'sm', 'md', 'lg' ]\r\n\r\nconst variant_default: ButtonProps['variant'] = 'contained';\r\nconst color_default: ButtonProps['color'] = 'primary';\r\nconst size_default: ButtonProps['size'] = 'lg';\r\n\r\nconst iconMap = {\r\n 'undefined': undefined,\r\n \"<PlusIcon />\": <PlusIcon/>,\r\n \"<Trash2Icon />\": <Trash2Icon/>,\r\n \"<FileDownIcon />\": <FileDownIcon/>,\r\n PlusIcon: PlusIcon,\r\n Trash2Icon: Trash2Icon,\r\n FileDownIcon: FileDownIcon,\r\n};\r\n\r\nconst meta = {\r\n title: 'Button',\r\n component: Button,\r\n // render: Template,\r\n args: {\r\n tooltip: undefined,\r\n asChild: false,\r\n //\r\n variant: variant_default,\r\n color: color_default,\r\n size: size_default,\r\n loading: false,\r\n disabled: false,\r\n startAdornment: undefined,\r\n endAdornment: undefined,\r\n slotProps: {},\r\n tooltipProps: {}\r\n },\r\n argTypes: {\r\n tooltip: {\r\n name: 'tooltip',\r\n description: 'Button tooltip from ButtonProps [deprecated, use title and message instead]',\r\n control: false,\r\n },\r\n asChild: {\r\n name: 'asChild',\r\n description: 'Button asChild from ButtonProps [boolean]',\r\n control: false\r\n },\r\n variant: {\r\n name: 'variant',\r\n description: 'Button variant from ButtonProps',\r\n options: variants,\r\n control: { type: 'inline-radio', }\r\n },\r\n color: {\r\n name: 'color',\r\n description: 'Button color from ButtonProps',\r\n options: colors,\r\n control: { type: 'inline-radio' }\r\n },\r\n size: {\r\n name: 'size',\r\n description: 'Button size from ButtonProps',\r\n options: sizes,\r\n control: { type: 'inline-radio' }\r\n },\r\n title: {\r\n name: 'title',\r\n description: \"Button tooltip title from HTMLAttributes<HTMLButtonElement> [string only]\",\r\n control: { type: 'text' },\r\n },\r\n message: {\r\n name: 'message',\r\n description: 'Button tooltip message from ButtonProps [ReactNode]',\r\n control: { type: \"object\" },\r\n },\r\n startAdornment: {\r\n name: 'startAdornment',\r\n description: 'Button startAdornment from ButtonProps [`undefined` | `ComponentType<SVGProps<SVGSVGElement>>` | `ReactElement<SVGProps<SVGSVGElement>>`]',\r\n options: Object.keys(iconMap),\r\n mapping: iconMap,\r\n control: { type: 'inline-radio' },\r\n },\r\n endAdornment: {\r\n name: 'endAdornment',\r\n description: 'Button endAdornment from ButtonProps [`undefined` | `ComponentType<SVGProps<SVGSVGElement>>` | `ReactElement<SVGProps<SVGSVGElement>>`]',\r\n options: Object.keys(iconMap),\r\n mapping: iconMap,\r\n control: { type: 'inline-radio' },\r\n },\r\n slotProps: {\r\n name: 'slotProps',\r\n description: 'Button slotProps from ButtonProps [object]',\r\n control: { type: \"object\" },\r\n },\r\n tooltipProps: {\r\n name: 'tooltipProps',\r\n description: 'Button tooltipProps from ButtonProps [object]',\r\n control: { type: \"object\" },\r\n },\r\n },\r\n parameters: {\r\n pseudo: {\r\n hover: '#hover',\r\n focus: '#focus',\r\n active: '#active',\r\n disabled: '#disabled',\r\n },\r\n }\r\n} satisfies Meta<typeof Button>;\r\nexport default meta;\r\n\r\ntype Story = StoryObj<typeof meta>;\r\nconst args: Story['args'] = {\r\n ...meta.args,\r\n startAdornment: <PlusIcon/>,\r\n endAdornment: <PlusIcon/>,\r\n children: 'children',\r\n}\r\n\r\nexport const Default: Story = {\r\n args: {\r\n ...meta.args,\r\n children: '_children_',\r\n }\r\n};\r\n\r\nexport const Disabled: Story = {\r\n render: (props) => (\r\n <DashedWrapper>\r\n <Button {...props} />\r\n <Button {...props} startAdornment={<PlusIcon/>}/>\r\n <Button {...props} startAdornment={<PlusIcon/>} endAdornment={<PlusIcon/>}/>\r\n <Button {...props} endAdornment={<PlusIcon/>}/>\r\n </DashedWrapper>\r\n ),\r\n args: {\r\n ...meta.args,\r\n disabled: true,\r\n children: 'disabled',\r\n }\r\n};\r\n\r\nexport const Loading: Story = {\r\n render: (props) => (\r\n <DashedWrapper>\r\n <Button {...props} />\r\n <Button {...props} startAdornment={<PlusIcon/>}/>\r\n <Button {...props} startAdornment={<PlusIcon/>} endAdornment={<PlusIcon/>}/>\r\n <Button {...props} endAdornment={<PlusIcon/>}/>\r\n </DashedWrapper>\r\n ),\r\n args: {\r\n children: 'Loading…',\r\n loading: true,\r\n },\r\n};\r\n\r\nexport const Tooltips: Story = {\r\n render: (props) => (\r\n <DashedWrapper>\r\n <div style={{ display: 'flex', flexDirection: 'column', gap: '16px' }}>\r\n <Button\r\n {...props}\r\n title='delayDuration: 0'\r\n tooltipProps={{ delayDuration: 0 }}\r\n >\r\n delayDuration: 0\r\n </Button>\r\n <Button\r\n {...props}\r\n title='delayDuration: 300 [default]'\r\n tooltipProps={{ delayDuration: 300 }}\r\n >\r\n delayDuration: 300\r\n </Button>\r\n <Button\r\n {...props}\r\n title='delayDuration: 700'\r\n tooltipProps={{ delayDuration: 700 }}\r\n >\r\n delayDuration: 700\r\n </Button>\r\n\r\n <Button {...props} title='title_string'>title</Button>\r\n <Button {...props} message='message_string'>message: string</Button>\r\n <Button\r\n {...props}\r\n message={<span>message_node_span</span>}\r\n >\r\n message: ReactNode\r\n </Button>\r\n <Button\r\n {...props}\r\n message='message_string'\r\n tooltipProps={{\r\n showQuestionMark: true\r\n }}\r\n >\r\n showQuestionMark: true\r\n </Button>\r\n </div>\r\n </DashedWrapper>\r\n ),\r\n args: {\r\n children: 'tooltips',\r\n tooltipProps: {\r\n defaultOpen: true\r\n },\r\n },\r\n};\r\n\r\nexport const Primary: Story = {\r\n args: {\r\n ...args,\r\n color: 'primary',\r\n size: 'lg',\r\n children: 'Створити',\r\n },\r\n argTypes: {\r\n variant: { control: false },\r\n color: { control: false },\r\n },\r\n render: (props) => (\r\n <div className='flex'>\r\n <DashedWrapper>\r\n <States {...props} variant='contained'/>\r\n <States {...props} variant='outlined'/>\r\n <States {...props} variant='ghost'/>\r\n <States {...props} variant='text'/>\r\n </DashedWrapper>\r\n </div>\r\n ),\r\n};\r\n\r\nexport const Secondary: Story = {\r\n args: {\r\n ...args,\r\n color: 'secondary',\r\n size: 'lg',\r\n children: 'Створити',\r\n },\r\n argTypes: {\r\n variant: { control: false },\r\n color: { control: false },\r\n },\r\n render: (props) => (\r\n <div className='flex'>\r\n <DashedWrapper>\r\n <States {...props} variant='contained'/>\r\n <States {...props} variant='outlined'/>\r\n <States {...props} variant='ghost'/>\r\n <States {...props} variant='text'/>\r\n </DashedWrapper>\r\n </div>\r\n ),\r\n};\r\n\r\nexport const Error: Story = {\r\n args: {\r\n ...args,\r\n color: 'error',\r\n size: 'lg',\r\n children: 'Створити',\r\n },\r\n argTypes: {\r\n variant: { control: false },\r\n color: { control: false },\r\n },\r\n render: (props) => (\r\n <div className='flex'>\r\n <DashedWrapper>\r\n <States {...props} variant='contained'/>\r\n <States {...props} variant='outlined'/>\r\n <States {...props} variant='ghost'/>\r\n <States {...props} variant='text'/>\r\n </DashedWrapper>\r\n </div>\r\n ),\r\n};\r\n"],"names":["States","props","jsx","state","Button","variants","colors","sizes","variant_default","color_default","size_default","iconMap","PlusIcon","Trash2Icon","FileDownIcon","meta","args","Default","Disabled","jsxs","DashedWrapper","Loading","Tooltips","Primary","Secondary","Error"],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { ButtonIconType } from './Button.types';
|
|
2
|
+
export declare const renderInnerIcon: (Icon?: ButtonIconType) => import('react').ReactElement<import('react').SVGProps<SVGSVGElement>, string | import('react').JSXElementConstructor<any>> | null;
|
|
3
|
+
//# sourceMappingURL=Button.utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Button.utils.d.ts","sourceRoot":"","sources":["../../src/Button/Button.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGhD,eAAO,MAAM,eAAe,GAAI,OAAO,cAAc,sIAQpD,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { isValidElement as t, createElement as n, cloneElement as i } from "react";
|
|
2
|
+
const o = (e) => {
|
|
3
|
+
if (!e) return null;
|
|
4
|
+
if (t(e)) return e;
|
|
5
|
+
const r = n(e);
|
|
6
|
+
return i(r, {
|
|
7
|
+
strokeWidth: 1.5,
|
|
8
|
+
...r.props
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
export {
|
|
12
|
+
o as renderInnerIcon
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=Button.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Button.utils.js","sources":["../../src/Button/Button.utils.ts"],"sourcesContent":["import { ButtonIconType } from \"./Button.types\";\r\nimport { cloneElement, createElement, isValidElement } from \"react\";\r\n\r\nexport const renderInnerIcon = (Icon?: ButtonIconType) => {\r\n if (!Icon) return null;\r\n if (isValidElement(Icon)) return Icon;\r\n const icon = createElement(Icon);\r\n return cloneElement(icon, {\r\n strokeWidth: 1.5,\r\n ...icon.props,\r\n });\r\n};\r\n"],"names":["renderInnerIcon","Icon","isValidElement","icon","createElement","cloneElement"],"mappings":";AAGO,MAAMA,IAAkB,CAACC,MAA0B;AACxD,MAAI,CAACA,EAAM,QAAO;AAClB,MAAIC,EAAeD,CAAI,EAAG,QAAOA;AACjC,QAAME,IAAOC,EAAcH,CAAI;AAC/B,SAAOI,EAAaF,GAAM;AAAA,IACxB,aAAa;AAAA,IACb,GAAGA,EAAK;AAAA,EAAA,CACT;AACH;"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { VariantProps } from 'class-variance-authority';
|
|
2
2
|
export declare const buttonVariants: (props?: ({
|
|
3
|
-
variant?: "none" | "contained" | "outlined" | "ghost" | null | undefined;
|
|
3
|
+
variant?: "text" | "none" | "contained" | "outlined" | "ghost" | null | undefined;
|
|
4
4
|
color?: "primary" | "secondary" | "error" | null | undefined;
|
|
5
5
|
size?: "xs" | "sm" | "md" | "lg" | null | undefined;
|
|
6
6
|
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
7
7
|
export type ButtonVarianceProps = VariantProps<typeof buttonVariants>;
|
|
8
8
|
export declare const buttonBadgeVariants: (props?: ({
|
|
9
|
-
variant?: "none" | "contained" | "outlined" | "ghost" | null | undefined;
|
|
9
|
+
variant?: "text" | "none" | "contained" | "outlined" | "ghost" | null | undefined;
|
|
10
10
|
color?: "primary" | "secondary" | "error" | null | undefined;
|
|
11
11
|
size?: "xs" | "sm" | "md" | "lg" | null | undefined;
|
|
12
12
|
rounded?: boolean | null | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buttonVariants.d.ts","sourceRoot":"","sources":["../../src/Button/buttonVariants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGlE,eAAO,MAAM,cAAc;;;;
|
|
1
|
+
{"version":3,"file":"buttonVariants.d.ts","sourceRoot":"","sources":["../../src/Button/buttonVariants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGlE,eAAO,MAAM,cAAc;;;;8EA8K1B,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG,YAAY,CAAC,OAAO,cAAc,CAAC,CAAC;AAEtE,eAAO,MAAM,mBAAmB;;;;;;8EAqE/B,CAAA;AACD,MAAM,MAAM,mBAAmB,GAAG,YAAY,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
|
package/Button/buttonVariants.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { cva as
|
|
1
|
+
import { cva as t } from "class-variance-authority";
|
|
2
2
|
import { cn as e } from "@oneplatformdev/utils";
|
|
3
|
-
const s =
|
|
3
|
+
const s = t(
|
|
4
4
|
[
|
|
5
5
|
"inline-flex items-center justify-center box-border",
|
|
6
6
|
"whitespace-nowrap font-medium",
|
|
@@ -8,7 +8,7 @@ const s = r(
|
|
|
8
8
|
"transition-colors focus-visible:outline-hidden focus-visible:ring-none focus-visible:ring-transparent",
|
|
9
9
|
"disabled:pointer-events-none disabled:cursor-default",
|
|
10
10
|
"[&_svg]:pointer-events-none [&_svg]:shrink-0",
|
|
11
|
-
"transition-transform [&_svg]:transition-transform"
|
|
11
|
+
"transition-transform duration-200 [&_svg]:transition-transform [&_svg]:duration-200"
|
|
12
12
|
],
|
|
13
13
|
{
|
|
14
14
|
variants: {
|
|
@@ -16,7 +16,8 @@ const s = r(
|
|
|
16
16
|
none: "",
|
|
17
17
|
contained: "",
|
|
18
18
|
outlined: "",
|
|
19
|
-
ghost: ""
|
|
19
|
+
ghost: "",
|
|
20
|
+
text: ""
|
|
20
21
|
},
|
|
21
22
|
color: {
|
|
22
23
|
primary: "",
|
|
@@ -70,6 +71,17 @@ const s = r(
|
|
|
70
71
|
"disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]"
|
|
71
72
|
)
|
|
72
73
|
},
|
|
74
|
+
{
|
|
75
|
+
color: "primary",
|
|
76
|
+
variant: "text",
|
|
77
|
+
className: e(
|
|
78
|
+
"min-h-auto h-auto p-0",
|
|
79
|
+
"bg-transparent border border-transparent text-[#9368FF] [&_svg]:text-[#9368FF]",
|
|
80
|
+
"hover:text-[#6B3DD9] hover:[&_svg]:text-[#6B3DD9]",
|
|
81
|
+
"focus:text-[#6B3DD9] focus:[&_svg]:text-[#6B3DD9]",
|
|
82
|
+
"disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]"
|
|
83
|
+
)
|
|
84
|
+
},
|
|
73
85
|
// SECONDARY BUTTON VARIANTS
|
|
74
86
|
{
|
|
75
87
|
color: "secondary",
|
|
@@ -104,6 +116,15 @@ const s = r(
|
|
|
104
116
|
"disabled:bg-[#FCFCFC] disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]"
|
|
105
117
|
)
|
|
106
118
|
},
|
|
119
|
+
{
|
|
120
|
+
color: "secondary",
|
|
121
|
+
variant: "text",
|
|
122
|
+
className: e(
|
|
123
|
+
"min-h-auto h-auto p-0",
|
|
124
|
+
"text-[#06080D] [&_svg]:text-[#06080D] bg-transparent border border-transparent",
|
|
125
|
+
"disabled:bg-[#FCFCFC] disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]"
|
|
126
|
+
)
|
|
127
|
+
},
|
|
107
128
|
// ERROR BUTTON VARIANTS
|
|
108
129
|
{
|
|
109
130
|
color: "error",
|
|
@@ -135,6 +156,16 @@ const s = r(
|
|
|
135
156
|
"active:bg-[#DC26260F] active:border-[#DC2626]",
|
|
136
157
|
"disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]"
|
|
137
158
|
)
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
color: "error",
|
|
162
|
+
variant: "text",
|
|
163
|
+
className: e(
|
|
164
|
+
"min-h-auto h-auto p-0",
|
|
165
|
+
"bg-transparent border border-transparent text-[#EF4444] [&_svg]:text-[#EF4444]",
|
|
166
|
+
"hover:text-[#DC2626] hover:[&_svg]:text-[#DC2626]",
|
|
167
|
+
"disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]"
|
|
168
|
+
)
|
|
138
169
|
}
|
|
139
170
|
],
|
|
140
171
|
defaultVariants: {
|
|
@@ -143,7 +174,7 @@ const s = r(
|
|
|
143
174
|
size: "lg"
|
|
144
175
|
}
|
|
145
176
|
}
|
|
146
|
-
), o =
|
|
177
|
+
), o = t(
|
|
147
178
|
[
|
|
148
179
|
"absolute z-0",
|
|
149
180
|
"flex items-center justify-center text-center p-0",
|
|
@@ -156,7 +187,8 @@ const s = r(
|
|
|
156
187
|
none: "",
|
|
157
188
|
contained: "",
|
|
158
189
|
outlined: "",
|
|
159
|
-
ghost: ""
|
|
190
|
+
ghost: "",
|
|
191
|
+
text: ""
|
|
160
192
|
},
|
|
161
193
|
color: {
|
|
162
194
|
primary: "",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buttonVariants.js","sources":["../../src/Button/buttonVariants.ts"],"sourcesContent":["import { cva, type VariantProps } from 'class-variance-authority';\r\nimport { cn } from \"@oneplatformdev/utils\";\r\n\r\nexport const buttonVariants = cva(\r\n [\r\n \"inline-flex items-center justify-center box-border\",\r\n 'whitespace-nowrap font-medium',\r\n 'cursor-pointer',\r\n \"transition-colors focus-visible:outline-hidden focus-visible:ring-none focus-visible:ring-transparent\",\r\n \"disabled:pointer-events-none disabled:cursor-default\",\r\n \"[&_svg]:pointer-events-none [&_svg]:shrink-0\",\r\n 'transition-transform [&_svg]:transition-transform',\r\n ],\r\n {\r\n variants: {\r\n variant: {\r\n none: \"\",\r\n contained: \"\",\r\n outlined: \"\",\r\n ghost: '',\r\n },\r\n color: {\r\n primary: '',\r\n secondary: '',\r\n error: '',\r\n },\r\n size: {\r\n xs: 'rounded-sm p-1 gap-1 text-xs min-h-4 min-w-14',\r\n sm: 'rounded-md p-1 gap-1 text-sm min-h-6 min-w-20',\r\n md: cn(\r\n 'min-h-8 min-w-[102px] rounded-lg gap-1 px-2 py-1',\r\n 'text-sm leading-[1.12] [&_svg]:size-6',\r\n ),\r\n lg: cn(\r\n \"min-h-10 min-w-35 rounded-lg gap-1 px-2.5 py-1.5\",\r\n 'text-base leading-normal [&_svg]:size-6',\r\n )\r\n }\r\n },\r\n compoundVariants: [\r\n // PRIMARY BUTTON VARIANTS\r\n {\r\n color: 'primary',\r\n variant: 'contained',\r\n className: cn(\r\n 'bg-[#9368FF] border border-[#9368FF] text-[#FCFCFC] [&_svg]:text-[#FCFCFC]',\r\n 'hover:bg-[#7F4EEB]',\r\n 'focus:bg-[#7F4EEB] focus:border-[#6B3DD9]',\r\n 'active:bg-[#6B3DD9]',\r\n 'disabled:bg-[#E8E9EB] disabled:border-[#E8E9EB] disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]',\r\n ),\r\n },\r\n {\r\n color: 'primary',\r\n variant: 'outlined',\r\n className: cn(\r\n 'bg-transparent border border-[#9368FF] text-[#9368FF] [&_svg]:text-[#9368FF]',\r\n 'hover:bg-[#9368FF0F]',\r\n 'active:bg-[#9368FF0F] active:border-[#6B3DD9]',\r\n 'disabled:border-[#EBEBEB] disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]',\r\n ),\r\n },\r\n {\r\n color: 'primary',\r\n variant: 'ghost',\r\n className: cn(\r\n 'bg-transparent border border-transparent text-[#9368FF] [&_svg]:text-[#9368FF]',\r\n 'hover:text-[#6B3DD9] hover:[&_svg]:text-[#6B3DD9]',\r\n 'focus:text-[#6B3DD9] focus:[&_svg]:text-[#6B3DD9]',\r\n 'active:bg-[#9368FF0F]',\r\n 'disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]',\r\n ),\r\n },\r\n // SECONDARY BUTTON VARIANTS\r\n {\r\n color: 'secondary',\r\n variant: 'contained',\r\n className: cn(\r\n 'bg-[#FCFCFC] border border-[#E1E1E5] text-[#06080D] [&_svg]:text-[#06080D]',\r\n 'hover:bg-[#F9FAFB] hover:border-[#E1E1E5]',\r\n 'focus:bg-[#FCFCFC] focus:border-[#C5C7CD]',\r\n 'active:bg-[#F9FAFB] active:border-[#C5C7CD]',\r\n 'disabled:bg-[#FCFCFC] disabled:border-[#EBEBEB] disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]',\r\n ),\r\n },\r\n {\r\n color: 'secondary',\r\n variant: 'outlined',\r\n className: cn(\r\n 'bg-transparent border border-[#E1E1E5] text-[#06080D] [&_svg]:text-[#06080D]',\r\n 'hover:bg-[#F9FAFB] hover:border-[#E1E1E5]',\r\n 'focus:bg-[#FCFCFC] focus:border-[#C5C7CD]',\r\n 'active:bg-[#F9FAFB] active:border-[#C5C7CD]',\r\n 'disabled:bg-[#FCFCFC] disabled:border-[#EBEBEB] disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]',\r\n ),\r\n },\r\n {\r\n color: 'secondary',\r\n variant: 'ghost',\r\n className: cn(\r\n 'text-[#06080D] [&_svg]:text-[#06080D] bg-transparent border border-transparent',\r\n 'hover:bg-[#F9FAFB]',\r\n 'focus:bg-[#FCFCFC]',\r\n 'active:bg-[#F9FAFB]',\r\n 'disabled:bg-[#FCFCFC] disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]',\r\n ),\r\n },\r\n // ERROR BUTTON VARIANTS\r\n {\r\n color: 'error',\r\n variant: 'contained',\r\n className: cn(\r\n 'bg-[#EF4444] border border-[#EF4444] text-[#FCFCFC] [&_svg]:text-[#FCFCFC]',\r\n 'hover:bg-[#DC2626]',\r\n 'focus:bg-[#DC2626]',\r\n 'active:bg-[#DC2626]',\r\n 'disabled:bg-[#E8E9EB] disabled:border-[#E8E9EB] disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]',\r\n ),\r\n },\r\n {\r\n color: 'error',\r\n variant: 'outlined',\r\n className: cn(\r\n 'bg-transparent border border-[#EF4444] text-[#EF4444] [&_svg]:text-[#EF4444]',\r\n 'hover:bg-[#EF44440F]',\r\n 'active:bg-[#DC26260F] active:border-[#DC2626]',\r\n 'disabled:border-[#EBEBEB] disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]',\r\n ),\r\n },\r\n {\r\n color: 'error',\r\n variant: 'ghost',\r\n className: cn(\r\n 'bg-transparent border border-transparent text-[#EF4444] [&_svg]:text-[#EF4444]',\r\n 'hover:bg-[#EF44440F] hover:text-[#DC2626] hover:[&_svg]:text-[#DC2626]',\r\n 'active:bg-[#DC26260F] active:border-[#DC2626]',\r\n 'disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]',\r\n ),\r\n },\r\n ],\r\n defaultVariants: {\r\n variant: 'contained',\r\n color: 'primary',\r\n size: 'lg',\r\n },\r\n }\r\n)\r\n\r\nexport type ButtonVarianceProps = VariantProps<typeof buttonVariants>;\r\n\r\nexport const buttonBadgeVariants = cva(\r\n [\r\n 'absolute z-0',\r\n 'flex items-center justify-center text-center p-0',\r\n 'font-medium leading-none tracking-tighter',\r\n 'rounded-full w-fit min-w-4 h-4 text-[10px] px-0.5 box-border',\r\n ],\r\n {\r\n variants: {\r\n variant: {\r\n none: '',\r\n contained: '',\r\n outlined: '',\r\n ghost: \"\",\r\n },\r\n color: {\r\n primary: \"\",\r\n secondary: \"\",\r\n error: \"\"\r\n },\r\n size: {\r\n xs: '',\r\n sm: '',\r\n md: '',\r\n lg: '-top-[2px] left-[14px]',\r\n },\r\n rounded: {\r\n true: 'left-1/2 -translate-x-1/2 -translate-y-1/2',\r\n false: '',\r\n },\r\n disabled: {\r\n true: '',\r\n false: '',\r\n }\r\n },\r\n compoundVariants: [\r\n // SIZE XS\r\n { size: 'xs', rounded: false, className: '-top-px -right-px translate-x-1/2 -translate-y-1/2' },\r\n { size: 'xs', rounded: true, className: '-top-px' },\r\n // SIZE SM\r\n { size: 'sm', rounded: false, className: 'top-0 right-0 translate-x-1/2 -translate-y-1/2' },\r\n { size: 'sm', rounded: true, className: '-top-[3px]' },\r\n // SIZE MD\r\n { size: 'md', rounded: false, className: '-top-[4px] left-[12px]' },\r\n { size: 'md', rounded: true, className: '-top-[6px]' },\r\n // SIZE LG\r\n { size: 'lg', rounded: false, className: '-top-[4px] left-[12px]' },\r\n { size: 'lg', rounded: true, className: '-top-2' },\r\n\r\n // COLORS\r\n {\r\n color: ['primary', 'secondary', 'error'],\r\n className: 'bg-[#9368FF] text-[#FCFCFC]',\r\n },\r\n {\r\n color: ['primary', 'secondary', 'error'],\r\n disabled: true,\r\n className: 'bg-[#666A78] text-[#FCFCFC]'\r\n },\r\n ],\r\n defaultVariants: {\r\n color: \"primary\",\r\n variant: \"contained\",\r\n size: \"lg\",\r\n disabled: false,\r\n rounded: false,\r\n },\r\n }\r\n)\r\nexport type ButtonBadgeCVAProps = VariantProps<typeof buttonBadgeVariants>;\r\n"],"names":["buttonVariants","cva","cn","buttonBadgeVariants"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"buttonVariants.js","sources":["../../src/Button/buttonVariants.ts"],"sourcesContent":["import { cva, type VariantProps } from 'class-variance-authority';\r\nimport { cn } from \"@oneplatformdev/utils\";\r\n\r\nexport const buttonVariants = cva(\r\n [\r\n \"inline-flex items-center justify-center box-border\",\r\n 'whitespace-nowrap font-medium',\r\n 'cursor-pointer',\r\n \"transition-colors focus-visible:outline-hidden focus-visible:ring-none focus-visible:ring-transparent\",\r\n \"disabled:pointer-events-none disabled:cursor-default\",\r\n \"[&_svg]:pointer-events-none [&_svg]:shrink-0\",\r\n 'transition-transform duration-200 [&_svg]:transition-transform [&_svg]:duration-200',\r\n ],\r\n {\r\n variants: {\r\n variant: {\r\n none: \"\",\r\n contained: \"\",\r\n outlined: \"\",\r\n ghost: '',\r\n text: '',\r\n },\r\n color: {\r\n primary: '',\r\n secondary: '',\r\n error: '',\r\n },\r\n size: {\r\n xs: 'rounded-sm p-1 gap-1 text-xs min-h-4 min-w-14',\r\n sm: 'rounded-md p-1 gap-1 text-sm min-h-6 min-w-20',\r\n md: cn(\r\n 'min-h-8 min-w-[102px] rounded-lg gap-1 px-2 py-1',\r\n 'text-sm leading-[1.12] [&_svg]:size-6',\r\n ),\r\n lg: cn(\r\n \"min-h-10 min-w-35 rounded-lg gap-1 px-2.5 py-1.5\",\r\n 'text-base leading-normal [&_svg]:size-6',\r\n )\r\n }\r\n },\r\n compoundVariants: [\r\n // PRIMARY BUTTON VARIANTS\r\n {\r\n color: 'primary',\r\n variant: 'contained',\r\n className: cn(\r\n 'bg-[#9368FF] border border-[#9368FF] text-[#FCFCFC] [&_svg]:text-[#FCFCFC]',\r\n 'hover:bg-[#7F4EEB]',\r\n 'focus:bg-[#7F4EEB] focus:border-[#6B3DD9]',\r\n 'active:bg-[#6B3DD9]',\r\n 'disabled:bg-[#E8E9EB] disabled:border-[#E8E9EB] disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]',\r\n ),\r\n },\r\n {\r\n color: 'primary',\r\n variant: 'outlined',\r\n className: cn(\r\n 'bg-transparent border border-[#9368FF] text-[#9368FF] [&_svg]:text-[#9368FF]',\r\n 'hover:bg-[#9368FF0F]',\r\n 'active:bg-[#9368FF0F] active:border-[#6B3DD9]',\r\n 'disabled:border-[#EBEBEB] disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]',\r\n ),\r\n },\r\n {\r\n color: 'primary',\r\n variant: 'ghost',\r\n className: cn(\r\n 'bg-transparent border border-transparent text-[#9368FF] [&_svg]:text-[#9368FF]',\r\n 'hover:text-[#6B3DD9] hover:[&_svg]:text-[#6B3DD9]',\r\n 'focus:text-[#6B3DD9] focus:[&_svg]:text-[#6B3DD9]',\r\n 'active:bg-[#9368FF0F]',\r\n 'disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]',\r\n ),\r\n },\r\n {\r\n color: 'primary',\r\n variant: 'text',\r\n className: cn(\r\n 'min-h-auto h-auto p-0',\r\n 'bg-transparent border border-transparent text-[#9368FF] [&_svg]:text-[#9368FF]',\r\n 'hover:text-[#6B3DD9] hover:[&_svg]:text-[#6B3DD9]',\r\n 'focus:text-[#6B3DD9] focus:[&_svg]:text-[#6B3DD9]',\r\n 'disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]',\r\n ),\r\n },\r\n // SECONDARY BUTTON VARIANTS\r\n {\r\n color: 'secondary',\r\n variant: 'contained',\r\n className: cn(\r\n 'bg-[#FCFCFC] border border-[#E1E1E5] text-[#06080D] [&_svg]:text-[#06080D]',\r\n 'hover:bg-[#F9FAFB] hover:border-[#E1E1E5]',\r\n 'focus:bg-[#FCFCFC] focus:border-[#C5C7CD]',\r\n 'active:bg-[#F9FAFB] active:border-[#C5C7CD]',\r\n 'disabled:bg-[#FCFCFC] disabled:border-[#EBEBEB] disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]',\r\n ),\r\n },\r\n {\r\n color: 'secondary',\r\n variant: 'outlined',\r\n className: cn(\r\n 'bg-transparent border border-[#E1E1E5] text-[#06080D] [&_svg]:text-[#06080D]',\r\n 'hover:bg-[#F9FAFB] hover:border-[#E1E1E5]',\r\n 'focus:bg-[#FCFCFC] focus:border-[#C5C7CD]',\r\n 'active:bg-[#F9FAFB] active:border-[#C5C7CD]',\r\n 'disabled:bg-[#FCFCFC] disabled:border-[#EBEBEB] disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]',\r\n ),\r\n },\r\n {\r\n color: 'secondary',\r\n variant: 'ghost',\r\n className: cn(\r\n 'text-[#06080D] [&_svg]:text-[#06080D] bg-transparent border border-transparent',\r\n 'hover:bg-[#F9FAFB]',\r\n 'focus:bg-[#FCFCFC]',\r\n 'active:bg-[#F9FAFB]',\r\n 'disabled:bg-[#FCFCFC] disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]',\r\n ),\r\n },\r\n {\r\n color: 'secondary',\r\n variant: 'text',\r\n className: cn(\r\n 'min-h-auto h-auto p-0',\r\n 'text-[#06080D] [&_svg]:text-[#06080D] bg-transparent border border-transparent',\r\n 'disabled:bg-[#FCFCFC] disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]',\r\n ),\r\n },\r\n // ERROR BUTTON VARIANTS\r\n {\r\n color: 'error',\r\n variant: 'contained',\r\n className: cn(\r\n 'bg-[#EF4444] border border-[#EF4444] text-[#FCFCFC] [&_svg]:text-[#FCFCFC]',\r\n 'hover:bg-[#DC2626]',\r\n 'focus:bg-[#DC2626]',\r\n 'active:bg-[#DC2626]',\r\n 'disabled:bg-[#E8E9EB] disabled:border-[#E8E9EB] disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]',\r\n ),\r\n },\r\n {\r\n color: 'error',\r\n variant: 'outlined',\r\n className: cn(\r\n 'bg-transparent border border-[#EF4444] text-[#EF4444] [&_svg]:text-[#EF4444]',\r\n 'hover:bg-[#EF44440F]',\r\n 'active:bg-[#DC26260F] active:border-[#DC2626]',\r\n 'disabled:border-[#EBEBEB] disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]',\r\n ),\r\n },\r\n {\r\n color: 'error',\r\n variant: 'ghost',\r\n className: cn(\r\n 'bg-transparent border border-transparent text-[#EF4444] [&_svg]:text-[#EF4444]',\r\n 'hover:bg-[#EF44440F] hover:text-[#DC2626] hover:[&_svg]:text-[#DC2626]',\r\n 'active:bg-[#DC26260F] active:border-[#DC2626]',\r\n 'disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]',\r\n ),\r\n },\r\n {\r\n color: 'error',\r\n variant: 'text',\r\n className: cn(\r\n 'min-h-auto h-auto p-0',\r\n 'bg-transparent border border-transparent text-[#EF4444] [&_svg]:text-[#EF4444]',\r\n 'hover:text-[#DC2626] hover:[&_svg]:text-[#DC2626]',\r\n 'disabled:text-[#666A78] disabled:[&_svg]:text-[#666A78]',\r\n ),\r\n },\r\n ],\r\n defaultVariants: {\r\n variant: 'contained',\r\n color: 'primary',\r\n size: 'lg',\r\n },\r\n }\r\n)\r\n\r\nexport type ButtonVarianceProps = VariantProps<typeof buttonVariants>;\r\n\r\nexport const buttonBadgeVariants = cva(\r\n [\r\n 'absolute z-0',\r\n 'flex items-center justify-center text-center p-0',\r\n 'font-medium leading-none tracking-tighter',\r\n 'rounded-full w-fit min-w-4 h-4 text-[10px] px-0.5 box-border',\r\n ],\r\n {\r\n variants: {\r\n variant: {\r\n none: '',\r\n contained: '',\r\n outlined: '',\r\n ghost: '',\r\n text: '',\r\n },\r\n color: {\r\n primary: \"\",\r\n secondary: \"\",\r\n error: \"\"\r\n },\r\n size: {\r\n xs: '',\r\n sm: '',\r\n md: '',\r\n lg: '-top-[2px] left-[14px]',\r\n },\r\n rounded: {\r\n true: 'left-1/2 -translate-x-1/2 -translate-y-1/2',\r\n false: '',\r\n },\r\n disabled: {\r\n true: '',\r\n false: '',\r\n }\r\n },\r\n compoundVariants: [\r\n // SIZE XS\r\n { size: 'xs', rounded: false, className: '-top-px -right-px translate-x-1/2 -translate-y-1/2' },\r\n { size: 'xs', rounded: true, className: '-top-px' },\r\n // SIZE SM\r\n { size: 'sm', rounded: false, className: 'top-0 right-0 translate-x-1/2 -translate-y-1/2' },\r\n { size: 'sm', rounded: true, className: '-top-[3px]' },\r\n // SIZE MD\r\n { size: 'md', rounded: false, className: '-top-[4px] left-[12px]' },\r\n { size: 'md', rounded: true, className: '-top-[6px]' },\r\n // SIZE LG\r\n { size: 'lg', rounded: false, className: '-top-[4px] left-[12px]' },\r\n { size: 'lg', rounded: true, className: '-top-2' },\r\n\r\n // COLORS\r\n {\r\n color: ['primary', 'secondary', 'error'],\r\n className: 'bg-[#9368FF] text-[#FCFCFC]',\r\n },\r\n {\r\n color: ['primary', 'secondary', 'error'],\r\n disabled: true,\r\n className: 'bg-[#666A78] text-[#FCFCFC]'\r\n },\r\n ],\r\n defaultVariants: {\r\n color: \"primary\",\r\n variant: \"contained\",\r\n size: \"lg\",\r\n disabled: false,\r\n rounded: false,\r\n },\r\n }\r\n)\r\nexport type ButtonBadgeCVAProps = VariantProps<typeof buttonBadgeVariants>;\r\n"],"names":["buttonVariants","cva","cn","buttonBadgeVariants"],"mappings":"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"}
|
package/Button/index.d.ts
CHANGED
package/Button/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Button/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACrD,cAAc,kBAAkB,CAAC;AACjC,mBAAmB,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Button/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACrD,cAAc,kBAAkB,CAAC;AACjC,mBAAmB,gBAAgB,CAAC;AACpC,cAAc,gBAAgB,CAAC"}
|
package/Button/index.js
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
import { Button as
|
|
2
|
-
import { buttonBadgeVariants as
|
|
1
|
+
import { Button as r, Button as n } from "./Button.js";
|
|
2
|
+
import { buttonBadgeVariants as a, buttonVariants as u } from "./buttonVariants.js";
|
|
3
|
+
import { renderInnerIcon as d } from "./Button.utils.js";
|
|
3
4
|
export {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
n as default
|
|
5
|
+
r as Button,
|
|
6
|
+
a as buttonBadgeVariants,
|
|
7
|
+
u as buttonVariants,
|
|
8
|
+
n as default,
|
|
9
|
+
d as renderInnerIcon
|
|
8
10
|
};
|
|
9
11
|
//# sourceMappingURL=index.js.map
|
package/Button/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonIcon.d.ts","sourceRoot":"","sources":["../../src/ButtonIcon/ButtonIcon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"ButtonIcon.d.ts","sourceRoot":"","sources":["../../src/ButtonIcon/ButtonIcon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAQrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AACH,eAAO,MAAM,UAAU,2FAgFtB,CAAA;AAED,eAAe,UAAU,CAAC"}
|
package/ButtonIcon/ButtonIcon.js
CHANGED
|
@@ -1,79 +1,79 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import * as
|
|
3
|
-
import {
|
|
4
|
-
import { cn as V } from "@oneplatformdev/utils";
|
|
1
|
+
import { jsxs as f, Fragment as C, jsx as t } from "react/jsx-runtime";
|
|
2
|
+
import * as R from "react";
|
|
3
|
+
import { cn as j } from "@oneplatformdev/utils";
|
|
5
4
|
import { buttonIconVariants as w } from "./buttonIconVariants.js";
|
|
6
5
|
import { Slot as z } from "@radix-ui/react-slot";
|
|
7
6
|
import { ButtonCounterBadge as F } from "../Button/ButtonCounterBadge.js";
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
|
|
11
|
-
|
|
7
|
+
import { renderInnerIcon as L } from "../Button/Button.utils.js";
|
|
8
|
+
import { LoadedIcon as P } from "../LoadedIcon/LoadedIcon.js";
|
|
9
|
+
import { Tooltip as S } from "../Tooltip/Tooltip.js";
|
|
10
|
+
const T = R.forwardRef(
|
|
11
|
+
(g, h) => {
|
|
12
12
|
const {
|
|
13
|
-
asChild:
|
|
14
|
-
children:
|
|
13
|
+
asChild: i,
|
|
14
|
+
children: a,
|
|
15
15
|
icon: b,
|
|
16
|
-
disabled:
|
|
17
|
-
loading:
|
|
16
|
+
disabled: n = !1,
|
|
17
|
+
loading: r = !1,
|
|
18
18
|
message: y,
|
|
19
|
-
title:
|
|
20
|
-
tooltipProps:
|
|
21
|
-
className:
|
|
22
|
-
variant:
|
|
19
|
+
title: I = "",
|
|
20
|
+
tooltipProps: c = {},
|
|
21
|
+
className: x,
|
|
22
|
+
variant: m,
|
|
23
23
|
color: p,
|
|
24
|
-
size:
|
|
25
|
-
rounded:
|
|
24
|
+
size: e,
|
|
25
|
+
rounded: l,
|
|
26
26
|
screenReader: o,
|
|
27
|
-
counter:
|
|
28
|
-
...
|
|
29
|
-
} =
|
|
30
|
-
/* @__PURE__ */
|
|
31
|
-
|
|
32
|
-
/* @__PURE__ */
|
|
27
|
+
counter: B,
|
|
28
|
+
...N
|
|
29
|
+
} = g, v = i ? z : "button", s = y || I, d = i ? a : /* @__PURE__ */ f(C, { children: [
|
|
30
|
+
/* @__PURE__ */ f(P, { loading: r, size: e, children: [
|
|
31
|
+
L(b) ?? a,
|
|
32
|
+
/* @__PURE__ */ t(
|
|
33
33
|
F,
|
|
34
34
|
{
|
|
35
|
-
counter:
|
|
36
|
-
variant:
|
|
35
|
+
counter: B,
|
|
36
|
+
variant: m,
|
|
37
37
|
color: p,
|
|
38
|
-
size:
|
|
39
|
-
disabled:
|
|
40
|
-
rounded:
|
|
38
|
+
size: e,
|
|
39
|
+
disabled: n,
|
|
40
|
+
rounded: l
|
|
41
41
|
}
|
|
42
42
|
)
|
|
43
43
|
] }),
|
|
44
|
-
!!o && /* @__PURE__ */
|
|
44
|
+
!!o && /* @__PURE__ */ t("span", { className: "sr-only", children: typeof o == "string" ? o : o.text })
|
|
45
45
|
] });
|
|
46
46
|
if (!d) return null;
|
|
47
|
-
const
|
|
48
|
-
|
|
47
|
+
const u = /* @__PURE__ */ t(
|
|
48
|
+
v,
|
|
49
49
|
{
|
|
50
50
|
type: "button",
|
|
51
51
|
ref: h,
|
|
52
|
-
disabled:
|
|
53
|
-
className:
|
|
52
|
+
disabled: n,
|
|
53
|
+
className: j(
|
|
54
54
|
"group group/button group/button-icon",
|
|
55
55
|
w({
|
|
56
|
-
variant:
|
|
57
|
-
size:
|
|
56
|
+
variant: m,
|
|
57
|
+
size: e,
|
|
58
58
|
color: p,
|
|
59
|
-
rounded:
|
|
60
|
-
className:
|
|
59
|
+
rounded: l,
|
|
60
|
+
className: x
|
|
61
61
|
}),
|
|
62
|
-
|
|
62
|
+
r && "pointer-events-none opacity-80"
|
|
63
63
|
),
|
|
64
|
-
...
|
|
64
|
+
...N,
|
|
65
65
|
children: d
|
|
66
66
|
}
|
|
67
67
|
);
|
|
68
|
-
return
|
|
69
|
-
|
|
68
|
+
return s ? /* @__PURE__ */ t(
|
|
69
|
+
S,
|
|
70
70
|
{
|
|
71
|
-
...
|
|
72
|
-
open:
|
|
73
|
-
message:
|
|
74
|
-
children:
|
|
71
|
+
...c || {},
|
|
72
|
+
open: c.open ?? (n || r || !s) ? !1 : void 0,
|
|
73
|
+
message: s,
|
|
74
|
+
children: u
|
|
75
75
|
}
|
|
76
|
-
) :
|
|
76
|
+
) : u;
|
|
77
77
|
}
|
|
78
78
|
);
|
|
79
79
|
T.displayName = "Button";
|