@solibo/solibo-ui 0.4.10 → 0.5.3

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 (192) hide show
  1. package/README.md +1 -1
  2. package/dist/assets/index.css +1 -1
  3. package/dist/assets/index10.css +1 -1
  4. package/dist/assets/index11.css +1 -1
  5. package/dist/assets/index12.css +1 -1
  6. package/dist/assets/index13.css +1 -1
  7. package/dist/assets/index14.css +1 -1
  8. package/dist/assets/index15.css +1 -1
  9. package/dist/assets/index16.css +1 -1
  10. package/dist/assets/index17.css +1 -1
  11. package/dist/assets/index18.css +1 -1
  12. package/dist/assets/index19.css +1 -1
  13. package/dist/assets/index2.css +1 -1
  14. package/dist/assets/index20.css +1 -1
  15. package/dist/assets/index21.css +1 -1
  16. package/dist/assets/index22.css +1 -1
  17. package/dist/assets/index23.css +1 -1
  18. package/dist/assets/index24.css +1 -1
  19. package/dist/assets/index25.css +1 -1
  20. package/dist/assets/index26.css +1 -1
  21. package/dist/assets/index27.css +1 -1
  22. package/dist/assets/index29.css +1 -1
  23. package/dist/assets/index3.css +1 -1
  24. package/dist/assets/index30.css +1 -1
  25. package/dist/assets/index31.css +1 -1
  26. package/dist/assets/index32.css +1 -1
  27. package/dist/assets/index33.css +1 -1
  28. package/dist/assets/index34.css +1 -1
  29. package/dist/assets/index35.css +1 -1
  30. package/dist/assets/index36.css +1 -1
  31. package/dist/assets/index37.css +1 -1
  32. package/dist/assets/index38.css +1 -1
  33. package/dist/assets/index39.css +1 -1
  34. package/dist/assets/index4.css +1 -1
  35. package/dist/assets/index40.css +1 -1
  36. package/dist/assets/index41.css +1 -1
  37. package/dist/assets/index42.css +1 -1
  38. package/dist/assets/index43.css +1 -1
  39. package/dist/assets/index44.css +1 -1
  40. package/dist/assets/index5.css +1 -1
  41. package/dist/assets/index6.css +1 -1
  42. package/dist/assets/index8.css +1 -1
  43. package/dist/assets/index9.css +1 -1
  44. package/dist/assets/styles.css +1 -1
  45. package/dist/components/_avatar/index.cjs +1 -1
  46. package/dist/components/_avatar/index.cjs.map +1 -1
  47. package/dist/components/_avatar/index.js +9 -9
  48. package/dist/components/_avatar/index.js.map +1 -1
  49. package/dist/components/_card/index.cjs +1 -1
  50. package/dist/components/_card/index.js +12 -12
  51. package/dist/components/_collapsible/index.cjs +1 -1
  52. package/dist/components/_collapsible/index.js +1 -1
  53. package/dist/components/_croppable/index.cjs +1 -1
  54. package/dist/components/_croppable/index.js +175 -175
  55. package/dist/components/_dropdown/index.cjs +1 -1
  56. package/dist/components/_dropdown/index.cjs.map +1 -1
  57. package/dist/components/_dropdown/index.js +87 -87
  58. package/dist/components/_dropdown/index.js.map +1 -1
  59. package/dist/components/_dropzone/index.cjs +1 -1
  60. package/dist/components/_dropzone/index.js +34 -34
  61. package/dist/components/_editor/index.cjs +16 -16
  62. package/dist/components/_editor/index.cjs.map +1 -1
  63. package/dist/components/_editor/index.js +19 -19
  64. package/dist/components/_editor/index.js.map +1 -1
  65. package/dist/components/_messages/index.cjs +1 -1
  66. package/dist/components/_messages/index.cjs.map +1 -1
  67. package/dist/components/_messages/index.js +15 -15
  68. package/dist/components/_messages/index.js.map +1 -1
  69. package/dist/components/_portal/index.cjs +1 -1
  70. package/dist/components/_portal/index.cjs.map +1 -1
  71. package/dist/components/_portal/index.js +17 -16
  72. package/dist/components/_portal/index.js.map +1 -1
  73. package/dist/components/_sortable/index.cjs +1 -1
  74. package/dist/components/_sortable/index.cjs.map +1 -1
  75. package/dist/components/_sortable/index.js +64 -33
  76. package/dist/components/_sortable/index.js.map +1 -1
  77. package/dist/components/_widget/index.cjs +1 -1
  78. package/dist/components/_widget/index.js +3 -3
  79. package/dist/components/accordion/index.cjs +1 -1
  80. package/dist/components/accordion/index.cjs.map +1 -1
  81. package/dist/components/accordion/index.js +16 -10
  82. package/dist/components/accordion/index.js.map +1 -1
  83. package/dist/components/app-link/index.cjs +1 -1
  84. package/dist/components/app-link/index.cjs.map +1 -1
  85. package/dist/components/app-link/index.js +9 -9
  86. package/dist/components/app-link/index.js.map +1 -1
  87. package/dist/components/aside/index.cjs +1 -1
  88. package/dist/components/aside/index.js +6 -6
  89. package/dist/components/badge/index.cjs +1 -1
  90. package/dist/components/badge/index.cjs.map +1 -1
  91. package/dist/components/badge/index.js +19 -18
  92. package/dist/components/badge/index.js.map +1 -1
  93. package/dist/components/banner/index.cjs +1 -1
  94. package/dist/components/banner/index.js +9 -9
  95. package/dist/components/branding/index.cjs +1 -1
  96. package/dist/components/branding/index.js +12 -12
  97. package/dist/components/button/index.cjs +1 -1
  98. package/dist/components/button/index.js +12 -12
  99. package/dist/components/checkbox/index.cjs +1 -1
  100. package/dist/components/checkbox/index.js +7 -7
  101. package/dist/components/controls/index.cjs +1 -1
  102. package/dist/components/controls/index.cjs.map +1 -1
  103. package/dist/components/controls/index.js +21 -10
  104. package/dist/components/controls/index.js.map +1 -1
  105. package/dist/components/dialog/index.cjs +1 -1
  106. package/dist/components/dialog/index.js +3 -3
  107. package/dist/components/figure/index.cjs +1 -1
  108. package/dist/components/figure/index.cjs.map +1 -1
  109. package/dist/components/figure/index.js +11 -11
  110. package/dist/components/figure/index.js.map +1 -1
  111. package/dist/components/file/index.cjs +1 -1
  112. package/dist/components/file/index.cjs.map +1 -1
  113. package/dist/components/file/index.js +14 -13
  114. package/dist/components/file/index.js.map +1 -1
  115. package/dist/components/footer/index.cjs +1 -1
  116. package/dist/components/footer/index.js +3 -3
  117. package/dist/components/form/index.cjs +1 -1
  118. package/dist/components/form/index.js +11 -11
  119. package/dist/components/graph/index.cjs +1 -1
  120. package/dist/components/graph/index.cjs.map +1 -1
  121. package/dist/components/graph/index.js +31 -31
  122. package/dist/components/graph/index.js.map +1 -1
  123. package/dist/components/header/index.cjs +1 -1
  124. package/dist/components/header/index.js +3 -3
  125. package/dist/components/icon/index.cjs +1 -1
  126. package/dist/components/icon/index.cjs.map +1 -1
  127. package/dist/components/icon/index.js +26 -26
  128. package/dist/components/icon/index.js.map +1 -1
  129. package/dist/components/image/index.cjs +1 -1
  130. package/dist/components/image/index.js +9 -9
  131. package/dist/components/input/index.cjs +1 -1
  132. package/dist/components/input/index.cjs.map +1 -1
  133. package/dist/components/input/index.js +34 -33
  134. package/dist/components/input/index.js.map +1 -1
  135. package/dist/components/link/index.cjs +1 -1
  136. package/dist/components/link/index.js +11 -11
  137. package/dist/components/list/index.cjs +1 -1
  138. package/dist/components/list/index.js +7 -7
  139. package/dist/components/loading/index.cjs +1 -1
  140. package/dist/components/loading/index.js +13 -13
  141. package/dist/components/message/index.cjs +1 -1
  142. package/dist/components/message/index.js +7 -7
  143. package/dist/components/nav/index.cjs +1 -1
  144. package/dist/components/nav/index.js +23 -23
  145. package/dist/components/object/index.cjs +2 -0
  146. package/dist/components/object/index.cjs.map +1 -0
  147. package/dist/components/object/index.js +16 -0
  148. package/dist/components/object/index.js.map +1 -0
  149. package/dist/components/select/index.cjs +1 -1
  150. package/dist/components/select/index.js +1 -1
  151. package/dist/components/table/index.cjs +1 -1
  152. package/dist/components/table/index.cjs.map +1 -1
  153. package/dist/components/table/index.js +22 -22
  154. package/dist/components/table/index.js.map +1 -1
  155. package/dist/components/textarea/index.cjs +1 -1
  156. package/dist/components/textarea/index.cjs.map +1 -1
  157. package/dist/components/textarea/index.js +23 -23
  158. package/dist/components/textarea/index.js.map +1 -1
  159. package/dist/components/toast/index.cjs +1 -1
  160. package/dist/components/toast/index.cjs.map +1 -1
  161. package/dist/components/toast/index.js +23 -24
  162. package/dist/components/toast/index.js.map +1 -1
  163. package/dist/components/toggle/index.cjs +1 -1
  164. package/dist/components/toggle/index.js +1 -1
  165. package/dist/components/toolbar/index.cjs +1 -1
  166. package/dist/components/toolbar/index.js +9 -9
  167. package/dist/index-CiEbbnD6.js +42 -0
  168. package/dist/index-CiEbbnD6.js.map +1 -0
  169. package/dist/index-ClrKYsAQ.cjs +2 -0
  170. package/dist/index-ClrKYsAQ.cjs.map +1 -0
  171. package/dist/index.cjs +1 -1
  172. package/dist/index.d.ts +28 -22
  173. package/dist/index.js +33 -33
  174. package/dist/styles.module-BOTEBJ0C.js +9 -0
  175. package/dist/styles.module-BOTEBJ0C.js.map +1 -0
  176. package/dist/styles.module-BPvMQa_x.cjs +2 -0
  177. package/dist/styles.module-BPvMQa_x.cjs.map +1 -0
  178. package/dist/tokens.css +44 -12
  179. package/dist/tokens.json +541 -68
  180. package/package.json +1 -1
  181. package/dist/components/layout/index.cjs +0 -2
  182. package/dist/components/layout/index.cjs.map +0 -1
  183. package/dist/components/layout/index.js +0 -18
  184. package/dist/components/layout/index.js.map +0 -1
  185. package/dist/index-BpUboRfJ.cjs +0 -2
  186. package/dist/index-BpUboRfJ.cjs.map +0 -1
  187. package/dist/index-ChKhFyp8.js +0 -40
  188. package/dist/index-ChKhFyp8.js.map +0 -1
  189. package/dist/styles.module-DZXAP_eP.js +0 -8
  190. package/dist/styles.module-DZXAP_eP.js.map +0 -1
  191. package/dist/styles.module-Vt6mmlsz.cjs +0 -2
  192. package/dist/styles.module-Vt6mmlsz.cjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../src/components/file/index.tsx"],"sourcesContent":["import { Icon } from '@/components/icon';\n\nimport styles from './styles.module.css';\n\nexport type FileProps = React.ComponentPropsWithRef<'div'> & {\n name: string;\n onClick?: () => void;\n onDelete?: () => void;\n url?: string;\n};\n\nexport const File = ({ name, onClick, onDelete, ref, url }: FileProps) => {\n return (\n <div\n className={styles.file}\n ref={ref}\n >\n <a\n href={url}\n onClick={(e) => {\n e.stopPropagation();\n\n if (onClick || !url) {\n e.preventDefault();\n onClick?.();\n }\n }}\n title={name}\n >\n <Icon\n name={'document'}\n size={'small'}\n variant={'primary'}\n />\n {name}\n </a>\n {onDelete && (\n <a\n aria-label={'delete document'}\n className={styles.delete}\n onClick={() => onDelete()}\n tabIndex={0}\n >\n <Icon\n name={'trash'}\n size={'small'}\n variant={'danger'}\n />\n </a>\n )}\n </div>\n );\n};\n"],"names":["File","name","onClick","onDelete","ref","url","styles","file","jsxs","e","stopPropagation","preventDefault","jsx","Icon","delete"],"mappings":"2MAWaA,EAAOA,CAAC,CAAEC,KAAAA,EAAMC,QAAAA,EAASC,SAAAA,EAAUC,IAAAA,EAAKC,IAAAA,CAAe,WAE/D,MAAA,CACC,UAAWC,EAAOC,KAClB,IAAAH,EAAS,iBAAA,OAET,SAAA,CAAAI,EAAAA,KAAC,IAAA,CACC,KAAMH,EACN,QAAUI,GAAM,CACdA,EAAEC,gBAAAA,GAEER,GAAW,CAACG,KACdI,EAAEE,eAAAA,EACFT,GAAAA,MAAAA,IAEJ,EACA,MAAOD,EAEP,SAAA,CAAAW,MAACC,EAAAA,MACC,KAAM,WACN,KAAM,QACN,QAAS,UAAU,EAEpBZ,CAAAA,EACH,EACCE,SACE,IAAA,CACC,aAAY,kBACZ,UAAWG,EAAOQ,OAClB,QAAS,IAAMX,EAAAA,EACf,SAAU,EAEV,eAACU,EAAAA,KAAA,CACC,KAAM,QACN,KAAM,QACN,QAAS,QAAA,CAAS,CAAA,CAEtB,CAAA,EAEJ"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../src/components/file/index.tsx"],"sourcesContent":["import { Icon } from '@/components/icon';\n\nimport styles from './styles.module.css';\n\nexport type FileProps = React.ComponentPropsWithRef<'div'> & {\n deleteAccessibleLabel?: string;\n name: string;\n onClick?: () => void;\n onDelete?: () => void;\n url?: string;\n};\n\nexport const File = ({ deleteAccessibleLabel, name, onClick, onDelete, ref, url }: FileProps) => {\n return (\n <div\n className={styles.file}\n ref={ref}\n >\n <a\n href={url}\n onClick={(e) => {\n e.stopPropagation();\n\n if (onClick || !url) {\n e.preventDefault();\n onClick?.();\n }\n }}\n title={name}\n >\n <Icon\n name={'document'}\n size={'small'}\n variant={'primary'}\n />\n {name}\n </a>\n {onDelete && (\n <a\n aria-label={deleteAccessibleLabel ?? `Delete ${name}`}\n className={styles.delete}\n onClick={() => onDelete()}\n tabIndex={0}\n >\n <Icon\n name={'trash'}\n size={'small'}\n variant={'danger'}\n />\n </a>\n )}\n </div>\n );\n};\n"],"names":["File","deleteAccessibleLabel","name","onClick","onDelete","ref","url","styles","file","jsxs","e","stopPropagation","preventDefault","jsx","Icon","delete"],"mappings":"2MAYaA,EAAOA,CAAC,CAAEC,sBAAAA,EAAuBC,KAAAA,EAAMC,QAAAA,EAASC,SAAAA,EAAUC,IAAAA,EAAKC,IAAAA,CAAe,WAEtF,MAAA,CACC,UAAWC,EAAOC,KAClB,IAAAH,EAAS,iBAAA,OAET,SAAA,CAAAI,EAAAA,KAAC,IAAA,CACC,KAAMH,EACN,QAAUI,GAAM,CACdA,EAAEC,gBAAAA,GAEER,GAAW,CAACG,KACdI,EAAEE,eAAAA,EACFT,GAAAA,MAAAA,IAEJ,EACA,MAAOD,EAEP,SAAA,CAAAW,MAACC,EAAAA,MACC,KAAM,WACN,KAAM,QACN,QAAS,UAAU,EAEpBZ,CAAAA,EACH,EACCE,GACCS,EAAAA,IAAC,IAAA,CACC,aAAYZ,GAAyB,UAAUC,CAAI,GACnD,UAAWK,EAAOQ,OAClB,QAAS,IAAMX,EAAAA,EACf,SAAU,EAEV,SAAAS,EAAAA,IAACC,EAAAA,KAAA,CACC,KAAM,QACN,KAAM,QACN,QAAS,QAAA,CAAS,CAAA,CAEtB,CAAA,EAEJ"}
