@fuf-stack/pixels 1.3.7 → 1.4.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.
Files changed (77) hide show
  1. package/dist/Accordion/index.cjs +2 -2
  2. package/dist/Accordion/index.js +1 -1
  3. package/dist/Alert/index.cjs +2 -2
  4. package/dist/Alert/index.d.cts +2 -2
  5. package/dist/Alert/index.d.ts +2 -2
  6. package/dist/Alert/index.js +1 -1
  7. package/dist/{Alert-Bozl_RiO.d.cts → Alert-Dc0RSQaB.d.cts} +1 -1
  8. package/dist/{Alert-Bozl_RiO.d.ts → Alert-Dc0RSQaB.d.ts} +1 -1
  9. package/dist/Button/index.cjs +2 -2
  10. package/dist/Button/index.js +1 -1
  11. package/dist/Card/index.cjs +2 -2
  12. package/dist/Card/index.js +1 -1
  13. package/dist/Json/index.cjs +3 -3
  14. package/dist/Json/index.js +2 -2
  15. package/dist/Menu/index.cjs +2 -2
  16. package/dist/Menu/index.js +1 -1
  17. package/dist/Modal/index.cjs +2 -2
  18. package/dist/Modal/index.js +1 -1
  19. package/dist/Popover/index.cjs +2 -2
  20. package/dist/Popover/index.js +1 -1
  21. package/dist/Table/index.cjs +2 -2
  22. package/dist/Table/index.js +1 -1
  23. package/dist/Toast/index.cjs +2 -2
  24. package/dist/Toast/index.js +1 -1
  25. package/dist/Tooltip/index.cjs +2 -2
  26. package/dist/Tooltip/index.js +1 -1
  27. package/dist/{chunk-LAQNNPIV.js → chunk-3SXXVV5T.js} +3 -3
  28. package/dist/{chunk-LAQNNPIV.js.map → chunk-3SXXVV5T.js.map} +1 -1
  29. package/dist/{chunk-W52ZP2AU.js → chunk-565TFIAK.js} +6 -6
  30. package/dist/chunk-565TFIAK.js.map +1 -0
  31. package/dist/{chunk-LX5LJN3I.cjs → chunk-56CIU4EG.cjs} +2 -2
  32. package/dist/{chunk-LX5LJN3I.cjs.map → chunk-56CIU4EG.cjs.map} +1 -1
  33. package/dist/{chunk-ZLXLW3EW.cjs → chunk-5ZT7C5IP.cjs} +2 -2
  34. package/dist/{chunk-ZLXLW3EW.cjs.map → chunk-5ZT7C5IP.cjs.map} +1 -1
  35. package/dist/{chunk-Z363QVXW.cjs → chunk-6PCFYEJH.cjs} +3 -3
  36. package/dist/{chunk-Z363QVXW.cjs.map → chunk-6PCFYEJH.cjs.map} +1 -1
  37. package/dist/{chunk-473MRDWX.js → chunk-73HT7W6F.js} +3 -3
  38. package/dist/{chunk-473MRDWX.js.map → chunk-73HT7W6F.js.map} +1 -1
  39. package/dist/{chunk-JQNZVQVJ.js → chunk-7IFOMPCK.js} +2 -2
  40. package/dist/{chunk-JQNZVQVJ.js.map → chunk-7IFOMPCK.js.map} +1 -1
  41. package/dist/{chunk-HPZBCSP3.cjs → chunk-B2PDISUU.cjs} +3 -3
  42. package/dist/{chunk-HPZBCSP3.cjs.map → chunk-B2PDISUU.cjs.map} +1 -1
  43. package/dist/{chunk-UMROOKDT.js → chunk-CUNIBDOS.js} +3 -3
  44. package/dist/{chunk-UMROOKDT.js.map → chunk-CUNIBDOS.js.map} +1 -1
  45. package/dist/{chunk-XIBET6QC.js → chunk-D6Z3F5C2.js} +3 -3
  46. package/dist/{chunk-XIBET6QC.js.map → chunk-D6Z3F5C2.js.map} +1 -1
  47. package/dist/{chunk-6CET2FLR.js → chunk-FPR33UFC.js} +4 -4
  48. package/dist/{chunk-6CET2FLR.js.map → chunk-FPR33UFC.js.map} +1 -1
  49. package/dist/{chunk-XAGW2N5O.js → chunk-IZM2I62C.js} +13 -13
  50. package/dist/{chunk-XAGW2N5O.js.map → chunk-IZM2I62C.js.map} +1 -1
  51. package/dist/{chunk-UECUQP2B.cjs → chunk-K25U4BJO.cjs} +6 -6
  52. package/dist/chunk-K25U4BJO.cjs.map +1 -0
  53. package/dist/{chunk-7MCSF7YR.js → chunk-KGNCVUGN.js} +3 -3
  54. package/dist/{chunk-7MCSF7YR.js.map → chunk-KGNCVUGN.js.map} +1 -1
  55. package/dist/{chunk-BGGRVPBR.js → chunk-MF5KUM5I.js} +3 -3
  56. package/dist/{chunk-BGGRVPBR.js.map → chunk-MF5KUM5I.js.map} +1 -1
  57. package/dist/{chunk-PF4VI6L7.cjs → chunk-NSYHAJM2.cjs} +3 -3
  58. package/dist/{chunk-PF4VI6L7.cjs.map → chunk-NSYHAJM2.cjs.map} +1 -1
  59. package/dist/{chunk-YW4S32XV.cjs → chunk-RPULU7LC.cjs} +3 -3
  60. package/dist/{chunk-YW4S32XV.cjs.map → chunk-RPULU7LC.cjs.map} +1 -1
  61. package/dist/{chunk-EZT2D2DJ.js → chunk-SRDRLHAA.js} +2 -2
  62. package/dist/{chunk-EZT2D2DJ.js.map → chunk-SRDRLHAA.js.map} +1 -1
  63. package/dist/{chunk-JTVT63LG.cjs → chunk-VVAZOJQG.cjs} +14 -14
  64. package/dist/{chunk-JTVT63LG.cjs.map → chunk-VVAZOJQG.cjs.map} +1 -1
  65. package/dist/{chunk-TFRAQ6OQ.cjs → chunk-YUR6N2RB.cjs} +3 -3
  66. package/dist/{chunk-TFRAQ6OQ.cjs.map → chunk-YUR6N2RB.cjs.map} +1 -1
  67. package/dist/{chunk-3BZVACEC.cjs → chunk-ZFHOZRR2.cjs} +4 -4
  68. package/dist/{chunk-3BZVACEC.cjs.map → chunk-ZFHOZRR2.cjs.map} +1 -1
  69. package/dist/{chunk-J2LI4ONS.cjs → chunk-ZIAB3EXU.cjs} +3 -3
  70. package/dist/{chunk-J2LI4ONS.cjs.map → chunk-ZIAB3EXU.cjs.map} +1 -1
  71. package/dist/index.cjs +12 -12
  72. package/dist/index.d.cts +1 -1
  73. package/dist/index.d.ts +1 -1
  74. package/dist/index.js +11 -11
  75. package/package.json +11 -9
  76. package/dist/chunk-UECUQP2B.cjs.map +0 -1
  77. package/dist/chunk-W52ZP2AU.js.map +0 -1
@@ -15,9 +15,9 @@ var _pixelutils = require('@fuf-stack/pixel-utils');
15
15
  var _jsxruntime = require('react/jsx-runtime');