@@ -1,24 +1,25 @@
1
- import { jsxs as s, jsx as a } from "react/jsx-runtime";
1
+ import { jsxs as i, jsx as a } from "react/jsx-runtime";
2
2
  import { Icon as n } from "../icon/index.js";
3
- import '../../assets/index10.css';const f = "_file_4fkv5_1", d = {
4
- file: f,
5
- delete: "_delete_4fkv5_50"
6
- }, p = ({
3
+ import '../../assets/index10.css';const c = "_file_tncrs_1", d = {
4
+ file: c,
5
+ delete: "_delete_tncrs_52"
6
+ }, _ = ({
7
+ deleteAccessibleLabel: m,
7
8
  name: t,
8
9
  onClick: e,
9
- onDelete: l,
10
- ref: m,
11
- url: r
12
- }) => /* @__PURE__ */ s("div", { className: d.file, ref: m, "data-component": "file", children: [
13
- /* @__PURE__ */ s("a", { href: r, onClick: (i) => {
14
- i.stopPropagation(), (e || !r) && (i.preventDefault(), e == null || e());
10
+ onDelete: r,
11
+ ref: o,
12
+ url: s
13
+ }) => /* @__PURE__ */ i("div", { className: d.file, ref: o, "data-component": "file", children: [
14
+ /* @__PURE__ */ i("a", { href: s, onClick: (l) => {
15
+ l.stopPropagation(), (e || !s) && (l.preventDefault(), e == null || e());
15
16
  }, title: t, children: [
16
17
  /* @__PURE__ */ a(n, { name: "document", size: "small", variant: "primary" }),
17
18
  t
18
19
  ] }),
19
- l && /* @__PURE__ */ a("a", { "aria-label": "delete document", className: d.delete, onClick: () => l(), tabIndex: 0, children: /* @__PURE__ */ a(n, { name: "trash", size: "small", variant: "danger" }) })
20
+ r && /* @__PURE__ */ a("a", { "aria-label": m ?? `Delete ${t}`, className: d.delete, onClick: () => r(), tabIndex: 0, children: /* @__PURE__ */ a(n, { name: "trash", size: "small", variant: "danger" }) })
20
21
  ] });
21
22
  export {
22
- p as File
23
+ _ as File
23
24
  };
24
25
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/file/index.tsx"],"sourcesContent":["import { Icon } from '@/components/icon';\n\nimport styles from './styles.module.css';\n\nexport type FileProps = React.ComponentPropsWithRef<'div'> & {\n name: string;\n onClick?: () => void;\n onDelete?: () => void;\n url?: string;\n};\n\nexport const File = ({ name, onClick, onDelete, ref, url }: FileProps) => {\n return (\n <div\n className={styles.file}\n ref={ref}\n >\n <a\n href={url}\n onClick={(e) => {\n e.stopPropagation();\n\n if (onClick || !url) {\n e.preventDefault();\n onClick?.();\n }\n }}\n title={name}\n >\n <Icon\n name={'document'}\n size={'small'}\n variant={'primary'}\n />\n {name}\n </a>\n {onDelete && (\n <a\n aria-label={'delete document'}\n className={styles.delete}\n onClick={() => onDelete()}\n tabIndex={0}\n >\n <Icon\n name={'trash'}\n size={'small'}\n variant={'danger'}\n />\n </a>\n )}\n </div>\n );\n};\n"],"names":["File","name","onClick","onDelete","ref","url","styles","file","jsxs","e","stopPropagation","preventDefault","jsx","Icon","delete"],"mappings":";;;;;GAWaA,IAAOA,CAAC;AAAA,EAAEC,MAAAA;AAAAA,EAAMC,SAAAA;AAAAA,EAASC,UAAAA;AAAAA,EAAUC,KAAAA;AAAAA,EAAKC,KAAAA;AAAe,wBAE/D,OAAA,EACC,WAAWC,EAAOC,MAClB,KAAAH,GAAS,kBAAA,QAET,UAAA;AAAA,EAAA,gBAAAI,EAAC,KAAA,EACC,MAAMH,GACN,SAAUI,CAAAA,MAAM;AACdA,IAAAA,EAAEC,gBAAAA,IAEER,KAAW,CAACG,OACdI,EAAEE,eAAAA,GACFT,KAAAA,QAAAA;AAAAA,EAEJ,GACA,OAAOD,GAEP,UAAA;AAAA,IAAA,gBAAAW,EAACC,KACC,MAAM,YACN,MAAM,SACN,SAAS,WAAU;AAAA,IAEpBZ;AAAAA,EAAAA,GACH;AAAA,EACCE,uBACE,KAAA,EACC,cAAY,mBACZ,WAAWG,EAAOQ,QAClB,SAAS,MAAMX,EAAAA,GACf,UAAU,GAEV,4BAACU,GAAA,EACC,MAAM,SACN,MAAM,SACN,SAAS,SAAA,CAAS,EAAA,CAEtB;AAAA,GAEJ;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/file/index.tsx"],"sourcesContent":["import { Icon } from '@/components/icon';\n\nimport styles from './styles.module.css';\n\nexport type FileProps = React.ComponentPropsWithRef<'div'> & {\n deleteAccessibleLabel?: string;\n name: string;\n onClick?: () => void;\n onDelete?: () => void;\n url?: string;\n};\n\nexport const File = ({ deleteAccessibleLabel, name, onClick, onDelete, ref, url }: FileProps) => {\n return (\n <div\n className={styles.file}\n ref={ref}\n >\n <a\n href={url}\n onClick={(e) => {\n e.stopPropagation();\n\n if (onClick || !url) {\n e.preventDefault();\n onClick?.();\n }\n }}\n title={name}\n >\n <Icon\n name={'document'}\n size={'small'}\n variant={'primary'}\n />\n {name}\n </a>\n {onDelete && (\n <a\n aria-label={deleteAccessibleLabel ?? `Delete ${name}`}\n className={styles.delete}\n onClick={() => onDelete()}\n tabIndex={0}\n >\n <Icon\n name={'trash'}\n size={'small'}\n variant={'danger'}\n />\n </a>\n )}\n </div>\n );\n};\n"],"names":["File","deleteAccessibleLabel","name","onClick","onDelete","ref","url","styles","file","jsxs","e","stopPropagation","preventDefault","jsx","Icon","delete"],"mappings":";;;;;GAYaA,IAAOA,CAAC;AAAA,EAAEC,uBAAAA;AAAAA,EAAuBC,MAAAA;AAAAA,EAAMC,SAAAA;AAAAA,EAASC,UAAAA;AAAAA,EAAUC,KAAAA;AAAAA,EAAKC,KAAAA;AAAe,wBAEtF,OAAA,EACC,WAAWC,EAAOC,MAClB,KAAAH,GAAS,kBAAA,QAET,UAAA;AAAA,EAAA,gBAAAI,EAAC,KAAA,EACC,MAAMH,GACN,SAAUI,CAAAA,MAAM;AACdA,IAAAA,EAAEC,gBAAAA,IAEER,KAAW,CAACG,OACdI,EAAEE,eAAAA,GACFT,KAAAA,QAAAA;AAAAA,EAEJ,GACA,OAAOD,GAEP,UAAA;AAAA,IAAA,gBAAAW,EAACC,KACC,MAAM,YACN,MAAM,SACN,SAAS,WAAU;AAAA,IAEpBZ;AAAAA,EAAAA,GACH;AAAA,EACCE,KACC,gBAAAS,EAAC,KAAA,EACC,cAAYZ,KAAyB,UAAUC,CAAI,IACnD,WAAWK,EAAOQ,QAClB,SAAS,MAAMX,EAAAA,GACf,UAAU,GAEV,UAAA,gBAAAS,EAACC,GAAA,EACC,MAAM,SACN,MAAM,SACN,SAAS,SAAA,CAAS,EAAA,CAEtB;AAAA,GAEJ;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('../../assets/index9.css');const r=require("react/jsx-runtime"),n="_footer_uv5cc_1",s={footer:n},a=({animation:t,children:o,...e})=>r.jsx("footer",{className:s.footer,"data-animation":t,...e,"data-component":"footer",children:o&&o});exports.Footer=a;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('../../assets/index9.css');const r=require("react/jsx-runtime"),n="_footer_1ktpq_1",s={footer:n},a=({animation:t,children:o,...e})=>r.jsx("footer",{className:s.footer,"data-animation":t,...e,"data-component":"footer",children:o&&o});exports.Footer=a;
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1,12 +1,12 @@
1
1
  import { jsx as r } from "react/jsx-runtime";
2
- import '../../assets/index9.css';const a = "_footer_uv5cc_1", n = {
2
+ import '../../assets/index9.css';const a = "_footer_1ktpq_1", n = {
3
3
  footer: a
4
- }, c = ({
4
+ }, f = ({
5
5
  animation: t,
6
6
  children: o,
7
7
  ...e
8
8
  }) => /* @__PURE__ */ r("footer", { className: n.footer, "data-animation": t, ...e, "data-component": "footer", children: o && o });
9
9
  export {
10
- c as Footer
10
+ f as Footer
11
11
  };
12
12
  //# sourceMappingURL=index.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('../../assets/index35.css');const i=require("react/jsx-runtime"),a=require("../../classix-5H4IWnMA.cjs"),m="_form_fapts_1",c="_inline_fapts_26",t={form:m,inline:c},l=({animation:e,children:n,className:o,inline:s=!1,...r})=>i.jsx("form",{className:a.t(o,s&&t.inline,t.form),"data-animation":e,...r,"data-component":"form",children:n&&n});exports.Form=l;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('../../assets/index35.css');const r=require("react/jsx-runtime"),m=require("../../classix-5H4IWnMA.cjs"),a="_form_1sine_1",c="_inline_1sine_26",e={form:a,inline:c},l=({animation:o,children:n,className:t,inline:i=!1,...s})=>r.jsx("form",{className:m.t(t,i&&e.inline,e.form),"data-animation":o,...s,"data-component":"form",children:n&&n});exports.Form=l;
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1,16 +1,16 @@
1
- import { jsx as s } from "react/jsx-runtime";
2
- import { t as a } from "../../classix-DG18itHa.js";
3
- import '../../assets/index35.css';const f = "_form_fapts_1", e = "_inline_fapts_26", n = {
4
- form: f,
5
- inline: e
6
- }, p = ({
7
- animation: t,
8
- children: o,
1
+ import { jsx as e } from "react/jsx-runtime";
2
+ import { t as s } from "../../classix-DG18itHa.js";
3
+ import '../../assets/index35.css';const a = "_form_1sine_1", f = "_inline_1sine_26", o = {
4
+ form: a,
5
+ inline: f
6
+ }, _ = ({
7
+ animation: i,
8
+ children: n,
9
9
  className: m,
10
10
  inline: r = !1,
11
- ...i
12
- }) => /* @__PURE__ */ s("form", { className: a(m, r && n.inline, n.form), "data-animation": t, ...i, "data-component": "form", children: o && o });
11
+ ...t
12
+ }) => /* @__PURE__ */ e("form", { className: s(m, r && o.inline, o.form), "data-animation": i, ...t, "data-component": "form", children: n && n });
13
13
  export {
14
- p as Form
14
+ _ as Form
15
15
  };
16
16
  //# sourceMappingURL=index.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('../../assets/index8.css');const a=require("react/jsx-runtime"),b=require("../../classix-5H4IWnMA.cjs"),y=require("../loading/index.cjs"),j="_graph_18yw9_11",w="_plot_18yw9_20",v="_item_18yw9_30",N="_column_18yw9_36",f="_value_18yw9_44",M="_track_18yw9_54",V="_bar_18yw9_61",k="_label_18yw9_82",e={graph:j,plot:w,item:v,column:N,value:f,track:M,bar:V,label:k,"is-loading":"_is-loading_18yw9_91"},h=l=>Number.isFinite(l)?Math.max(0,l):0,S=({className:l,height:r,items:n=[],label:o,style:_,valueFormatter:u=c=>c.toLocaleString(),...p})=>{const c=n.reduce((s,t)=>Math.max(s,h(t.value)),0),d={..._,"--graph-columns":Math.max(n.length,1),"--graph-height":r||"calc(var(--unit) * 16)"};return a.jsxs("figure",{className:b.t(e.graph,l),style:d,...p,"data-component":"graph",children:[o&&a.jsx("figcaption",{"data-content":"screen-reader",children:o}),n.length>0?a.jsx("ul",{className:e.plot,children:n.map((s,t)=>{const i=h(s.value),m=c>0?i/c*100:0,g=i>0?Math.max(m,6):0,x={"--bar-color":s.color,"--bar-delay":t*50+"ms","--bar-height":g+"%"};return a.jsxs("li",{className:e.item,"data-component":"graph",children:[a.jsxs("div",{className:e.column,children:[a.jsx("span",{className:e.value,children:u(s.value)}),a.jsx("span",{className:e.track,children:a.jsx("span",{className:e.bar,style:x})})]}),a.jsx("span",{className:e.label,title:s.label,children:s.label})]},s.label+t)})}):a.jsx("div",{className:e["is-loading"],children:a.jsx(y.Loading,{})})]})};exports.Graph=S;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('../../assets/index8.css');const a=require("react/jsx-runtime"),x=require("../../classix-5H4IWnMA.cjs"),j=require("../loading/index.cjs"),w="_graph_1web1_11",v="_plot_1web1_20",N="_item_1web1_34",y="_column_1web1_40",f="_value_1web1_48",k="_track_1web1_58",M="_bar_1web1_65",V="_label_1web1_87",e={graph:w,plot:v,item:N,column:y,value:f,track:k,bar:M,label:V,"is-loading":"_is-loading_1web1_96"},i=l=>Number.isFinite(l)?Math.max(0,l):0,S=({accessibleLabel:l,className:h,height:r,items:n=[],style:u,valueFormatter:_=t=>t.toLocaleString(),...p})=>{const t=n.reduce((s,c)=>Math.max(s,i(c.value)),0),b={...u,"--graph-columns":Math.max(n.length,1),"--graph-height":r||"calc(var(--utils-tokens-unit) * 16)"};return a.jsxs("figure",{className:x.t(e.graph,h),style:b,...p,"data-component":"graph",children:[l&&a.jsx("figcaption",{"data-content":"screen-reader",children:l}),n.length>0?a.jsx("ul",{className:e.plot,children:n.map((s,c)=>{const o=i(s.value),d=t>0?o/t*100:0,m=o>0?Math.max(d,6):0,g={"--bar-color":s.color,"--bar-delay":c*50+"ms","--bar-height":m+"%"};return a.jsxs("li",{className:e.item,"data-component":"graph",children:[a.jsxs("div",{className:e.column,children:[a.jsx("span",{className:e.value,children:_(s.value)}),a.jsx("span",{className:e.track,children:a.jsx("span",{className:e.bar,style:g})})]}),a.jsx("span",{className:e.label,title:s.label,children:s.label})]},s.label+c)})}):a.jsx("div",{className:e["is-loading"],children:a.jsx(j.Loading,{})})]})};exports.Graph=S;
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../src/components/graph/index.tsx"],"sourcesContent":["import cx from 'classix';\n\nimport { Loading } from '../loading';\nimport styles from './styles.module.css';\n\nexport type GraphItem = {\n color?: string;\n label: string;\n value: number;\n};\n\nexport type GraphProps = Omit<React.ComponentPropsWithoutRef<'figure'>, 'children'> & {\n height?: string;\n items?: GraphItem[];\n label?: string;\n valueFormatter?: (value: number) => string;\n};\n\nconst toSafeValue = (value: number) => (Number.isFinite(value) ? Math.max(0, value) : 0);\n\nexport const Graph = ({\n className,\n height,\n items = [],\n label,\n style,\n valueFormatter = (value) => value.toLocaleString(),\n ...props\n}: GraphProps) => {\n type withVars = React.CSSProperties & {\n '--graph-columns'?: number;\n '--graph-height'?: string;\n };\n\n type withBarVars = React.CSSProperties & {\n '--bar-color'?: string;\n '--bar-delay'?: string;\n '--bar-height'?: string;\n };\n\n const maxValue = items.reduce((max, item) => Math.max(max, toSafeValue(item.value)), 0);\n\n const withVars: withVars = {\n ...style,\n '--graph-columns': Math.max(items.length, 1),\n '--graph-height': height ? height : 'calc(var(--unit) * 16)',\n };\n\n return (\n <figure\n className={cx(styles.graph, className)}\n style={withVars}\n {...props}\n >\n {label && <figcaption data-content='screen-reader'>{label}</figcaption>}\n {items.length > 0 ? (\n <ul className={styles.plot}>\n {items.map((item, index) => {\n const safeValue = toSafeValue(item.value);\n const rawPercent = maxValue > 0 ? (safeValue / maxValue) * 100 : 0;\n const percent = safeValue > 0 ? Math.max(rawPercent, 6) : 0;\n\n const withBarVars: withBarVars = {\n '--bar-color': item.color,\n '--bar-delay': index * 50 + 'ms',\n '--bar-height': percent + '%',\n };\n\n return (\n <li\n className={styles.item}\n key={item.label + index}\n >\n <div className={styles.column}>\n <span className={styles.value}>{valueFormatter(item.value)}</span>\n <span className={styles.track}>\n <span\n className={styles.bar}\n style={withBarVars}\n />\n </span>\n </div>\n <span\n className={styles.label}\n title={item.label}\n >\n {item.label}\n </span>\n </li>\n );\n })}\n </ul>\n ) : (\n <div className={styles['is-loading']}>\n <Loading />\n </div>\n )}\n </figure>\n );\n};\n"],"names":["toSafeValue","value","Number","isFinite","Math","max","Graph","className","height","items","label","style","valueFormatter","toLocaleString","props","maxValue","reduce","item","withVars","length","jsxs","cx","styles","graph","jsx","plot","map","index","safeValue","rawPercent","percent","withBarVars","color","column","track","bar","Loading"],"mappings":"icAkBMA,EAAeC,GAAmBC,OAAOC,SAASF,CAAK,EAAIG,KAAKC,IAAI,EAAGJ,CAAK,EAAI,EAEzEK,EAAQA,CAAC,CACpBC,UAAAA,EACAC,OAAAA,EACAC,MAAAA,EAAQ,CAAA,EACRC,MAAAA,EACAC,MAAAA,EACAC,eAAAA,EAAkBX,GAAUA,EAAMY,eAAAA,EAClC,GAAGC,CACO,IAAM,CAYhB,MAAMC,EAAWN,EAAMO,OAAO,CAACX,EAAKY,IAASb,KAAKC,IAAIA,EAAKL,EAAYiB,EAAKhB,KAAK,CAAC,EAAG,CAAC,EAEhFiB,EAAqB,CACzB,GAAGP,EACH,kBAAmBP,KAAKC,IAAII,EAAMU,OAAQ,CAAC,EAC3C,iBAAkBX,GAAkB,wBAAA,EAGtC,OACEY,EAAAA,KAAC,SAAA,CACC,UAAWC,EAAAA,EAAGC,EAAOC,MAAOhB,CAAS,EACrC,MAAOW,EACP,GAAIJ,EAAM,iBAAA,QAETJ,SAAAA,CAAAA,GAASc,EAAAA,IAAC,aAAA,CAAW,eAAa,gBAAiBd,SAAAA,EAAM,EACzDD,EAAMU,OAAS,EACdK,EAAAA,IAAC,KAAA,CAAG,UAAWF,EAAOG,KACnBhB,SAAAA,EAAMiB,IAAI,CAACT,EAAMU,IAAU,CAC1B,MAAMC,EAAY5B,EAAYiB,EAAKhB,KAAK,EAClC4B,EAAad,EAAW,EAAKa,EAAYb,EAAY,IAAM,EAC3De,EAAUF,EAAY,EAAIxB,KAAKC,IAAIwB,EAAY,CAAC,EAAI,EAEpDE,EAA2B,CAC/B,cAAed,EAAKe,MACpB,cAAeL,EAAQ,GAAK,KAC5B,eAAgBG,EAAU,GAAA,EAG5B,cACG,KAAA,CACC,UAAWR,EAAOL,KACM,iBAAA,QAExB,SAAA,CAAAG,EAAAA,KAAC,MAAA,CAAI,UAAWE,EAAOW,OACrB,SAAA,CAAAT,EAAAA,IAAC,QAAK,UAAWF,EAAOrB,MAAQW,SAAAA,EAAeK,EAAKhB,KAAK,EAAE,EAC3DuB,EAAAA,IAAC,OAAA,CAAK,UAAWF,EAAOY,MACtB,SAAAV,EAAAA,IAAC,OAAA,CACC,UAAWF,EAAOa,IAClB,MAAOJ,CAAAA,CAAY,CAAA,CAEvB,CAAA,EACF,EACAP,EAAAA,IAAC,QACC,UAAWF,EAAOZ,MAClB,MAAOO,EAAKP,MAEXO,SAAAA,EAAKP,KAAAA,CACR,CAAA,GAhBKO,EAAKP,MAAQiB,CAiBpB,CAEJ,CAAC,CAAA,CACH,EAEAH,MAAC,MAAA,CAAI,UAAWF,EAAO,YAAY,EACjC,SAAAE,EAAAA,IAACY,EAAAA,QAAA,CAAA,CAAO,CAAA,CACV,CAAA,EAEJ,CAEJ"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../src/components/graph/index.tsx"],"sourcesContent":["import cx from 'classix';\n\nimport { Loading } from '../loading';\nimport styles from './styles.module.css';\n\nexport type GraphItem = {\n color?: string;\n label: string;\n value: number;\n};\n\nexport type GraphProps = Omit<React.ComponentPropsWithoutRef<'figure'>, 'children'> & {\n accessibleLabel?: string;\n height?: string;\n items?: GraphItem[];\n valueFormatter?: (value: number) => string;\n};\n\nconst toSafeValue = (value: number) => (Number.isFinite(value) ? Math.max(0, value) : 0);\n\nexport const Graph = ({\n accessibleLabel,\n className,\n height,\n items = [],\n style,\n valueFormatter = (value) => value.toLocaleString(),\n ...props\n}: GraphProps) => {\n type withVars = React.CSSProperties & {\n '--graph-columns'?: number;\n '--graph-height'?: string;\n };\n\n type withBarVars = React.CSSProperties & {\n '--bar-color'?: string;\n '--bar-delay'?: string;\n '--bar-height'?: string;\n };\n\n const maxValue = items.reduce((max, item) => Math.max(max, toSafeValue(item.value)), 0);\n\n const withVars: withVars = {\n ...style,\n '--graph-columns': Math.max(items.length, 1),\n '--graph-height': height ? height : 'calc(var(--utils-tokens-unit) * 16)',\n };\n\n return (\n <figure\n className={cx(styles.graph, className)}\n style={withVars}\n {...props}\n >\n {accessibleLabel && <figcaption data-content='screen-reader'>{accessibleLabel}</figcaption>}\n {items.length > 0 ? (\n <ul className={styles.plot}>\n {items.map((item, index) => {\n const safeValue = toSafeValue(item.value);\n const rawPercent = maxValue > 0 ? (safeValue / maxValue) * 100 : 0;\n const percent = safeValue > 0 ? Math.max(rawPercent, 6) : 0;\n\n const withBarVars: withBarVars = {\n '--bar-color': item.color,\n '--bar-delay': index * 50 + 'ms',\n '--bar-height': percent + '%',\n };\n\n return (\n <li\n className={styles.item}\n key={item.label + index}\n >\n <div className={styles.column}>\n <span className={styles.value}>{valueFormatter(item.value)}</span>\n <span className={styles.track}>\n <span\n className={styles.bar}\n style={withBarVars}\n />\n </span>\n </div>\n <span\n className={styles.label}\n title={item.label}\n >\n {item.label}\n </span>\n </li>\n );\n })}\n </ul>\n ) : (\n <div className={styles['is-loading']}>\n <Loading />\n </div>\n )}\n </figure>\n );\n};\n"],"names":["toSafeValue","value","Number","isFinite","Math","max","Graph","accessibleLabel","className","height","items","style","valueFormatter","toLocaleString","props","maxValue","reduce","item","withVars","length","jsxs","cx","styles","graph","jsx","plot","map","index","safeValue","rawPercent","percent","withBarVars","color","column","track","bar","label","Loading"],"mappings":"icAkBMA,EAAeC,GAAmBC,OAAOC,SAASF,CAAK,EAAIG,KAAKC,IAAI,EAAGJ,CAAK,EAAI,EAEzEK,EAAQA,CAAC,CACpBC,gBAAAA,EACAC,UAAAA,EACAC,OAAAA,EACAC,MAAAA,EAAQ,CAAA,EACRC,MAAAA,EACAC,eAAAA,EAAkBX,GAAUA,EAAMY,eAAAA,EAClC,GAAGC,CACO,IAAM,CAYhB,MAAMC,EAAWL,EAAMM,OAAO,CAACX,EAAKY,IAASb,KAAKC,IAAIA,EAAKL,EAAYiB,EAAKhB,KAAK,CAAC,EAAG,CAAC,EAEhFiB,EAAqB,CACzB,GAAGP,EACH,kBAAmBP,KAAKC,IAAIK,EAAMS,OAAQ,CAAC,EAC3C,iBAAkBV,GAAkB,qCAAA,EAGtC,OACEW,EAAAA,KAAC,SAAA,CACC,UAAWC,EAAAA,EAAGC,EAAOC,MAAOf,CAAS,EACrC,MAAOU,EACP,GAAIJ,EAAM,iBAAA,QAETP,SAAAA,CAAAA,GAAmBiB,EAAAA,IAAC,aAAA,CAAW,eAAa,gBAAiBjB,SAAAA,EAAgB,EAC7EG,EAAMS,OAAS,EACdK,EAAAA,IAAC,KAAA,CAAG,UAAWF,EAAOG,KACnBf,SAAAA,EAAMgB,IAAI,CAACT,EAAMU,IAAU,CAC1B,MAAMC,EAAY5B,EAAYiB,EAAKhB,KAAK,EAClC4B,EAAad,EAAW,EAAKa,EAAYb,EAAY,IAAM,EAC3De,EAAUF,EAAY,EAAIxB,KAAKC,IAAIwB,EAAY,CAAC,EAAI,EAEpDE,EAA2B,CAC/B,cAAed,EAAKe,MACpB,cAAeL,EAAQ,GAAK,KAC5B,eAAgBG,EAAU,GAAA,EAG5B,cACG,KAAA,CACC,UAAWR,EAAOL,KACM,iBAAA,QAExB,SAAA,CAAAG,EAAAA,KAAC,MAAA,CAAI,UAAWE,EAAOW,OACrB,SAAA,CAAAT,EAAAA,IAAC,QAAK,UAAWF,EAAOrB,MAAQW,SAAAA,EAAeK,EAAKhB,KAAK,EAAE,EAC3DuB,EAAAA,IAAC,OAAA,CAAK,UAAWF,EAAOY,MACtB,SAAAV,EAAAA,IAAC,OAAA,CACC,UAAWF,EAAOa,IAClB,MAAOJ,CAAAA,CAAY,CAAA,CAEvB,CAAA,EACF,EACAP,EAAAA,IAAC,QACC,UAAWF,EAAOc,MAClB,MAAOnB,EAAKmB,MAEXnB,SAAAA,EAAKmB,KAAAA,CACR,CAAA,GAhBKnB,EAAKmB,MAAQT,CAiBpB,CAEJ,CAAC,CAAA,CACH,EAEAH,MAAC,MAAA,CAAI,UAAWF,EAAO,YAAY,EACjC,SAAAE,EAAAA,IAACa,EAAAA,QAAA,CAAA,CAAO,CAAA,CACV,CAAA,EAEJ,CAEJ"}
@@ -1,49 +1,49 @@
1
- import { jsxs as s, jsx as e } from "react/jsx-runtime";
2
- import { t as w } from "../../classix-DG18itHa.js";
3
- import { Loading as N } from "../loading/index.js";
4
- import '../../assets/index8.css';const v = "_graph_18yw9_11", f = "_plot_18yw9_20", x = "_item_18yw9_30", V = "_column_18yw9_36", k = "_value_18yw9_44", M = "_track_18yw9_54", j = "_bar_18yw9_61", L = "_label_18yw9_82", a = {
5
- graph: v,
6
- plot: f,
7
- item: x,
1
+ import { jsxs as s, jsx as l } from "react/jsx-runtime";
2
+ import { t as N } from "../../classix-DG18itHa.js";
3
+ import { Loading as v } from "../loading/index.js";
4
+ import '../../assets/index8.css';const f = "_graph_1web1_11", x = "_plot_1web1_20", k = "_item_1web1_34", V = "_column_1web1_40", y = "_value_1web1_48", M = "_track_1web1_58", j = "_bar_1web1_65", S = "_label_1web1_87", a = {
5
+ graph: f,
6
+ plot: x,
7
+ item: k,
8
8
  column: V,
9
- value: k,
9
+ value: y,
10
10
  track: M,
11
11
  bar: j,
12
- label: L,
13
- "is-loading": "_is-loading_18yw9_91"
14
- }, _ = (c) => Number.isFinite(c) ? Math.max(0, c) : 0, G = ({
15
- className: c,
12
+ label: S,
13
+ "is-loading": "_is-loading_1web1_96"
14
+ }, h = (t) => Number.isFinite(t) ? Math.max(0, t) : 0, L = ({
15
+ accessibleLabel: t,
16
+ className: _,
16
17
  height: o,
17
- items: t = [],
18
- label: i,
18
+ items: n = [],
19
19
  style: m,
20
20
  valueFormatter: p = (r) => r.toLocaleString(),
21
- ...u
21
+ ...b
22
22
  }) => {
23
- const r = t.reduce((l, n) => Math.max(l, _(n.value)), 0), d = {
23
+ const r = n.reduce((e, c) => Math.max(e, h(c.value)), 0), u = {
24
24
  ...m,
25
- "--graph-columns": Math.max(t.length, 1),
26
- "--graph-height": o || "calc(var(--unit) * 16)"
25
+ "--graph-columns": Math.max(n.length, 1),
26
+ "--graph-height": o || "calc(var(--utils-tokens-unit) * 16)"
27
27
  };
28
- return /* @__PURE__ */ s("figure", { className: w(a.graph, c), style: d, ...u, "data-component": "graph", children: [
29
- i && /* @__PURE__ */ e("figcaption", { "data-content": "screen-reader", children: i }),
30
- t.length > 0 ? /* @__PURE__ */ e("ul", { className: a.plot, children: t.map((l, n) => {
31
- const h = _(l.value), g = r > 0 ? h / r * 100 : 0, b = h > 0 ? Math.max(g, 6) : 0, y = {
32
- "--bar-color": l.color,
33
- "--bar-delay": n * 50 + "ms",
34
- "--bar-height": b + "%"
28
+ return /* @__PURE__ */ s("figure", { className: N(a.graph, _), style: u, ...b, "data-component": "graph", children: [
29
+ t && /* @__PURE__ */ l("figcaption", { "data-content": "screen-reader", children: t }),
30
+ n.length > 0 ? /* @__PURE__ */ l("ul", { className: a.plot, children: n.map((e, c) => {
31
+ const i = h(e.value), d = r > 0 ? i / r * 100 : 0, g = i > 0 ? Math.max(d, 6) : 0, w = {
32
+ "--bar-color": e.color,
33
+ "--bar-delay": c * 50 + "ms",
34
+ "--bar-height": g + "%"
35
35
  };
36
36
  return /* @__PURE__ */ s("li", { className: a.item, "data-component": "graph", children: [
37
37
  /* @__PURE__ */ s("div", { className: a.column, children: [
38
- /* @__PURE__ */ e("span", { className: a.value, children: p(l.value) }),
39
- /* @__PURE__ */ e("span", { className: a.track, children: /* @__PURE__ */ e("span", { className: a.bar, style: y }) })
38
+ /* @__PURE__ */ l("span", { className: a.value, children: p(e.value) }),
39
+ /* @__PURE__ */ l("span", { className: a.track, children: /* @__PURE__ */ l("span", { className: a.bar, style: w }) })
40
40
  ] }),
41
- /* @__PURE__ */ e("span", { className: a.label, title: l.label, children: l.label })
42
- ] }, l.label + n);
43
- }) }) : /* @__PURE__ */ e("div", { className: a["is-loading"], children: /* @__PURE__ */ e(N, {}) })
41
+ /* @__PURE__ */ l("span", { className: a.label, title: e.label, children: e.label })
42
+ ] }, e.label + c);
43
+ }) }) : /* @__PURE__ */ l("div", { className: a["is-loading"], children: /* @__PURE__ */ l(v, {}) })
44
44
  ] });
45
45
  };
46
46
  export {
47
- G as Graph
47
+ L as Graph
48
48
  };
49
49
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/graph/index.tsx"],"sourcesContent":["import cx from 'classix';\n\nimport { Loading } from '../loading';\nimport styles from './styles.module.css';\n\nexport type GraphItem = {\n color?: string;\n label: string;\n value: number;\n};\n\nexport type GraphProps = Omit<React.ComponentPropsWithoutRef<'figure'>, 'children'> & {\n height?: string;\n items?: GraphItem[];\n label?: string;\n valueFormatter?: (value: number) => string;\n};\n\nconst toSafeValue = (value: number) => (Number.isFinite(value) ? Math.max(0, value) : 0);\n\nexport const Graph = ({\n className,\n height,\n items = [],\n label,\n style,\n valueFormatter = (value) => value.toLocaleString(),\n ...props\n}: GraphProps) => {\n type withVars = React.CSSProperties & {\n '--graph-columns'?: number;\n '--graph-height'?: string;\n };\n\n type withBarVars = React.CSSProperties & {\n '--bar-color'?: string;\n '--bar-delay'?: string;\n '--bar-height'?: string;\n };\n\n const maxValue = items.reduce((max, item) => Math.max(max, toSafeValue(item.value)), 0);\n\n const withVars: withVars = {\n ...style,\n '--graph-columns': Math.max(items.length, 1),\n '--graph-height': height ? height : 'calc(var(--unit) * 16)',\n };\n\n return (\n <figure\n className={cx(styles.graph, className)}\n style={withVars}\n {...props}\n >\n {label && <figcaption data-content='screen-reader'>{label}</figcaption>}\n {items.length > 0 ? (\n <ul className={styles.plot}>\n {items.map((item, index) => {\n const safeValue = toSafeValue(item.value);\n const rawPercent = maxValue > 0 ? (safeValue / maxValue) * 100 : 0;\n const percent = safeValue > 0 ? Math.max(rawPercent, 6) : 0;\n\n const withBarVars: withBarVars = {\n '--bar-color': item.color,\n '--bar-delay': index * 50 + 'ms',\n '--bar-height': percent + '%',\n };\n\n return (\n <li\n className={styles.item}\n key={item.label + index}\n >\n <div className={styles.column}>\n <span className={styles.value}>{valueFormatter(item.value)}</span>\n <span className={styles.track}>\n <span\n className={styles.bar}\n style={withBarVars}\n />\n </span>\n </div>\n <span\n className={styles.label}\n title={item.label}\n >\n {item.label}\n </span>\n </li>\n );\n })}\n </ul>\n ) : (\n <div className={styles['is-loading']}>\n <Loading />\n </div>\n )}\n </figure>\n );\n};\n"],"names":["toSafeValue","value","Number","isFinite","Math","max","Graph","className","height","items","label","style","valueFormatter","toLocaleString","props","maxValue","reduce","item","withVars","length","jsxs","cx","styles","graph","jsx","plot","map","index","safeValue","rawPercent","percent","withBarVars","color","column","track","bar","Loading"],"mappings":";;;;;;;;;;;;;GAkBMA,IAAcA,CAACC,MAAmBC,OAAOC,SAASF,CAAK,IAAIG,KAAKC,IAAI,GAAGJ,CAAK,IAAI,GAEzEK,IAAQA,CAAC;AAAA,EACpBC,WAAAA;AAAAA,EACAC,QAAAA;AAAAA,EACAC,OAAAA,IAAQ,CAAA;AAAA,EACRC,OAAAA;AAAAA,EACAC,OAAAA;AAAAA,EACAC,gBAAAA,IAAkBX,CAAAA,MAAUA,EAAMY,eAAAA;AAAAA,EAClC,GAAGC;AACO,MAAM;AAYhB,QAAMC,IAAWN,EAAMO,OAAO,CAACX,GAAKY,MAASb,KAAKC,IAAIA,GAAKL,EAAYiB,EAAKhB,KAAK,CAAC,GAAG,CAAC,GAEhFiB,IAAqB;AAAA,IACzB,GAAGP;AAAAA,IACH,mBAAmBP,KAAKC,IAAII,EAAMU,QAAQ,CAAC;AAAA,IAC3C,kBAAkBX,KAAkB;AAAA,EAAA;AAGtC,SACE,gBAAAY,EAAC,UAAA,EACC,WAAWC,EAAGC,EAAOC,OAAOhB,CAAS,GACrC,OAAOW,GACP,GAAIJ,GAAM,kBAAA,SAETJ,UAAAA;AAAAA,IAAAA,KAAS,gBAAAc,EAAC,cAAA,EAAW,gBAAa,iBAAiBd,UAAAA,GAAM;AAAA,IACzDD,EAAMU,SAAS,IACd,gBAAAK,EAAC,MAAA,EAAG,WAAWF,EAAOG,MACnBhB,UAAAA,EAAMiB,IAAI,CAACT,GAAMU,MAAU;AAC1B,YAAMC,IAAY5B,EAAYiB,EAAKhB,KAAK,GAClC4B,IAAad,IAAW,IAAKa,IAAYb,IAAY,MAAM,GAC3De,IAAUF,IAAY,IAAIxB,KAAKC,IAAIwB,GAAY,CAAC,IAAI,GAEpDE,IAA2B;AAAA,QAC/B,eAAed,EAAKe;AAAAA,QACpB,eAAeL,IAAQ,KAAK;AAAA,QAC5B,gBAAgBG,IAAU;AAAA,MAAA;AAG5B,+BACG,MAAA,EACC,WAAWR,EAAOL,MACM,kBAAA,SAExB,UAAA;AAAA,QAAA,gBAAAG,EAAC,OAAA,EAAI,WAAWE,EAAOW,QACrB,UAAA;AAAA,UAAA,gBAAAT,EAAC,UAAK,WAAWF,EAAOrB,OAAQW,UAAAA,EAAeK,EAAKhB,KAAK,GAAE;AAAA,UAC3D,gBAAAuB,EAAC,QAAA,EAAK,WAAWF,EAAOY,OACtB,UAAA,gBAAAV,EAAC,QAAA,EACC,WAAWF,EAAOa,KAClB,OAAOJ,EAAAA,CAAY,EAAA,CAEvB;AAAA,QAAA,GACF;AAAA,QACA,gBAAAP,EAAC,UACC,WAAWF,EAAOZ,OAClB,OAAOO,EAAKP,OAEXO,UAAAA,EAAKP,MAAAA,CACR;AAAA,MAAA,KAhBKO,EAAKP,QAAQiB,CAiBpB;AAAA,IAEJ,CAAC,EAAA,CACH,IAEA,gBAAAH,EAAC,OAAA,EAAI,WAAWF,EAAO,YAAY,GACjC,UAAA,gBAAAE,EAACY,GAAA,CAAA,CAAO,EAAA,CACV;AAAA,EAAA,GAEJ;AAEJ;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/graph/index.tsx"],"sourcesContent":["import cx from 'classix';\n\nimport { Loading } from '../loading';\nimport styles from './styles.module.css';\n\nexport type GraphItem = {\n color?: string;\n label: string;\n value: number;\n};\n\nexport type GraphProps = Omit<React.ComponentPropsWithoutRef<'figure'>, 'children'> & {\n accessibleLabel?: string;\n height?: string;\n items?: GraphItem[];\n valueFormatter?: (value: number) => string;\n};\n\nconst toSafeValue = (value: number) => (Number.isFinite(value) ? Math.max(0, value) : 0);\n\nexport const Graph = ({\n accessibleLabel,\n className,\n height,\n items = [],\n style,\n valueFormatter = (value) => value.toLocaleString(),\n ...props\n}: GraphProps) => {\n type withVars = React.CSSProperties & {\n '--graph-columns'?: number;\n '--graph-height'?: string;\n };\n\n type withBarVars = React.CSSProperties & {\n '--bar-color'?: string;\n '--bar-delay'?: string;\n '--bar-height'?: string;\n };\n\n const maxValue = items.reduce((max, item) => Math.max(max, toSafeValue(item.value)), 0);\n\n const withVars: withVars = {\n ...style,\n '--graph-columns': Math.max(items.length, 1),\n '--graph-height': height ? height : 'calc(var(--utils-tokens-unit) * 16)',\n };\n\n return (\n <figure\n className={cx(styles.graph, className)}\n style={withVars}\n {...props}\n >\n {accessibleLabel && <figcaption data-content='screen-reader'>{accessibleLabel}</figcaption>}\n {items.length > 0 ? (\n <ul className={styles.plot}>\n {items.map((item, index) => {\n const safeValue = toSafeValue(item.value);\n const rawPercent = maxValue > 0 ? (safeValue / maxValue) * 100 : 0;\n const percent = safeValue > 0 ? Math.max(rawPercent, 6) : 0;\n\n const withBarVars: withBarVars = {\n '--bar-color': item.color,\n '--bar-delay': index * 50 + 'ms',\n '--bar-height': percent + '%',\n };\n\n return (\n <li\n className={styles.item}\n key={item.label + index}\n >\n <div className={styles.column}>\n <span className={styles.value}>{valueFormatter(item.value)}</span>\n <span className={styles.track}>\n <span\n className={styles.bar}\n style={withBarVars}\n />\n </span>\n </div>\n <span\n className={styles.label}\n title={item.label}\n >\n {item.label}\n </span>\n </li>\n );\n })}\n </ul>\n ) : (\n <div className={styles['is-loading']}>\n <Loading />\n </div>\n )}\n </figure>\n );\n};\n"],"names":["toSafeValue","value","Number","isFinite","Math","max","Graph","accessibleLabel","className","height","items","style","valueFormatter","toLocaleString","props","maxValue","reduce","item","withVars","length","jsxs","cx","styles","graph","jsx","plot","map","index","safeValue","rawPercent","percent","withBarVars","color","column","track","bar","label","Loading"],"mappings":";;;;;;;;;;;;;GAkBMA,IAAcA,CAACC,MAAmBC,OAAOC,SAASF,CAAK,IAAIG,KAAKC,IAAI,GAAGJ,CAAK,IAAI,GAEzEK,IAAQA,CAAC;AAAA,EACpBC,iBAAAA;AAAAA,EACAC,WAAAA;AAAAA,EACAC,QAAAA;AAAAA,EACAC,OAAAA,IAAQ,CAAA;AAAA,EACRC,OAAAA;AAAAA,EACAC,gBAAAA,IAAkBX,CAAAA,MAAUA,EAAMY,eAAAA;AAAAA,EAClC,GAAGC;AACO,MAAM;AAYhB,QAAMC,IAAWL,EAAMM,OAAO,CAACX,GAAKY,MAASb,KAAKC,IAAIA,GAAKL,EAAYiB,EAAKhB,KAAK,CAAC,GAAG,CAAC,GAEhFiB,IAAqB;AAAA,IACzB,GAAGP;AAAAA,IACH,mBAAmBP,KAAKC,IAAIK,EAAMS,QAAQ,CAAC;AAAA,IAC3C,kBAAkBV,KAAkB;AAAA,EAAA;AAGtC,SACE,gBAAAW,EAAC,UAAA,EACC,WAAWC,EAAGC,EAAOC,OAAOf,CAAS,GACrC,OAAOU,GACP,GAAIJ,GAAM,kBAAA,SAETP,UAAAA;AAAAA,IAAAA,KAAmB,gBAAAiB,EAAC,cAAA,EAAW,gBAAa,iBAAiBjB,UAAAA,GAAgB;AAAA,IAC7EG,EAAMS,SAAS,IACd,gBAAAK,EAAC,MAAA,EAAG,WAAWF,EAAOG,MACnBf,UAAAA,EAAMgB,IAAI,CAACT,GAAMU,MAAU;AAC1B,YAAMC,IAAY5B,EAAYiB,EAAKhB,KAAK,GAClC4B,IAAad,IAAW,IAAKa,IAAYb,IAAY,MAAM,GAC3De,IAAUF,IAAY,IAAIxB,KAAKC,IAAIwB,GAAY,CAAC,IAAI,GAEpDE,IAA2B;AAAA,QAC/B,eAAed,EAAKe;AAAAA,QACpB,eAAeL,IAAQ,KAAK;AAAA,QAC5B,gBAAgBG,IAAU;AAAA,MAAA;AAG5B,+BACG,MAAA,EACC,WAAWR,EAAOL,MACM,kBAAA,SAExB,UAAA;AAAA,QAAA,gBAAAG,EAAC,OAAA,EAAI,WAAWE,EAAOW,QACrB,UAAA;AAAA,UAAA,gBAAAT,EAAC,UAAK,WAAWF,EAAOrB,OAAQW,UAAAA,EAAeK,EAAKhB,KAAK,GAAE;AAAA,UAC3D,gBAAAuB,EAAC,QAAA,EAAK,WAAWF,EAAOY,OACtB,UAAA,gBAAAV,EAAC,QAAA,EACC,WAAWF,EAAOa,KAClB,OAAOJ,EAAAA,CAAY,EAAA,CAEvB;AAAA,QAAA,GACF;AAAA,QACA,gBAAAP,EAAC,UACC,WAAWF,EAAOc,OAClB,OAAOnB,EAAKmB,OAEXnB,UAAAA,EAAKmB,MAAAA,CACR;AAAA,MAAA,KAhBKnB,EAAKmB,QAAQT,CAiBpB;AAAA,IAEJ,CAAC,EAAA,CACH,IAEA,gBAAAH,EAAC,OAAA,EAAI,WAAWF,EAAO,YAAY,GACjC,UAAA,gBAAAE,EAACa,GAAA,CAAA,CAAO,EAAA,CACV;AAAA,EAAA,GAEJ;AAEJ;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('../../assets/index6.css');const r=require("react/jsx-runtime"),o=require("../../classix-5H4IWnMA.cjs"),s="_header_1q87f_1",u="_jumbo_1q87f_67",e={header:s,jumbo:u},d={default:e.default,jumbo:e.jumbo},n=({children:t,variant:a="default"})=>r.jsx("header",{className:o.t(e.header,d[a]),"data-component":"header",children:t});exports.Header=n;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('../../assets/index6.css');const r=require("react/jsx-runtime"),o=require("../../classix-5H4IWnMA.cjs"),s="_header_1k1hx_1",u="_jumbo_1k1hx_67",e={header:s,jumbo:u},d={default:e.default,jumbo:e.jumbo},n=({children:t,variant:a="default"})=>r.jsx("header",{className:o.t(e.header,d[a]),"data-component":"header",children:t});exports.Header=n;
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1,16 +1,16 @@
1
1
  import { jsx as a } from "react/jsx-runtime";
2
2
  import { t as r } from "../../classix-DG18itHa.js";
3
- import '../../assets/index6.css';const d = "_header_1q87f_1", m = "_jumbo_1q87f_67", e = {
3
+ import '../../assets/index6.css';const d = "_header_1k1hx_1", m = "_jumbo_1k1hx_67", e = {
4
4
  header: d,
5
5
  jumbo: m
6
6
  }, s = {
7
7
  default: e.default,
8
8
  jumbo: e.jumbo
9
- }, c = ({
9
+ }, h = ({
10
10
  children: o,
11
11
  variant: t = "default"
12
12
  }) => /* @__PURE__ */ a("header", { className: r(e.header, s[t]), "data-component": "header", children: o });
13
13
  export {
14
- c as Header
14
+ h as Header
15
15
  };
16
16
  //# sourceMappingURL=index.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('../../assets/index36.css');const r=require("react/jsx-runtime"),l=require("../../classix-5H4IWnMA.cjs"),i=require("../../icons-C_cX1FYp.cjs"),_="_icon_wciqx_1",m="_small_wciqx_9",u="_medium_wciqx_14",d="_large_wciqx_19",g="_danger_wciqx_24",w="_primary_wciqx_32",q="_white_wciqx_36",e={icon:_,small:m,medium:u,large:d,danger:g,default:"_default_wciqx_28",primary:w,white:q,"gap-right":"_gap-right_wciqx_40","gap-left":"_gap-left_wciqx_44"},x={large:e.large,medium:e.medium,small:e.small},p={danger:e.danger,default:e.default,primary:e.primary,white:e.white},y=({fill:n,gap:t="none",name:c,size:a="medium",variant:s="default"})=>{const o={maskImage:i.iconSVG(c,n??!1)};return r.jsx("span",{className:l.t(t!=="none"&&e[`gap-${t}`],x[a],e.icon,p[s]),style:o,"data-component":"icon"})},f=()=>Object.keys(i.iconPaths);exports.Icon=y;exports.Icons=f;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('../../assets/index36.css');const c=require("react/jsx-runtime"),l=require("../../classix-5H4IWnMA.cjs"),n=require("../../icons-C_cX1FYp.cjs"),_="_icon_1034p_1",m="_small_1034p_9",p="_medium_1034p_14",d="_large_1034p_19",u="_danger_1034p_24",g="_primary_1034p_32",y="_white_1034p_36",e={icon:_,small:m,medium:p,large:d,danger:u,default:"_default_1034p_28",primary:g,white:y,"gap-right":"_gap-right_1034p_40","gap-left":"_gap-left_1034p_44"},f={large:e.large,medium:e.medium,small:e.small},h={danger:e.danger,default:e.default,primary:e.primary,white:e.white},w=({fill:a,gap:t="none",name:s,size:i="medium",variant:r="default"})=>{const o={maskImage:n.iconSVG(s,a??!1)};return c.jsx("span",{"aria-hidden":"true",className:l.t(t!=="none"&&e[`gap-${t}`],f[i],e.icon,h[r]),style:o,"data-component":"icon"})},I=()=>Object.keys(n.iconPaths);exports.Icon=w;exports.Icons=I;
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../src/components/icon/index.tsx"],"sourcesContent":["import cx from 'classix';\n\nimport { IconName, iconSVG } from './icons';\nimport { iconPaths } from './icons';\nimport styles from './styles.module.css';\n\nconst sizes = {\n large: styles.large,\n medium: styles.medium,\n small: styles.small,\n};\n\nconst variants = {\n danger: styles.danger,\n default: styles.default,\n primary: styles.primary,\n white: styles.white,\n};\n\nexport type IconProps = {\n fill?: boolean;\n gap?: 'left' | 'none' | 'right';\n name: IconName;\n size?: keyof typeof sizes;\n variant?: keyof typeof variants;\n};\n\nexport const Icon = ({\n fill,\n gap = 'none',\n name,\n size = 'medium',\n variant = 'default',\n}: IconProps) => {\n const iconStyle = {\n maskImage: iconSVG(name, fill ?? false),\n } as React.CSSProperties;\n\n return (\n <span\n className={cx(\n gap !== 'none' && styles[`gap-${gap}`],\n sizes[size],\n styles.icon,\n variants[variant]\n )}\n style={iconStyle}\n />\n );\n};\n\nexport const Icons = () => {\n return Object.keys(iconPaths);\n};\n"],"names":["sizes","large","styles","medium","small","variants","danger","default","primary","white","Icon","fill","gap","name","size","variant","iconStyle","maskImage","iconSVG","jsx","cx","icon","Icons","Object","keys","iconPaths"],"mappings":"6eAMMA,EAAQ,CACZC,MAAOC,EAAOD,MACdE,OAAQD,EAAOC,OACfC,MAAOF,EAAOE,KAChB,EAEMC,EAAW,CACfC,OAAQJ,EAAOI,OACfC,QAASL,EAAOK,QAChBC,QAASN,EAAOM,QAChBC,MAAOP,EAAOO,KAChB,EAUaC,EAAOA,CAAC,CACnBC,KAAAA,EACAC,IAAAA,EAAM,OACNC,KAAAA,EACAC,KAAAA,EAAO,SACPC,QAAAA,EAAU,SACD,IAAM,CACf,MAAMC,EAAY,CAChBC,UAAWC,EAAAA,QAAQL,EAAMF,GAAQ,EAAK,CAAA,EAGxC,OACEQ,MAAC,QACC,UAAWC,EAAAA,EACTR,IAAQ,QAAUV,EAAO,OAAOU,CAAG,EAAE,EACrCZ,EAAMc,CAAI,EACVZ,EAAOmB,KACPhB,EAASU,CAAO,CAClB,EACA,MAAOC,EAAU,iBAAA,MAAA,CAAA,CAGvB,EAEaM,EAAQA,IACZC,OAAOC,KAAKC,WAAS"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../src/components/icon/index.tsx"],"sourcesContent":["import cx from 'classix';\n\nimport { IconName, iconSVG } from './icons';\nimport { iconPaths } from './icons';\nimport styles from './styles.module.css';\n\nconst sizes = {\n large: styles.large,\n medium: styles.medium,\n small: styles.small,\n};\n\nconst variants = {\n danger: styles.danger,\n default: styles.default,\n primary: styles.primary,\n white: styles.white,\n};\n\nexport type IconProps = {\n fill?: boolean;\n gap?: 'left' | 'none' | 'right';\n name: IconName;\n size?: keyof typeof sizes;\n variant?: keyof typeof variants;\n};\n\nexport const Icon = ({\n fill,\n gap = 'none',\n name,\n size = 'medium',\n variant = 'default',\n}: IconProps) => {\n const iconStyle = {\n maskImage: iconSVG(name, fill ?? false),\n } as React.CSSProperties;\n\n return (\n <span\n aria-hidden='true'\n className={cx(\n gap !== 'none' && styles[`gap-${gap}`],\n sizes[size],\n styles.icon,\n variants[variant]\n )}\n style={iconStyle}\n />\n );\n};\n\nexport const Icons = () => {\n return Object.keys(iconPaths);\n};\n"],"names":["sizes","large","styles","medium","small","variants","danger","default","primary","white","Icon","fill","gap","name","size","variant","iconStyle","maskImage","iconSVG","jsx","cx","icon","Icons","Object","keys","iconPaths"],"mappings":"6eAMMA,EAAQ,CACZC,MAAOC,EAAOD,MACdE,OAAQD,EAAOC,OACfC,MAAOF,EAAOE,KAChB,EAEMC,EAAW,CACfC,OAAQJ,EAAOI,OACfC,QAASL,EAAOK,QAChBC,QAASN,EAAOM,QAChBC,MAAOP,EAAOO,KAChB,EAUaC,EAAOA,CAAC,CACnBC,KAAAA,EACAC,IAAAA,EAAM,OACNC,KAAAA,EACAC,KAAAA,EAAO,SACPC,QAAAA,EAAU,SACD,IAAM,CACf,MAAMC,EAAY,CAChBC,UAAWC,EAAAA,QAAQL,EAAMF,GAAQ,EAAK,CAAA,EAGxC,OACEQ,MAAC,OAAA,CACC,cAAY,OACZ,UAAWC,EAAAA,EACTR,IAAQ,QAAUV,EAAO,OAAOU,CAAG,EAAE,EACrCZ,EAAMc,CAAI,EACVZ,EAAOmB,KACPhB,EAASU,CAAO,CAClB,EACA,MAAOC,EAAU,iBAAA,MAAA,CAAA,CAGvB,EAEaM,EAAQA,IACZC,OAAOC,KAAKC,WAAS"}
@@ -1,40 +1,40 @@
1
1
  import { jsx as o } from "react/jsx-runtime";
2
- import { t as r } from "../../classix-DG18itHa.js";
3
- import { i as m, a as _ } from "../../icons-DfmpRbxE.js";
4
- import '../../assets/index36.css';const l = "_icon_wciqx_1", d = "_small_wciqx_9", g = "_medium_wciqx_14", p = "_large_wciqx_19", w = "_danger_wciqx_24", u = "_primary_wciqx_32", x = "_white_wciqx_36", a = {
5
- icon: l,
6
- small: d,
7
- medium: g,
8
- large: p,
9
- danger: w,
10
- default: "_default_wciqx_28",
11
- primary: u,
12
- white: x,
13
- "gap-right": "_gap-right_wciqx_40",
14
- "gap-left": "_gap-left_wciqx_44"
15
- }, f = {
2
+ import { t as m } from "../../classix-DG18itHa.js";
3
+ import { i as _, a as l } from "../../icons-DfmpRbxE.js";
4
+ import '../../assets/index36.css';const c = "_icon_1034p_1", p = "_small_1034p_9", d = "_medium_1034p_14", g = "_large_1034p_19", u = "_danger_1034p_24", f = "_primary_1034p_32", h = "_white_1034p_36", a = {
5
+ icon: c,
6
+ small: p,
7
+ medium: d,
8
+ large: g,
9
+ danger: u,
10
+ default: "_default_1034p_28",
11
+ primary: f,
12
+ white: h,
13
+ "gap-right": "_gap-right_1034p_40",
14
+ "gap-left": "_gap-left_1034p_44"
15
+ }, y = {
16
16
  large: a.large,
17
17
  medium: a.medium,
18
18
  small: a.small
19
- }, q = {
19
+ }, w = {
20
20
  danger: a.danger,
21
21
  default: a.default,
22
22
  primary: a.primary,
23
23
  white: a.white
24
- }, j = ({
25
- fill: i,
24
+ }, x = ({
25
+ fill: t,
26
26
  gap: e = "none",
27
- name: t,
28
- size: n = "medium",
29
- variant: c = "default"
27
+ name: n,
28
+ size: r = "medium",
29
+ variant: s = "default"
30
30
  }) => {
31
- const s = {
32
- maskImage: m(t, i ?? !1)
31
+ const i = {
32
+ maskImage: _(n, t ?? !1)
33
33
  };
34
- return /* @__PURE__ */ o("span", { className: r(e !== "none" && a[`gap-${e}`], f[n], a.icon, q[c]), style: s, "data-component": "icon" });
35
- }, k = () => Object.keys(_);
34
+ return /* @__PURE__ */ o("span", { "aria-hidden": "true", className: m(e !== "none" && a[`gap-${e}`], y[r], a.icon, w[s]), style: i, "data-component": "icon" });
35
+ }, S = () => Object.keys(l);
36
36
  export {
37
- j as Icon,
38
- k as Icons
37
+ x as Icon,
38
+ S as Icons
39
39
  };
40
40
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/icon/index.tsx"],"sourcesContent":["import cx from 'classix';\n\nimport { IconName, iconSVG } from './icons';\nimport { iconPaths } from './icons';\nimport styles from './styles.module.css';\n\nconst sizes = {\n large: styles.large,\n medium: styles.medium,\n small: styles.small,\n};\n\nconst variants = {\n danger: styles.danger,\n default: styles.default,\n primary: styles.primary,\n white: styles.white,\n};\n\nexport type IconProps = {\n fill?: boolean;\n gap?: 'left' | 'none' | 'right';\n name: IconName;\n size?: keyof typeof sizes;\n variant?: keyof typeof variants;\n};\n\nexport const Icon = ({\n fill,\n gap = 'none',\n name,\n size = 'medium',\n variant = 'default',\n}: IconProps) => {\n const iconStyle = {\n maskImage: iconSVG(name, fill ?? false),\n } as React.CSSProperties;\n\n return (\n <span\n className={cx(\n gap !== 'none' && styles[`gap-${gap}`],\n sizes[size],\n styles.icon,\n variants[variant]\n )}\n style={iconStyle}\n />\n );\n};\n\nexport const Icons = () => {\n return Object.keys(iconPaths);\n};\n"],"names":["sizes","large","styles","medium","small","variants","danger","default","primary","white","Icon","fill","gap","name","size","variant","iconStyle","maskImage","iconSVG","jsx","cx","icon","Icons","Object","keys","iconPaths"],"mappings":";;;;;;;;;;;;;;GAMMA,IAAQ;AAAA,EACZC,OAAOC,EAAOD;AAAAA,EACdE,QAAQD,EAAOC;AAAAA,EACfC,OAAOF,EAAOE;AAChB,GAEMC,IAAW;AAAA,EACfC,QAAQJ,EAAOI;AAAAA,EACfC,SAASL,EAAOK;AAAAA,EAChBC,SAASN,EAAOM;AAAAA,EAChBC,OAAOP,EAAOO;AAChB,GAUaC,IAAOA,CAAC;AAAA,EACnBC,MAAAA;AAAAA,EACAC,KAAAA,IAAM;AAAA,EACNC,MAAAA;AAAAA,EACAC,MAAAA,IAAO;AAAA,EACPC,SAAAA,IAAU;AACD,MAAM;AACf,QAAMC,IAAY;AAAA,IAChBC,WAAWC,EAAQL,GAAMF,KAAQ,EAAK;AAAA,EAAA;AAGxC,SACE,gBAAAQ,EAAC,UACC,WAAWC,EACTR,MAAQ,UAAUV,EAAO,OAAOU,CAAG,EAAE,GACrCZ,EAAMc,CAAI,GACVZ,EAAOmB,MACPhB,EAASU,CAAO,CAClB,GACA,OAAOC,GAAU,kBAAA,OAAA,CAAA;AAGvB,GAEaM,IAAQA,MACZC,OAAOC,KAAKC,CAAS;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/icon/index.tsx"],"sourcesContent":["import cx from 'classix';\n\nimport { IconName, iconSVG } from './icons';\nimport { iconPaths } from './icons';\nimport styles from './styles.module.css';\n\nconst sizes = {\n large: styles.large,\n medium: styles.medium,\n small: styles.small,\n};\n\nconst variants = {\n danger: styles.danger,\n default: styles.default,\n primary: styles.primary,\n white: styles.white,\n};\n\nexport type IconProps = {\n fill?: boolean;\n gap?: 'left' | 'none' | 'right';\n name: IconName;\n size?: keyof typeof sizes;\n variant?: keyof typeof variants;\n};\n\nexport const Icon = ({\n fill,\n gap = 'none',\n name,\n size = 'medium',\n variant = 'default',\n}: IconProps) => {\n const iconStyle = {\n maskImage: iconSVG(name, fill ?? false),\n } as React.CSSProperties;\n\n return (\n <span\n aria-hidden='true'\n className={cx(\n gap !== 'none' && styles[`gap-${gap}`],\n sizes[size],\n styles.icon,\n variants[variant]\n )}\n style={iconStyle}\n />\n );\n};\n\nexport const Icons = () => {\n return Object.keys(iconPaths);\n};\n"],"names":["sizes","large","styles","medium","small","variants","danger","default","primary","white","Icon","fill","gap","name","size","variant","iconStyle","maskImage","iconSVG","jsx","cx","icon","Icons","Object","keys","iconPaths"],"mappings":";;;;;;;;;;;;;;GAMMA,IAAQ;AAAA,EACZC,OAAOC,EAAOD;AAAAA,EACdE,QAAQD,EAAOC;AAAAA,EACfC,OAAOF,EAAOE;AAChB,GAEMC,IAAW;AAAA,EACfC,QAAQJ,EAAOI;AAAAA,EACfC,SAASL,EAAOK;AAAAA,EAChBC,SAASN,EAAOM;AAAAA,EAChBC,OAAOP,EAAOO;AAChB,GAUaC,IAAOA,CAAC;AAAA,EACnBC,MAAAA;AAAAA,EACAC,KAAAA,IAAM;AAAA,EACNC,MAAAA;AAAAA,EACAC,MAAAA,IAAO;AAAA,EACPC,SAAAA,IAAU;AACD,MAAM;AACf,QAAMC,IAAY;AAAA,IAChBC,WAAWC,EAAQL,GAAMF,KAAQ,EAAK;AAAA,EAAA;AAGxC,SACE,gBAAAQ,EAAC,QAAA,EACC,eAAY,QACZ,WAAWC,EACTR,MAAQ,UAAUV,EAAO,OAAOU,CAAG,EAAE,GACrCZ,EAAMc,CAAI,GACVZ,EAAOmB,MACPhB,EAASU,CAAO,CAClB,GACA,OAAOC,GAAU,kBAAA,OAAA,CAAA;AAGvB,GAEaM,IAAQA,MACZC,OAAOC,KAAKC,CAAS;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('../../assets/index5.css');const d=require("react/jsx-runtime"),c=require("react"),o="_image_nnuov_1",y={image:o};function S({fadeDurationMs:n=250,showOnError:r=!0,onLoad:a,onError:u,style:l,...t}){const i=c.useRef(null),[m,s]=c.useState(!1);c.useEffect(()=>{s(!1)},[t.src,t.srcSet]),c.useEffect(()=>{const e=i.current;e&&e.complete&&e.naturalWidth>0&&s(!0)},[t.src,t.srcSet]);const f=e=>{s(!0),a==null||a(e)},g=e=>{r&&s(!0),u==null||u(e)};return d.jsx("img",{...t,className:y.image,onLoad:f,onError:g,ref:i,style:{...l,opacity:m?1:0,"--duration-override":`${n}ms`},"data-component":"image"})}exports.Image=S;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('../../assets/index5.css');const d=require("react/jsx-runtime"),c=require("react"),o="_image_14j8z_1",y={image:o};function S({fadeDurationMs:n=250,showOnError:r=!0,onLoad:a,onError:i,style:l,...t}){const u=c.useRef(null),[m,s]=c.useState(!1);c.useEffect(()=>{s(!1)},[t.src,t.srcSet]),c.useEffect(()=>{const e=u.current;e&&e.complete&&e.naturalWidth>0&&s(!0)},[t.src,t.srcSet]);const f=e=>{s(!0),a==null||a(e)},g=e=>{r&&s(!0),i==null||i(e)};return d.jsx("img",{...t,className:y.image,onLoad:f,onError:g,ref:u,style:{...l,opacity:m?1:0,"--duration-override":`${n}ms`},"data-component":"image"})}exports.Image=S;
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1,32 +1,32 @@
1
1
  import { jsx as g } from "react/jsx-runtime";
2
2
  import { useRef as o, useState as h, useEffect as m } from "react";
3
- import '../../assets/index5.css';const y = "_image_nnuov_1", S = {
3
+ import '../../assets/index5.css';const y = "_image_14j8z_1", S = {
4
4
  image: y
5
5
  };
6
6
  function x({
7
- fadeDurationMs: n = 250,
7
+ fadeDurationMs: r = 250,
8
8
  showOnError: u = !0,
9
9
  onLoad: a,
10
10
  onError: c,
11
- style: r,
11
+ style: f,
12
12
  ...t
13
13
  }) {
14
- const i = o(null), [f, s] = h(!1);
14
+ const i = o(null), [l, s] = h(!1);
15
15
  m(() => {
16
16
  s(!1);
17
17
  }, [t.src, t.srcSet]), m(() => {
18
18
  const e = i.current;
19
19
  e && e.complete && e.naturalWidth > 0 && s(!0);
20
20
  }, [t.src, t.srcSet]);
21
- const l = (e) => {
21
+ const n = (e) => {
22
22
  s(!0), a == null || a(e);
23
23
  }, d = (e) => {
24
24
  u && s(!0), c == null || c(e);
25
25
  };
26
- return /* @__PURE__ */ g("img", { ...t, className: S.image, onLoad: l, onError: d, ref: i, style: {
27
- ...r,
28
- opacity: f ? 1 : 0,
29
- "--duration-override": `${n}ms`
26
+ return /* @__PURE__ */ g("img", { ...t, className: S.image, onLoad: n, onError: d, ref: i, style: {
27
+ ...f,
28
+ opacity: l ? 1 : 0,
29
+ "--duration-override": `${r}ms`
30
30
  }, "data-component": "image" });
31
31
  }
32
32
  export {
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),r=require("../../classix-5H4IWnMA.cjs"),c=require("react"),I=require("../../icons-C_cX1FYp.cjs"),P=require("../../utils-DBzf7CFq.cjs"),s=require("../../styles.module-Vt6mmlsz.cjs");function T({className:p,defaultCountryCode:d="+47",disabled:a=!1,icon:i,label:h,placeholder:m,ref:v,type:t="text",...e}){const[l,g]=c.useState(""),[o,x]=c.useState(""),{onChange:y,value:j,...N}=e,{touched:S,onBlur:f}=P.useTouched(j===""),q=i&&t!=="radio"&&t!=="datetime-local"?{"--icon-svg":I.iconSVG(i,!0)}:void 0;c.useEffect(()=>{if(typeof e.onChange=="function"&&t==="tel"){const u={name:e.name,value:o?(l||d).split(" ").join("")+o.split(" ").join(""):void 0};e.onChange({target:u,currentTarget:u})}},[l,o]),c.useEffect(()=>{t==="tel"&&!e.value&&(x(""),g(""))},[e.value,t]);const C=n.jsxs(n.Fragment,{children:[n.jsx("input",{disabled:a,hidden:!0,onChange:y,pattern:void 0,placeholder:m,ref:v,type:t,value:j}),n.jsx("input",{type:"text",className:s.inputStyles.input,disabled:a,maxLength:5,onChange:u=>g(u.target.value),placeholder:d,value:l}),n.jsx("input",{type:"tel",className:r.t(s.inputStyles.input,S&&"touched"),"data-icon":i?"true":void 0,disabled:a,maxLength:14,name:void 0,onChange:u=>x(u.target.value),onBlur:f,pattern:e.pattern,style:q,value:o,...N})]});return n.jsxs("label",{className:s.inputStyles.label,"data-component":"input",children:[h&&n.jsx("span",{className:r.t(e.required&&s.inputStyles.required),children:h}),t==="tel"?C:n.jsx("input",{ref:v,className:r.t(s.inputStyles.input,p,S&&"touched"),"data-icon":i?"true":void 0,disabled:a,onBlur:f,placeholder:m,style:q,type:t,...e})]})}exports.Input=T;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),y=require("../../classix-5H4IWnMA.cjs"),l=require("react"),P=require("../../icons-C_cX1FYp.cjs"),T=require("../../utils-DBzf7CFq.cjs"),s=require("../../styles.module-BPvMQa_x.cjs");function b({className:C,defaultCountryCode:h="+47",disabled:a=!1,icon:i,label:d,placeholder:m,ref:v,required:c,type:t="text",...e}){const[r,g]=l.useState(""),[o,x]=l.useState(""),{onChange:N,value:j,...q}=e,{touched:S,onBlur:p}=T.useTouched(j===""),f=i&&t!=="radio"&&t!=="datetime-local"?{"--icon-svg":P.iconSVG(i,!0)}:void 0;l.useEffect(()=>{if(typeof e.onChange=="function"&&t==="tel"){const u={name:e.name,value:o?(r||h).split(" ").join("")+o.split(" ").join(""):void 0};e.onChange({target:u,currentTarget:u})}},[r,o]),l.useEffect(()=>{t==="tel"&&!e.value&&(x(""),g(""))},[e.value,t]);const I=n.jsxs(n.Fragment,{children:[n.jsx("input",{disabled:a,hidden:!0,onChange:N,pattern:void 0,placeholder:m,ref:v,type:t,value:j}),n.jsx("input",{type:"text",className:s.inputStyles.input,disabled:a,maxLength:5,onChange:u=>g(u.target.value),placeholder:h,value:r}),n.jsx("input",{type:"tel",className:y.t(s.inputStyles.input,S&&s.inputStyles.touched),"data-icon":i?"true":void 0,disabled:a,maxLength:14,name:void 0,onChange:u=>x(u.target.value),onBlur:p,pattern:e.pattern,required:c,style:f,value:o,...q})]});return n.jsxs("label",{className:s.inputStyles.label,"data-component":"input",children:[d&&n.jsx("span",{"data-required":c||void 0,children:d}),t==="tel"?I:n.jsx("input",{ref:v,className:y.t(s.inputStyles.input,C,S&&s.inputStyles.touched),"data-icon":i?"true":void 0,disabled:a,onBlur:p,placeholder:m,required:c,style:f,type:t,...e})]})}exports.Input=b;
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../src/components/input/index.tsx"],"sourcesContent":["import cx from 'classix';\nimport { useEffect, useState } from 'react';\n\nimport { IconName, iconSVG } from '@/components/icon/icons.ts';\nimport { useTouched } from '@/utils.ts';\n\nimport styles from './styles.module.css';\n\nexport type InputProps = React.ComponentPropsWithRef<'input'> & {\n defaultCountryCode?: string;\n disabled?: boolean;\n icon?: IconName;\n label?: string;\n onClick?: React.MouseEventHandler<HTMLInputElement>;\n placeholder?: string;\n type?:\n | 'date'\n | 'datetime-local'\n | 'email'\n | 'number'\n | 'password'\n | 'radio'\n | 'search'\n | 'tel'\n | 'text';\n};\n\nexport function Input({\n className,\n defaultCountryCode = '+47',\n disabled = false,\n icon,\n label,\n placeholder,\n ref,\n type = 'text',\n ...props\n}: InputProps) {\n const [countryCode, setCountryCode] = useState('');\n const [phoneNumber, setPhoneNumber] = useState('');\n const { onChange, value, ...restProps } = props;\n const { touched, onBlur } = useTouched(value === '');\n\n type withVars =\n | (React.CSSProperties & {\n '--icon-svg'?: string;\n })\n | undefined;\n\n const withVars: withVars =\n icon && type !== 'radio' && type !== 'datetime-local'\n ? {\n '--icon-svg': iconSVG(icon, true),\n }\n : undefined;\n\n useEffect(() => {\n if (typeof props.onChange === 'function' && type === 'tel') {\n const target = {\n name: props.name,\n value: phoneNumber\n ? (countryCode || defaultCountryCode).split(' ').join('') +\n phoneNumber.split(' ').join('')\n : undefined,\n } as unknown as HTMLInputElement;\n // eslint-disable-next-line\n (props.onChange as any)({ target, currentTarget: target });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [countryCode, phoneNumber]);\n\n useEffect(() => {\n if (type === 'tel' && !props.value) {\n setPhoneNumber('');\n setCountryCode('');\n }\n }, [props.value, type]);\n\n const telephoneInput = (\n <>\n <input\n disabled={disabled}\n hidden\n onChange={onChange}\n pattern={undefined}\n placeholder={placeholder}\n ref={ref}\n type={type}\n value={value}\n />\n <input\n type='text'\n className={styles.input}\n disabled={disabled}\n maxLength={5}\n onChange={(e) => setCountryCode(e.target.value)}\n placeholder={defaultCountryCode}\n value={countryCode}\n />\n <input\n type='tel'\n className={cx(styles.input, touched && 'touched')}\n data-icon={icon ? 'true' : undefined}\n disabled={disabled}\n maxLength={14}\n name={undefined}\n onChange={(e) => setPhoneNumber(e.target.value)}\n onBlur={onBlur}\n pattern={props.pattern}\n style={withVars}\n value={phoneNumber}\n {...restProps}\n />\n </>\n );\n\n return (\n <label className={styles.label}>\n {label && <span className={cx(props.required && styles.required)}>{label}</span>}\n {type === 'tel' ? (\n telephoneInput\n ) : (\n <input\n ref={ref}\n className={cx(styles.input, className, touched && 'touched')}\n data-icon={icon ? 'true' : undefined}\n disabled={disabled}\n onBlur={onBlur}\n placeholder={placeholder}\n style={withVars}\n type={type}\n {...props}\n />\n )}\n </label>\n );\n}\n"],"names":["Input","className","defaultCountryCode","disabled","icon","label","placeholder","ref","type","props","countryCode","setCountryCode","useState","phoneNumber","setPhoneNumber","onChange","value","restProps","touched","onBlur","useTouched","withVars","iconSVG","undefined","useEffect","target","name","split","join","currentTarget","telephoneInput","jsxs","Fragment","jsx","styles","input","e","cx","pattern","required"],"mappings":"0SA2BO,SAASA,EAAM,CACpBC,UAAAA,EACAC,mBAAAA,EAAqB,MACrBC,SAAAA,EAAW,GACXC,KAAAA,EACAC,MAAAA,EACAC,YAAAA,EACAC,IAAAA,EACAC,KAAAA,EAAO,OACP,GAAGC,CACO,EAAG,CACb,KAAM,CAACC,EAAaC,CAAc,EAAIC,EAAAA,SAAS,EAAE,EAC3C,CAACC,EAAaC,CAAc,EAAIF,EAAAA,SAAS,EAAE,EAC3C,CAAEG,SAAAA,EAAUC,MAAAA,EAAO,GAAGC,CAAAA,EAAcR,EACpC,CAAES,QAAAA,EAASC,OAAAA,CAAAA,EAAWC,EAAAA,WAAWJ,IAAU,EAAE,EAQ7CK,EACJjB,GAAQI,IAAS,SAAWA,IAAS,iBACjC,CACE,aAAcc,EAAAA,QAAQlB,EAAM,EAAI,CAAA,EAElCmB,OAENC,EAAAA,UAAU,IAAM,CACd,GAAI,OAAOf,EAAMM,UAAa,YAAcP,IAAS,MAAO,CAC1D,MAAMiB,EAAS,CACbC,KAAMjB,EAAMiB,KACZV,MAAOH,GACFH,GAAeR,GAAoByB,MAAM,GAAG,EAAEC,KAAK,EAAE,EACtDf,EAAYc,MAAM,GAAG,EAAEC,KAAK,EAAE,EAC9BL,MAAAA,EAGLd,EAAMM,SAAiB,CAAEU,OAAAA,EAAQI,cAAeJ,CAAAA,CAAQ,CAC3D,CAEF,EAAG,CAACf,EAAaG,CAAW,CAAC,EAE7BW,EAAAA,UAAU,IAAM,CACVhB,IAAS,OAAS,CAACC,EAAMO,QAC3BF,EAAe,EAAE,EACjBH,EAAe,EAAE,EAErB,EAAG,CAACF,EAAMO,MAAOR,CAAI,CAAC,EAEtB,MAAMsB,EACJC,EAAAA,KAAAC,EAAAA,SAAA,CACE,SAAA,CAAAC,EAAAA,IAAC,QAAA,CACC,SAAA9B,EACA,OAAM,GACN,SAAAY,EACA,QAASQ,OACT,YAAAjB,EACA,IAAAC,EACA,KAAAC,EACA,MAAAQ,CAAA,CAAa,EAEfiB,MAAC,SACC,KAAK,OACL,UAAWC,EAAAA,YAAOC,MAClB,SAAAhC,EACA,UAAW,EACX,SAAWiC,GAAMzB,EAAeyB,EAAEX,OAAOT,KAAK,EAC9C,YAAad,EACb,MAAOQ,EAAY,QAEpB,QAAA,CACC,KAAK,MACL,UAAW2B,EAAAA,EAAGH,EAAAA,YAAOC,MAAOjB,GAAW,SAAS,EAChD,YAAWd,EAAO,OAASmB,OAC3B,SAAApB,EACA,UAAW,GACX,KAAMoB,OACN,SAAWa,GAAMtB,EAAesB,EAAEX,OAAOT,KAAK,EAC9C,OAAAG,EACA,QAASV,EAAM6B,QACf,MAAOjB,EACP,MAAOR,EACP,GAAII,CAAAA,CAAU,CAAA,EAElB,EAGF,cACG,QAAA,CAAM,UAAWiB,EAAAA,YAAO7B,MAAM,iBAAA,QAC5BA,SAAAA,CAAAA,GAAS4B,EAAAA,IAAC,QAAK,UAAWI,EAAAA,EAAG5B,EAAM8B,UAAYL,EAAAA,YAAOK,QAAQ,EAAIlC,SAAAA,CAAAA,CAAM,EACxEG,IAAS,MACRsB,EAEAG,EAAAA,IAAC,QAAA,CACC,IAAA1B,EACA,UAAW8B,EAAAA,EAAGH,EAAAA,YAAOC,MAAOlC,EAAWiB,GAAW,SAAS,EAC3D,YAAWd,EAAO,OAASmB,OAC3B,SAAApB,EACA,OAAAgB,EACA,YAAAb,EACA,MAAOe,EACP,KAAAb,EACA,GAAIC,CAAAA,CAAM,CAAA,EAGhB,CAEJ"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../src/components/input/index.tsx"],"sourcesContent":["import cx from 'classix';\nimport { useEffect, useState } from 'react';\n\nimport { IconName, iconSVG } from '@/components/icon/icons.ts';\nimport { useTouched } from '@/utils.ts';\n\nimport styles from './styles.module.css';\n\nexport type InputProps = React.ComponentPropsWithRef<'input'> & {\n defaultCountryCode?: string;\n disabled?: boolean;\n icon?: IconName;\n label?: string;\n onClick?: React.MouseEventHandler<HTMLInputElement>;\n placeholder?: string;\n type?:\n | 'date'\n | 'datetime-local'\n | 'email'\n | 'number'\n | 'password'\n | 'radio'\n | 'search'\n | 'tel'\n | 'text';\n};\n\nexport function Input({\n className,\n defaultCountryCode = '+47',\n disabled = false,\n icon,\n label,\n placeholder,\n ref,\n required,\n type = 'text',\n ...props\n}: InputProps) {\n const [countryCode, setCountryCode] = useState('');\n const [phoneNumber, setPhoneNumber] = useState('');\n const { onChange, value, ...restProps } = props;\n const { touched, onBlur } = useTouched(value === '');\n\n type withVars =\n | (React.CSSProperties & {\n '--icon-svg'?: string;\n })\n | undefined;\n\n const withVars: withVars =\n icon && type !== 'radio' && type !== 'datetime-local'\n ? {\n '--icon-svg': iconSVG(icon, true),\n }\n : undefined;\n\n useEffect(() => {\n if (typeof props.onChange === 'function' && type === 'tel') {\n const target = {\n name: props.name,\n value: phoneNumber\n ? (countryCode || defaultCountryCode).split(' ').join('') +\n phoneNumber.split(' ').join('')\n : undefined,\n } as unknown as HTMLInputElement;\n // eslint-disable-next-line\n (props.onChange as any)({ target, currentTarget: target });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [countryCode, phoneNumber]);\n\n useEffect(() => {\n if (type === 'tel' && !props.value) {\n setPhoneNumber('');\n setCountryCode('');\n }\n }, [props.value, type]);\n\n const telephoneInput = (\n <>\n <input\n disabled={disabled}\n hidden\n onChange={onChange}\n pattern={undefined}\n placeholder={placeholder}\n ref={ref}\n type={type}\n value={value}\n />\n <input\n type='text'\n className={styles.input}\n disabled={disabled}\n maxLength={5}\n onChange={(e) => setCountryCode(e.target.value)}\n placeholder={defaultCountryCode}\n value={countryCode}\n />\n <input\n type='tel'\n className={cx(styles.input, touched && styles.touched)}\n data-icon={icon ? 'true' : undefined}\n disabled={disabled}\n maxLength={14}\n name={undefined}\n onChange={(e) => setPhoneNumber(e.target.value)}\n onBlur={onBlur}\n pattern={props.pattern}\n required={required}\n style={withVars}\n value={phoneNumber}\n {...restProps}\n />\n </>\n );\n\n return (\n <label className={styles.label}>\n {label && <span data-required={required || undefined}>{label}</span>}\n {type === 'tel' ? (\n telephoneInput\n ) : (\n <input\n ref={ref}\n className={cx(styles.input, className, touched && styles.touched)}\n data-icon={icon ? 'true' : undefined}\n disabled={disabled}\n onBlur={onBlur}\n placeholder={placeholder}\n required={required}\n style={withVars}\n type={type}\n {...props}\n />\n )}\n </label>\n );\n}\n"],"names":["Input","className","defaultCountryCode","disabled","icon","label","placeholder","ref","required","type","props","countryCode","setCountryCode","useState","phoneNumber","setPhoneNumber","onChange","value","restProps","touched","onBlur","useTouched","withVars","iconSVG","undefined","useEffect","target","name","split","join","currentTarget","telephoneInput","jsxs","Fragment","jsx","styles","input","e","cx","pattern"],"mappings":"0SA2BO,SAASA,EAAM,CACpBC,UAAAA,EACAC,mBAAAA,EAAqB,MACrBC,SAAAA,EAAW,GACXC,KAAAA,EACAC,MAAAA,EACAC,YAAAA,EACAC,IAAAA,EACAC,SAAAA,EACAC,KAAAA,EAAO,OACP,GAAGC,CACO,EAAG,CACb,KAAM,CAACC,EAAaC,CAAc,EAAIC,EAAAA,SAAS,EAAE,EAC3C,CAACC,EAAaC,CAAc,EAAIF,EAAAA,SAAS,EAAE,EAC3C,CAAEG,SAAAA,EAAUC,MAAAA,EAAO,GAAGC,CAAAA,EAAcR,EACpC,CAAES,QAAAA,EAASC,OAAAA,CAAAA,EAAWC,EAAAA,WAAWJ,IAAU,EAAE,EAQ7CK,EACJlB,GAAQK,IAAS,SAAWA,IAAS,iBACjC,CACE,aAAcc,EAAAA,QAAQnB,EAAM,EAAI,CAAA,EAElCoB,OAENC,EAAAA,UAAU,IAAM,CACd,GAAI,OAAOf,EAAMM,UAAa,YAAcP,IAAS,MAAO,CAC1D,MAAMiB,EAAS,CACbC,KAAMjB,EAAMiB,KACZV,MAAOH,GACFH,GAAeT,GAAoB0B,MAAM,GAAG,EAAEC,KAAK,EAAE,EACtDf,EAAYc,MAAM,GAAG,EAAEC,KAAK,EAAE,EAC9BL,MAAAA,EAGLd,EAAMM,SAAiB,CAAEU,OAAAA,EAAQI,cAAeJ,CAAAA,CAAQ,CAC3D,CAEF,EAAG,CAACf,EAAaG,CAAW,CAAC,EAE7BW,EAAAA,UAAU,IAAM,CACVhB,IAAS,OAAS,CAACC,EAAMO,QAC3BF,EAAe,EAAE,EACjBH,EAAe,EAAE,EAErB,EAAG,CAACF,EAAMO,MAAOR,CAAI,CAAC,EAEtB,MAAMsB,EACJC,EAAAA,KAAAC,EAAAA,SAAA,CACE,SAAA,CAAAC,EAAAA,IAAC,QAAA,CACC,SAAA/B,EACA,OAAM,GACN,SAAAa,EACA,QAASQ,OACT,YAAAlB,EACA,IAAAC,EACA,KAAAE,EACA,MAAAQ,CAAA,CAAa,EAEfiB,MAAC,SACC,KAAK,OACL,UAAWC,EAAAA,YAAOC,MAClB,SAAAjC,EACA,UAAW,EACX,SAAWkC,GAAMzB,EAAeyB,EAAEX,OAAOT,KAAK,EAC9C,YAAaf,EACb,MAAOS,EAAY,QAEpB,QAAA,CACC,KAAK,MACL,UAAW2B,EAAAA,EAAGH,EAAAA,YAAOC,MAAOjB,GAAWgB,EAAAA,YAAOhB,OAAO,EACrD,YAAWf,EAAO,OAASoB,OAC3B,SAAArB,EACA,UAAW,GACX,KAAMqB,OACN,SAAWa,GAAMtB,EAAesB,EAAEX,OAAOT,KAAK,EAC9C,OAAAG,EACA,QAASV,EAAM6B,QACf,SAAA/B,EACA,MAAOc,EACP,MAAOR,EACP,GAAII,CAAAA,CAAU,CAAA,EAElB,EAGF,cACG,QAAA,CAAM,UAAWiB,EAAAA,YAAO9B,MAAM,iBAAA,QAC5BA,SAAAA,CAAAA,GAAS6B,EAAAA,IAAC,OAAA,CAAK,gBAAe1B,GAAYgB,OAAYnB,SAAAA,EAAM,EAC5DI,IAAS,MACRsB,EAEAG,EAAAA,IAAC,QAAA,CACC,IAAA3B,EACA,UAAW+B,EAAAA,EAAGH,EAAAA,YAAOC,MAAOnC,EAAWkB,GAAWgB,EAAAA,YAAOhB,OAAO,EAChE,YAAWf,EAAO,OAASoB,OAC3B,SAAArB,EACA,OAAAiB,EACA,YAAAd,EACA,SAAAE,EACA,MAAOc,EACP,KAAAb,EACA,GAAIC,CAAAA,CAAM,CAAA,EAGhB,CAEJ"}