16
16
  var cardVariants = _pixelutils.tv.call(void 0, {
17
17
  slots: {
18
- base: "border-divider border",
18
+ base: "border border-divider",
19
19
  body: "",
20
- divider: "border-divider my-0",
20
+ divider: "my-0 border-divider",
21
21
  footer: "",
22
22
  header: "z-auto text-base font-semibold"
23
23
  }
@@ -83,4 +83,4 @@ var Card_default2 = Card_default;
83
83
 
84
84
 
85
85
  exports.cardVariants = cardVariants; exports.Card_default = Card_default; exports.Card_default2 = Card_default2;
86
- //# sourceMappingURL=chunk-Z363QVXW.cjs.map
86
+ //# sourceMappingURL=chunk-6PCFYEJH.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/pixels/pixels/packages/pixels/dist/chunk-Z363QVXW.cjs","../src/Card/Card.tsx","../src/Card/index.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACA;ACDA,8BAA2B;AAE3B;AACE;AACA;AACA;AACA;AAAc,oCACT;AACP,0CAAuC;AAEvC,oDAAyC;AAmDrB,+CAAA;AAhDb,IAAM,aAAA,EAAe,4BAAA;AAAG,EAC7B,KAAA,EAAO;AAAA,IACL,IAAA,EAAM,uBAAA;AAAA,IACN,IAAA,EAAM,EAAA;AAAA,IACN,OAAA,EAAS,qBAAA;AAAA,IACT,MAAA,EAAQ,EAAA;AAAA,IACR,MAAA,EAAQ;AAAA,EACV;AACF,CAAC,CAAA;AAqBD,IAAM,KAAA,EAAO,+BAAA;AAAA,EACX,CACE;AAAA,IACE,SAAA,EAAW,IAAA;AAAA,IACX,UAAA,EAAY,KAAA,CAAA;AAAA,IACZ,OAAA,EAAS,KAAA,CAAA;AAAA,IACT,OAAA,EAAS,KAAA,CAAA;AAAA,IACT,OAAA,EAAS,KAAA;AAAA,EACX,CAAA,EACA,GAAA,EAAA,GACG;AAEH,IAAA,MAAM,SAAA,EAAW,YAAA,CAAa,CAAA;AAC9B,IAAA,MAAqD,GAAA,EAAA,8CAAA;AAAA,MACnD,QAAA;AAAA,MACA,SAAA;AAAA,MACA;AAAA,IACF,CAAA,EAJQ,EAAA,OAAA,EAAS,iBA1DrB,EAAA,EA0DyD,EAAA,EAAf,WAAA,EAAA,yCAAA,EAAe,EAAf,CAA9B,SAAA,CAAA,CAAA;AAMR,IAAA,MAAM,QAAA,kBAAU,6BAAA,gBAAC,EAAA,EAAY,SAAA,EAAW,iBAAA,CAAkB,CAAA;AAE1D,IAAA,uBACE,8BAAA;AAAA,MAAC,UAAA;AAAA,MAAA;AAAA,QACC,GAAA;AAAA,QACA,SAAA,EAAS,IAAA;AAAA,QACT,UAAA;AAAA,QACA,aAAA,EAAa,OAAA,EAAS,CAAA,KAAA,EAAQ,MAAM,CAAA,EAAA;AAC7B,QAAA;AACA,QAAA;AAEN,QAAA;AACC,UAAA;AACE,4BAAA;AAAC,cAAA;AAAA,cAAA;AACuB,gBAAA;AAErB,gBAAA;AAAA,cAAA;AACH,YAAA;AACC,YAAA;AAED,UAAA;AACU,0BAAA;AAIZ,UAAA;AACG,YAAA;AACD,4BAAA;AAAC,cAAA;AAAA,cAAA;AACuB,gBAAA;AAErB,gBAAA;AAAA,cAAA;AACH,YAAA;AAEA,UAAA;AAAA,QAAA;AAAA,MAAA;AACN,IAAA;AAEJ,EAAA;AACF;AAEe;AD3BgC;AACA;AEvEhC;AFyEgC;AACA;AACA;AACA;AACA;AACA","file":"/home/runner/work/pixels/pixels/packages/pixels/dist/chunk-Z363QVXW.cjs","sourcesContent":[null,"import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { ReactNode } from 'react';\n\nimport { forwardRef } from 'react';\n\nimport {\n Card as HeroCard,\n CardBody as HeroCardBody,\n CardFooter as HeroCardFooter,\n CardHeader as HeroCardHeader,\n} from '@heroui/card';\nimport { Divider as HeroDivider } from '@heroui/divider';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\n// card styling variants\nexport const cardVariants = tv({\n slots: {\n base: 'border-divider border',\n body: '',\n divider: 'border-divider my-0',\n footer: '',\n header: 'z-auto text-base font-semibold',\n },\n});\n\ntype VariantProps = TVProps<typeof cardVariants>;\ntype ClassName = TVClassName<typeof cardVariants>;\n\nexport interface CardProps extends VariantProps {\n /** card body content */\n children?: ReactNode;\n /** CSS class name */\n className?: ClassName;\n /** footer content */\n footer?: ReactNode;\n /** header content */\n header?: ReactNode;\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n}\n\n/**\n * Card component based on [HeroUI Card](https://www.heroui.com//docs/components/card)\n */\nconst Card = forwardRef<HTMLDivElement, CardProps>(\n (\n {\n children = null,\n className = undefined,\n footer = undefined,\n header = undefined,\n testId = undefined,\n },\n ref,\n ) => {\n // classNames from slots\n const variants = cardVariants();\n const { divider: dividerClassName, ...classNames } = variantsToClassNames(\n variants,\n className,\n 'base',\n );\n\n const divider = <HeroDivider className={dividerClassName} />;\n\n return (\n <HeroCard\n ref={ref}\n fullWidth\n classNames={classNames}\n data-testid={testId ? `card_${testId}` : null}\n radius=\"sm\"\n shadow=\"none\"\n >\n {header ? (\n <>\n <HeroCardHeader\n data-testid={testId ? `card_header_${testId}` : null}\n >\n {header}\n </HeroCardHeader>\n {divider}\n </>\n ) : null}\n <HeroCardBody data-testid={testId ? `card_body_${testId}` : null}>\n {children}\n </HeroCardBody>\n {footer ? (\n <>\n {divider}\n <HeroCardFooter\n data-testid={testId ? `card_footer_${testId}` : null}\n >\n {footer}\n </HeroCardFooter>\n </>\n ) : null}\n </HeroCard>\n );\n },\n);\n\nexport default Card;\n","import Card, { cardVariants } from './Card';\n\nexport type { CardProps } from './Card';\n\nexport { Card, cardVariants };\n\nexport default Card;\n"]}
1
+ {"version":3,"sources":["/home/runner/work/pixels/pixels/packages/pixels/dist/chunk-6PCFYEJH.cjs","../src/Card/Card.tsx","../src/Card/index.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACA;ACDA,8BAA2B;AAE3B;AACE;AACA;AACA;AACA;AAAc,oCACT;AACP,0CAAuC;AAEvC,oDAAyC;AAmDrB,+CAAA;AAhDb,IAAM,aAAA,EAAe,4BAAA;AAAG,EAC7B,KAAA,EAAO;AAAA,IACL,IAAA,EAAM,uBAAA;AAAA,IACN,IAAA,EAAM,EAAA;AAAA,IACN,OAAA,EAAS,qBAAA;AAAA,IACT,MAAA,EAAQ,EAAA;AAAA,IACR,MAAA,EAAQ;AAAA,EACV;AACF,CAAC,CAAA;AAqBD,IAAM,KAAA,EAAO,+BAAA;AAAA,EACX,CACE;AAAA,IACE,SAAA,EAAW,IAAA;AAAA,IACX,UAAA,EAAY,KAAA,CAAA;AAAA,IACZ,OAAA,EAAS,KAAA,CAAA;AAAA,IACT,OAAA,EAAS,KAAA,CAAA;AAAA,IACT,OAAA,EAAS,KAAA;AAAA,EACX,CAAA,EACA,GAAA,EAAA,GACG;AAEH,IAAA,MAAM,SAAA,EAAW,YAAA,CAAa,CAAA;AAC9B,IAAA,MAAqD,GAAA,EAAA,8CAAA;AAAA,MACnD,QAAA;AAAA,MACA,SAAA;AAAA,MACA;AAAA,IACF,CAAA,EAJQ,EAAA,OAAA,EAAS,iBA1DrB,EAAA,EA0DyD,EAAA,EAAf,WAAA,EAAA,yCAAA,EAAe,EAAf,CAA9B,SAAA,CAAA,CAAA;AAMR,IAAA,MAAM,QAAA,kBAAU,6BAAA,gBAAC,EAAA,EAAY,SAAA,EAAW,iBAAA,CAAkB,CAAA;AAE1D,IAAA,uBACE,8BAAA;AAAA,MAAC,UAAA;AAAA,MAAA;AAAA,QACC,GAAA;AAAA,QACA,SAAA,EAAS,IAAA;AAAA,QACT,UAAA;AAAA,QACA,aAAA,EAAa,OAAA,EAAS,CAAA,KAAA,EAAQ,MAAM,CAAA,EAAA;AAC7B,QAAA;AACA,QAAA;AAEN,QAAA;AACC,UAAA;AACE,4BAAA;AAAC,cAAA;AAAA,cAAA;AACuB,gBAAA;AAErB,gBAAA;AAAA,cAAA;AACH,YAAA;AACC,YAAA;AAED,UAAA;AACU,0BAAA;AAIZ,UAAA;AACG,YAAA;AACD,4BAAA;AAAC,cAAA;AAAA,cAAA;AACuB,gBAAA;AAErB,gBAAA;AAAA,cAAA;AACH,YAAA;AAEA,UAAA;AAAA,QAAA;AAAA,MAAA;AACN,IAAA;AAEJ,EAAA;AACF;AAEe;AD3BgC;AACA;AEvEhC;AFyEgC;AACA;AACA;AACA;AACA;AACA","file":"/home/runner/work/pixels/pixels/packages/pixels/dist/chunk-6PCFYEJH.cjs","sourcesContent":[null,"import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { ReactNode } from 'react';\n\nimport { forwardRef } from 'react';\n\nimport {\n Card as HeroCard,\n CardBody as HeroCardBody,\n CardFooter as HeroCardFooter,\n CardHeader as HeroCardHeader,\n} from '@heroui/card';\nimport { Divider as HeroDivider } from '@heroui/divider';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\n// card styling variants\nexport const cardVariants = tv({\n slots: {\n base: 'border border-divider',\n body: '',\n divider: 'my-0 border-divider',\n footer: '',\n header: 'z-auto text-base font-semibold',\n },\n});\n\ntype VariantProps = TVProps<typeof cardVariants>;\ntype ClassName = TVClassName<typeof cardVariants>;\n\nexport interface CardProps extends VariantProps {\n /** card body content */\n children?: ReactNode;\n /** CSS class name */\n className?: ClassName;\n /** footer content */\n footer?: ReactNode;\n /** header content */\n header?: ReactNode;\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n}\n\n/**\n * Card component based on [HeroUI Card](https://www.heroui.com//docs/components/card)\n */\nconst Card = forwardRef<HTMLDivElement, CardProps>(\n (\n {\n children = null,\n className = undefined,\n footer = undefined,\n header = undefined,\n testId = undefined,\n },\n ref,\n ) => {\n // classNames from slots\n const variants = cardVariants();\n const { divider: dividerClassName, ...classNames } = variantsToClassNames(\n variants,\n className,\n 'base',\n );\n\n const divider = <HeroDivider className={dividerClassName} />;\n\n return (\n <HeroCard\n ref={ref}\n fullWidth\n classNames={classNames}\n data-testid={testId ? `card_${testId}` : null}\n radius=\"sm\"\n shadow=\"none\"\n >\n {header ? (\n <>\n <HeroCardHeader\n data-testid={testId ? `card_header_${testId}` : null}\n >\n {header}\n </HeroCardHeader>\n {divider}\n </>\n ) : null}\n <HeroCardBody data-testid={testId ? `card_body_${testId}` : null}>\n {children}\n </HeroCardBody>\n {footer ? (\n <>\n {divider}\n <HeroCardFooter\n data-testid={testId ? `card_footer_${testId}` : null}\n >\n {footer}\n </HeroCardFooter>\n </>\n ) : null}\n </HeroCard>\n );\n },\n);\n\nexport default Card;\n","import Card, { cardVariants } from './Card';\n\nexport type { CardProps } from './Card';\n\nexport { Card, cardVariants };\n\nexport default Card;\n"]}
@@ -33,12 +33,12 @@ var accordionVariants = tv({
33
33
  },
34
34
  showDivider: {
35
35
  true: {
36
- wrapper: "divide-divider divide-y divide-solid"
36
+ wrapper: "divide-y divide-solid divide-divider"
37
37
  }
38
38
  },
39
39
  showBottomTopDivider: {
40
40
  true: {
41
- wrapper: "border-divider border-t border-b border-solid"
41
+ wrapper: "border-b border-t border-solid border-divider"
42
42
  }
43
43
  }
44
44
  }
@@ -101,4 +101,4 @@ export {
101
101
  Accordion_default,
102
102
  Accordion_default2
103
103
  };
104
- //# sourceMappingURL=chunk-473MRDWX.js.map
104
+ //# sourceMappingURL=chunk-73HT7W6F.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/Accordion/Accordion.tsx","../src/Accordion/index.ts"],"sourcesContent":["import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { DividerProps } from '@heroui/divider';\nimport type { ReactNode } from 'react';\n\nimport {\n Accordion as HeroAccordion,\n AccordionItem as HeroAccordionItem,\n} from '@heroui/accordion';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\n// accordion styling variants\n// see: https://www.heroui.com//docs/components/accordion#accordion-item-slots\nexport const accordionVariants = tv({\n slots: {\n base: '',\n content: 'px-4',\n heading: 'px-4',\n indicator: '',\n startContent: '',\n subtitle: '',\n title: '',\n titleWrapper: '',\n trigger: 'cursor-pointer',\n // outer accordion wrapper\n wrapper: 'px-0',\n },\n variants: {\n indicatorLeft: {\n true: {\n content: 'pl-7',\n indicator: '-rotate-180 data-[open=true]:-rotate-90',\n trigger: 'flex-row-reverse',\n },\n },\n showDivider: {\n true: {\n wrapper: 'divide-divider divide-y divide-solid',\n },\n },\n showBottomTopDivider: {\n true: {\n wrapper: 'border-divider border-t border-b border-solid',\n },\n },\n },\n});\n\nexport interface AccordionItemProps {\n /** Content of the accordion item */\n children: ReactNode;\n /** Disables the accordion item */\n disabled?: boolean;\n /** Accordion item title */\n title: ReactNode;\n /** Accordion item subtitle */\n subtitle?: ReactNode;\n}\n\ntype VariantProps = TVProps<typeof accordionVariants>;\ntype ClassName = TVClassName<typeof accordionVariants>;\n\nexport interface AccordionProps extends VariantProps {\n /** Props for AccordionItems, will render the accordion items programmatically */\n accordionItems: AccordionItemProps[];\n /** CSS class name */\n className?: ClassName;\n /** Array of keys for the AccordionItem(s) to be expanded by default */\n defaultSelectedKeys?: undefined | 'all' | Iterable<number | string>;\n /** Disables the Accordion */\n disabled?: boolean;\n /** Array of keys for the AccordionItems to disable */\n disabledKeys?: Iterable<number | string>;\n /** Force always one AccordionItem to be open. */\n disallowEmptySelection?: boolean;\n /** props for styling the Divider */\n dividerProps?: DividerProps;\n /** Hide the expanded/collapsed indicator icon */\n hideIndicator?: boolean;\n /** Callback function for when a Accordion Item is expanded or collapsed */\n onSelectionChange?: (keys: 'all' | Iterable<number | string>) => unknown;\n /** Selected keys (controlled) */\n selectedKeys?: undefined | 'all' | Iterable<number | string>;\n /** Set whether multiple or only a single AccordionItems can be expanded */\n selectionMode?: 'single' | 'multiple';\n /** Enable or disable the divider between each AccordionItem */\n showDivider?: boolean;\n /** Style variant of the Accordion */\n variant?: 'light' | 'shadow' | 'bordered' | 'splitted';\n}\n\n/**\n * Accordion component based on [HeroUI Accordion](https://www.heroui.com//docs/components/accordion)\n */\nconst Accordion = ({\n accordionItems,\n className: _className = undefined,\n defaultSelectedKeys = [],\n disabled = false,\n disabledKeys = [],\n disallowEmptySelection = false,\n dividerProps = {},\n indicatorLeft = false,\n onSelectionChange = undefined,\n selectedKeys = undefined,\n selectionMode = 'multiple',\n showDivider = true,\n variant = 'light',\n}: AccordionProps) => {\n // itemClasses from className slots\n const variants = accordionVariants({\n indicatorLeft,\n showDivider: showDivider && variant !== 'splitted',\n showBottomTopDivider: showDivider && variant === 'light',\n });\n const classNames = variantsToClassNames(variants, _className, 'wrapper');\n\n return (\n <HeroAccordion\n className={classNames.wrapper}\n defaultSelectedKeys={defaultSelectedKeys}\n disabledKeys={disabledKeys}\n disallowEmptySelection={disallowEmptySelection}\n dividerProps={dividerProps}\n isDisabled={disabled}\n itemClasses={classNames}\n onSelectionChange={onSelectionChange}\n selectedKeys={selectedKeys}\n selectionMode={selectionMode}\n showDivider={false}\n variant={variant}\n >\n {accordionItems.map((item, index) => {\n return (\n <HeroAccordionItem\n // eslint-disable-next-line react/no-array-index-key\n key={index}\n isDisabled={disabled || item?.disabled}\n {...item}\n />\n );\n })}\n </HeroAccordion>\n );\n};\n\nexport default Accordion;\n","import Accordion, { accordionVariants } from './Accordion';\n\nexport type { AccordionProps, AccordionItemProps } from './Accordion';\n\nexport { Accordion, accordionVariants };\n\nexport default Accordion;\n"],"mappings":";;;;;AAIA;AAAA,EACE,aAAa;AAAA,EACb,iBAAiB;AAAA,OACZ;AAEP,SAAS,IAAI,4BAA4B;AA6H/B;AAzHH,IAAM,oBAAoB,GAAG;AAAA,EAClC,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,IACT,SAAS;AAAA,IACT,WAAW;AAAA,IACX,cAAc;AAAA,IACd,UAAU;AAAA,IACV,OAAO;AAAA,IACP,cAAc;AAAA,IACd,SAAS;AAAA;AAAA,IAET,SAAS;AAAA,EACX;AAAA,EACA,UAAU;AAAA,IACR,eAAe;AAAA,MACb,MAAM;AAAA,QACJ,SAAS;AAAA,QACT,WAAW;AAAA,QACX,SAAS;AAAA,MACX;AAAA,IACF;AAAA,IACA,aAAa;AAAA,MACX,MAAM;AAAA,QACJ,SAAS;AAAA,MACX;AAAA,IACF;AAAA,IACA,sBAAsB;AAAA,MACpB,MAAM;AAAA,QACJ,SAAS;AAAA,MACX;AAAA,IACF;AAAA,EACF;AACF,CAAC;AAgDD,IAAM,YAAY,CAAC;AAAA,EACjB;AAAA,EACA,WAAW,aAAa;AAAA,EACxB,sBAAsB,CAAC;AAAA,EACvB,WAAW;AAAA,EACX,eAAe,CAAC;AAAA,EAChB,yBAAyB;AAAA,EACzB,eAAe,CAAC;AAAA,EAChB,gBAAgB;AAAA,EAChB,oBAAoB;AAAA,EACpB,eAAe;AAAA,EACf,gBAAgB;AAAA,EAChB,cAAc;AAAA,EACd,UAAU;AACZ,MAAsB;AAEpB,QAAM,WAAW,kBAAkB;AAAA,IACjC;AAAA,IACA,aAAa,eAAe,YAAY;AAAA,IACxC,sBAAsB,eAAe,YAAY;AAAA,EACnD,CAAC;AACD,QAAM,aAAa,qBAAqB,UAAU,YAAY,SAAS;AAEvE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,WAAW;AAAA,MACtB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,YAAY;AAAA,MACZ,aAAa;AAAA,MACb;AAAA,MACA;AAAA,MACA;AAAA,MACA,aAAa;AAAA,MACb;AAAA,MAEC,yBAAe,IAAI,CAAC,MAAM,UAAU;AACnC,eACE;AAAA,UAAC;AAAA;AAAA,YAGC,YAAY,aAAY,6BAAM;AAAA,aAC1B;AAAA,UAFC;AAAA,QAGP;AAAA,MAEJ,CAAC;AAAA;AAAA,EACH;AAEJ;AAEA,IAAO,oBAAQ;;;AC5If,IAAOA,qBAAQ;","names":["Accordion_default"]}
1
+ {"version":3,"sources":["../src/Accordion/Accordion.tsx","../src/Accordion/index.ts"],"sourcesContent":["import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { DividerProps } from '@heroui/divider';\nimport type { ReactNode } from 'react';\n\nimport {\n Accordion as HeroAccordion,\n AccordionItem as HeroAccordionItem,\n} from '@heroui/accordion';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\n// accordion styling variants\n// see: https://www.heroui.com//docs/components/accordion#accordion-item-slots\nexport const accordionVariants = tv({\n slots: {\n base: '',\n content: 'px-4',\n heading: 'px-4',\n indicator: '',\n startContent: '',\n subtitle: '',\n title: '',\n titleWrapper: '',\n trigger: 'cursor-pointer',\n // outer accordion wrapper\n wrapper: 'px-0',\n },\n variants: {\n indicatorLeft: {\n true: {\n content: 'pl-7',\n indicator: '-rotate-180 data-[open=true]:-rotate-90',\n trigger: 'flex-row-reverse',\n },\n },\n showDivider: {\n true: {\n wrapper: 'divide-y divide-solid divide-divider',\n },\n },\n showBottomTopDivider: {\n true: {\n wrapper: 'border-b border-t border-solid border-divider',\n },\n },\n },\n});\n\nexport interface AccordionItemProps {\n /** Content of the accordion item */\n children: ReactNode;\n /** Disables the accordion item */\n disabled?: boolean;\n /** Accordion item title */\n title: ReactNode;\n /** Accordion item subtitle */\n subtitle?: ReactNode;\n}\n\ntype VariantProps = TVProps<typeof accordionVariants>;\ntype ClassName = TVClassName<typeof accordionVariants>;\n\nexport interface AccordionProps extends VariantProps {\n /** Props for AccordionItems, will render the accordion items programmatically */\n accordionItems: AccordionItemProps[];\n /** CSS class name */\n className?: ClassName;\n /** Array of keys for the AccordionItem(s) to be expanded by default */\n defaultSelectedKeys?: undefined | 'all' | Iterable<number | string>;\n /** Disables the Accordion */\n disabled?: boolean;\n /** Array of keys for the AccordionItems to disable */\n disabledKeys?: Iterable<number | string>;\n /** Force always one AccordionItem to be open. */\n disallowEmptySelection?: boolean;\n /** props for styling the Divider */\n dividerProps?: DividerProps;\n /** Hide the expanded/collapsed indicator icon */\n hideIndicator?: boolean;\n /** Callback function for when a Accordion Item is expanded or collapsed */\n onSelectionChange?: (keys: 'all' | Iterable<number | string>) => unknown;\n /** Selected keys (controlled) */\n selectedKeys?: undefined | 'all' | Iterable<number | string>;\n /** Set whether multiple or only a single AccordionItems can be expanded */\n selectionMode?: 'single' | 'multiple';\n /** Enable or disable the divider between each AccordionItem */\n showDivider?: boolean;\n /** Style variant of the Accordion */\n variant?: 'light' | 'shadow' | 'bordered' | 'splitted';\n}\n\n/**\n * Accordion component based on [HeroUI Accordion](https://www.heroui.com//docs/components/accordion)\n */\nconst Accordion = ({\n accordionItems,\n className: _className = undefined,\n defaultSelectedKeys = [],\n disabled = false,\n disabledKeys = [],\n disallowEmptySelection = false,\n dividerProps = {},\n indicatorLeft = false,\n onSelectionChange = undefined,\n selectedKeys = undefined,\n selectionMode = 'multiple',\n showDivider = true,\n variant = 'light',\n}: AccordionProps) => {\n // itemClasses from className slots\n const variants = accordionVariants({\n indicatorLeft,\n showDivider: showDivider && variant !== 'splitted',\n showBottomTopDivider: showDivider && variant === 'light',\n });\n const classNames = variantsToClassNames(variants, _className, 'wrapper');\n\n return (\n <HeroAccordion\n className={classNames.wrapper}\n defaultSelectedKeys={defaultSelectedKeys}\n disabledKeys={disabledKeys}\n disallowEmptySelection={disallowEmptySelection}\n dividerProps={dividerProps}\n isDisabled={disabled}\n itemClasses={classNames}\n onSelectionChange={onSelectionChange}\n selectedKeys={selectedKeys}\n selectionMode={selectionMode}\n showDivider={false}\n variant={variant}\n >\n {accordionItems.map((item, index) => {\n return (\n <HeroAccordionItem\n // eslint-disable-next-line react/no-array-index-key\n key={index}\n isDisabled={disabled || item?.disabled}\n {...item}\n />\n );\n })}\n </HeroAccordion>\n );\n};\n\nexport default Accordion;\n","import Accordion, { accordionVariants } from './Accordion';\n\nexport type { AccordionProps, AccordionItemProps } from './Accordion';\n\nexport { Accordion, accordionVariants };\n\nexport default Accordion;\n"],"mappings":";;;;;AAIA;AAAA,EACE,aAAa;AAAA,EACb,iBAAiB;AAAA,OACZ;AAEP,SAAS,IAAI,4BAA4B;AA6H/B;AAzHH,IAAM,oBAAoB,GAAG;AAAA,EAClC,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,IACT,SAAS;AAAA,IACT,WAAW;AAAA,IACX,cAAc;AAAA,IACd,UAAU;AAAA,IACV,OAAO;AAAA,IACP,cAAc;AAAA,IACd,SAAS;AAAA;AAAA,IAET,SAAS;AAAA,EACX;AAAA,EACA,UAAU;AAAA,IACR,eAAe;AAAA,MACb,MAAM;AAAA,QACJ,SAAS;AAAA,QACT,WAAW;AAAA,QACX,SAAS;AAAA,MACX;AAAA,IACF;AAAA,IACA,aAAa;AAAA,MACX,MAAM;AAAA,QACJ,SAAS;AAAA,MACX;AAAA,IACF;AAAA,IACA,sBAAsB;AAAA,MACpB,MAAM;AAAA,QACJ,SAAS;AAAA,MACX;AAAA,IACF;AAAA,EACF;AACF,CAAC;AAgDD,IAAM,YAAY,CAAC;AAAA,EACjB;AAAA,EACA,WAAW,aAAa;AAAA,EACxB,sBAAsB,CAAC;AAAA,EACvB,WAAW;AAAA,EACX,eAAe,CAAC;AAAA,EAChB,yBAAyB;AAAA,EACzB,eAAe,CAAC;AAAA,EAChB,gBAAgB;AAAA,EAChB,oBAAoB;AAAA,EACpB,eAAe;AAAA,EACf,gBAAgB;AAAA,EAChB,cAAc;AAAA,EACd,UAAU;AACZ,MAAsB;AAEpB,QAAM,WAAW,kBAAkB;AAAA,IACjC;AAAA,IACA,aAAa,eAAe,YAAY;AAAA,IACxC,sBAAsB,eAAe,YAAY;AAAA,EACnD,CAAC;AACD,QAAM,aAAa,qBAAqB,UAAU,YAAY,SAAS;AAEvE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,WAAW;AAAA,MACtB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,YAAY;AAAA,MACZ,aAAa;AAAA,MACb;AAAA,MACA;AAAA,MACA;AAAA,MACA,aAAa;AAAA,MACb;AAAA,MAEC,yBAAe,IAAI,CAAC,MAAM,UAAU;AACnC,eACE;AAAA,UAAC;AAAA;AAAA,YAGC,YAAY,aAAY,6BAAM;AAAA,aAC1B;AAAA,UAFC;AAAA,QAGP;AAAA,MAEJ,CAAC;AAAA;AAAA,EACH;AAEJ;AAEA,IAAO,oBAAQ;;;AC5If,IAAOA,qBAAQ;","names":["Accordion_default"]}
@@ -50,7 +50,7 @@ var toastVariants = tv({
50
50
  color: "info",
51
51
  variant: "flat",
52
52
  className: {
53
- base: "bg-info-50 text-info-600 dark:bg-info-50/50",
53
+ base: "dark:bg-info-50/50 bg-info-50 text-info-600",
54
54
  title: "text-info-600",
55
55
  description: "text-info-500",
56
56
  icon: "text-info-600",
@@ -171,4 +171,4 @@ export {
171
171
  Toast,
172
172
  Toast_default
173
173
  };
174
- //# sourceMappingURL=chunk-JQNZVQVJ.js.map
174
+ //# sourceMappingURL=chunk-7IFOMPCK.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/Toast/index.ts","../src/Toast/addToast.tsx","../src/Toast/ToastProvider.tsx"],"sourcesContent":["import { Toast } from '@heroui/toast';\n\nimport { addToast, toastVariants } from './addToast';\nimport ToastProvider from './ToastProvider';\n\nexport type { ToastProps, AddToastVariantProps } from './addToast';\nexport type { ToastProviderProps } from './ToastProvider';\n\nexport { addToast, Toast, ToastProvider, toastVariants };\n\nexport default addToast;\n","import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { ToastProps as HeroToastProps } from '@heroui/toast';\nimport type { ReactNode } from 'react';\n\nimport { toast as heroToastVariants } from '@heroui/theme';\nimport { addToast as heroAddToast } from '@heroui/toast';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nexport const toastVariants = tv({\n slots: {\n base: '',\n title: '',\n description: '',\n icon: '',\n loadingComponent: '',\n content: '',\n motionDiv: '',\n progressTrack: '',\n progressIndicator: '',\n closeButton: '',\n closeIcon: '',\n },\n variants: {\n // see: https://github.com/heroui-inc/heroui/blob/canary/packages/core/theme/src/components/toast.ts\n color: {\n info: {},\n ...heroToastVariants.variants.color,\n },\n variant: {\n ...heroToastVariants.variants.variant,\n },\n },\n compoundVariants: [\n ...heroToastVariants.compoundVariants,\n {\n variant: 'solid',\n color: 'info',\n className: {\n base: 'bg-info text-info-foreground',\n title: 'text-info-foreground',\n description: 'text-info-foreground',\n icon: 'text-info-foreground',\n closeIcon: 'border-info-400 bg-info-100',\n closeButton: 'text-info-400 hover:text-info-600',\n progressIndicator: 'bg-info-400',\n },\n },\n {\n color: 'info',\n variant: 'flat',\n className: {\n base: 'bg-info-50 text-info-600 dark:bg-info-50/50',\n title: 'text-info-600',\n description: 'text-info-500',\n icon: 'text-info-600',\n closeIcon: 'border-info-400 bg-info-100',\n closeButton: 'text-info-400 hover:text-info-600',\n progressIndicator: 'bg-info-400',\n },\n },\n\n {\n color: 'info',\n variant: 'bordered',\n className: {\n base: 'border-small border-info text-info-600',\n title: 'text-info-600',\n description: 'text-info-500',\n icon: 'text-info-600',\n closeIcon: 'border-info-400 bg-info-100',\n closeButton: 'text-info-400 hover:text-info-600',\n progressIndicator: 'bg-info-400',\n },\n },\n ],\n});\n\nexport type AddToastVariantProps = TVProps<typeof toastVariants>;\ntype ClassName = TVClassName<typeof toastVariants>;\n\nexport interface ToastProps extends AddToastVariantProps {\n /** CSS class name */\n className?: ClassName;\n /** Icon displayed at the end of the Alert */\n closeIcon?: ReactNode;\n /** Color of the alert */\n color?: AddToastVariantProps['color'];\n /** Content displayed inside the Alert */\n description?: ReactNode;\n /** Content displayed at the end of the Alert */\n endContent?: ReactNode;\n /** Icon displayed at the start of the Alert */\n icon?: ReactNode;\n /** Component displayed until promise is resolved */\n loadingComponent?: ReactNode;\n /** Callback function called when the toast is closed */\n onClose?: () => void;\n /** Promise based on which the notification will be styled */\n promise?: Promise<void>;\n /** Whether the toast should show a progress bar */\n shouldShowTimeoutProgress?: boolean;\n /** Whether the toast should show a close button */\n showCloseButton?: boolean;\n /** Whether the toast should show an icon */\n showIcon?: boolean;\n /** Time the toast is displayed */\n timeout?: number;\n /** Content displayed at the top of the toast */\n title?: ReactNode;\n /** Variant of the toast */\n variant?: AddToastVariantProps['variant'];\n}\n\n/**\n * addToast function based on [HeroUI Toast](https://www.heroui.com//docs/components/toast)\n */\nexport const addToast = ({\n className = undefined,\n closeIcon = undefined,\n color = 'default',\n description = undefined,\n endContent = undefined,\n icon = undefined,\n loadingComponent = undefined,\n onClose = undefined,\n promise = undefined,\n shouldShowTimeoutProgress = false,\n showCloseButton = true,\n showIcon = true,\n timeout = 5000,\n title = undefined,\n variant = 'bordered',\n}: ToastProps) => {\n const variants = toastVariants({\n color,\n variant,\n });\n const isHeroUIColor = Object.keys(heroToastVariants.variants.color).includes(\n color,\n );\n const classNames = variantsToClassNames(variants, className, 'base');\n\n heroAddToast({\n classNames,\n closeIcon,\n color: isHeroUIColor ? (color as HeroToastProps['color']) : undefined,\n // TODO: 'data-testid': testId,\n description,\n endContent,\n hideCloseButton: !showCloseButton,\n hideIcon: !showIcon,\n icon,\n loadingComponent,\n onClose,\n promise,\n shouldShowTimeoutProgress,\n timeout,\n title,\n variant,\n });\n};\n\nexport default addToast;\n","import type { ToastProps as HeroToastProps } from '@heroui/toast';\nimport type { ToastProps } from './addToast';\n\nimport { toast as heroToastVariants } from '@heroui/theme';\nimport { ToastProvider as HeroToastProvider } from '@heroui/toast';\n\nimport { variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nimport { toastVariants } from './addToast';\n\nexport type ToastProviderToastProps = Omit<\n ToastProps,\n 'description' | 'endContent' | 'title'\n>;\n\nexport interface ToastProviderProps {\n disableAnimation?: boolean;\n maxVisibleToasts?: number;\n placement?:\n | 'bottom-right'\n | 'bottom-left'\n | 'bottom-center'\n | 'top-right'\n | 'top-left'\n | 'top-center';\n\n toastProps?: ToastProviderToastProps;\n toastOffset?: number;\n regionProps?: { classNames?: Record<'base', string> };\n}\n\n/**\n * ToastProvider component based on [HeroUI Toast](https://www.heroui.com//docs/components/toast)\n */\nconst ToastProvider = ({\n disableAnimation = false,\n maxVisibleToasts = 5,\n placement = 'top-center',\n toastProps = undefined,\n toastOffset = 26,\n regionProps = undefined,\n}: ToastProviderProps) => {\n const variants = toastVariants({\n color: toastProps?.color,\n variant: toastProps?.variant,\n });\n const isHeroUIColor = Object.keys(heroToastVariants.variants.color).includes(\n toastProps?.color || '',\n );\n const classNames = variantsToClassNames(\n variants,\n toastProps?.className,\n 'base',\n );\n return (\n <HeroToastProvider\n disableAnimation={disableAnimation}\n maxVisibleToasts={maxVisibleToasts}\n placement={placement}\n regionProps={regionProps}\n toastOffset={toastOffset}\n toastProps={{\n ...toastProps,\n classNames,\n color: isHeroUIColor\n ? (toastProps?.color as HeroToastProps['color'])\n : undefined,\n }}\n />\n );\n};\n\nexport default ToastProvider;\n"],"mappings":"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","names":["heroToastVariants","variantsToClassNames","heroToastVariants","variantsToClassNames"]}
1
+ {"version":3,"sources":["../src/Toast/index.ts","../src/Toast/addToast.tsx","../src/Toast/ToastProvider.tsx"],"sourcesContent":["import { Toast } from '@heroui/toast';\n\nimport { addToast, toastVariants } from './addToast';\nimport ToastProvider from './ToastProvider';\n\nexport type { ToastProps, AddToastVariantProps } from './addToast';\nexport type { ToastProviderProps } from './ToastProvider';\n\nexport { addToast, Toast, ToastProvider, toastVariants };\n\nexport default addToast;\n","import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { ToastProps as HeroToastProps } from '@heroui/toast';\nimport type { ReactNode } from 'react';\n\nimport { toast as heroToastVariants } from '@heroui/theme';\nimport { addToast as heroAddToast } from '@heroui/toast';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nexport const toastVariants = tv({\n slots: {\n base: '',\n title: '',\n description: '',\n icon: '',\n loadingComponent: '',\n content: '',\n motionDiv: '',\n progressTrack: '',\n progressIndicator: '',\n closeButton: '',\n closeIcon: '',\n },\n variants: {\n // see: https://github.com/heroui-inc/heroui/blob/canary/packages/core/theme/src/components/toast.ts\n color: {\n info: {},\n ...heroToastVariants.variants.color,\n },\n variant: {\n ...heroToastVariants.variants.variant,\n },\n },\n compoundVariants: [\n ...heroToastVariants.compoundVariants,\n {\n variant: 'solid',\n color: 'info',\n className: {\n base: 'bg-info text-info-foreground',\n title: 'text-info-foreground',\n description: 'text-info-foreground',\n icon: 'text-info-foreground',\n closeIcon: 'border-info-400 bg-info-100',\n closeButton: 'text-info-400 hover:text-info-600',\n progressIndicator: 'bg-info-400',\n },\n },\n {\n color: 'info',\n variant: 'flat',\n className: {\n base: 'dark:bg-info-50/50 bg-info-50 text-info-600',\n title: 'text-info-600',\n description: 'text-info-500',\n icon: 'text-info-600',\n closeIcon: 'border-info-400 bg-info-100',\n closeButton: 'text-info-400 hover:text-info-600',\n progressIndicator: 'bg-info-400',\n },\n },\n\n {\n color: 'info',\n variant: 'bordered',\n className: {\n base: 'border-small border-info text-info-600',\n title: 'text-info-600',\n description: 'text-info-500',\n icon: 'text-info-600',\n closeIcon: 'border-info-400 bg-info-100',\n closeButton: 'text-info-400 hover:text-info-600',\n progressIndicator: 'bg-info-400',\n },\n },\n ],\n});\n\nexport type AddToastVariantProps = TVProps<typeof toastVariants>;\ntype ClassName = TVClassName<typeof toastVariants>;\n\nexport interface ToastProps extends AddToastVariantProps {\n /** CSS class name */\n className?: ClassName;\n /** Icon displayed at the end of the Alert */\n closeIcon?: ReactNode;\n /** Color of the alert */\n color?: AddToastVariantProps['color'];\n /** Content displayed inside the Alert */\n description?: ReactNode;\n /** Content displayed at the end of the Alert */\n endContent?: ReactNode;\n /** Icon displayed at the start of the Alert */\n icon?: ReactNode;\n /** Component displayed until promise is resolved */\n loadingComponent?: ReactNode;\n /** Callback function called when the toast is closed */\n onClose?: () => void;\n /** Promise based on which the notification will be styled */\n promise?: Promise<void>;\n /** Whether the toast should show a progress bar */\n shouldShowTimeoutProgress?: boolean;\n /** Whether the toast should show a close button */\n showCloseButton?: boolean;\n /** Whether the toast should show an icon */\n showIcon?: boolean;\n /** Time the toast is displayed */\n timeout?: number;\n /** Content displayed at the top of the toast */\n title?: ReactNode;\n /** Variant of the toast */\n variant?: AddToastVariantProps['variant'];\n}\n\n/**\n * addToast function based on [HeroUI Toast](https://www.heroui.com//docs/components/toast)\n */\nexport const addToast = ({\n className = undefined,\n closeIcon = undefined,\n color = 'default',\n description = undefined,\n endContent = undefined,\n icon = undefined,\n loadingComponent = undefined,\n onClose = undefined,\n promise = undefined,\n shouldShowTimeoutProgress = false,\n showCloseButton = true,\n showIcon = true,\n timeout = 5000,\n title = undefined,\n variant = 'bordered',\n}: ToastProps) => {\n const variants = toastVariants({\n color,\n variant,\n });\n const isHeroUIColor = Object.keys(heroToastVariants.variants.color).includes(\n color,\n );\n const classNames = variantsToClassNames(variants, className, 'base');\n\n heroAddToast({\n classNames,\n closeIcon,\n color: isHeroUIColor ? (color as HeroToastProps['color']) : undefined,\n // TODO: 'data-testid': testId,\n description,\n endContent,\n hideCloseButton: !showCloseButton,\n hideIcon: !showIcon,\n icon,\n loadingComponent,\n onClose,\n promise,\n shouldShowTimeoutProgress,\n timeout,\n title,\n variant,\n });\n};\n\nexport default addToast;\n","import type { ToastProps as HeroToastProps } from '@heroui/toast';\nimport type { ToastProps } from './addToast';\n\nimport { toast as heroToastVariants } from '@heroui/theme';\nimport { ToastProvider as HeroToastProvider } from '@heroui/toast';\n\nimport { variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nimport { toastVariants } from './addToast';\n\nexport type ToastProviderToastProps = Omit<\n ToastProps,\n 'description' | 'endContent' | 'title'\n>;\n\nexport interface ToastProviderProps {\n disableAnimation?: boolean;\n maxVisibleToasts?: number;\n placement?:\n | 'bottom-right'\n | 'bottom-left'\n | 'bottom-center'\n | 'top-right'\n | 'top-left'\n | 'top-center';\n\n toastProps?: ToastProviderToastProps;\n toastOffset?: number;\n regionProps?: { classNames?: Record<'base', string> };\n}\n\n/**\n * ToastProvider component based on [HeroUI Toast](https://www.heroui.com//docs/components/toast)\n */\nconst ToastProvider = ({\n disableAnimation = false,\n maxVisibleToasts = 5,\n placement = 'top-center',\n toastProps = undefined,\n toastOffset = 26,\n regionProps = undefined,\n}: ToastProviderProps) => {\n const variants = toastVariants({\n color: toastProps?.color,\n variant: toastProps?.variant,\n });\n const isHeroUIColor = Object.keys(heroToastVariants.variants.color).includes(\n toastProps?.color || '',\n );\n const classNames = variantsToClassNames(\n variants,\n toastProps?.className,\n 'base',\n );\n return (\n <HeroToastProvider\n disableAnimation={disableAnimation}\n maxVisibleToasts={maxVisibleToasts}\n placement={placement}\n regionProps={regionProps}\n toastOffset={toastOffset}\n toastProps={{\n ...toastProps,\n classNames,\n color: isHeroUIColor\n ? (toastProps?.color as HeroToastProps['color'])\n : undefined,\n }}\n />\n );\n};\n\nexport default ToastProvider;\n"],"mappings":"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","names":["heroToastVariants","variantsToClassNames","heroToastVariants","variantsToClassNames"]}
@@ -14,8 +14,8 @@ var modalVariants = _pixelutils.tv.call(void 0, {
14
14
  base: "",
15
15
  body: "py-4",
16
16
  closeButton: "",
17
- footer: "border-t-divider border-t",
18
- header: "border-b-divider border-b",
17
+ footer: "border-t border-t-divider",
18
+ header: "border-b border-b-divider",
19
19
  wrapper: ""
20
20
  },
21
21
  variants: {
@@ -74,4 +74,4 @@ var Modal_default2 = Modal_default;
74
74
 
75
75
 
76
76
  exports.modalVariants = modalVariants; exports.Modal_default = Modal_default; exports.Modal_default2 = Modal_default2;
77
- //# sourceMappingURL=chunk-HPZBCSP3.cjs.map
77
+ //# sourceMappingURL=chunk-B2PDISUU.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/pixels/pixels/packages/pixels/dist/chunk-HPZBCSP3.cjs","../src/Modal/Modal.tsx","../src/Modal/index.ts"],"names":[],"mappings":"AAAA;ACIA;AACE;AACA;AACA;AACA;AACA;AAAe,sCACV;AAEP,oDAAyC;AAoF7B,+CAAA;AAjFL,IAAM,cAAA,EAAgB,4BAAA;AAAG,EAC9B,KAAA,EAAO;AAAA,IACL,QAAA,EAAU,EAAA;AAAA,IACV,IAAA,EAAM,EAAA;AAAA,IACN,IAAA,EAAM,MAAA;AAAA,IACN,WAAA,EAAa,EAAA;AAAA,IACb,MAAA,EAAQ,2BAAA;AAAA,IACR,MAAA,EAAQ,2BAAA;AAAA,IACR,OAAA,EAAS;AAAA,EACX,CAAA;AAAA,EACA,QAAA,EAAU;AAAA,IACR,IAAA,EAAM;AAAA,MACJ,EAAA,EAAI,EAAE,IAAA,EAAM,WAAW,CAAA;AAAA,MACvB,EAAA,EAAI,EAAE,IAAA,EAAM,WAAW,CAAA;AAAA,MACvB,EAAA,EAAI,EAAE,IAAA,EAAM,WAAW,CAAA;AAAA,MACvB,EAAA,EAAI,EAAE,IAAA,EAAM,YAAY,CAAA;AAAA,MACxB,IAAA,EAAM,EAAE,IAAA,EAAM,uBAAuB;AAAA,IACvC;AAAA,EACF;AACF,CAAC,CAAA;AA+BD,IAAM,MAAA,EAAQ,CAAC;AAAA,EACb,SAAA,EAAW,IAAA;AAAA,EACX,UAAA,EAAY,KAAA,CAAA;AAAA,EACZ,iBAAA,EAAmB,KAAA;AAAA,EACnB,OAAA,EAAS,KAAA,CAAA;AAAA,EACT,OAAA,EAAS,KAAA,CAAA;AAAA,EACT,MAAA;AAAA,EACA,OAAA;AAAA,EACA,gBAAA,EAAkB,KAAA,CAAA;AAAA,EAClB,KAAA,EAAO,IAAA;AAAA,EACP,OAAA,EAAS,KAAA;AACX,CAAA,EAAA,GAAkB;AAEhB,EAAA,MAAM,SAAA,EAAW,aAAA,CAAc,EAAE,KAAK,CAAC,CAAA;AACvC,EAAA,MAAM,WAAA,EAAa,8CAAA,QAAqB,EAAU,SAAA,EAAW,MAAM,CAAA;AAEnE,EAAA,uBACE,6BAAA;AAAA,IAAC,YAAA;AAAA,IAAA;AAAA,MACC,QAAA,EAAS,QAAA;AAAA,MACT,UAAA;AAAA,MACA,aAAA,EAAa,MAAA;AAAA,MACb,gBAAA;AAAA,MACA,MAAA;AAAA,MACA,OAAA;AAAA,MACA,SAAA,EAAU,QAAA;AAAA,MACV,eAAA;AAAA,MACA,cAAA,EAAe,QAAA;AAAA,MAEf,QAAA,kBAAA,6BAAA,mBAAC,EAAA,EAAiB,aAAA,EAAa,OAAA,EAAS,CAAA,MAAA,EAAS,MAAM,CAAA,EAAA;AAI9C,QAAA;AAAuD,UAAA;AACf,0BAAA;AACe,UAAA;AAC1D,QAAA;AAGN,MAAA;AAAA,IAAA;AACF,EAAA;AAEJ;AAEe;ADzCiF;AACA;AE9DjF;AFgEiF;AACA;AACA;AACA;AACA;AACA","file":"/home/runner/work/pixels/pixels/packages/pixels/dist/chunk-HPZBCSP3.cjs","sourcesContent":[null,"import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { ModalProps as HeroModalProps } from '@heroui/modal';\nimport type { ReactNode } from 'react';\n\nimport {\n Modal as HeroModal,\n ModalBody as HeroModalBody,\n ModalContent as HeroModalContent,\n ModalFooter as HeroModalFooter,\n ModalHeader as HeroModalHeader,\n} from '@heroui/modal';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\n// modal variants\nexport const modalVariants = tv({\n slots: {\n backdrop: '',\n base: '',\n body: 'py-4',\n closeButton: '',\n footer: 'border-t-divider border-t',\n header: 'border-b-divider border-b',\n wrapper: '',\n },\n variants: {\n size: {\n sm: { base: 'max-w-sm' },\n md: { base: 'max-w-md' },\n lg: { base: 'max-w-lg' },\n xl: { base: 'max-w-5xl' },\n full: { base: 'h-[80dvh] max-w-full' },\n },\n },\n});\n\ntype VariantProps = TVProps<typeof modalVariants>;\ntype ClassName = TVClassName<typeof modalVariants>;\n\nexport interface ModalProps extends VariantProps {\n /** modal body content */\n children?: ReactNode;\n /** CSS class name */\n className?: ClassName;\n /** Disable animations completely */\n disableAnimation?: boolean;\n /** modal footer */\n footer?: ReactNode;\n /** modal header */\n header?: ReactNode;\n /** open state (controlled) */\n isOpen: boolean;\n /** close event handler */\n onClose: () => void;\n /** The container element in which the overlay portal will be placed */\n portalContainer?: HeroModalProps['portalContainer'];\n /** modal size */\n size?: VariantProps['size'];\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n}\n\n/**\n * Modal component based on [HeroUI Modal](https://www.heroui.com//docs/components/modal)\n */\nconst Modal = ({\n children = null,\n className = undefined,\n disableAnimation = false,\n footer = undefined,\n header = undefined,\n isOpen,\n onClose,\n portalContainer = undefined,\n size = 'md',\n testId = undefined,\n}: ModalProps) => {\n // classNames from slots\n const variants = modalVariants({ size });\n const classNames = variantsToClassNames(variants, className, 'base');\n\n return (\n <HeroModal\n backdrop=\"opaque\"\n classNames={classNames}\n data-testid={testId}\n disableAnimation={disableAnimation}\n isOpen={isOpen}\n onClose={onClose}\n placement=\"center\"\n portalContainer={portalContainer}\n scrollBehavior=\"inside\"\n >\n <HeroModalContent data-testid={testId ? `modal_${testId}` : 'modal'}>\n {() => {\n return (\n <>\n {header ? <HeroModalHeader>{header}</HeroModalHeader> : null}\n <HeroModalBody id=\"modal_body\">{children}</HeroModalBody>\n {footer ? <HeroModalFooter>{footer}</HeroModalFooter> : null}\n </>\n );\n }}\n </HeroModalContent>\n </HeroModal>\n );\n};\n\nexport default Modal;\n","import Modal, { modalVariants } from './Modal';\n\nexport type { ModalProps } from './Modal';\n\nexport { Modal, modalVariants };\n\nexport default Modal;\n"]}
1
+ {"version":3,"sources":["/home/runner/work/pixels/pixels/packages/pixels/dist/chunk-B2PDISUU.cjs","../src/Modal/Modal.tsx","../src/Modal/index.ts"],"names":[],"mappings":"AAAA;ACIA;AACE;AACA;AACA;AACA;AACA;AAAe,sCACV;AAEP,oDAAyC;AAoF7B,+CAAA;AAjFL,IAAM,cAAA,EAAgB,4BAAA;AAAG,EAC9B,KAAA,EAAO;AAAA,IACL,QAAA,EAAU,EAAA;AAAA,IACV,IAAA,EAAM,EAAA;AAAA,IACN,IAAA,EAAM,MAAA;AAAA,IACN,WAAA,EAAa,EAAA;AAAA,IACb,MAAA,EAAQ,2BAAA;AAAA,IACR,MAAA,EAAQ,2BAAA;AAAA,IACR,OAAA,EAAS;AAAA,EACX,CAAA;AAAA,EACA,QAAA,EAAU;AAAA,IACR,IAAA,EAAM;AAAA,MACJ,EAAA,EAAI,EAAE,IAAA,EAAM,WAAW,CAAA;AAAA,MACvB,EAAA,EAAI,EAAE,IAAA,EAAM,WAAW,CAAA;AAAA,MACvB,EAAA,EAAI,EAAE,IAAA,EAAM,WAAW,CAAA;AAAA,MACvB,EAAA,EAAI,EAAE,IAAA,EAAM,YAAY,CAAA;AAAA,MACxB,IAAA,EAAM,EAAE,IAAA,EAAM,uBAAuB;AAAA,IACvC;AAAA,EACF;AACF,CAAC,CAAA;AA+BD,IAAM,MAAA,EAAQ,CAAC;AAAA,EACb,SAAA,EAAW,IAAA;AAAA,EACX,UAAA,EAAY,KAAA,CAAA;AAAA,EACZ,iBAAA,EAAmB,KAAA;AAAA,EACnB,OAAA,EAAS,KAAA,CAAA;AAAA,EACT,OAAA,EAAS,KAAA,CAAA;AAAA,EACT,MAAA;AAAA,EACA,OAAA;AAAA,EACA,gBAAA,EAAkB,KAAA,CAAA;AAAA,EAClB,KAAA,EAAO,IAAA;AAAA,EACP,OAAA,EAAS,KAAA;AACX,CAAA,EAAA,GAAkB;AAEhB,EAAA,MAAM,SAAA,EAAW,aAAA,CAAc,EAAE,KAAK,CAAC,CAAA;AACvC,EAAA,MAAM,WAAA,EAAa,8CAAA,QAAqB,EAAU,SAAA,EAAW,MAAM,CAAA;AAEnE,EAAA,uBACE,6BAAA;AAAA,IAAC,YAAA;AAAA,IAAA;AAAA,MACC,QAAA,EAAS,QAAA;AAAA,MACT,UAAA;AAAA,MACA,aAAA,EAAa,MAAA;AAAA,MACb,gBAAA;AAAA,MACA,MAAA;AAAA,MACA,OAAA;AAAA,MACA,SAAA,EAAU,QAAA;AAAA,MACV,eAAA;AAAA,MACA,cAAA,EAAe,QAAA;AAAA,MAEf,QAAA,kBAAA,6BAAA,mBAAC,EAAA,EAAiB,aAAA,EAAa,OAAA,EAAS,CAAA,MAAA,EAAS,MAAM,CAAA,EAAA;AAI9C,QAAA;AAAuD,UAAA;AACf,0BAAA;AACe,UAAA;AAC1D,QAAA;AAGN,MAAA;AAAA,IAAA;AACF,EAAA;AAEJ;AAEe;ADzCiF;AACA;AE9DjF;AFgEiF;AACA;AACA;AACA;AACA;AACA","file":"/home/runner/work/pixels/pixels/packages/pixels/dist/chunk-B2PDISUU.cjs","sourcesContent":[null,"import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { ModalProps as HeroModalProps } from '@heroui/modal';\nimport type { ReactNode } from 'react';\n\nimport {\n Modal as HeroModal,\n ModalBody as HeroModalBody,\n ModalContent as HeroModalContent,\n ModalFooter as HeroModalFooter,\n ModalHeader as HeroModalHeader,\n} from '@heroui/modal';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\n// modal variants\nexport const modalVariants = tv({\n slots: {\n backdrop: '',\n base: '',\n body: 'py-4',\n closeButton: '',\n footer: 'border-t border-t-divider',\n header: 'border-b border-b-divider',\n wrapper: '',\n },\n variants: {\n size: {\n sm: { base: 'max-w-sm' },\n md: { base: 'max-w-md' },\n lg: { base: 'max-w-lg' },\n xl: { base: 'max-w-5xl' },\n full: { base: 'h-[80dvh] max-w-full' },\n },\n },\n});\n\ntype VariantProps = TVProps<typeof modalVariants>;\ntype ClassName = TVClassName<typeof modalVariants>;\n\nexport interface ModalProps extends VariantProps {\n /** modal body content */\n children?: ReactNode;\n /** CSS class name */\n className?: ClassName;\n /** Disable animations completely */\n disableAnimation?: boolean;\n /** modal footer */\n footer?: ReactNode;\n /** modal header */\n header?: ReactNode;\n /** open state (controlled) */\n isOpen: boolean;\n /** close event handler */\n onClose: () => void;\n /** The container element in which the overlay portal will be placed */\n portalContainer?: HeroModalProps['portalContainer'];\n /** modal size */\n size?: VariantProps['size'];\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n}\n\n/**\n * Modal component based on [HeroUI Modal](https://www.heroui.com//docs/components/modal)\n */\nconst Modal = ({\n children = null,\n className = undefined,\n disableAnimation = false,\n footer = undefined,\n header = undefined,\n isOpen,\n onClose,\n portalContainer = undefined,\n size = 'md',\n testId = undefined,\n}: ModalProps) => {\n // classNames from slots\n const variants = modalVariants({ size });\n const classNames = variantsToClassNames(variants, className, 'base');\n\n return (\n <HeroModal\n backdrop=\"opaque\"\n classNames={classNames}\n data-testid={testId}\n disableAnimation={disableAnimation}\n isOpen={isOpen}\n onClose={onClose}\n placement=\"center\"\n portalContainer={portalContainer}\n scrollBehavior=\"inside\"\n >\n <HeroModalContent data-testid={testId ? `modal_${testId}` : 'modal'}>\n {() => {\n return (\n <>\n {header ? <HeroModalHeader>{header}</HeroModalHeader> : null}\n <HeroModalBody id=\"modal_body\">{children}</HeroModalBody>\n {footer ? <HeroModalFooter>{footer}</HeroModalFooter> : null}\n </>\n );\n }}\n </HeroModalContent>\n </HeroModal>\n );\n};\n\nexport default Modal;\n","import Modal, { modalVariants } from './Modal';\n\nexport type { ModalProps } from './Modal';\n\nexport { Modal, modalVariants };\n\nexport default Modal;\n"]}
@@ -19,10 +19,10 @@ var popoverVariants = tv({
19
19
  slots: {
20
20
  body: "w-full px-4 py-2",
21
21
  content: "flex max-h-[80vh] flex-col p-0",
22
- divider: "border-divider m-0 w-full p-0",
22
+ divider: "m-0 w-full border-divider p-0",
23
23
  footer: "w-full px-4 py-2",
24
24
  footerWrapper: "w-full",
25
- header: "w-full px-4 pt-2 pb-1 font-semibold",
25
+ header: "w-full px-4 pb-1 pt-2 font-semibold",
26
26
  headerWrapper: "w-full",
27
27
  trigger: ""
28
28
  }
@@ -86,4 +86,4 @@ export {
86
86
  Popover_default,
87
87
  Popover_default2
88
88
  };
89
- //# sourceMappingURL=chunk-UMROOKDT.js.map
89
+ //# sourceMappingURL=chunk-CUNIBDOS.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/Popover/Popover.tsx","../src/Popover/index.ts"],"sourcesContent":["import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { ButtonProps } from '@heroui/button';\nimport type { PopoverProps as HeroPopoverProps } from '@heroui/popover';\nimport type { ReactNode } from 'react';\n\nimport { Button } from '@heroui/button';\nimport {\n Popover as HeroPopover,\n PopoverContent as HeroPopoverContent,\n PopoverTrigger as HeroPopoverTrigger,\n} from '@heroui/popover';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nimport ScrollShadow from '../ScrollShadow/ScrollShadow';\n\n// popover styling variants\nexport const popoverVariants = tv({\n slots: {\n body: 'w-full px-4 py-2',\n content: 'flex max-h-[80vh] flex-col p-0',\n divider: 'border-divider m-0 w-full p-0',\n footer: 'w-full px-4 py-2',\n footerWrapper: 'w-full',\n header: 'w-full px-4 pt-2 pb-1 font-semibold',\n headerWrapper: 'w-full',\n trigger: '',\n },\n});\n\ntype VariantProps = TVProps<typeof popoverVariants>;\ntype ClassName = TVClassName<typeof popoverVariants>;\n\nexport interface PopoverProps extends VariantProps {\n /** child components */\n children?: ReactNode;\n /** CSS class name */\n className?: ClassName;\n /** content of the popover */\n content: ReactNode;\n /** HTML data-testid attribute used in e2e tests */\n contentTestId?: string;\n /** popover footer */\n footer?: ReactNode;\n /** Popover title */\n header?: ReactNode;\n /** use as controlled component */\n openControlled?: { open: boolean; setOpen: (open: boolean) => void };\n /** placement of the popover relative to its trigger reference */\n placement?: HeroPopoverProps['placement'];\n /** The container element in which the overlay portal will be placed. */\n portalContainer?: HeroPopoverProps['portalContainer'];\n /** Whether to block scrolling outside the popover */\n shouldBlockScroll?: boolean;\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n /** When defined a Button will be rendered as trigger (with provided props) instead of unstyled html button */\n triggerButtonProps?: Pick<\n ButtonProps,\n | 'aria-label'\n | 'className'\n | 'color'\n | 'disableAnimation'\n | 'disabled'\n | 'size'\n | 'variant'\n >;\n}\n\n/**\n * Popover component based on [HeroUI Card](https://www.heroui.com//docs/components/popover)\n */\nconst Popover = ({\n children = null,\n className: _className = undefined,\n content,\n contentTestId = undefined,\n footer = undefined,\n header = undefined,\n openControlled = undefined,\n placement = 'top',\n portalContainer = undefined,\n shouldBlockScroll = undefined,\n testId = undefined,\n triggerButtonProps = undefined,\n}: PopoverProps) => {\n // className from slots\n const variants = popoverVariants();\n const className = variantsToClassNames(variants, _className, 'trigger');\n\n return (\n <HeroPopover\n showArrow\n classNames={className}\n placement={placement}\n portalContainer={portalContainer}\n radius=\"sm\"\n shouldBlockScroll={shouldBlockScroll}\n {...(openControlled\n ? { isOpen: openControlled.open, onOpenChange: openControlled.setOpen }\n : {})}\n >\n <HeroPopoverTrigger data-testid={testId}>\n {/* NOTE: type and aria properties are injected by HeroPopoverTrigger */}\n {triggerButtonProps ? (\n // TODO: currently we have to use @heroui/button because\n // passing ref does not work (even with forwardRef in Button)\n\n <Button className={className.trigger} {...triggerButtonProps}>\n {children}\n </Button>\n ) : (\n // eslint-disable-next-line react/button-has-type\n <button className={className.trigger}>{children}</button>\n )}\n </HeroPopoverTrigger>\n <HeroPopoverContent data-testid={contentTestId}>\n {header ? (\n <div className={className.headerWrapper}>\n <div className={className.header}>{header}</div>\n <hr className={className.divider} />\n </div>\n ) : null}\n <ScrollShadow className={className.body}>{content}</ScrollShadow>\n {footer ? (\n <div className={className.footerWrapper}>\n <hr className={className.divider} />\n <div className={className.footer}>{footer}</div>\n </div>\n ) : null}\n </HeroPopoverContent>\n </HeroPopover>\n );\n};\n\nexport default Popover;\n","import Popover from './Popover';\n\nexport type { PopoverProps } from './Popover';\n\nexport { Popover };\n\nexport default Popover;\n"],"mappings":";;;;;;;;;AAKA,SAAS,cAAc;AACvB;AAAA,EACE,WAAW;AAAA,EACX,kBAAkB;AAAA,EAClB,kBAAkB;AAAA,OACb;AAEP,SAAS,IAAI,4BAA4B;AAgG/B,cAUA,YAVA;AA3FH,IAAM,kBAAkB,GAAG;AAAA,EAChC,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,IACT,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,eAAe;AAAA,IACf,QAAQ;AAAA,IACR,eAAe;AAAA,IACf,SAAS;AAAA,EACX;AACF,CAAC;AA4CD,IAAM,UAAU,CAAC;AAAA,EACf,WAAW;AAAA,EACX,WAAW,aAAa;AAAA,EACxB;AAAA,EACA,gBAAgB;AAAA,EAChB,SAAS;AAAA,EACT,SAAS;AAAA,EACT,iBAAiB;AAAA,EACjB,YAAY;AAAA,EACZ,kBAAkB;AAAA,EAClB,oBAAoB;AAAA,EACpB,SAAS;AAAA,EACT,qBAAqB;AACvB,MAAoB;AAElB,QAAM,WAAW,gBAAgB;AACjC,QAAM,YAAY,qBAAqB,UAAU,YAAY,SAAS;AAEtE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAS;AAAA,MACT,YAAY;AAAA,MACZ;AAAA,MACA;AAAA,MACA,QAAO;AAAA,MACP;AAAA,OACK,iBACD,EAAE,QAAQ,eAAe,MAAM,cAAc,eAAe,QAAQ,IACpE,CAAC,IATN;AAAA,MAWC;AAAA,4BAAC,sBAAmB,eAAa,QAE9B;AAAA;AAAA;AAAA,UAIC,oBAAC,uCAAO,WAAW,UAAU,WAAa,qBAAzC,EACE,WACH;AAAA;AAAA;AAAA,UAGA,oBAAC,YAAO,WAAW,UAAU,SAAU,UAAS;AAAA,WAEpD;AAAA,QACA,qBAAC,sBAAmB,eAAa,eAC9B;AAAA,mBACC,qBAAC,SAAI,WAAW,UAAU,eACxB;AAAA,gCAAC,SAAI,WAAW,UAAU,QAAS,kBAAO;AAAA,YAC1C,oBAAC,QAAG,WAAW,UAAU,SAAS;AAAA,aACpC,IACE;AAAA,UACJ,oBAAC,wBAAa,WAAW,UAAU,MAAO,mBAAQ;AAAA,UACjD,SACC,qBAAC,SAAI,WAAW,UAAU,eACxB;AAAA,gCAAC,QAAG,WAAW,UAAU,SAAS;AAAA,YAClC,oBAAC,SAAI,WAAW,UAAU,QAAS,kBAAO;AAAA,aAC5C,IACE;AAAA,WACN;AAAA;AAAA;AAAA,EACF;AAEJ;AAEA,IAAO,kBAAQ;;;ACjIf,IAAOA,mBAAQ;","names":["Popover_default"]}
1
+ {"version":3,"sources":["../src/Popover/Popover.tsx","../src/Popover/index.ts"],"sourcesContent":["import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { ButtonProps } from '@heroui/button';\nimport type { PopoverProps as HeroPopoverProps } from '@heroui/popover';\nimport type { ReactNode } from 'react';\n\nimport { Button } from '@heroui/button';\nimport {\n Popover as HeroPopover,\n PopoverContent as HeroPopoverContent,\n PopoverTrigger as HeroPopoverTrigger,\n} from '@heroui/popover';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nimport ScrollShadow from '../ScrollShadow/ScrollShadow';\n\n// popover styling variants\nexport const popoverVariants = tv({\n slots: {\n body: 'w-full px-4 py-2',\n content: 'flex max-h-[80vh] flex-col p-0',\n divider: 'm-0 w-full border-divider p-0',\n footer: 'w-full px-4 py-2',\n footerWrapper: 'w-full',\n header: 'w-full px-4 pb-1 pt-2 font-semibold',\n headerWrapper: 'w-full',\n trigger: '',\n },\n});\n\ntype VariantProps = TVProps<typeof popoverVariants>;\ntype ClassName = TVClassName<typeof popoverVariants>;\n\nexport interface PopoverProps extends VariantProps {\n /** child components */\n children?: ReactNode;\n /** CSS class name */\n className?: ClassName;\n /** content of the popover */\n content: ReactNode;\n /** HTML data-testid attribute used in e2e tests */\n contentTestId?: string;\n /** popover footer */\n footer?: ReactNode;\n /** Popover title */\n header?: ReactNode;\n /** use as controlled component */\n openControlled?: { open: boolean; setOpen: (open: boolean) => void };\n /** placement of the popover relative to its trigger reference */\n placement?: HeroPopoverProps['placement'];\n /** The container element in which the overlay portal will be placed. */\n portalContainer?: HeroPopoverProps['portalContainer'];\n /** Whether to block scrolling outside the popover */\n shouldBlockScroll?: boolean;\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n /** When defined a Button will be rendered as trigger (with provided props) instead of unstyled html button */\n triggerButtonProps?: Pick<\n ButtonProps,\n | 'aria-label'\n | 'className'\n | 'color'\n | 'disableAnimation'\n | 'disabled'\n | 'size'\n | 'variant'\n >;\n}\n\n/**\n * Popover component based on [HeroUI Card](https://www.heroui.com//docs/components/popover)\n */\nconst Popover = ({\n children = null,\n className: _className = undefined,\n content,\n contentTestId = undefined,\n footer = undefined,\n header = undefined,\n openControlled = undefined,\n placement = 'top',\n portalContainer = undefined,\n shouldBlockScroll = undefined,\n testId = undefined,\n triggerButtonProps = undefined,\n}: PopoverProps) => {\n // className from slots\n const variants = popoverVariants();\n const className = variantsToClassNames(variants, _className, 'trigger');\n\n return (\n <HeroPopover\n showArrow\n classNames={className}\n placement={placement}\n portalContainer={portalContainer}\n radius=\"sm\"\n shouldBlockScroll={shouldBlockScroll}\n {...(openControlled\n ? { isOpen: openControlled.open, onOpenChange: openControlled.setOpen }\n : {})}\n >\n <HeroPopoverTrigger data-testid={testId}>\n {/* NOTE: type and aria properties are injected by HeroPopoverTrigger */}\n {triggerButtonProps ? (\n // TODO: currently we have to use @heroui/button because\n // passing ref does not work (even with forwardRef in Button)\n\n <Button className={className.trigger} {...triggerButtonProps}>\n {children}\n </Button>\n ) : (\n // eslint-disable-next-line react/button-has-type\n <button className={className.trigger}>{children}</button>\n )}\n </HeroPopoverTrigger>\n <HeroPopoverContent data-testid={contentTestId}>\n {header ? (\n <div className={className.headerWrapper}>\n <div className={className.header}>{header}</div>\n <hr className={className.divider} />\n </div>\n ) : null}\n <ScrollShadow className={className.body}>{content}</ScrollShadow>\n {footer ? (\n <div className={className.footerWrapper}>\n <hr className={className.divider} />\n <div className={className.footer}>{footer}</div>\n </div>\n ) : null}\n </HeroPopoverContent>\n </HeroPopover>\n );\n};\n\nexport default Popover;\n","import Popover from './Popover';\n\nexport type { PopoverProps } from './Popover';\n\nexport { Popover };\n\nexport default Popover;\n"],"mappings":";;;;;;;;;AAKA,SAAS,cAAc;AACvB;AAAA,EACE,WAAW;AAAA,EACX,kBAAkB;AAAA,EAClB,kBAAkB;AAAA,OACb;AAEP,SAAS,IAAI,4BAA4B;AAgG/B,cAUA,YAVA;AA3FH,IAAM,kBAAkB,GAAG;AAAA,EAChC,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,IACT,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,eAAe;AAAA,IACf,QAAQ;AAAA,IACR,eAAe;AAAA,IACf,SAAS;AAAA,EACX;AACF,CAAC;AA4CD,IAAM,UAAU,CAAC;AAAA,EACf,WAAW;AAAA,EACX,WAAW,aAAa;AAAA,EACxB;AAAA,EACA,gBAAgB;AAAA,EAChB,SAAS;AAAA,EACT,SAAS;AAAA,EACT,iBAAiB;AAAA,EACjB,YAAY;AAAA,EACZ,kBAAkB;AAAA,EAClB,oBAAoB;AAAA,EACpB,SAAS;AAAA,EACT,qBAAqB;AACvB,MAAoB;AAElB,QAAM,WAAW,gBAAgB;AACjC,QAAM,YAAY,qBAAqB,UAAU,YAAY,SAAS;AAEtE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAS;AAAA,MACT,YAAY;AAAA,MACZ;AAAA,MACA;AAAA,MACA,QAAO;AAAA,MACP;AAAA,OACK,iBACD,EAAE,QAAQ,eAAe,MAAM,cAAc,eAAe,QAAQ,IACpE,CAAC,IATN;AAAA,MAWC;AAAA,4BAAC,sBAAmB,eAAa,QAE9B;AAAA;AAAA;AAAA,UAIC,oBAAC,uCAAO,WAAW,UAAU,WAAa,qBAAzC,EACE,WACH;AAAA;AAAA;AAAA,UAGA,oBAAC,YAAO,WAAW,UAAU,SAAU,UAAS;AAAA,WAEpD;AAAA,QACA,qBAAC,sBAAmB,eAAa,eAC9B;AAAA,mBACC,qBAAC,SAAI,WAAW,UAAU,eACxB;AAAA,gCAAC,SAAI,WAAW,UAAU,QAAS,kBAAO;AAAA,YAC1C,oBAAC,QAAG,WAAW,UAAU,SAAS;AAAA,aACpC,IACE;AAAA,UACJ,oBAAC,wBAAa,WAAW,UAAU,MAAO,mBAAQ;AAAA,UACjD,SACC,qBAAC,SAAI,WAAW,UAAU,eACxB;AAAA,gCAAC,QAAG,WAAW,UAAU,SAAS;AAAA,YAClC,oBAAC,SAAI,WAAW,UAAU,QAAS,kBAAO;AAAA,aAC5C,IACE;AAAA,WACN;AAAA;AAAA;AAAA,EACF;AAEJ;AAEA,IAAO,kBAAQ;;;ACjIf,IAAOA,mBAAQ;","names":["Popover_default"]}
@@ -15,9 +15,9 @@ import { tv, variantsToClassNames } from "@fuf-stack/pixel-utils";
15
15
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
16
16
  var cardVariants = tv({
17
17
  slots: {
18
- base: "border-divider border",
18
+ base: "border border-divider",
19
19
  body: "",
20
- divider: "border-divider my-0",
20
+ divider: "my-0 border-divider",
21
21
  footer: "",
22
22
  header: "z-auto text-base font-semibold"
23
23
  }
@@ -83,4 +83,4 @@ export {
83
83
  Card_default,
84
84
  Card_default2
85
85
  };
86
- //# sourceMappingURL=chunk-XIBET6QC.js.map
86
+ //# sourceMappingURL=chunk-D6Z3F5C2.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/Card/Card.tsx","../src/Card/index.ts"],"sourcesContent":["import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { ReactNode } from 'react';\n\nimport { forwardRef } from 'react';\n\nimport {\n Card as HeroCard,\n CardBody as HeroCardBody,\n CardFooter as HeroCardFooter,\n CardHeader as HeroCardHeader,\n} from '@heroui/card';\nimport { Divider as HeroDivider } from '@heroui/divider';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\n// card styling variants\nexport const cardVariants = tv({\n slots: {\n base: 'border-divider border',\n body: '',\n divider: 'border-divider my-0',\n footer: '',\n header: 'z-auto text-base font-semibold',\n },\n});\n\ntype VariantProps = TVProps<typeof cardVariants>;\ntype ClassName = TVClassName<typeof cardVariants>;\n\nexport interface CardProps extends VariantProps {\n /** card body content */\n children?: ReactNode;\n /** CSS class name */\n className?: ClassName;\n /** footer content */\n footer?: ReactNode;\n /** header content */\n header?: ReactNode;\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n}\n\n/**\n * Card component based on [HeroUI Card](https://www.heroui.com//docs/components/card)\n */\nconst Card = forwardRef<HTMLDivElement, CardProps>(\n (\n {\n children = null,\n className = undefined,\n footer = undefined,\n header = undefined,\n testId = undefined,\n },\n ref,\n ) => {\n // classNames from slots\n const variants = cardVariants();\n const { divider: dividerClassName, ...classNames } = variantsToClassNames(\n variants,\n className,\n 'base',\n );\n\n const divider = <HeroDivider className={dividerClassName} />;\n\n return (\n <HeroCard\n ref={ref}\n fullWidth\n classNames={classNames}\n data-testid={testId ? `card_${testId}` : null}\n radius=\"sm\"\n shadow=\"none\"\n >\n {header ? (\n <>\n <HeroCardHeader\n data-testid={testId ? `card_header_${testId}` : null}\n >\n {header}\n </HeroCardHeader>\n {divider}\n </>\n ) : null}\n <HeroCardBody data-testid={testId ? `card_body_${testId}` : null}>\n {children}\n </HeroCardBody>\n {footer ? (\n <>\n {divider}\n <HeroCardFooter\n data-testid={testId ? `card_footer_${testId}` : null}\n >\n {footer}\n </HeroCardFooter>\n </>\n ) : null}\n </HeroCard>\n );\n },\n);\n\nexport default Card;\n","import Card, { cardVariants } from './Card';\n\nexport type { CardProps } from './Card';\n\nexport { Card, cardVariants };\n\nexport default Card;\n"],"mappings":";;;;;AAGA,SAAS,kBAAkB;AAE3B;AAAA,EACE,QAAQ;AAAA,EACR,YAAY;AAAA,EACZ,cAAc;AAAA,EACd,cAAc;AAAA,OACT;AACP,SAAS,WAAW,mBAAmB;AAEvC,SAAS,IAAI,4BAA4B;AAmDrB,SAYV,UAZU,KAYV,YAZU;AAhDb,IAAM,eAAe,GAAG;AAAA,EAC7B,OAAO;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,QAAQ;AAAA,EACV;AACF,CAAC;AAqBD,IAAM,OAAO;AAAA,EACX,CACE;AAAA,IACE,WAAW;AAAA,IACX,YAAY;AAAA,IACZ,SAAS;AAAA,IACT,SAAS;AAAA,IACT,SAAS;AAAA,EACX,GACA,QACG;AAEH,UAAM,WAAW,aAAa;AAC9B,UAAqD;AAAA,MACnD;AAAA,MACA;AAAA,MACA;AAAA,IACF,GAJQ,WAAS,iBA1DrB,IA0DyD,IAAf,uBAAe,IAAf,CAA9B;AAMR,UAAM,UAAU,oBAAC,eAAY,WAAW,kBAAkB;AAE1D,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,WAAS;AAAA,QACT;AAAA,QACA,eAAa,SAAS,QAAQ,MAAM,KAAK;AAAA,QACzC,QAAO;AAAA,QACP,QAAO;AAAA,QAEN;AAAA,mBACC,iCACE;AAAA;AAAA,cAAC;AAAA;AAAA,gBACC,eAAa,SAAS,eAAe,MAAM,KAAK;AAAA,gBAE/C;AAAA;AAAA,YACH;AAAA,YACC;AAAA,aACH,IACE;AAAA,UACJ,oBAAC,gBAAa,eAAa,SAAS,aAAa,MAAM,KAAK,MACzD,UACH;AAAA,UACC,SACC,iCACG;AAAA;AAAA,YACD;AAAA,cAAC;AAAA;AAAA,gBACC,eAAa,SAAS,eAAe,MAAM,KAAK;AAAA,gBAE/C;AAAA;AAAA,YACH;AAAA,aACF,IACE;AAAA;AAAA;AAAA,IACN;AAAA,EAEJ;AACF;AAEA,IAAO,eAAQ;;;ACjGf,IAAOA,gBAAQ;","names":["Card_default"]}
1
+ {"version":3,"sources":["../src/Card/Card.tsx","../src/Card/index.ts"],"sourcesContent":["import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\nimport type { ReactNode } from 'react';\n\nimport { forwardRef } from 'react';\n\nimport {\n Card as HeroCard,\n CardBody as HeroCardBody,\n CardFooter as HeroCardFooter,\n CardHeader as HeroCardHeader,\n} from '@heroui/card';\nimport { Divider as HeroDivider } from '@heroui/divider';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\n// card styling variants\nexport const cardVariants = tv({\n slots: {\n base: 'border border-divider',\n body: '',\n divider: 'my-0 border-divider',\n footer: '',\n header: 'z-auto text-base font-semibold',\n },\n});\n\ntype VariantProps = TVProps<typeof cardVariants>;\ntype ClassName = TVClassName<typeof cardVariants>;\n\nexport interface CardProps extends VariantProps {\n /** card body content */\n children?: ReactNode;\n /** CSS class name */\n className?: ClassName;\n /** footer content */\n footer?: ReactNode;\n /** header content */\n header?: ReactNode;\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n}\n\n/**\n * Card component based on [HeroUI Card](https://www.heroui.com//docs/components/card)\n */\nconst Card = forwardRef<HTMLDivElement, CardProps>(\n (\n {\n children = null,\n className = undefined,\n footer = undefined,\n header = undefined,\n testId = undefined,\n },\n ref,\n ) => {\n // classNames from slots\n const variants = cardVariants();\n const { divider: dividerClassName, ...classNames } = variantsToClassNames(\n variants,\n className,\n 'base',\n );\n\n const divider = <HeroDivider className={dividerClassName} />;\n\n return (\n <HeroCard\n ref={ref}\n fullWidth\n classNames={classNames}\n data-testid={testId ? `card_${testId}` : null}\n radius=\"sm\"\n shadow=\"none\"\n >\n {header ? (\n <>\n <HeroCardHeader\n data-testid={testId ? `card_header_${testId}` : null}\n >\n {header}\n </HeroCardHeader>\n {divider}\n </>\n ) : null}\n <HeroCardBody data-testid={testId ? `card_body_${testId}` : null}>\n {children}\n </HeroCardBody>\n {footer ? (\n <>\n {divider}\n <HeroCardFooter\n data-testid={testId ? `card_footer_${testId}` : null}\n >\n {footer}\n </HeroCardFooter>\n </>\n ) : null}\n </HeroCard>\n );\n },\n);\n\nexport default Card;\n","import Card, { cardVariants } from './Card';\n\nexport type { CardProps } from './Card';\n\nexport { Card, cardVariants };\n\nexport default Card;\n"],"mappings":";;;;;AAGA,SAAS,kBAAkB;AAE3B;AAAA,EACE,QAAQ;AAAA,EACR,YAAY;AAAA,EACZ,cAAc;AAAA,EACd,cAAc;AAAA,OACT;AACP,SAAS,WAAW,mBAAmB;AAEvC,SAAS,IAAI,4BAA4B;AAmDrB,SAYV,UAZU,KAYV,YAZU;AAhDb,IAAM,eAAe,GAAG;AAAA,EAC7B,OAAO;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,IACN,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,QAAQ;AAAA,EACV;AACF,CAAC;AAqBD,IAAM,OAAO;AAAA,EACX,CACE;AAAA,IACE,WAAW;AAAA,IACX,YAAY;AAAA,IACZ,SAAS;AAAA,IACT,SAAS;AAAA,IACT,SAAS;AAAA,EACX,GACA,QACG;AAEH,UAAM,WAAW,aAAa;AAC9B,UAAqD;AAAA,MACnD;AAAA,MACA;AAAA,MACA;AAAA,IACF,GAJQ,WAAS,iBA1DrB,IA0DyD,IAAf,uBAAe,IAAf,CAA9B;AAMR,UAAM,UAAU,oBAAC,eAAY,WAAW,kBAAkB;AAE1D,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,WAAS;AAAA,QACT;AAAA,QACA,eAAa,SAAS,QAAQ,MAAM,KAAK;AAAA,QACzC,QAAO;AAAA,QACP,QAAO;AAAA,QAEN;AAAA,mBACC,iCACE;AAAA;AAAA,cAAC;AAAA;AAAA,gBACC,eAAa,SAAS,eAAe,MAAM,KAAK;AAAA,gBAE/C;AAAA;AAAA,YACH;AAAA,YACC;AAAA,aACH,IACE;AAAA,UACJ,oBAAC,gBAAa,eAAa,SAAS,aAAa,MAAM,KAAK,MACzD,UACH;AAAA,UACC,SACC,iCACG;AAAA;AAAA,YACD;AAAA,cAAC;AAAA;AAAA,gBACC,eAAa,SAAS,eAAe,MAAM,KAAK;AAAA,gBAE/C;AAAA;AAAA,YACH;AAAA,aACF,IACE;AAAA;AAAA;AAAA,IACN;AAAA,EAEJ;AACF;AAEA,IAAO,eAAQ;;;ACjGf,IAAOA,gBAAQ;","names":["Card_default"]}
@@ -87,12 +87,12 @@ var buttonVariants = tv({
87
87
  {
88
88
  color: "info",
89
89
  variant: "shadow",
90
- class: "text-info-foreground bg-info shadow-info/40 shadow-lg"
90
+ class: "shadow-info/40 bg-info text-info-foreground shadow-lg"
91
91
  },
92
92
  {
93
93
  color: "info",
94
94
  variant: "bordered",
95
- class: "border-medium border-info text-info bg-transparent"
95
+ class: "border-medium border-info bg-transparent text-info"
96
96
  },
97
97
  {
98
98
  color: "info",
@@ -107,7 +107,7 @@ var buttonVariants = tv({
107
107
  {
108
108
  color: "info",
109
109
  variant: "light",
110
- class: "text-info data-[hover=true]:bg-info-100 bg-transparent"
110
+ class: "bg-transparent text-info data-[hover=true]:bg-info-100"
111
111
  },
112
112
  {
113
113
  color: "info",
@@ -172,4 +172,4 @@ export {
172
172
  Button_default,
173
173
  Button_default2
174
174
  };
175
- //# sourceMappingURL=chunk-6CET2FLR.js.map
175
+ //# sourceMappingURL=chunk-FPR33UFC.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/Button/Button.tsx","../src/Button/subcomponents/LoadingSpinner.tsx","../src/Button/index.ts"],"sourcesContent":["import type { TVProps } from '@fuf-stack/pixel-utils';\nimport type { ButtonProps as HeroButtonProps } from '@heroui/button';\nimport type { ReactNode } from 'react';\n\nimport { Button as HeroButton } from '@heroui/button';\nimport { button as heroButtonVariants } from '@heroui/theme';\n\nimport { tv } from '@fuf-stack/pixel-utils';\n\nimport LoadingSpinner from './subcomponents/LoadingSpinner';\n\nexport const buttonVariants = tv({\n extend: heroButtonVariants,\n variants: {\n color: {\n ...heroButtonVariants.variants.color,\n // see: https://github.com/heroui-inc/heroui/blob/canary/packages/core/theme/src/components/button.ts\n info: '',\n },\n variant: heroButtonVariants.variants.variant,\n size: heroButtonVariants.variants.size,\n },\n compoundVariants: [\n // white text on solid / shadow success button\n {\n color: 'success',\n variant: 'solid',\n class: 'text-white',\n },\n {\n color: 'success',\n variant: 'shadow',\n class: 'text-white',\n },\n // white text on solid / shadow warning button\n {\n color: 'warning',\n variant: 'solid',\n class: 'text-white',\n },\n {\n color: 'warning',\n variant: 'shadow',\n class: 'text-white',\n },\n {\n color: 'info',\n variant: 'solid',\n class: 'bg-info text-info-foreground',\n },\n {\n color: 'info',\n variant: 'shadow',\n class: 'text-info-foreground bg-info shadow-info/40 shadow-lg',\n },\n {\n color: 'info',\n variant: 'bordered',\n class: 'border-medium border-info text-info bg-transparent',\n },\n {\n color: 'info',\n variant: 'flat',\n class: 'bg-info/20 text-info-600',\n },\n {\n color: 'info',\n variant: 'faded',\n class: 'border-default bg-default-100 text-info',\n },\n {\n color: 'info',\n variant: 'light',\n class: 'text-info data-[hover=true]:bg-info-100 bg-transparent',\n },\n {\n color: 'info',\n variant: 'ghost',\n class:\n 'border-info text-info data-[hover=true]:!bg-info data-[hover=true]:!text-info-foreground',\n },\n ],\n});\n\ntype VariantProps = TVProps<typeof buttonVariants>;\n\nexport interface ButtonProps extends VariantProps {\n /** sets HTML aria-label attribute */\n ariaLabel?: string;\n /** content of the button */\n children?: ReactNode;\n /** CSS class name */\n className?: string;\n /** color of the button */\n color?: VariantProps['color'];\n /** disables the button */\n disabled?: boolean;\n /** disables all animations */\n disableAnimation?: boolean;\n /** shows loading animation */\n loading?: boolean;\n /** optional icon */\n icon?: ReactNode;\n /** click event handler */\n onClick?: HeroButtonProps['onPress'];\n /** border radius size */\n radius?: VariantProps['radius'];\n /** enable ripple animation effect on click */\n ripple?: boolean;\n /** size options */\n size?: VariantProps['size'];\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n /** HTML button type attribute */\n type?: 'button' | 'submit' | 'reset' | undefined;\n /** visual style variant */\n variant?: VariantProps['variant'];\n}\n\n/**\n * Button component based on [HeroUI Button](https://www.heroui.com//docs/components/button)\n */\nconst Button = ({\n ariaLabel = undefined,\n children = undefined,\n className: _className = undefined,\n color = 'default',\n disableAnimation = false,\n disabled = false,\n icon = undefined,\n loading = false,\n onClick = undefined,\n radius = undefined,\n ripple = false,\n size = undefined,\n testId = undefined,\n type = undefined,\n variant = 'solid',\n}: ButtonProps) => {\n const className = buttonVariants({\n className: _className,\n disableAnimation,\n isDisabled: disabled,\n color,\n size,\n variant,\n isIconOnly: !!(icon && !children),\n radius,\n });\n\n return (\n <HeroButton\n aria-label={ariaLabel}\n className={className}\n data-testid={testId}\n disableRipple={disableAnimation || !ripple}\n isDisabled={disabled}\n isLoading={loading}\n onPress={onClick}\n spinner={<LoadingSpinner />}\n type={type}\n >\n {icon}\n {children}\n </HeroButton>\n );\n};\n\nexport default Button;\n","/**\n * svg loading spinner for button\n * @see https://www.heroui.com//docs/components/button#loading\n * */\nconst LoadingSpinner = () => {\n return (\n <svg\n className=\"h-5 w-5 animate-spin text-current\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle\n className=\"opacity-25\"\n cx=\"12\"\n cy=\"12\"\n r=\"10\"\n stroke=\"currentColor\"\n strokeWidth=\"4\"\n />\n <path\n className=\"opacity-75\"\n d=\"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default LoadingSpinner;\n","import Button, { buttonVariants } from './Button';\n\nexport type { ButtonProps } from './Button';\n\nexport { Button, buttonVariants };\n\nexport default Button;\n"],"mappings":";;;;;;AAIA,SAAS,UAAU,kBAAkB;AACrC,SAAS,UAAU,0BAA0B;AAE7C,SAAS,UAAU;;;ACDf,SAME,KANF;AAFJ,IAAM,iBAAiB,MAAM;AAC3B,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACV,MAAK;AAAA,MACL,SAAQ;AAAA,MACR,OAAM;AAAA,MAEN;AAAA;AAAA,UAAC;AAAA;AAAA,YACC,WAAU;AAAA,YACV,IAAG;AAAA,YACH,IAAG;AAAA,YACH,GAAE;AAAA,YACF,QAAO;AAAA,YACP,aAAY;AAAA;AAAA,QACd;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC,WAAU;AAAA,YACV,GAAE;AAAA,YACF,MAAK;AAAA;AAAA,QACP;AAAA;AAAA;AAAA,EACF;AAEJ;AAEA,IAAO,yBAAQ;;;AD0HX,SAQW,OAAAA,MARX,QAAAC,aAAA;AA5IG,IAAM,iBAAiB,GAAG;AAAA,EAC/B,QAAQ;AAAA,EACR,UAAU;AAAA,IACR,OAAO,iCACF,mBAAmB,SAAS,QAD1B;AAAA;AAAA,MAGL,MAAM;AAAA,IACR;AAAA,IACA,SAAS,mBAAmB,SAAS;AAAA,IACrC,MAAM,mBAAmB,SAAS;AAAA,EACpC;AAAA,EACA,kBAAkB;AAAA;AAAA,IAEhB;AAAA,MACE,OAAO;AAAA,MACP,SAAS;AAAA,MACT,OAAO;AAAA,IACT;AAAA,IACA;AAAA,MACE,OAAO;AAAA,MACP,SAAS;AAAA,MACT,OAAO;AAAA,IACT;AAAA;AAAA,IAEA;AAAA,MACE,OAAO;AAAA,MACP,SAAS;AAAA,MACT,OAAO;AAAA,IACT;AAAA,IACA;AAAA,MACE,OAAO;AAAA,MACP,SAAS;AAAA,MACT,OAAO;AAAA,IACT;AAAA,IACA;AAAA,MACE,OAAO;AAAA,MACP,SAAS;AAAA,MACT,OAAO;AAAA,IACT;AAAA,IACA;AAAA,MACE,OAAO;AAAA,MACP,SAAS;AAAA,MACT,OAAO;AAAA,IACT;AAAA,IACA;AAAA,MACE,OAAO;AAAA,MACP,SAAS;AAAA,MACT,OAAO;AAAA,IACT;AAAA,IACA;AAAA,MACE,OAAO;AAAA,MACP,SAAS;AAAA,MACT,OAAO;AAAA,IACT;AAAA,IACA;AAAA,MACE,OAAO;AAAA,MACP,SAAS;AAAA,MACT,OAAO;AAAA,IACT;AAAA,IACA;AAAA,MACE,OAAO;AAAA,MACP,SAAS;AAAA,MACT,OAAO;AAAA,IACT;AAAA,IACA;AAAA,MACE,OAAO;AAAA,MACP,SAAS;AAAA,MACT,OACE;AAAA,IACJ;AAAA,EACF;AACF,CAAC;AAwCD,IAAM,SAAS,CAAC;AAAA,EACd,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,WAAW,aAAa;AAAA,EACxB,QAAQ;AAAA,EACR,mBAAmB;AAAA,EACnB,WAAW;AAAA,EACX,OAAO;AAAA,EACP,UAAU;AAAA,EACV,UAAU;AAAA,EACV,SAAS;AAAA,EACT,SAAS;AAAA,EACT,OAAO;AAAA,EACP,SAAS;AAAA,EACT,OAAO;AAAA,EACP,UAAU;AACZ,MAAmB;AACjB,QAAM,YAAY,eAAe;AAAA,IAC/B,WAAW;AAAA,IACX;AAAA,IACA,YAAY;AAAA,IACZ;AAAA,IACA;AAAA,IACA;AAAA,IACA,YAAY,CAAC,EAAE,QAAQ,CAAC;AAAA,IACxB;AAAA,EACF,CAAC;AAED,SACE,gBAAAA;AAAA,IAAC;AAAA;AAAA,MACC,cAAY;AAAA,MACZ;AAAA,MACA,eAAa;AAAA,MACb,eAAe,oBAAoB,CAAC;AAAA,MACpC,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,SAAS;AAAA,MACT,SAAS,gBAAAD,KAAC,0BAAe;AAAA,MACzB;AAAA,MAEC;AAAA;AAAA,QACA;AAAA;AAAA;AAAA,EACH;AAEJ;AAEA,IAAO,iBAAQ;;;AElKf,IAAOE,kBAAQ;","names":["jsx","jsxs","Button_default"]}
1
+ {"version":3,"sources":["../src/Button/Button.tsx","../src/Button/subcomponents/LoadingSpinner.tsx","../src/Button/index.ts"],"sourcesContent":["import type { TVProps } from '@fuf-stack/pixel-utils';\nimport type { ButtonProps as HeroButtonProps } from '@heroui/button';\nimport type { ReactNode } from 'react';\n\nimport { Button as HeroButton } from '@heroui/button';\nimport { button as heroButtonVariants } from '@heroui/theme';\n\nimport { tv } from '@fuf-stack/pixel-utils';\n\nimport LoadingSpinner from './subcomponents/LoadingSpinner';\n\nexport const buttonVariants = tv({\n extend: heroButtonVariants,\n variants: {\n color: {\n ...heroButtonVariants.variants.color,\n // see: https://github.com/heroui-inc/heroui/blob/canary/packages/core/theme/src/components/button.ts\n info: '',\n },\n variant: heroButtonVariants.variants.variant,\n size: heroButtonVariants.variants.size,\n },\n compoundVariants: [\n // white text on solid / shadow success button\n {\n color: 'success',\n variant: 'solid',\n class: 'text-white',\n },\n {\n color: 'success',\n variant: 'shadow',\n class: 'text-white',\n },\n // white text on solid / shadow warning button\n {\n color: 'warning',\n variant: 'solid',\n class: 'text-white',\n },\n {\n color: 'warning',\n variant: 'shadow',\n class: 'text-white',\n },\n {\n color: 'info',\n variant: 'solid',\n class: 'bg-info text-info-foreground',\n },\n {\n color: 'info',\n variant: 'shadow',\n class: 'shadow-info/40 bg-info text-info-foreground shadow-lg',\n },\n {\n color: 'info',\n variant: 'bordered',\n class: 'border-medium border-info bg-transparent text-info',\n },\n {\n color: 'info',\n variant: 'flat',\n class: 'bg-info/20 text-info-600',\n },\n {\n color: 'info',\n variant: 'faded',\n class: 'border-default bg-default-100 text-info',\n },\n {\n color: 'info',\n variant: 'light',\n class: 'bg-transparent text-info data-[hover=true]:bg-info-100',\n },\n {\n color: 'info',\n variant: 'ghost',\n class:\n 'border-info text-info data-[hover=true]:!bg-info data-[hover=true]:!text-info-foreground',\n },\n ],\n});\n\ntype VariantProps = TVProps<typeof buttonVariants>;\n\nexport interface ButtonProps extends VariantProps {\n /** sets HTML aria-label attribute */\n ariaLabel?: string;\n /** content of the button */\n children?: ReactNode;\n /** CSS class name */\n className?: string;\n /** color of the button */\n color?: VariantProps['color'];\n /** disables the button */\n disabled?: boolean;\n /** disables all animations */\n disableAnimation?: boolean;\n /** shows loading animation */\n loading?: boolean;\n /** optional icon */\n icon?: ReactNode;\n /** click event handler */\n onClick?: HeroButtonProps['onPress'];\n /** border radius size */\n radius?: VariantProps['radius'];\n /** enable ripple animation effect on click */\n ripple?: boolean;\n /** size options */\n size?: VariantProps['size'];\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n /** HTML button type attribute */\n type?: 'button' | 'submit' | 'reset' | undefined;\n /** visual style variant */\n variant?: VariantProps['variant'];\n}\n\n/**\n * Button component based on [HeroUI Button](https://www.heroui.com//docs/components/button)\n */\nconst Button = ({\n ariaLabel = undefined,\n children = undefined,\n className: _className = undefined,\n color = 'default',\n disableAnimation = false,\n disabled = false,\n icon = undefined,\n loading = false,\n onClick = undefined,\n radius = undefined,\n ripple = false,\n size = undefined,\n testId = undefined,\n type = undefined,\n variant = 'solid',\n}: ButtonProps) => {\n const className = buttonVariants({\n className: _className,\n disableAnimation,\n isDisabled: disabled,\n color,\n size,\n variant,\n isIconOnly: !!(icon && !children),\n radius,\n });\n\n return (\n <HeroButton\n aria-label={ariaLabel}\n className={className}\n data-testid={testId}\n disableRipple={disableAnimation || !ripple}\n isDisabled={disabled}\n isLoading={loading}\n onPress={onClick}\n spinner={<LoadingSpinner />}\n type={type}\n >\n {icon}\n {children}\n </HeroButton>\n );\n};\n\nexport default Button;\n","/**\n * svg loading spinner for button\n * @see https://www.heroui.com//docs/components/button#loading\n * */\nconst LoadingSpinner = () => {\n return (\n <svg\n className=\"h-5 w-5 animate-spin text-current\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle\n className=\"opacity-25\"\n cx=\"12\"\n cy=\"12\"\n r=\"10\"\n stroke=\"currentColor\"\n strokeWidth=\"4\"\n />\n <path\n className=\"opacity-75\"\n d=\"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default LoadingSpinner;\n","import Button, { buttonVariants } from './Button';\n\nexport type { ButtonProps } from './Button';\n\nexport { Button, buttonVariants };\n\nexport default Button;\n"],"mappings":"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","names":["jsx","jsxs","Button_default"]}
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  Button_default
3
- } from "./chunk-6CET2FLR.js";
3
+ } from "./chunk-FPR33UFC.js";
4
4
  import {
5
5
  __async,
6
6
  __commonJS,
@@ -2614,7 +2614,7 @@ var CopiedRenderer = () => {
2614
2614
  const isCopied = props["data-copied"];
2615
2615
  const elmClasses = cn(
2616
2616
  className,
2617
- "absolute -top-[2px] -right-4 h-4 w-4 fill-transparent! pl-1",
2617
+ "fill-transparent! absolute -right-4 -top-[2px] h-4 w-4 pl-1",
2618
2618
  { "text-success": isCopied }
2619
2619
  );
2620
2620
  const handleKeyDown = (e) => {
@@ -2626,7 +2626,7 @@ var CopiedRenderer = () => {
2626
2626
  "span",
2627
2627
  {
2628
2628
  "aria-label": isCopied ? "Copied to clipboard" : "Copy to clipboard",
2629
- className: "relative ml-0! h-[1em]! w-0!",
2629
+ className: "ml-0! h-[1em]! w-0! relative",
2630
2630
  "data-testid": "copy-button",
2631
2631
  onKeyDown: handleKeyDown,
2632
2632
  role: "button",
@@ -2656,24 +2656,24 @@ var ErrorRenderer = ({
2656
2656
  return /* @__PURE__ */ jsxs(
2657
2657
  "div",
2658
2658
  {
2659
- className: "border-danger bg-danger-50 text-danger mb-4 flex flex-col items-center rounded-lg border p-4 text-sm",
2660
- role: "alert",
2661
2659
  "aria-live": "polite",
2660
+ className: "mb-4 flex flex-col items-center rounded-lg border border-danger bg-danger-50 p-4 text-sm text-danger",
2661
+ role: "alert",
2662
2662
  children: [
2663
2663
  /* @__PURE__ */ jsxs("div", { className: "flex w-full justify-between gap-6", children: [
2664
2664
  /* @__PURE__ */ jsxs("div", { className: "flex items-center", children: [
2665
- /* @__PURE__ */ jsx2(FaTimesCircle, { className: "mr-2", "aria-hidden": "true" }),
2665
+ /* @__PURE__ */ jsx2(FaTimesCircle, { "aria-hidden": "true", className: "mr-2" }),
2666
2666
  /* @__PURE__ */ jsx2("span", { className: "font-medium", children: "Failed to parse JSON data" })
2667
2667
  ] }),
2668
2668
  /* @__PURE__ */ jsx2(
2669
2669
  Button_default,
2670
2670
  {
2671
+ "aria-controls": "error-details",
2672
+ "aria-expanded": showDetails,
2671
2673
  color: "danger",
2674
+ onClick: onToggleDetails,
2672
2675
  size: "sm",
2673
2676
  variant: "light",
2674
- onClick: onToggleDetails,
2675
- "aria-expanded": showDetails,
2676
- "aria-controls": "error-details",
2677
2677
  children: showDetails ? /* @__PURE__ */ jsxs(Fragment3, { children: [
2678
2678
  /* @__PURE__ */ jsx2(FaChevronUp, { "aria-hidden": "true" }),
2679
2679
  " Hide Details"
@@ -2684,7 +2684,7 @@ var ErrorRenderer = ({
2684
2684
  }
2685
2685
  )
2686
2686
  ] }),
2687
- showDetails && /* @__PURE__ */ jsxs("div", { id: "error-details", className: "mt-4 w-full text-left", children: [
2687
+ showDetails ? /* @__PURE__ */ jsxs("div", { className: "mt-4 w-full text-left", id: "error-details", children: [
2688
2688
  /* @__PURE__ */ jsxs("div", { children: [
2689
2689
  /* @__PURE__ */ jsx2("strong", { children: "Error:" }),
2690
2690
  /* @__PURE__ */ jsx2("pre", { children: error instanceof Error ? `${error.name}: ${error.message}` : "Unknown error" })
@@ -2693,7 +2693,7 @@ var ErrorRenderer = ({
2693
2693
  /* @__PURE__ */ jsx2("strong", { children: "Data:" }),
2694
2694
  /* @__PURE__ */ jsx2("pre", { children: typeof data !== "string" ? JSON.stringify(data, null, 2) : data })
2695
2695
  ] })
2696
- ] })
2696
+ ] }) : null
2697
2697
  ]
2698
2698
  }
2699
2699
  );
@@ -2707,7 +2707,7 @@ var NullRenderer = () => {
2707
2707
  esm_default.Null,
2708
2708
  {
2709
2709
  render: () => {
2710
- return /* @__PURE__ */ jsx3("span", { className: "bg-warning-100 text-warning-700 rounded px-1 text-xs", children: "null" });
2710
+ return /* @__PURE__ */ jsx3("span", { className: "rounded bg-warning-100 px-1 text-xs text-warning-700", children: "null" });
2711
2711
  }
2712
2712
  }
2713
2713
  );
@@ -2793,4 +2793,4 @@ export {
2793
2793
  Json_default,
2794
2794
  Json_default2
2795
2795
  };
2796
- //# sourceMappingURL=chunk-XAGW2N5O.js.map
2796
+ //# sourceMappingURL=chunk-IZM2I62C.js.map