@anoki/fse-ui 1.0.0-beta1.48.23 → 1.0.0-beta1.48.26

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 (351) hide show
  1. package/dist/index.cjs102.js.map +1 -1
  2. package/dist/index.cjs110.js +1 -1
  3. package/dist/index.cjs110.js.map +1 -1
  4. package/dist/index.cjs134.js +1 -1
  5. package/dist/index.cjs134.js.map +1 -1
  6. package/dist/index.cjs138.js +1 -1
  7. package/dist/index.cjs141.js +1 -1
  8. package/dist/index.cjs142.js +1 -1
  9. package/dist/index.cjs142.js.map +1 -1
  10. package/dist/index.cjs143.js +1 -1
  11. package/dist/index.cjs143.js.map +1 -1
  12. package/dist/index.cjs144.js +1 -1
  13. package/dist/index.cjs144.js.map +1 -1
  14. package/dist/index.cjs145.js +1 -1
  15. package/dist/index.cjs146.js +1 -1
  16. package/dist/index.cjs146.js.map +1 -1
  17. package/dist/index.cjs149.js +1 -1
  18. package/dist/index.cjs149.js.map +1 -1
  19. package/dist/index.cjs150.js +1 -1
  20. package/dist/index.cjs151.js +1 -1
  21. package/dist/index.cjs205.js +1 -1
  22. package/dist/index.cjs205.js.map +1 -1
  23. package/dist/index.cjs206.js +1 -1
  24. package/dist/index.cjs206.js.map +1 -1
  25. package/dist/index.cjs215.js +1 -1
  26. package/dist/index.cjs215.js.map +1 -1
  27. package/dist/index.cjs216.js +1 -1
  28. package/dist/index.cjs216.js.map +1 -1
  29. package/dist/index.cjs217.js +1 -1
  30. package/dist/index.cjs217.js.map +1 -1
  31. package/dist/index.cjs218.js +1 -1
  32. package/dist/index.cjs218.js.map +1 -1
  33. package/dist/index.cjs219.js +1 -1
  34. package/dist/index.cjs219.js.map +1 -1
  35. package/dist/index.cjs227.js +1 -1
  36. package/dist/index.cjs229.js +1 -1
  37. package/dist/index.cjs264.js +1 -1
  38. package/dist/index.cjs277.js +1 -1
  39. package/dist/index.cjs288.js +1 -1
  40. package/dist/index.cjs295.js +1 -1
  41. package/dist/index.cjs30.js.map +1 -1
  42. package/dist/index.cjs302.js +1 -1
  43. package/dist/index.cjs303.js +1 -1
  44. package/dist/index.cjs307.js +1 -1
  45. package/dist/index.cjs31.js +1 -1
  46. package/dist/index.cjs31.js.map +1 -1
  47. package/dist/index.cjs316.js +1 -1
  48. package/dist/index.cjs318.js +1 -1
  49. package/dist/index.cjs32.js +1 -1
  50. package/dist/index.cjs32.js.map +1 -1
  51. package/dist/index.cjs326.js +1 -1
  52. package/dist/index.cjs33.js +1 -1
  53. package/dist/index.cjs33.js.map +1 -1
  54. package/dist/index.cjs34.js +1 -1
  55. package/dist/index.cjs34.js.map +1 -1
  56. package/dist/index.cjs36.js +1 -1
  57. package/dist/index.cjs36.js.map +1 -1
  58. package/dist/index.cjs368.js +1 -1
  59. package/dist/index.cjs37.js +1 -1
  60. package/dist/index.cjs37.js.map +1 -1
  61. package/dist/index.cjs414.js +1 -1
  62. package/dist/index.cjs420.js +1 -1
  63. package/dist/index.cjs422.js +1 -1
  64. package/dist/{index.cjs432.js → index.cjs431.js} +1 -1
  65. package/dist/index.cjs431.js.map +1 -0
  66. package/dist/index.cjs438.js +2 -0
  67. package/dist/index.cjs438.js.map +1 -0
  68. package/dist/index.cjs442.js +2 -0
  69. package/dist/index.cjs442.js.map +1 -0
  70. package/dist/index.cjs443.js +1 -1
  71. package/dist/index.cjs443.js.map +1 -1
  72. package/dist/{index.cjs446.js → index.cjs445.js} +1 -1
  73. package/dist/{index.cjs446.js.map → index.cjs445.js.map} +1 -1
  74. package/dist/{index.cjs448.js → index.cjs447.js} +1 -1
  75. package/dist/{index.cjs448.js.map → index.cjs447.js.map} +1 -1
  76. package/dist/{index.cjs429.js → index.cjs450.js} +1 -1
  77. package/dist/{index.cjs429.js.map → index.cjs450.js.map} +1 -1
  78. package/dist/index.cjs455.js +2 -0
  79. package/dist/index.cjs455.js.map +1 -0
  80. package/dist/index.cjs456.js +1 -1
  81. package/dist/index.cjs456.js.map +1 -1
  82. package/dist/index.cjs457.js +1 -1
  83. package/dist/index.cjs457.js.map +1 -1
  84. package/dist/index.cjs458.js +1 -1
  85. package/dist/index.cjs458.js.map +1 -1
  86. package/dist/index.cjs459.js +1 -1
  87. package/dist/index.cjs459.js.map +1 -1
  88. package/dist/index.cjs460.js +1 -1
  89. package/dist/index.cjs460.js.map +1 -1
  90. package/dist/index.cjs461.js +1 -1
  91. package/dist/index.cjs461.js.map +1 -1
  92. package/dist/index.cjs466.js +1 -1
  93. package/dist/index.cjs466.js.map +1 -1
  94. package/dist/index.cjs467.js +1 -1
  95. package/dist/index.cjs467.js.map +1 -1
  96. package/dist/index.cjs468.js +1 -1
  97. package/dist/index.cjs468.js.map +1 -1
  98. package/dist/index.cjs469.js +1 -1
  99. package/dist/index.cjs469.js.map +1 -1
  100. package/dist/index.cjs470.js +1 -1
  101. package/dist/index.cjs470.js.map +1 -1
  102. package/dist/index.cjs471.js +1 -1
  103. package/dist/index.cjs471.js.map +1 -1
  104. package/dist/index.cjs472.js +1 -1
  105. package/dist/index.cjs472.js.map +1 -1
  106. package/dist/index.cjs473.js +1 -1
  107. package/dist/index.cjs473.js.map +1 -1
  108. package/dist/index.cjs474.js +1 -1
  109. package/dist/index.cjs474.js.map +1 -1
  110. package/dist/index.cjs475.js +1 -1
  111. package/dist/index.cjs475.js.map +1 -1
  112. package/dist/index.cjs479.js +2 -0
  113. package/dist/index.cjs479.js.map +1 -0
  114. package/dist/index.cjs48.js +1 -1
  115. package/dist/index.cjs48.js.map +1 -1
  116. package/dist/index.cjs49.js +1 -1
  117. package/dist/index.cjs49.js.map +1 -1
  118. package/dist/index.cjs5.js +1 -1
  119. package/dist/{index.cjs511.js → index.cjs508.js} +2 -2
  120. package/dist/{index.cjs511.js.map → index.cjs508.js.map} +1 -1
  121. package/dist/index.cjs509.js +3 -0
  122. package/dist/index.cjs509.js.map +1 -0
  123. package/dist/index.cjs512.js +1 -2
  124. package/dist/index.cjs512.js.map +1 -1
  125. package/dist/index.cjs518.js +1 -1
  126. package/dist/index.cjs520.js +1 -1
  127. package/dist/index.cjs521.js +1 -1
  128. package/dist/index.cjs523.js +1 -1
  129. package/dist/index.cjs523.js.map +1 -1
  130. package/dist/index.cjs524.js +1 -1
  131. package/dist/index.cjs524.js.map +1 -1
  132. package/dist/index.cjs53.js +1 -1
  133. package/dist/index.cjs53.js.map +1 -1
  134. package/dist/index.cjs530.js +1 -1
  135. package/dist/index.cjs537.js +1 -1
  136. package/dist/index.cjs540.js +1 -1
  137. package/dist/index.cjs542.js +1 -1
  138. package/dist/index.cjs545.js +1 -1
  139. package/dist/index.cjs546.js +1 -1
  140. package/dist/index.cjs547.js +1 -1
  141. package/dist/index.cjs554.js +1 -1
  142. package/dist/index.cjs559.js +1 -1
  143. package/dist/index.cjs561.js +1 -1
  144. package/dist/index.cjs570.js +1 -1
  145. package/dist/index.cjs570.js.map +1 -1
  146. package/dist/index.cjs571.js +1 -1
  147. package/dist/index.cjs571.js.map +1 -1
  148. package/dist/index.cjs572.js +1 -1
  149. package/dist/index.cjs572.js.map +1 -1
  150. package/dist/index.cjs573.js +1 -1
  151. package/dist/index.cjs573.js.map +1 -1
  152. package/dist/index.cjs574.js +1 -1
  153. package/dist/index.cjs574.js.map +1 -1
  154. package/dist/index.cjs62.js +1 -1
  155. package/dist/index.cjs62.js.map +1 -1
  156. package/dist/index.cjs63.js +1 -1
  157. package/dist/index.cjs63.js.map +1 -1
  158. package/dist/index.cjs68.js.map +1 -1
  159. package/dist/index.cjs70.js +1 -1
  160. package/dist/index.cjs70.js.map +1 -1
  161. package/dist/index.cjs73.js +1 -1
  162. package/dist/index.cjs73.js.map +1 -1
  163. package/dist/index.d.ts +18 -45
  164. package/dist/index.es102.js +1 -1
  165. package/dist/index.es102.js.map +1 -1
  166. package/dist/index.es110.js +1 -1
  167. package/dist/index.es110.js.map +1 -1
  168. package/dist/index.es134.js +1 -1
  169. package/dist/index.es134.js.map +1 -1
  170. package/dist/index.es138.js +1 -1
  171. package/dist/index.es141.js +1 -1
  172. package/dist/index.es142.js +1 -1
  173. package/dist/index.es142.js.map +1 -1
  174. package/dist/index.es143.js +1 -1
  175. package/dist/index.es143.js.map +1 -1
  176. package/dist/index.es144.js +1 -1
  177. package/dist/index.es144.js.map +1 -1
  178. package/dist/index.es145.js +1 -1
  179. package/dist/index.es146.js +1 -1
  180. package/dist/index.es146.js.map +1 -1
  181. package/dist/index.es149.js +2 -2
  182. package/dist/index.es149.js.map +1 -1
  183. package/dist/index.es150.js +2 -2
  184. package/dist/index.es151.js +1 -1
  185. package/dist/index.es205.js +8 -8
  186. package/dist/index.es205.js.map +1 -1
  187. package/dist/index.es206.js +6 -6
  188. package/dist/index.es206.js.map +1 -1
  189. package/dist/index.es215.js +13 -13
  190. package/dist/index.es215.js.map +1 -1
  191. package/dist/index.es216.js +5 -5
  192. package/dist/index.es216.js.map +1 -1
  193. package/dist/index.es217.js +10 -10
  194. package/dist/index.es217.js.map +1 -1
  195. package/dist/index.es218.js +9 -9
  196. package/dist/index.es218.js.map +1 -1
  197. package/dist/index.es219.js +10 -10
  198. package/dist/index.es219.js.map +1 -1
  199. package/dist/index.es227.js +1 -1
  200. package/dist/index.es229.js +1 -1
  201. package/dist/index.es264.js +7 -7
  202. package/dist/index.es277.js +8 -8
  203. package/dist/index.es288.js +1 -1
  204. package/dist/index.es295.js +14 -14
  205. package/dist/index.es30.js.map +1 -1
  206. package/dist/index.es302.js +1 -1
  207. package/dist/index.es303.js +1 -1
  208. package/dist/index.es307.js +1 -1
  209. package/dist/index.es31.js +1 -1
  210. package/dist/index.es31.js.map +1 -1
  211. package/dist/index.es316.js +1 -1
  212. package/dist/index.es318.js +1 -1
  213. package/dist/index.es32.js +1 -1
  214. package/dist/index.es32.js.map +1 -1
  215. package/dist/index.es326.js +7 -7
  216. package/dist/index.es33.js +1 -1
  217. package/dist/index.es33.js.map +1 -1
  218. package/dist/index.es34.js +1 -1
  219. package/dist/index.es34.js.map +1 -1
  220. package/dist/index.es36.js +1 -1
  221. package/dist/index.es36.js.map +1 -1
  222. package/dist/index.es368.js +4 -4
  223. package/dist/index.es37.js +1 -1
  224. package/dist/index.es37.js.map +1 -1
  225. package/dist/index.es414.js +1 -1
  226. package/dist/index.es420.js +1 -1
  227. package/dist/index.es422.js +1 -1
  228. package/dist/{index.es432.js → index.es431.js} +1 -1
  229. package/dist/index.es431.js.map +1 -0
  230. package/dist/{index.es439.js → index.es438.js} +2 -2
  231. package/dist/index.es438.js.map +1 -0
  232. package/dist/index.es442.js +12 -0
  233. package/dist/index.es442.js.map +1 -0
  234. package/dist/index.es443.js +188 -8
  235. package/dist/index.es443.js.map +1 -1
  236. package/dist/{index.es446.js → index.es445.js} +1 -1
  237. package/dist/{index.es446.js.map → index.es445.js.map} +1 -1
  238. package/dist/{index.es448.js → index.es447.js} +1 -1
  239. package/dist/{index.es448.js.map → index.es447.js.map} +1 -1
  240. package/dist/{index.es429.js → index.es450.js} +1 -1
  241. package/dist/{index.es429.js.map → index.es450.js.map} +1 -1
  242. package/dist/index.es455.js +10 -0
  243. package/dist/index.es455.js.map +1 -0
  244. package/dist/index.es456.js +25 -5
  245. package/dist/index.es456.js.map +1 -1
  246. package/dist/index.es457.js +64 -23
  247. package/dist/index.es457.js.map +1 -1
  248. package/dist/index.es458.js +27 -65
  249. package/dist/index.es458.js.map +1 -1
  250. package/dist/index.es459.js +32 -29
  251. package/dist/index.es459.js.map +1 -1
  252. package/dist/index.es460.js +620 -31
  253. package/dist/index.es460.js.map +1 -1
  254. package/dist/index.es461.js +10 -621
  255. package/dist/index.es461.js.map +1 -1
  256. package/dist/index.es466.js +5 -14
  257. package/dist/index.es466.js.map +1 -1
  258. package/dist/index.es467.js +24 -5
  259. package/dist/index.es467.js.map +1 -1
  260. package/dist/index.es468.js +67 -23
  261. package/dist/index.es468.js.map +1 -1
  262. package/dist/index.es469.js +120 -64
  263. package/dist/index.es469.js.map +1 -1
  264. package/dist/index.es470.js +126 -116
  265. package/dist/index.es470.js.map +1 -1
  266. package/dist/index.es471.js +13 -134
  267. package/dist/index.es471.js.map +1 -1
  268. package/dist/index.es472.js +14 -13
  269. package/dist/index.es472.js.map +1 -1
  270. package/dist/index.es473.js +8 -14
  271. package/dist/index.es473.js.map +1 -1
  272. package/dist/index.es474.js +50 -9
  273. package/dist/index.es474.js.map +1 -1
  274. package/dist/index.es475.js +55 -49
  275. package/dist/index.es475.js.map +1 -1
  276. package/dist/index.es479.js +18 -0
  277. package/dist/index.es479.js.map +1 -0
  278. package/dist/index.es48.js +1 -1
  279. package/dist/index.es48.js.map +1 -1
  280. package/dist/index.es49.js +1 -1
  281. package/dist/index.es49.js.map +1 -1
  282. package/dist/index.es5.js +1 -1
  283. package/dist/{index.es511.js → index.es508.js} +2 -2
  284. package/dist/{index.es511.js.map → index.es508.js.map} +1 -1
  285. package/dist/index.es509.js +524 -0
  286. package/dist/index.es509.js.map +1 -0
  287. package/dist/index.es512.js +4 -520
  288. package/dist/index.es512.js.map +1 -1
  289. package/dist/index.es518.js +3 -3
  290. package/dist/index.es520.js +4 -4
  291. package/dist/index.es521.js +6 -6
  292. package/dist/index.es523.js +14 -2
  293. package/dist/index.es523.js.map +1 -1
  294. package/dist/index.es524.js +2 -14
  295. package/dist/index.es524.js.map +1 -1
  296. package/dist/index.es53.js +1 -1
  297. package/dist/index.es53.js.map +1 -1
  298. package/dist/index.es530.js +1 -1
  299. package/dist/index.es537.js +3 -3
  300. package/dist/index.es540.js +3 -3
  301. package/dist/index.es542.js +1 -1
  302. package/dist/index.es545.js +2 -2
  303. package/dist/index.es546.js +1 -1
  304. package/dist/index.es547.js +14 -14
  305. package/dist/index.es554.js +5 -5
  306. package/dist/index.es559.js +7 -7
  307. package/dist/index.es561.js +1 -1
  308. package/dist/index.es570.js +2 -16
  309. package/dist/index.es570.js.map +1 -1
  310. package/dist/index.es571.js +2 -6
  311. package/dist/index.es571.js.map +1 -1
  312. package/dist/index.es572.js +2 -2
  313. package/dist/index.es572.js.map +1 -1
  314. package/dist/index.es573.js +6 -2
  315. package/dist/index.es573.js.map +1 -1
  316. package/dist/index.es574.js +16 -2
  317. package/dist/index.es574.js.map +1 -1
  318. package/dist/index.es62.js +1 -1
  319. package/dist/index.es62.js.map +1 -1
  320. package/dist/index.es63.js +1 -1
  321. package/dist/index.es63.js.map +1 -1
  322. package/dist/index.es68.js.map +1 -1
  323. package/dist/index.es70.js +1 -1
  324. package/dist/index.es70.js.map +1 -1
  325. package/dist/index.es73.js +1 -0
  326. package/dist/index.es73.js.map +1 -1
  327. package/dist/sections/Login/Login.css +1 -1
  328. package/package.json +1 -1
  329. package/dist/index.cjs432.js.map +0 -1
  330. package/dist/index.cjs439.js +0 -2
  331. package/dist/index.cjs439.js.map +0 -1
  332. package/dist/index.cjs444.js +0 -2
  333. package/dist/index.cjs444.js.map +0 -1
  334. package/dist/index.cjs462.js +0 -2
  335. package/dist/index.cjs462.js.map +0 -1
  336. package/dist/index.cjs476.js +0 -2
  337. package/dist/index.cjs476.js.map +0 -1
  338. package/dist/index.cjs510.js +0 -2
  339. package/dist/index.cjs510.js.map +0 -1
  340. package/dist/index.es432.js.map +0 -1
  341. package/dist/index.es439.js.map +0 -1
  342. package/dist/index.es444.js +0 -192
  343. package/dist/index.es444.js.map +0 -1
  344. package/dist/index.es462.js +0 -14
  345. package/dist/index.es462.js.map +0 -1
  346. package/dist/index.es476.js +0 -59
  347. package/dist/index.es476.js.map +0 -1
  348. package/dist/index.es510.js +0 -8
  349. package/dist/index.es510.js.map +0 -1
  350. /package/dist/components/ui/{DoctorConfirmModal/DoctorConfirmModalContent/DoctorConfirmModalContent.css → ConsentModal/ConsentModalContent/ConsentModalContent.css} +0 -0
  351. /package/dist/components/ui/{DoctorModal/DoctorModalFooter/DoctorModalFooter.css → ConsentModal/ConsentModalFooter/ConsentModalFooter.css} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.es570.js","sources":["../node_modules/@radix-ui/themes/dist/esm/helpers/map-prop-values.js"],"sourcesContent":["function s(e,t){if(e!==void 0)return typeof e==\"string\"?t(e):Object.fromEntries(Object.entries(e).map(([n,o])=>[n,t(o)]))}function p(e){return e===\"3\"?\"3\":\"2\"}function r(e){switch(e){case\"1\":return\"1\";case\"2\":case\"3\":return\"2\";case\"4\":return\"3\"}}export{r as mapButtonSizeToSpinnerSize,p as mapCalloutSizeToTextSize,s as mapResponsiveProp};\n//# sourceMappingURL=map-prop-values.js.map\n"],"names":["t","o","r"],"mappings":"AAAA,SAAS,EAAE,GAAEA,GAAE;AAAC,MAAG,MAAI,OAAO,QAAO,OAAO,KAAG,WAASA,EAAE,CAAC,IAAE,OAAO,YAAY,OAAO,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC,GAAEC,CAAC,MAAI,CAAC,GAAED,EAAEC,CAAC,CAAC,CAAC,CAAC;AAAC;AAAsC,SAASC,EAAE,GAAE;AAAC,UAAO,GAAC;AAAA,IAAE,KAAI;AAAI,aAAM;AAAA,IAAI,KAAI;AAAA,IAAI,KAAI;AAAI,aAAM;AAAA,IAAI,KAAI;AAAI,aAAM;AAAA,EAAG;AAAC;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es570.js","sources":["../node_modules/@radix-ui/themes/dist/esm/props/padding.props.js"],"sourcesContent":["const e=[\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\"],p={p:{type:\"enum | string\",className:\"rt-r-p\",customProperties:[\"--p\"],values:e,responsive:!0},px:{type:\"enum | string\",className:\"rt-r-px\",customProperties:[\"--pl\",\"--pr\"],values:e,responsive:!0},py:{type:\"enum | string\",className:\"rt-r-py\",customProperties:[\"--pt\",\"--pb\"],values:e,responsive:!0},pt:{type:\"enum | string\",className:\"rt-r-pt\",customProperties:[\"--pt\"],values:e,responsive:!0},pr:{type:\"enum | string\",className:\"rt-r-pr\",customProperties:[\"--pr\"],values:e,responsive:!0},pb:{type:\"enum | string\",className:\"rt-r-pb\",customProperties:[\"--pb\"],values:e,responsive:!0},pl:{type:\"enum | string\",className:\"rt-r-pl\",customProperties:[\"--pl\"],values:e,responsive:!0}};export{p as paddingPropDefs};\n//# sourceMappingURL=padding.props.js.map\n"],"names":["p"],"mappings":"AAAK,MAAC,IAAE,CAAC,KAAI,KAAI,KAAI,KAAI,KAAI,KAAI,KAAI,KAAI,KAAI,GAAG,GAAEA,IAAE,EAAC,GAAE,EAAC,MAAK,iBAAgB,WAAU,UAAS,kBAAiB,CAAC,KAAK,GAAE,QAAO,GAAE,YAAW,GAAE,GAAE,IAAG,EAAC,MAAK,iBAAgB,WAAU,WAAU,kBAAiB,CAAC,QAAO,MAAM,GAAE,QAAO,GAAE,YAAW,GAAE,GAAE,IAAG,EAAC,MAAK,iBAAgB,WAAU,WAAU,kBAAiB,CAAC,QAAO,MAAM,GAAE,QAAO,GAAE,YAAW,GAAE,GAAE,IAAG,EAAC,MAAK,iBAAgB,WAAU,WAAU,kBAAiB,CAAC,MAAM,GAAE,QAAO,GAAE,YAAW,GAAE,GAAE,IAAG,EAAC,MAAK,iBAAgB,WAAU,WAAU,kBAAiB,CAAC,MAAM,GAAE,QAAO,GAAE,YAAW,GAAE,GAAE,IAAG,EAAC,MAAK,iBAAgB,WAAU,WAAU,kBAAiB,CAAC,MAAM,GAAE,QAAO,GAAE,YAAW,GAAE,GAAE,IAAG,EAAC,MAAK,iBAAgB,WAAU,WAAU,kBAAiB,CAAC,MAAM,GAAE,QAAO,GAAE,YAAW,GAAE,EAAC;","x_google_ignoreList":[0]}
@@ -1,9 +1,5 @@
1
- import { asChildPropDef as a } from "./index.es575.js";
2
- import { accentColorPropDef as s } from "./index.es589.js";
3
- import { highContrastPropDef as o } from "./index.es590.js";
4
- import { radiusPropDef as e } from "./index.es577.js";
5
- const r = ["1", "2", "3", "4"], t = ["classic", "solid", "soft", "surface", "outline", "ghost"], m = { ...a, size: { type: "enum", className: "rt-r-size", values: r, default: "2", responsive: !0 }, variant: { type: "enum", className: "rt-variant", values: t, default: "solid" }, ...s, ...o, ...e, loading: { type: "boolean", className: "rt-loading", default: !1 } };
1
+ const e = { height: { type: "string", className: "rt-r-h", customProperties: ["--height"], responsive: !0 }, minHeight: { type: "string", className: "rt-r-min-h", customProperties: ["--min-height"], responsive: !0 }, maxHeight: { type: "string", className: "rt-r-max-h", customProperties: ["--max-height"], responsive: !0 } };
6
2
  export {
7
- m as baseButtonPropDefs
3
+ e as heightPropDefs
8
4
  };
9
5
  //# sourceMappingURL=index.es571.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es571.js","sources":["../node_modules/@radix-ui/themes/dist/esm/components/_internal/base-button.props.js"],"sourcesContent":["import{asChildPropDef as o}from\"../../props/as-child.prop.js\";import{accentColorPropDef as e}from\"../../props/color.prop.js\";import{highContrastPropDef as s}from\"../../props/high-contrast.prop.js\";import{radiusPropDef as r}from\"../../props/radius.prop.js\";const t=[\"1\",\"2\",\"3\",\"4\"],a=[\"classic\",\"solid\",\"soft\",\"surface\",\"outline\",\"ghost\"],i={...o,size:{type:\"enum\",className:\"rt-r-size\",values:t,default:\"2\",responsive:!0},variant:{type:\"enum\",className:\"rt-variant\",values:a,default:\"solid\"},...e,...s,...r,loading:{type:\"boolean\",className:\"rt-loading\",default:!1}};export{i as baseButtonPropDefs};\n//# sourceMappingURL=base-button.props.js.map\n"],"names":["t","a","i","o","e","s","r"],"mappings":";;;;AAAqQ,MAACA,IAAE,CAAC,KAAI,KAAI,KAAI,GAAG,GAAEC,IAAE,CAAC,WAAU,SAAQ,QAAO,WAAU,WAAU,OAAO,GAAEC,IAAE,EAAC,GAAGC,GAAE,MAAK,EAAC,MAAK,QAAO,WAAU,aAAY,QAAOH,GAAE,SAAQ,KAAI,YAAW,GAAE,GAAE,SAAQ,EAAC,MAAK,QAAO,WAAU,cAAa,QAAOC,GAAE,SAAQ,QAAO,GAAE,GAAGG,GAAE,GAAGC,GAAE,GAAGC,GAAE,SAAQ,EAAC,MAAK,WAAU,WAAU,cAAa,SAAQ,GAAE,EAAC;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es571.js","sources":["../node_modules/@radix-ui/themes/dist/esm/props/height.props.js"],"sourcesContent":["const e={height:{type:\"string\",className:\"rt-r-h\",customProperties:[\"--height\"],responsive:!0},minHeight:{type:\"string\",className:\"rt-r-min-h\",customProperties:[\"--min-height\"],responsive:!0},maxHeight:{type:\"string\",className:\"rt-r-max-h\",customProperties:[\"--max-height\"],responsive:!0}};export{e as heightPropDefs};\n//# sourceMappingURL=height.props.js.map\n"],"names":[],"mappings":"AAAK,MAAC,IAAE,EAAC,QAAO,EAAC,MAAK,UAAS,WAAU,UAAS,kBAAiB,CAAC,UAAU,GAAE,YAAW,GAAE,GAAE,WAAU,EAAC,MAAK,UAAS,WAAU,cAAa,kBAAiB,CAAC,cAAc,GAAE,YAAW,GAAE,GAAE,WAAU,EAAC,MAAK,UAAS,WAAU,cAAa,kBAAiB,CAAC,cAAc,GAAE,YAAW,GAAE,EAAC;","x_google_ignoreList":[0]}
@@ -1,5 +1,5 @@
1
- const e = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"], s = { p: { type: "enum | string", className: "rt-r-p", customProperties: ["--p"], values: e, responsive: !0 }, px: { type: "enum | string", className: "rt-r-px", customProperties: ["--pl", "--pr"], values: e, responsive: !0 }, py: { type: "enum | string", className: "rt-r-py", customProperties: ["--pt", "--pb"], values: e, responsive: !0 }, pt: { type: "enum | string", className: "rt-r-pt", customProperties: ["--pt"], values: e, responsive: !0 }, pr: { type: "enum | string", className: "rt-r-pr", customProperties: ["--pr"], values: e, responsive: !0 }, pb: { type: "enum | string", className: "rt-r-pb", customProperties: ["--pb"], values: e, responsive: !0 }, pl: { type: "enum | string", className: "rt-r-pl", customProperties: ["--pl"], values: e, responsive: !0 } };
1
+ const t = { width: { type: "string", className: "rt-r-w", customProperties: ["--width"], responsive: !0 }, minWidth: { type: "string", className: "rt-r-min-w", customProperties: ["--min-width"], responsive: !0 }, maxWidth: { type: "string", className: "rt-r-max-w", customProperties: ["--max-width"], responsive: !0 } };
2
2
  export {
3
- s as paddingPropDefs
3
+ t as widthPropDefs
4
4
  };
5
5
  //# sourceMappingURL=index.es572.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es572.js","sources":["../node_modules/@radix-ui/themes/dist/esm/props/padding.props.js"],"sourcesContent":["const e=[\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\"],p={p:{type:\"enum | string\",className:\"rt-r-p\",customProperties:[\"--p\"],values:e,responsive:!0},px:{type:\"enum | string\",className:\"rt-r-px\",customProperties:[\"--pl\",\"--pr\"],values:e,responsive:!0},py:{type:\"enum | string\",className:\"rt-r-py\",customProperties:[\"--pt\",\"--pb\"],values:e,responsive:!0},pt:{type:\"enum | string\",className:\"rt-r-pt\",customProperties:[\"--pt\"],values:e,responsive:!0},pr:{type:\"enum | string\",className:\"rt-r-pr\",customProperties:[\"--pr\"],values:e,responsive:!0},pb:{type:\"enum | string\",className:\"rt-r-pb\",customProperties:[\"--pb\"],values:e,responsive:!0},pl:{type:\"enum | string\",className:\"rt-r-pl\",customProperties:[\"--pl\"],values:e,responsive:!0}};export{p as paddingPropDefs};\n//# sourceMappingURL=padding.props.js.map\n"],"names":["p"],"mappings":"AAAK,MAAC,IAAE,CAAC,KAAI,KAAI,KAAI,KAAI,KAAI,KAAI,KAAI,KAAI,KAAI,GAAG,GAAEA,IAAE,EAAC,GAAE,EAAC,MAAK,iBAAgB,WAAU,UAAS,kBAAiB,CAAC,KAAK,GAAE,QAAO,GAAE,YAAW,GAAE,GAAE,IAAG,EAAC,MAAK,iBAAgB,WAAU,WAAU,kBAAiB,CAAC,QAAO,MAAM,GAAE,QAAO,GAAE,YAAW,GAAE,GAAE,IAAG,EAAC,MAAK,iBAAgB,WAAU,WAAU,kBAAiB,CAAC,QAAO,MAAM,GAAE,QAAO,GAAE,YAAW,GAAE,GAAE,IAAG,EAAC,MAAK,iBAAgB,WAAU,WAAU,kBAAiB,CAAC,MAAM,GAAE,QAAO,GAAE,YAAW,GAAE,GAAE,IAAG,EAAC,MAAK,iBAAgB,WAAU,WAAU,kBAAiB,CAAC,MAAM,GAAE,QAAO,GAAE,YAAW,GAAE,GAAE,IAAG,EAAC,MAAK,iBAAgB,WAAU,WAAU,kBAAiB,CAAC,MAAM,GAAE,QAAO,GAAE,YAAW,GAAE,GAAE,IAAG,EAAC,MAAK,iBAAgB,WAAU,WAAU,kBAAiB,CAAC,MAAM,GAAE,QAAO,GAAE,YAAW,GAAE,EAAC;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es572.js","sources":["../node_modules/@radix-ui/themes/dist/esm/props/width.props.js"],"sourcesContent":["const t={width:{type:\"string\",className:\"rt-r-w\",customProperties:[\"--width\"],responsive:!0},minWidth:{type:\"string\",className:\"rt-r-min-w\",customProperties:[\"--min-width\"],responsive:!0},maxWidth:{type:\"string\",className:\"rt-r-max-w\",customProperties:[\"--max-width\"],responsive:!0}};export{t as widthPropDefs};\n//# sourceMappingURL=width.props.js.map\n"],"names":[],"mappings":"AAAK,MAAC,IAAE,EAAC,OAAM,EAAC,MAAK,UAAS,WAAU,UAAS,kBAAiB,CAAC,SAAS,GAAE,YAAW,GAAE,GAAE,UAAS,EAAC,MAAK,UAAS,WAAU,cAAa,kBAAiB,CAAC,aAAa,GAAE,YAAW,GAAE,GAAE,UAAS,EAAC,MAAK,UAAS,WAAU,cAAa,kBAAiB,CAAC,aAAa,GAAE,YAAW,GAAE,EAAC;","x_google_ignoreList":[0]}
@@ -1,5 +1,9 @@
1
- const e = { height: { type: "string", className: "rt-r-h", customProperties: ["--height"], responsive: !0 }, minHeight: { type: "string", className: "rt-r-min-h", customProperties: ["--min-height"], responsive: !0 }, maxHeight: { type: "string", className: "rt-r-max-h", customProperties: ["--max-height"], responsive: !0 } };
1
+ import { asChildPropDef as a } from "./index.es575.js";
2
+ import { accentColorPropDef as s } from "./index.es589.js";
3
+ import { highContrastPropDef as o } from "./index.es590.js";
4
+ import { radiusPropDef as e } from "./index.es577.js";
5
+ const r = ["1", "2", "3", "4"], t = ["classic", "solid", "soft", "surface", "outline", "ghost"], m = { ...a, size: { type: "enum", className: "rt-r-size", values: r, default: "2", responsive: !0 }, variant: { type: "enum", className: "rt-variant", values: t, default: "solid" }, ...s, ...o, ...e, loading: { type: "boolean", className: "rt-loading", default: !1 } };
2
6
  export {
3
- e as heightPropDefs
7
+ m as baseButtonPropDefs
4
8
  };
5
9
  //# sourceMappingURL=index.es573.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es573.js","sources":["../node_modules/@radix-ui/themes/dist/esm/props/height.props.js"],"sourcesContent":["const e={height:{type:\"string\",className:\"rt-r-h\",customProperties:[\"--height\"],responsive:!0},minHeight:{type:\"string\",className:\"rt-r-min-h\",customProperties:[\"--min-height\"],responsive:!0},maxHeight:{type:\"string\",className:\"rt-r-max-h\",customProperties:[\"--max-height\"],responsive:!0}};export{e as heightPropDefs};\n//# sourceMappingURL=height.props.js.map\n"],"names":[],"mappings":"AAAK,MAAC,IAAE,EAAC,QAAO,EAAC,MAAK,UAAS,WAAU,UAAS,kBAAiB,CAAC,UAAU,GAAE,YAAW,GAAE,GAAE,WAAU,EAAC,MAAK,UAAS,WAAU,cAAa,kBAAiB,CAAC,cAAc,GAAE,YAAW,GAAE,GAAE,WAAU,EAAC,MAAK,UAAS,WAAU,cAAa,kBAAiB,CAAC,cAAc,GAAE,YAAW,GAAE,EAAC;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es573.js","sources":["../node_modules/@radix-ui/themes/dist/esm/components/_internal/base-button.props.js"],"sourcesContent":["import{asChildPropDef as o}from\"../../props/as-child.prop.js\";import{accentColorPropDef as e}from\"../../props/color.prop.js\";import{highContrastPropDef as s}from\"../../props/high-contrast.prop.js\";import{radiusPropDef as r}from\"../../props/radius.prop.js\";const t=[\"1\",\"2\",\"3\",\"4\"],a=[\"classic\",\"solid\",\"soft\",\"surface\",\"outline\",\"ghost\"],i={...o,size:{type:\"enum\",className:\"rt-r-size\",values:t,default:\"2\",responsive:!0},variant:{type:\"enum\",className:\"rt-variant\",values:a,default:\"solid\"},...e,...s,...r,loading:{type:\"boolean\",className:\"rt-loading\",default:!1}};export{i as baseButtonPropDefs};\n//# sourceMappingURL=base-button.props.js.map\n"],"names":["t","a","i","o","e","s","r"],"mappings":";;;;AAAqQ,MAACA,IAAE,CAAC,KAAI,KAAI,KAAI,GAAG,GAAEC,IAAE,CAAC,WAAU,SAAQ,QAAO,WAAU,WAAU,OAAO,GAAEC,IAAE,EAAC,GAAGC,GAAE,MAAK,EAAC,MAAK,QAAO,WAAU,aAAY,QAAOH,GAAE,SAAQ,KAAI,YAAW,GAAE,GAAE,SAAQ,EAAC,MAAK,QAAO,WAAU,cAAa,QAAOC,GAAE,SAAQ,QAAO,GAAE,GAAGG,GAAE,GAAGC,GAAE,GAAGC,GAAE,SAAQ,EAAC,MAAK,WAAU,WAAU,cAAa,SAAQ,GAAE,EAAC;","x_google_ignoreList":[0]}
@@ -1,5 +1,19 @@
1
- const t = { width: { type: "string", className: "rt-r-w", customProperties: ["--width"], responsive: !0 }, minWidth: { type: "string", className: "rt-r-min-w", customProperties: ["--min-width"], responsive: !0 }, maxWidth: { type: "string", className: "rt-r-max-w", customProperties: ["--max-width"], responsive: !0 } };
1
+ function s(e, r) {
2
+ if (e !== void 0) return typeof e == "string" ? r(e) : Object.fromEntries(Object.entries(e).map(([n, t]) => [n, r(t)]));
3
+ }
4
+ function i(e) {
5
+ switch (e) {
6
+ case "1":
7
+ return "1";
8
+ case "2":
9
+ case "3":
10
+ return "2";
11
+ case "4":
12
+ return "3";
13
+ }
14
+ }
2
15
  export {
3
- t as widthPropDefs
16
+ i as mapButtonSizeToSpinnerSize,
17
+ s as mapResponsiveProp
4
18
  };
5
19
  //# sourceMappingURL=index.es574.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es574.js","sources":["../node_modules/@radix-ui/themes/dist/esm/props/width.props.js"],"sourcesContent":["const t={width:{type:\"string\",className:\"rt-r-w\",customProperties:[\"--width\"],responsive:!0},minWidth:{type:\"string\",className:\"rt-r-min-w\",customProperties:[\"--min-width\"],responsive:!0},maxWidth:{type:\"string\",className:\"rt-r-max-w\",customProperties:[\"--max-width\"],responsive:!0}};export{t as widthPropDefs};\n//# sourceMappingURL=width.props.js.map\n"],"names":[],"mappings":"AAAK,MAAC,IAAE,EAAC,OAAM,EAAC,MAAK,UAAS,WAAU,UAAS,kBAAiB,CAAC,SAAS,GAAE,YAAW,GAAE,GAAE,UAAS,EAAC,MAAK,UAAS,WAAU,cAAa,kBAAiB,CAAC,aAAa,GAAE,YAAW,GAAE,GAAE,UAAS,EAAC,MAAK,UAAS,WAAU,cAAa,kBAAiB,CAAC,aAAa,GAAE,YAAW,GAAE,EAAC;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es574.js","sources":["../node_modules/@radix-ui/themes/dist/esm/helpers/map-prop-values.js"],"sourcesContent":["function s(e,t){if(e!==void 0)return typeof e==\"string\"?t(e):Object.fromEntries(Object.entries(e).map(([n,o])=>[n,t(o)]))}function p(e){return e===\"3\"?\"3\":\"2\"}function r(e){switch(e){case\"1\":return\"1\";case\"2\":case\"3\":return\"2\";case\"4\":return\"3\"}}export{r as mapButtonSizeToSpinnerSize,p as mapCalloutSizeToTextSize,s as mapResponsiveProp};\n//# sourceMappingURL=map-prop-values.js.map\n"],"names":["t","o","r"],"mappings":"AAAA,SAAS,EAAE,GAAEA,GAAE;AAAC,MAAG,MAAI,OAAO,QAAO,OAAO,KAAG,WAASA,EAAE,CAAC,IAAE,OAAO,YAAY,OAAO,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC,GAAEC,CAAC,MAAI,CAAC,GAAED,EAAEC,CAAC,CAAC,CAAC,CAAC;AAAC;AAAsC,SAASC,EAAE,GAAE;AAAC,UAAO,GAAC;AAAA,IAAE,KAAI;AAAI,aAAM;AAAA,IAAI,KAAI;AAAA,IAAI,KAAI;AAAI,aAAM;AAAA,IAAI,KAAI;AAAI,aAAM;AAAA,EAAG;AAAC;","x_google_ignoreList":[0]}
@@ -4,7 +4,7 @@ import './components/ui/CardReminder/CardReminder.css';/* empty css *
4
4
  import { Calendar as m } from "./index.es175.js";
5
5
  const h = ({
6
6
  icon: a = /* @__PURE__ */ e.jsx(m, { width: 21, height: 21, color: "slate-28" }),
7
- titleTag: i = "h3",
7
+ titleTag: i = "h1",
8
8
  title: d,
9
9
  description: r,
10
10
  footer: s
@@ -1 +1 @@
1
- {"version":3,"file":"index.es62.js","sources":["../src/components/ui/CardReminder/index.tsx"],"sourcesContent":["import Balancer from \"react-wrap-balancer\";\r\nimport { Calendar } from \"@/icons\";\r\nimport \"./CardReminder.scss\";\r\n\r\ntype HeadingLevel = \"h2\" | \"h3\" | \"h4\";\r\n\r\ntype CardReminderProps = {\r\n icon?: React.ReactNode;\r\n title: string;\r\n description?: React.ReactNode;\r\n titleTag?: HeadingLevel;\r\n footer?: React.ReactNode;\r\n};\r\n\r\nexport const CardReminder = ({\r\n icon = <Calendar width={21} height={21} color=\"slate-28\" />,\r\n titleTag: TitleTag = \"h3\",\r\n title,\r\n description,\r\n footer,\r\n}: CardReminderProps) => {\r\n return (\r\n <div className=\"bg-white shadow br-x4 ui-card-reminder\">\r\n <header className=\"ui-card-reminder-header\">\r\n <div className=\"ui-card-reminder-icon\">{icon}</div>\r\n <TitleTag className=\"fs-5 md-fs-4 fw-semibold text-slate-28\">\r\n {title}\r\n </TitleTag>\r\n </header>\r\n {description && (\r\n <Balancer\r\n as=\"p\"\r\n className=\"fs-custom fw-regular text-slate-28 ui-card-reminder-content\"\r\n >\r\n {description}\r\n </Balancer>\r\n )}\r\n {footer && <footer className=\"ui-card-reminder-footer\">{footer}</footer>}\r\n </div>\r\n );\r\n};\r\n"],"names":["CardReminder","icon","Calendar","TitleTag","title","description","footer","jsxs","jsx","Balancer"],"mappings":";;;;AAcO,MAAMA,IAAe,CAAC;AAAA,EAC3B,MAAAC,0BAAQC,GAAS,EAAA,OAAO,IAAI,QAAQ,IAAI,OAAM,YAAW;AAAA,EACzD,UAAUC,IAAW;AAAA,EACrB,OAAAC;AAAA,EACA,aAAAC;AAAA,EACA,QAAAC;AACF,MAEIC,gBAAAA,EAAA,KAAC,OAAI,EAAA,WAAU,0CACb,UAAA;AAAA,EAACA,gBAAAA,EAAAA,KAAA,UAAA,EAAO,WAAU,2BAChB,UAAA;AAAA,IAACC,gBAAAA,EAAA,IAAA,OAAA,EAAI,WAAU,yBAAyB,UAAKP,GAAA;AAAA,IAC5CO,gBAAAA,EAAA,IAAAL,GAAA,EAAS,WAAU,0CACjB,UACHC,EAAA,CAAA;AAAA,EAAA,GACF;AAAA,EACCC,KACCG,gBAAAA,EAAA;AAAA,IAACC;AAAAA,IAAA;AAAA,MACC,IAAG;AAAA,MACH,WAAU;AAAA,MAET,UAAAJ;AAAA,IAAA;AAAA,EACH;AAAA,EAEDC,KAAUE,gBAAAA,EAAA,IAAC,UAAO,EAAA,WAAU,2BAA2B,UAAOF,EAAA,CAAA;AAAA,GACjE;"}
1
+ {"version":3,"file":"index.es62.js","sources":["../src/components/ui/CardReminder/index.tsx"],"sourcesContent":["import Balancer from \"react-wrap-balancer\";\r\nimport { Calendar } from \"@/icons\";\r\nimport \"./CardReminder.scss\";\r\nimport { HeadingLevel } from \"@/types/headings\";\r\n\r\ntype CardReminderProps = {\r\n icon?: React.ReactNode;\r\n title: string;\r\n description?: React.ReactNode;\r\n titleTag?: HeadingLevel;\r\n footer?: React.ReactNode;\r\n};\r\n\r\nexport const CardReminder = ({\r\n icon = <Calendar width={21} height={21} color=\"slate-28\" />,\r\n titleTag: TitleTag = \"h1\",\r\n title,\r\n description,\r\n footer,\r\n}: CardReminderProps) => {\r\n return (\r\n <div className=\"bg-white shadow br-x4 ui-card-reminder\">\r\n <header className=\"ui-card-reminder-header\">\r\n <div className=\"ui-card-reminder-icon\">{icon}</div>\r\n <TitleTag className=\"fs-5 md-fs-4 fw-semibold text-slate-28\">\r\n {title}\r\n </TitleTag>\r\n </header>\r\n {description && (\r\n <Balancer\r\n as=\"p\"\r\n className=\"fs-custom fw-regular text-slate-28 ui-card-reminder-content\"\r\n >\r\n {description}\r\n </Balancer>\r\n )}\r\n {footer && <footer className=\"ui-card-reminder-footer\">{footer}</footer>}\r\n </div>\r\n );\r\n};\r\n"],"names":["CardReminder","icon","Calendar","TitleTag","title","description","footer","jsxs","jsx","Balancer"],"mappings":";;;;AAaO,MAAMA,IAAe,CAAC;AAAA,EAC3B,MAAAC,0BAAQC,GAAS,EAAA,OAAO,IAAI,QAAQ,IAAI,OAAM,YAAW;AAAA,EACzD,UAAUC,IAAW;AAAA,EACrB,OAAAC;AAAA,EACA,aAAAC;AAAA,EACA,QAAAC;AACF,MAEIC,gBAAAA,EAAA,KAAC,OAAI,EAAA,WAAU,0CACb,UAAA;AAAA,EAACA,gBAAAA,EAAAA,KAAA,UAAA,EAAO,WAAU,2BAChB,UAAA;AAAA,IAACC,gBAAAA,EAAA,IAAA,OAAA,EAAI,WAAU,yBAAyB,UAAKP,GAAA;AAAA,IAC5CO,gBAAAA,EAAA,IAAAL,GAAA,EAAS,WAAU,0CACjB,UACHC,EAAA,CAAA;AAAA,EAAA,GACF;AAAA,EACCC,KACCG,gBAAAA,EAAA;AAAA,IAACC;AAAAA,IAAA;AAAA,MACC,IAAG;AAAA,MACH,WAAU;AAAA,MAET,UAAAJ;AAAA,IAAA;AAAA,EACH;AAAA,EAEDC,KAAUE,gBAAAA,EAAA,IAAC,UAAO,EAAA,WAAU,2BAA2B,UAAOF,EAAA,CAAA;AAAA,GACjE;"}
@@ -6,7 +6,7 @@ import './components/ui/CardDoctor/CardDoctor.css';/* empty css */
6
6
  import { Row as b } from "./index.es9.js";
7
7
  import { Col as k } from "./index.es10.js";
8
8
  const B = ({
9
- titleTag: a = "h3",
9
+ titleTag: a = "h1",
10
10
  doctorName: h,
11
11
  specialties: d,
12
12
  contactInfo: m,
@@ -1 +1 @@
1
- {"version":3,"file":"index.es63.js","sources":["../src/components/ui/CardDoctor/index.tsx"],"sourcesContent":["import { DayHours } from \"@anoki/fse-common\";\nimport { Avatar, AvatarSize } from \"../Avatar\";\nimport { ColorKeys } from \"@/theme/colors\";\nimport { Divider } from \"../Divider\";\nimport { Button } from \"../Button\";\nimport \"./CardDoctor.scss\";\nimport { Col, Row } from \"@/components\";\n\ntype HeadingLevel = \"h2\" | \"h3\" | \"h4\";\ntype Info = {\n label: string;\n value: string;\n};\n\ntype ScheduleDay = {\n label: string;\n slots: DayHours[];\n};\n\ntype CardDoctorProps = {\n titleTag?: HeadingLevel;\n doctorName: string;\n specialties?: string[];\n contactInfo?: Info[];\n schedule?: {\n label: string;\n days: ScheduleDay[];\n };\n avatar?: {\n initials: string;\n bg?: ColorKeys;\n textColor?: ColorKeys;\n };\n avatarSize?: AvatarSize;\n button?: {\n label: string;\n onClick: () => void;\n };\n};\n\nexport const CardDoctor = ({\n titleTag: TitleTag = \"h3\",\n doctorName,\n specialties,\n contactInfo,\n schedule,\n avatar,\n avatarSize = \"3\",\n button,\n}: CardDoctorProps) => {\n const showContactInfo = () => {\n return contactInfo && contactInfo?.length > 0;\n };\n\n const showSchedule = () => {\n return schedule && schedule?.days?.length > 0;\n };\n\n const showFooter = () => {\n return button?.label && button?.onClick;\n };\n\n const showDivider = () => {\n return showContactInfo() || showSchedule();\n };\n\n return (\n <article className=\"bg-white shadow br-x4 ui-card-doctor\">\n <Row as={\"header\"} gap={\"x16\"} className=\"align-items-center\">\n {avatar && (\n <Avatar\n textColor={avatar?.textColor ?? \"slate-20\"}\n bg={avatar?.bg ?? \"lightblue-a01\"}\n initials={avatar?.initials ?? \"\"}\n className=\"ui-card-doctor-avatar\"\n size={avatarSize}\n />\n )}\n\n <div>\n <TitleTag className=\"fs-5 md-fs-custom-2 fw-semibold text-slate-20\">\n {doctorName}\n </TitleTag>\n {specialties && specialties?.length > 0 && (\n <p className=\"fs-6 text-slate-20 fw-regular\">\n {specialties?.join(\" | \")}\n </p>\n )}\n </div>\n </Row>\n <div className=\"ui-card-doctor-content\">\n {showContactInfo() && (\n <dl className=\"ui-card-doctor-contact\">\n {contactInfo?.map((info) => (\n <div\n key={info.label}\n role=\"group\"\n className=\"ui-card-doctor-contact-detail\"\n >\n <dt className=\"fs-custom fw-bold text-slate-28\">\n {info.label}\n </dt>\n <dd className=\"fs-6 fw-regular text-slate-28\">{info.value}</dd>\n </div>\n ))}\n </dl>\n )}\n\n {showDivider() && <Divider bg=\"border-divider\" />}\n\n {showSchedule() && (\n <div>\n <div className={\"ui-border-lg\"}>\n <h3 className=\"text-align-left fw-bold text-slate-28 mb-x8 fs-custom\">\n {schedule?.label}\n </h3>\n\n <div role=\"table\" className=\"ui-card-doctor-table\">\n {schedule?.days.map((day, dayIndex) => (\n <div\n key={day.label}\n role=\"row\"\n className=\"ui-card-doctor-row\"\n >\n <div\n className=\"fs-6 fw-regular text-slate-28\"\n role=\"rowheader\"\n >\n {day.label}\n </div>\n <Col\n role=\"cell\"\n key={`cell-${dayIndex}`}\n className=\"fs-6 fw-regular text-slate-28\"\n >\n {day?.slots?.length === 0 && (\n <div>\n <span aria-hidden=\"true\">-</span>\n </div>\n )}\n {day.slots.map((slot, slotIndex) => (\n <div key={`slot-${slotIndex}`}>\n <time dateTime={slot.from}>{slot.from}</time>\n <span aria-hidden=\"true\"> - </span>\n <time dateTime={slot.to}>{slot.to}</time>\n </div>\n ))}\n </Col>\n </div>\n ))}\n </div>\n </div>\n </div>\n )}\n </div>\n {showFooter() && (\n <footer>\n <Button className=\"ui-card-doctor-btn\" onClick={button?.onClick}>\n {button?.label}\n </Button>\n </footer>\n )}\n </article>\n );\n};\n"],"names":["CardDoctor","TitleTag","doctorName","specialties","contactInfo","schedule","avatar","avatarSize","button","showContactInfo","showSchedule","_a","showFooter","showDivider","jsxs","Row","jsx","Avatar","info","Divider","day","dayIndex","Col","slot","slotIndex","Button"],"mappings":"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"}
1
+ {"version":3,"file":"index.es63.js","sources":["../src/components/ui/CardDoctor/index.tsx"],"sourcesContent":["import { DayHours } from \"@anoki/fse-common\";\nimport { Avatar, AvatarSize } from \"../Avatar\";\nimport { ColorKeys } from \"@/theme/colors\";\nimport { Divider } from \"../Divider\";\nimport { Button } from \"../Button\";\nimport \"./CardDoctor.scss\";\nimport { Col, Row } from \"@/components\";\nimport { HeadingLevel } from \"@/types/headings\";\n\ntype Info = {\n label: string;\n value: string;\n};\n\ntype ScheduleDay = {\n label: string;\n slots: DayHours[];\n};\n\ntype CardDoctorProps = {\n titleTag?: HeadingLevel;\n doctorName: string;\n specialties?: string[];\n contactInfo?: Info[];\n schedule?: {\n label: string;\n days: ScheduleDay[];\n };\n avatar?: {\n initials: string;\n bg?: ColorKeys;\n textColor?: ColorKeys;\n };\n avatarSize?: AvatarSize;\n button?: {\n label: string;\n onClick: () => void;\n };\n};\n\nexport const CardDoctor = ({\n titleTag: TitleTag = \"h1\",\n doctorName,\n specialties,\n contactInfo,\n schedule,\n avatar,\n avatarSize = \"3\",\n button,\n}: CardDoctorProps) => {\n const showContactInfo = () => {\n return contactInfo && contactInfo?.length > 0;\n };\n\n const showSchedule = () => {\n return schedule && schedule?.days?.length > 0;\n };\n\n const showFooter = () => {\n return button?.label && button?.onClick;\n };\n\n const showDivider = () => {\n return showContactInfo() || showSchedule();\n };\n\n return (\n <article className=\"bg-white shadow br-x4 ui-card-doctor\">\n <Row as={\"header\"} gap={\"x16\"} className=\"align-items-center\">\n {avatar && (\n <Avatar\n textColor={avatar?.textColor ?? \"slate-20\"}\n bg={avatar?.bg ?? \"lightblue-a01\"}\n initials={avatar?.initials ?? \"\"}\n className=\"ui-card-doctor-avatar\"\n size={avatarSize}\n />\n )}\n\n <div>\n <TitleTag className=\"fs-5 md-fs-custom-2 fw-semibold text-slate-20\">\n {doctorName}\n </TitleTag>\n {specialties && specialties?.length > 0 && (\n <p className=\"fs-6 text-slate-20 fw-regular\">\n {specialties?.join(\" | \")}\n </p>\n )}\n </div>\n </Row>\n <div className=\"ui-card-doctor-content\">\n {showContactInfo() && (\n <dl className=\"ui-card-doctor-contact\">\n {contactInfo?.map((info) => (\n <div\n key={info.label}\n role=\"group\"\n className=\"ui-card-doctor-contact-detail\"\n >\n <dt className=\"fs-custom fw-bold text-slate-28\">\n {info.label}\n </dt>\n <dd className=\"fs-6 fw-regular text-slate-28\">{info.value}</dd>\n </div>\n ))}\n </dl>\n )}\n\n {showDivider() && <Divider bg=\"border-divider\" />}\n\n {showSchedule() && (\n <div>\n <div className={\"ui-border-lg\"}>\n <h3 className=\"text-align-left fw-bold text-slate-28 mb-x8 fs-custom\">\n {schedule?.label}\n </h3>\n\n <div role=\"table\" className=\"ui-card-doctor-table\">\n {schedule?.days.map((day, dayIndex) => (\n <div\n key={day.label}\n role=\"row\"\n className=\"ui-card-doctor-row\"\n >\n <div\n className=\"fs-6 fw-regular text-slate-28\"\n role=\"rowheader\"\n >\n {day.label}\n </div>\n <Col\n role=\"cell\"\n key={`cell-${dayIndex}`}\n className=\"fs-6 fw-regular text-slate-28\"\n >\n {day?.slots?.length === 0 && (\n <div>\n <span aria-hidden=\"true\">-</span>\n </div>\n )}\n {day.slots.map((slot, slotIndex) => (\n <div key={`slot-${slotIndex}`}>\n <time dateTime={slot.from}>{slot.from}</time>\n <span aria-hidden=\"true\"> - </span>\n <time dateTime={slot.to}>{slot.to}</time>\n </div>\n ))}\n </Col>\n </div>\n ))}\n </div>\n </div>\n </div>\n )}\n </div>\n {showFooter() && (\n <footer>\n <Button className=\"ui-card-doctor-btn\" onClick={button?.onClick}>\n {button?.label}\n </Button>\n </footer>\n )}\n </article>\n );\n};\n"],"names":["CardDoctor","TitleTag","doctorName","specialties","contactInfo","schedule","avatar","avatarSize","button","showContactInfo","showSchedule","_a","showFooter","showDivider","jsxs","Row","jsx","Avatar","info","Divider","day","dayIndex","Col","slot","slotIndex","Button"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.es68.js","sources":["../src/components/ui/TitleSection/index.tsx"],"sourcesContent":["import \"./TitleSection.scss\";\nimport clsx from \"clsx\";\nimport { MoreActions } from \"@/icons\";\nimport { PropsWithChildren, ReactNode, useState } from \"react\";\nimport { ActionsPopup, Row } from \"@/components\";\n\ntype TitleSectionProps = PropsWithChildren<{\n action1?: ReactNode;\n action2?: ReactNode;\n mainButton?: ReactNode;\n secondaryButton?: ReactNode;\n titleSection: string;\n classNameTitle?: string;\n isMoreOption?: boolean;\n handleMoreOption?: () => void;\n titleTag?: \"h1\" | \"h2\" | \"h3\" | \"h4\";\n}>;\n\nexport const TitleSection = ({\n action1,\n action2,\n mainButton,\n secondaryButton,\n titleSection,\n classNameTitle,\n titleTag: TitleTag = \"h1\",\n}: TitleSectionProps) => {\n const [openActions, setOpenActions] = useState(false);\n\n const popupActions = [action1, action2].filter(Boolean);\n return (\n <div>\n <div className={clsx(\"ui-title-section-container\")}>\n <div className=\"ui-title-row\">\n <TitleTag\n className={clsx(\n classNameTitle,\n \"py-x8 md-py-x16 fs-4 md-fs-2 fw-bold text-slate-28\",\n )}\n >\n {titleSection}\n </TitleTag>\n\n {popupActions.length === 2 && (\n <>\n <div\n onClick={() => setOpenActions(!openActions)}\n className=\"ui-mobile-actions\"\n >\n <MoreActions\n className=\"cursor-pointer\"\n aria-label=\"Altre opzioni\"\n />\n </div>\n <ActionsPopup\n isOpen={openActions}\n onClickCloseBtn={() => setOpenActions(false)}\n actions={popupActions}\n className=\"ui-mobile-actionspopup\"\n >\n {secondaryButton && (\n <div className=\"ui-actions-popup-buttons\">\n {secondaryButton}\n </div>\n )}\n </ActionsPopup>\n </>\n )}\n </div>\n\n {popupActions.length === 1 && (\n <div className=\"ui-mobile-single-action\">{popupActions[0]}</div>\n )}\n\n <nav className=\"ui-desktop-actions\" aria-label=\"Azioni principali\">\n <Row\n as={\"ul\"}\n gap={\"x20\"}\n fw={\"semibold\"}\n text={\"primary\"}\n fs={\"8\"}\n className=\"list-style-none\"\n >\n {action1}\n {action2 && <span className=\"ui-divider-title-section\"></span>}\n {action2}\n {secondaryButton && (\n <Row\n as={\"li\"}\n text={\"primary\"}\n justifyContent={\"center\"}\n alignItems={\"center\"}\n gap={\"x8\"}\n >\n {secondaryButton}\n </Row>\n )}\n {mainButton && (\n <Row\n as={\"li\"}\n text={\"primary\"}\n justifyContent={\"center\"}\n alignItems={\"center\"}\n gap={\"x8\"}\n >\n {mainButton}\n </Row>\n )}\n </Row>\n </nav>\n </div>\n <div className=\"ui-mobile-main-button\">{mainButton}</div>\n </div>\n );\n};\n"],"names":["TitleSection","action1","action2","mainButton","secondaryButton","titleSection","classNameTitle","TitleTag","openActions","setOpenActions","useState","popupActions","jsxs","clsx","jsx","Fragment","MoreActions","ActionsPopup","Row"],"mappings":";;;;;;;AAkBO,MAAMA,IAAe,CAAC;AAAA,EAC3B,SAAAC;AAAA,EACA,SAAAC;AAAA,EACA,YAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,cAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,UAAUC,IAAW;AACvB,MAAyB;AACvB,QAAM,CAACC,GAAaC,CAAc,IAAIC,EAAS,EAAK,GAE9CC,IAAe,CAACV,GAASC,CAAO,EAAE,OAAO,OAAO;AACtD,gCACG,OACC,EAAA,UAAA;AAAA,IAAAU,gBAAAA,EAAA,KAAC,OAAI,EAAA,WAAWC,EAAK,4BAA4B,GAC/C,UAAA;AAAA,MAACD,gBAAAA,EAAAA,KAAA,OAAA,EAAI,WAAU,gBACb,UAAA;AAAA,QAAAE,gBAAAA,EAAA;AAAA,UAACP;AAAA,UAAA;AAAA,YACC,WAAWM;AAAA,cACTP;AAAA,cACA;AAAA,YACF;AAAA,YAEC,UAAAD;AAAA,UAAA;AAAA,QACH;AAAA,QAECM,EAAa,WAAW,KAErBC,gBAAAA,EAAA,KAAAG,EAAA,UAAA,EAAA,UAAA;AAAA,UAAAD,gBAAAA,EAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,SAAS,MAAML,EAAe,CAACD,CAAW;AAAA,cAC1C,WAAU;AAAA,cAEV,UAAAM,gBAAAA,EAAA;AAAA,gBAACE;AAAA,gBAAA;AAAA,kBACC,WAAU;AAAA,kBACV,cAAW;AAAA,gBAAA;AAAA,cAAA;AAAA,YACb;AAAA,UACF;AAAA,UACAF,gBAAAA,EAAA;AAAA,YAACG;AAAA,YAAA;AAAA,cACC,QAAQT;AAAA,cACR,iBAAiB,MAAMC,EAAe,EAAK;AAAA,cAC3C,SAASE;AAAA,cACT,WAAU;AAAA,cAET,UACCP,KAAAU,gBAAAA,EAAAA,IAAC,OAAI,EAAA,WAAU,4BACZ,UACHV,EAAA,CAAA;AAAA,YAAA;AAAA,UAAA;AAAA,QAEJ,EACF,CAAA;AAAA,MAAA,GAEJ;AAAA,MAECO,EAAa,WAAW,KACvBG,gBAAAA,EAAAA,IAAC,SAAI,WAAU,2BAA2B,UAAaH,EAAA,CAAC,EAAE,CAAA;AAAA,MAG3DG,gBAAAA,EAAA,IAAA,OAAA,EAAI,WAAU,sBAAqB,cAAW,qBAC7C,UAAAF,gBAAAA,EAAA;AAAA,QAACM;AAAA,QAAA;AAAA,UACC,IAAI;AAAA,UACJ,KAAK;AAAA,UACL,IAAI;AAAA,UACJ,MAAM;AAAA,UACN,IAAI;AAAA,UACJ,WAAU;AAAA,UAET,UAAA;AAAA,YAAAjB;AAAA,YACAC,KAAWY,gBAAAA,EAAAA,IAAC,QAAK,EAAA,WAAU,2BAA2B,CAAA;AAAA,YACtDZ;AAAA,YACAE,KACCU,gBAAAA,EAAA;AAAA,cAACI;AAAA,cAAA;AAAA,gBACC,IAAI;AAAA,gBACJ,MAAM;AAAA,gBACN,gBAAgB;AAAA,gBAChB,YAAY;AAAA,gBACZ,KAAK;AAAA,gBAEJ,UAAAd;AAAA,cAAA;AAAA,YACH;AAAA,YAEDD,KACCW,gBAAAA,EAAA;AAAA,cAACI;AAAA,cAAA;AAAA,gBACC,IAAI;AAAA,gBACJ,MAAM;AAAA,gBACN,gBAAgB;AAAA,gBAChB,YAAY;AAAA,gBACZ,KAAK;AAAA,gBAEJ,UAAAf;AAAA,cAAA;AAAA,YAAA;AAAA,UACH;AAAA,QAAA;AAAA,MAAA,EAGN,CAAA;AAAA,IAAA,GACF;AAAA,IACCW,gBAAAA,EAAA,IAAA,OAAA,EAAI,WAAU,yBAAyB,UAAWX,EAAA,CAAA;AAAA,EAAA,GACrD;AAEJ;"}
1
+ {"version":3,"file":"index.es68.js","sources":["../src/components/ui/TitleSection/index.tsx"],"sourcesContent":["import \"./TitleSection.scss\";\r\nimport clsx from \"clsx\";\r\nimport { MoreActions } from \"@/icons\";\r\nimport { PropsWithChildren, ReactNode, useState } from \"react\";\r\nimport { ActionsPopup, Row } from \"@/components\";\r\nimport { HeadingLevel } from \"@/types/headings\";\r\n\r\ntype TitleSectionProps = PropsWithChildren<{\r\n action1?: ReactNode;\r\n action2?: ReactNode;\r\n mainButton?: ReactNode;\r\n secondaryButton?: ReactNode;\r\n titleSection: string;\r\n classNameTitle?: string;\r\n isMoreOption?: boolean;\r\n handleMoreOption?: () => void;\r\n titleTag?: HeadingLevel;\r\n}>;\r\n\r\nexport const TitleSection = ({\r\n action1,\r\n action2,\r\n mainButton,\r\n secondaryButton,\r\n titleSection,\r\n classNameTitle,\r\n titleTag: TitleTag = \"h1\",\r\n}: TitleSectionProps) => {\r\n const [openActions, setOpenActions] = useState(false);\r\n\r\n const popupActions = [action1, action2].filter(Boolean);\r\n return (\r\n <div>\r\n <div className={clsx(\"ui-title-section-container\")}>\r\n <div className=\"ui-title-row\">\r\n <TitleTag\r\n className={clsx(\r\n classNameTitle,\r\n \"py-x8 md-py-x16 fs-4 md-fs-2 fw-bold text-slate-28\",\r\n )}\r\n >\r\n {titleSection}\r\n </TitleTag>\r\n\r\n {popupActions.length === 2 && (\r\n <>\r\n <div\r\n onClick={() => setOpenActions(!openActions)}\r\n className=\"ui-mobile-actions\"\r\n >\r\n <MoreActions\r\n className=\"cursor-pointer\"\r\n aria-label=\"Altre opzioni\"\r\n />\r\n </div>\r\n <ActionsPopup\r\n isOpen={openActions}\r\n onClickCloseBtn={() => setOpenActions(false)}\r\n actions={popupActions}\r\n className=\"ui-mobile-actionspopup\"\r\n >\r\n {secondaryButton && (\r\n <div className=\"ui-actions-popup-buttons\">\r\n {secondaryButton}\r\n </div>\r\n )}\r\n </ActionsPopup>\r\n </>\r\n )}\r\n </div>\r\n\r\n {popupActions.length === 1 && (\r\n <div className=\"ui-mobile-single-action\">{popupActions[0]}</div>\r\n )}\r\n\r\n <nav className=\"ui-desktop-actions\" aria-label=\"Azioni principali\">\r\n <Row\r\n as={\"ul\"}\r\n gap={\"x20\"}\r\n fw={\"semibold\"}\r\n text={\"primary\"}\r\n fs={\"8\"}\r\n className=\"list-style-none\"\r\n >\r\n {action1}\r\n {action2 && <span className=\"ui-divider-title-section\"></span>}\r\n {action2}\r\n {secondaryButton && (\r\n <Row\r\n as={\"li\"}\r\n text={\"primary\"}\r\n justifyContent={\"center\"}\r\n alignItems={\"center\"}\r\n gap={\"x8\"}\r\n >\r\n {secondaryButton}\r\n </Row>\r\n )}\r\n {mainButton && (\r\n <Row\r\n as={\"li\"}\r\n text={\"primary\"}\r\n justifyContent={\"center\"}\r\n alignItems={\"center\"}\r\n gap={\"x8\"}\r\n >\r\n {mainButton}\r\n </Row>\r\n )}\r\n </Row>\r\n </nav>\r\n </div>\r\n <div className=\"ui-mobile-main-button\">{mainButton}</div>\r\n </div>\r\n );\r\n};\r\n"],"names":["TitleSection","action1","action2","mainButton","secondaryButton","titleSection","classNameTitle","TitleTag","openActions","setOpenActions","useState","popupActions","jsxs","clsx","jsx","Fragment","MoreActions","ActionsPopup","Row"],"mappings":";;;;;;;AAmBO,MAAMA,IAAe,CAAC;AAAA,EAC3B,SAAAC;AAAA,EACA,SAAAC;AAAA,EACA,YAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,cAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,UAAUC,IAAW;AACvB,MAAyB;AACvB,QAAM,CAACC,GAAaC,CAAc,IAAIC,EAAS,EAAK,GAE9CC,IAAe,CAACV,GAASC,CAAO,EAAE,OAAO,OAAO;AACtD,gCACG,OACC,EAAA,UAAA;AAAA,IAAAU,gBAAAA,EAAA,KAAC,OAAI,EAAA,WAAWC,EAAK,4BAA4B,GAC/C,UAAA;AAAA,MAACD,gBAAAA,EAAAA,KAAA,OAAA,EAAI,WAAU,gBACb,UAAA;AAAA,QAAAE,gBAAAA,EAAA;AAAA,UAACP;AAAA,UAAA;AAAA,YACC,WAAWM;AAAA,cACTP;AAAA,cACA;AAAA,YACF;AAAA,YAEC,UAAAD;AAAA,UAAA;AAAA,QACH;AAAA,QAECM,EAAa,WAAW,KAErBC,gBAAAA,EAAA,KAAAG,EAAA,UAAA,EAAA,UAAA;AAAA,UAAAD,gBAAAA,EAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,SAAS,MAAML,EAAe,CAACD,CAAW;AAAA,cAC1C,WAAU;AAAA,cAEV,UAAAM,gBAAAA,EAAA;AAAA,gBAACE;AAAA,gBAAA;AAAA,kBACC,WAAU;AAAA,kBACV,cAAW;AAAA,gBAAA;AAAA,cAAA;AAAA,YACb;AAAA,UACF;AAAA,UACAF,gBAAAA,EAAA;AAAA,YAACG;AAAA,YAAA;AAAA,cACC,QAAQT;AAAA,cACR,iBAAiB,MAAMC,EAAe,EAAK;AAAA,cAC3C,SAASE;AAAA,cACT,WAAU;AAAA,cAET,UACCP,KAAAU,gBAAAA,EAAAA,IAAC,OAAI,EAAA,WAAU,4BACZ,UACHV,EAAA,CAAA;AAAA,YAAA;AAAA,UAAA;AAAA,QAEJ,EACF,CAAA;AAAA,MAAA,GAEJ;AAAA,MAECO,EAAa,WAAW,KACvBG,gBAAAA,EAAAA,IAAC,SAAI,WAAU,2BAA2B,UAAaH,EAAA,CAAC,EAAE,CAAA;AAAA,MAG3DG,gBAAAA,EAAA,IAAA,OAAA,EAAI,WAAU,sBAAqB,cAAW,qBAC7C,UAAAF,gBAAAA,EAAA;AAAA,QAACM;AAAA,QAAA;AAAA,UACC,IAAI;AAAA,UACJ,KAAK;AAAA,UACL,IAAI;AAAA,UACJ,MAAM;AAAA,UACN,IAAI;AAAA,UACJ,WAAU;AAAA,UAET,UAAA;AAAA,YAAAjB;AAAA,YACAC,KAAWY,gBAAAA,EAAAA,IAAC,QAAK,EAAA,WAAU,2BAA2B,CAAA;AAAA,YACtDZ;AAAA,YACAE,KACCU,gBAAAA,EAAA;AAAA,cAACI;AAAA,cAAA;AAAA,gBACC,IAAI;AAAA,gBACJ,MAAM;AAAA,gBACN,gBAAgB;AAAA,gBAChB,YAAY;AAAA,gBACZ,KAAK;AAAA,gBAEJ,UAAAd;AAAA,cAAA;AAAA,YACH;AAAA,YAEDD,KACCW,gBAAAA,EAAA;AAAA,cAACI;AAAA,cAAA;AAAA,gBACC,IAAI;AAAA,gBACJ,MAAM;AAAA,gBACN,gBAAgB;AAAA,gBAChB,YAAY;AAAA,gBACZ,KAAK;AAAA,gBAEJ,UAAAf;AAAA,cAAA;AAAA,YAAA;AAAA,UACH;AAAA,QAAA;AAAA,MAAA,EAGN,CAAA;AAAA,IAAA,GACF;AAAA,IACCW,gBAAAA,EAAA,IAAA,OAAA,EAAI,WAAU,yBAAyB,UAAWX,EAAA,CAAA;AAAA,EAAA,GACrD;AAEJ;"}
@@ -4,7 +4,7 @@ import './components/ui/CardUser/CardUser.css';/* empty css */
4
4
  import { Col as m } from "./index.es10.js";
5
5
  import { Row as r } from "./index.es9.js";
6
6
  const g = ({
7
- titleTag: l = "h3",
7
+ titleTag: l = "h1",
8
8
  userName: o,
9
9
  avatar: s,
10
10
  information: d = []
@@ -1 +1 @@
1
- {"version":3,"file":"index.es70.js","sources":["../src/components/ui/CardUser/index.tsx"],"sourcesContent":["import { ColorKeys } from \"@/theme/colors\";\r\nimport { Avatar } from \"../Avatar\";\r\nimport \"./CardUser.scss\";\r\nimport { Col, Row } from \"@/components\";\r\n\r\ntype HeadingLevel = \"h2\" | \"h3\" | \"h4\";\r\n\r\ntype CardUserProps = {\r\n titleTag?: HeadingLevel;\r\n userName: string;\r\n avatar?: {\r\n initials: string;\r\n bg?: ColorKeys;\r\n textColor?: ColorKeys;\r\n };\r\n information?: {\r\n label: string;\r\n value: string;\r\n }[];\r\n};\r\n\r\nexport const CardUser = ({\r\n titleTag: TitleTag = \"h3\",\r\n userName,\r\n avatar,\r\n information = [],\r\n}: CardUserProps) => {\r\n return (\r\n <Col\r\n as={\"article\"}\r\n bg={\"white\"}\r\n br={\"x4\"}\r\n p={\"x16\"}\r\n gap={\"x16\"}\r\n className=\"shadow md-p-x24 md-gap-x24\"\r\n >\r\n <Row as={\"header\"} gap={\"x16\"} alignItems={\"center\"}>\r\n {avatar && (\r\n <Avatar\r\n textColor={avatar?.textColor ?? \"slate-20\"}\r\n bg={avatar?.bg ?? \"lightblue-a01\"}\r\n initials={avatar?.initials ?? \"\"}\r\n className=\"ui-card-doctor-avatar\"\r\n size=\"3\"\r\n />\r\n )}\r\n <TitleTag className=\"fs-5 fw-semibold text-slate-20\">\r\n {userName}\r\n </TitleTag>\r\n </Row>\r\n <dl className=\"ui-card-user \">\r\n {information.map(({ label, value }) => (\r\n <div key={label}>\r\n <dt className=\"fs-6 fw-bold text-slate-28\">{label}</dt>\r\n <dd className=\"fs-6 fw-regular text-slate-28\">{value}</dd>\r\n </div>\r\n ))}\r\n </dl>\r\n </Col>\r\n );\r\n};\r\n"],"names":["CardUser","TitleTag","userName","avatar","information","jsxs","Col","Row","jsx","Avatar","label","value"],"mappings":";;;;;AAqBO,MAAMA,IAAW,CAAC;AAAA,EACvB,UAAUC,IAAW;AAAA,EACrB,UAAAC;AAAA,EACA,QAAAC;AAAA,EACA,aAAAC,IAAc,CAAA;AAChB,MAEIC,gBAAAA,EAAA;AAAA,EAACC;AAAA,EAAA;AAAA,IACC,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,GAAG;AAAA,IACH,KAAK;AAAA,IACL,WAAU;AAAA,IAEV,UAAA;AAAA,MAAAD,gBAAAA,OAACE,KAAI,IAAI,UAAU,KAAK,OAAO,YAAY,UACxC,UAAA;AAAA,QACCJ,KAAAK,gBAAAA,EAAA;AAAA,UAACC;AAAA,UAAA;AAAA,YACC,YAAWN,KAAA,gBAAAA,EAAQ,cAAa;AAAA,YAChC,KAAIA,KAAA,gBAAAA,EAAQ,OAAM;AAAA,YAClB,WAAUA,KAAA,gBAAAA,EAAQ,aAAY;AAAA,YAC9B,WAAU;AAAA,YACV,MAAK;AAAA,UAAA;AAAA,QACP;AAAA,QAEDK,gBAAAA,EAAA,IAAAP,GAAA,EAAS,WAAU,kCACjB,UACHC,EAAA,CAAA;AAAA,MAAA,GACF;AAAA,MACCM,gBAAAA,EAAA,IAAA,MAAA,EAAG,WAAU,iBACX,UAAYJ,EAAA,IAAI,CAAC,EAAE,OAAAM,GAAO,OAAAC,EACzB,MAAAN,gBAAAA,EAAA,KAAC,OACC,EAAA,UAAA;AAAA,QAACG,gBAAAA,EAAA,IAAA,MAAA,EAAG,WAAU,8BAA8B,UAAME,GAAA;AAAA,QACjDF,gBAAAA,EAAA,IAAA,MAAA,EAAG,WAAU,iCAAiC,UAAMG,EAAA,CAAA;AAAA,MAAA,EAF7C,GAAAD,CAGV,CACD,EACH,CAAA;AAAA,IAAA;AAAA,EAAA;AACF;"}
1
+ {"version":3,"file":"index.es70.js","sources":["../src/components/ui/CardUser/index.tsx"],"sourcesContent":["import { ColorKeys } from \"@/theme/colors\";\r\nimport { Avatar } from \"../Avatar\";\r\nimport \"./CardUser.scss\";\r\nimport { Col, Row } from \"@/components\";\r\nimport { HeadingLevel } from \"@/types/headings\";\r\n\r\ntype CardUserProps = {\r\n titleTag?: HeadingLevel;\r\n userName: string;\r\n avatar?: {\r\n initials: string;\r\n bg?: ColorKeys;\r\n textColor?: ColorKeys;\r\n };\r\n information?: {\r\n label: string;\r\n value: string;\r\n }[];\r\n};\r\n\r\nexport const CardUser = ({\r\n titleTag: TitleTag = \"h1\",\r\n userName,\r\n avatar,\r\n information = [],\r\n}: CardUserProps) => {\r\n return (\r\n <Col\r\n as={\"article\"}\r\n bg={\"white\"}\r\n br={\"x4\"}\r\n p={\"x16\"}\r\n gap={\"x16\"}\r\n className=\"shadow md-p-x24 md-gap-x24\"\r\n >\r\n <Row as={\"header\"} gap={\"x16\"} alignItems={\"center\"}>\r\n {avatar && (\r\n <Avatar\r\n textColor={avatar?.textColor ?? \"slate-20\"}\r\n bg={avatar?.bg ?? \"lightblue-a01\"}\r\n initials={avatar?.initials ?? \"\"}\r\n className=\"ui-card-doctor-avatar\"\r\n size=\"3\"\r\n />\r\n )}\r\n <TitleTag className=\"fs-5 fw-semibold text-slate-20\">\r\n {userName}\r\n </TitleTag>\r\n </Row>\r\n <dl className=\"ui-card-user \">\r\n {information.map(({ label, value }) => (\r\n <div key={label}>\r\n <dt className=\"fs-6 fw-bold text-slate-28\">{label}</dt>\r\n <dd className=\"fs-6 fw-regular text-slate-28\">{value}</dd>\r\n </div>\r\n ))}\r\n </dl>\r\n </Col>\r\n );\r\n};\r\n"],"names":["CardUser","TitleTag","userName","avatar","information","jsxs","Col","Row","jsx","Avatar","label","value"],"mappings":";;;;;AAoBO,MAAMA,IAAW,CAAC;AAAA,EACvB,UAAUC,IAAW;AAAA,EACrB,UAAAC;AAAA,EACA,QAAAC;AAAA,EACA,aAAAC,IAAc,CAAA;AAChB,MAEIC,gBAAAA,EAAA;AAAA,EAACC;AAAA,EAAA;AAAA,IACC,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,GAAG;AAAA,IACH,KAAK;AAAA,IACL,WAAU;AAAA,IAEV,UAAA;AAAA,MAAAD,gBAAAA,OAACE,KAAI,IAAI,UAAU,KAAK,OAAO,YAAY,UACxC,UAAA;AAAA,QACCJ,KAAAK,gBAAAA,EAAA;AAAA,UAACC;AAAA,UAAA;AAAA,YACC,YAAWN,KAAA,gBAAAA,EAAQ,cAAa;AAAA,YAChC,KAAIA,KAAA,gBAAAA,EAAQ,OAAM;AAAA,YAClB,WAAUA,KAAA,gBAAAA,EAAQ,aAAY;AAAA,YAC9B,WAAU;AAAA,YACV,MAAK;AAAA,UAAA;AAAA,QACP;AAAA,QAEDK,gBAAAA,EAAA,IAAAP,GAAA,EAAS,WAAU,kCACjB,UACHC,EAAA,CAAA;AAAA,MAAA,GACF;AAAA,MACCM,gBAAAA,EAAA,IAAA,MAAA,EAAG,WAAU,iBACX,UAAYJ,EAAA,IAAI,CAAC,EAAE,OAAAM,GAAO,OAAAC,EACzB,MAAAN,gBAAAA,EAAA,KAAC,OACC,EAAA,UAAA;AAAA,QAACG,gBAAAA,EAAA,IAAA,MAAA,EAAG,WAAU,8BAA8B,UAAME,GAAA;AAAA,QACjDF,gBAAAA,EAAA,IAAA,MAAA,EAAG,WAAU,iCAAiC,UAAMG,EAAA,CAAA;AAAA,MAAA,EAF7C,GAAAD,CAGV,CACD,EACH,CAAA;AAAA,IAAA;AAAA,EAAA;AACF;"}
@@ -183,6 +183,7 @@ const z = j.forwardRef(({ className: e, config: t, sortConfig: i, onSort: n, ...
183
183
  onClick: t.sortable ? n : t.action,
184
184
  "aria-label": t.ariaLabel,
185
185
  "aria-sort": h ? _() : void 0,
186
+ scope: t.scope || "col",
186
187
  ...N,
187
188
  children: /* @__PURE__ */ a.jsxs("div", { className: "table__cell--header--content", children: [
188
189
  /* @__PURE__ */ a.jsx("div", { children: /* @__PURE__ */ a.jsx(
@@ -1 +1 @@
1
- {"version":3,"file":"index.es73.js","sources":["../src/components/ui/Table/index.tsx"],"sourcesContent":["import * as React from \"react\";\nimport clsx from \"clsx\";\nimport \"./Table.scss\";\nimport { Download, Info, TriangleDown, TriangleUp } from \"@/icons\";\nimport { ActionIconText } from \"@/components\";\nimport { CommonIconsType } from \"@/types/icons\";\nimport { InfoPopupProps } from \"../InfoPopup\";\nimport { useEffect } from \"react\";\n\n// per le celle che vanno renderizzate su due righe\nexport interface DoubleLineData {\n firstLine: string;\n secondLine: string;\n}\n\n//per le celle che renderizzano un link o un bottone\nexport interface ActionData {\n label: string | React.ReactNode;\n ariaLabel: string;\n type: \"link\" | \"button\";\n link?: string;\n action?: () => void;\n}\n\nexport interface ColumnConfig {\n label: string;\n ariaLabel: string;\n sortable: boolean;\n action?: () => void;\n iconAction?: () => void;\n popupInfo?: InfoPopupProps;\n icon?: React.ReactNode | CommonIconsType;\n iconPosition?: \"left\" | \"right\";\n key?: string;\n type?: \"string\" | \"date\" | \"number\";\n}\n\nexport interface TableRowData {\n [key: string]: string | DoubleLineData | ActionData;\n}\n\nexport interface TableHeaderProps\n extends React.HTMLAttributes<HTMLTableSectionElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableBodyProps\n extends React.HTMLAttributes<HTMLTableSectionElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableRowProps\n extends React.HTMLAttributes<HTMLTableRowElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableHeadProps\n extends React.ThHTMLAttributes<HTMLTableCellElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableCellBaseProps\n extends Omit<React.TdHTMLAttributes<HTMLTableCellElement>, \"content\"> {\n type?: \"double-line\" | \"action\";\n}\n\nexport interface TableCellProps extends TableCellBaseProps {\n content: string | DoubleLineData | ActionData;\n}\n\nexport interface PaginationProps {\n currentPage: number;\n totalResults: number;\n currentResultsPerPage?: number; // used to display 8 di 188 if user is in the last page\n resultsPerPage: number;\n setCurrentPage: (page: number) => void;\n onPageChange?: (page: number) => void;\n className?: string;\n serverSide?: boolean;\n totalItems?: number;\n hasNextPage?: boolean;\n hasPreviousPage?: boolean;\n onNextPage?: () => void;\n onPreviousPage?: () => void;\n}\n\nexport interface TableProps\n extends React.TableHTMLAttributes<HTMLTableElement> {\n className?: string;\n columns: ColumnConfig[];\n data: TableRowData[];\n pagination?: boolean;\n initialCurrentPage?: number;\n resultsPerPage?: number;\n defaultSortDirection?: \"asc\" | \"desc\";\n setSelectedSort?: (sortConfig: {\n key: string;\n direction: \"asc\" | \"desc\";\n }) => void;\n initialSortConfig?: { key: string; direction: \"asc\" | \"desc\" };\n serverSidePagination?: boolean;\n totalItems?: number;\n hasNextPage?: boolean;\n hasPreviousPage?: boolean;\n onNextPage?: () => void;\n onPreviousPage?: () => void;\n onPageChange?: (page: number) => void;\n variant?: \"default\" | \"exemptions\";\n}\n\nconst Table = React.forwardRef<HTMLTableElement, TableProps>(\n (\n {\n className,\n columns,\n data,\n pagination,\n initialCurrentPage = 1,\n resultsPerPage = 10,\n defaultSortDirection = \"desc\",\n setSelectedSort,\n initialSortConfig,\n serverSidePagination = false,\n totalItems,\n hasNextPage,\n hasPreviousPage,\n onNextPage,\n onPreviousPage,\n onPageChange,\n ...props\n },\n ref,\n ) => {\n const [sortConfig, setSortConfig] = React.useState<{\n key: string;\n direction: \"asc\" | \"desc\";\n }>(\n initialSortConfig || {\n key: columns[0].key || columns[0].label,\n direction: defaultSortDirection,\n },\n );\n const [currentPage, setCurrentPage] = React.useState(initialCurrentPage);\n\n useEffect(() => {\n if (initialSortConfig) {\n setSortConfig(initialSortConfig);\n }\n }, [initialSortConfig]);\n\n const sortedData = React.useMemo(() => {\n return [...data].sort((a, b) => {\n const aValue = a[sortConfig.key];\n const bValue = b[sortConfig.key];\n const column = columns.find(\n (col) => (col.key || col.label) === sortConfig.key,\n );\n\n if (typeof aValue === \"string\" && typeof bValue === \"string\") {\n if (column?.type === \"date\") {\n // Convert Italian date format (DD/MM/YYYY - HH:mm) to Date object\n const parseDate = (dateStr: string) => {\n const [datePart, timePart] = dateStr.split(\" - \");\n const [day, month, year] = datePart.split(\"/\").map(Number);\n const [hours, minutes] = timePart.split(\":\").map(Number);\n return new Date(year, month - 1, day, hours, minutes);\n };\n\n const dateA = parseDate(aValue);\n const dateB = parseDate(bValue);\n return sortConfig.direction === \"asc\"\n ? dateA.getTime() - dateB.getTime()\n : dateB.getTime() - dateA.getTime();\n }\n\n if (column?.type === \"number\") {\n const numA = parseFloat(aValue);\n const numB = parseFloat(bValue);\n return sortConfig.direction === \"asc\" ? numA - numB : numB - numA;\n }\n\n return sortConfig.direction === \"asc\"\n ? aValue.localeCompare(bValue)\n : bValue.localeCompare(aValue);\n }\n\n if (isDoubleLineData(aValue) && isDoubleLineData(bValue)) {\n return sortConfig.direction === \"asc\"\n ? aValue.firstLine.localeCompare(bValue.firstLine)\n : bValue.firstLine.localeCompare(aValue.firstLine);\n }\n\n return 0;\n });\n }, [data, sortConfig, columns]);\n\n const handleSort = (columnKey: string) => {\n const newSortConfig = {\n key: columnKey,\n direction:\n sortConfig.key === columnKey && sortConfig.direction === \"asc\"\n ? \"desc\"\n : \"asc\",\n } as { key: string; direction: \"asc\" | \"desc\" };\n\n setSortConfig(newSortConfig);\n if (setSelectedSort) {\n setSelectedSort(newSortConfig);\n }\n };\n\n const startIndex =\n pagination && !serverSidePagination\n ? (currentPage - 1) * resultsPerPage\n : 0;\n const endIndex =\n pagination && !serverSidePagination\n ? Math.min(startIndex + resultsPerPage, sortedData.length)\n : sortedData.length;\n const currentPageData = serverSidePagination\n ? sortedData\n : sortedData.slice(startIndex, endIndex);\n\n return (\n <div className=\"position-relative w-full\">\n <table\n ref={ref}\n className={clsx(\"table\", className)}\n role=\"table\"\n {...props}\n >\n <TableHeader className=\"table__header\">\n <TableRow>\n {columns.map((column, index) => (\n <TableHead\n key={`${column.label}-${index}`}\n config={column}\n sortConfig={sortConfig}\n onSort={() =>\n column.sortable && handleSort(column.key || column.label)\n }\n variant={props.variant}\n />\n ))}\n </TableRow>\n </TableHeader>\n <TableBody className=\"table__body\">\n {currentPageData.map((row, rowIndex) => (\n <TableRow key={rowIndex} className=\"table__row\">\n {columns.map((column, cellIndex) => {\n const key = column.key || column.label;\n const value = row[key];\n return (\n <TableCell\n key={`${key}-${cellIndex}`}\n content={value || \"\"}\n type={\n value && isDoubleLineData(value)\n ? \"double-line\"\n : value && isActionData(value)\n ? \"action\"\n : undefined\n }\n />\n );\n })}\n </TableRow>\n ))}\n </TableBody>\n </table>\n {pagination && (\n <Pagination\n currentPage={currentPage}\n totalResults={\n serverSidePagination ? totalItems || 0 : sortedData.length\n }\n currentResultsPerPage={data.length}\n resultsPerPage={resultsPerPage}\n setCurrentPage={setCurrentPage}\n onPageChange={onPageChange}\n serverSide={serverSidePagination}\n totalItems={totalItems}\n hasNextPage={hasNextPage}\n hasPreviousPage={hasPreviousPage}\n onNextPage={onNextPage}\n onPreviousPage={onPreviousPage}\n />\n )}\n </div>\n );\n },\n);\nTable.displayName = \"Table\";\n\nconst TableHeader = React.forwardRef<HTMLTableSectionElement, TableHeaderProps>(\n ({ className, children, ...props }, ref) => (\n <thead\n ref={ref}\n className={clsx(\"[&_tr]:border-b-0\", className)}\n {...props}\n >\n {children}\n </thead>\n ),\n);\nTableHeader.displayName = \"TableHeader\";\n\nconst TableBody = React.forwardRef<HTMLTableSectionElement, TableBodyProps>(\n ({ className, children, ...props }, ref) => (\n <tbody\n ref={ref}\n className={clsx(\"[&_tr:last-child]:border-0\", className)}\n {...props}\n >\n {children}\n </tbody>\n ),\n);\nTableBody.displayName = \"TableBody\";\n\nconst TableRow = React.forwardRef<HTMLTableRowElement, TableRowProps>(\n ({ className, children, ...props }, ref) => (\n <tr\n ref={ref}\n className={clsx(\n \"border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted\",\n className,\n )}\n {...props}\n >\n {children}\n </tr>\n ),\n);\nTableRow.displayName = \"TableRow\";\n\nconst TableHead = React.forwardRef<\n HTMLTableCellElement,\n TableHeadProps & {\n config: ColumnConfig;\n sortConfig: { key: string; direction: \"asc\" | \"desc\" };\n onSort?: () => void;\n variant?: \"default\" | \"exemptions\";\n }\n>(({ className, config, sortConfig, onSort, ...props }, ref) => {\n const isSorted = sortConfig.key === (config.key || config.label);\n const sortDirection = isSorted ? sortConfig.direction : null;\n\n const getAriaSortValue = (): \"ascending\" | \"descending\" => {\n return sortDirection === \"asc\" ? \"ascending\" : \"descending\";\n };\n\n const renderIcon = (icon: React.ReactNode | CommonIconsType) => {\n switch (icon) {\n case \"info\":\n return <Info />;\n case \"download\":\n return <Download />;\n default:\n return icon;\n }\n };\n\n return (\n <th\n ref={ref}\n className={clsx(\n \"table__cell table__cell--header\",\n {\n \"table__cell--sortable\": config.sortable,\n \"table__cell--action\": config.action,\n },\n className,\n )}\n onClick={config.sortable ? onSort : config.action}\n aria-label={config.ariaLabel}\n aria-sort={isSorted ? getAriaSortValue() : undefined}\n {...props}\n >\n <div className=\"table__cell--header--content\">\n <div>\n <ActionIconText\n icon={renderIcon(config.icon)}\n noIcon={!renderIcon(config.icon)}\n textLabel={config.label}\n iconPosition={config.iconPosition}\n handleIconAction={() => {\n if (config.iconAction) {\n config.iconAction();\n }\n }}\n popupInfo={config.popupInfo}\n positionPopUp={config.popupInfo?.positionPopUp}\n classNameText={\n props.variant && \"fw-bold text-slate-28 fs-custom md-fs-6\"\n }\n />\n </div>\n {config.sortable && (\n <span className=\"sort-indicator\">\n <TriangleUp\n filled={isSorted && sortDirection === \"desc\"}\n className={clsx(\"sort-indicator__triangle\", {\n active: isSorted && sortDirection === \"desc\",\n })}\n />\n <TriangleDown\n filled={isSorted && sortDirection === \"asc\"}\n className={clsx(\"sort-indicator__triangle\", {\n active: isSorted && sortDirection === \"asc\",\n })}\n />\n </span>\n )}\n </div>\n </th>\n );\n});\nTableHead.displayName = \"TableHead\";\n\nconst DoubleLineContent: React.FC<{ data: DoubleLineData }> = ({ data }) => (\n <>\n <div className=\"table__cell--firstLine\">{data.firstLine}</div>\n <div className=\"table__cell--secondLine\">{data.secondLine}</div>\n </>\n);\n\nconst ActionContent: React.FC<{ data: ActionData }> = ({ data }) => {\n if (data.type === \"link\" && data.link) {\n return (\n <a href={data.link} aria-label={data.ariaLabel}>\n {data.label}\n </a>\n );\n }\n return (\n <button onClick={data.action} aria-label={data.ariaLabel}>\n {data.label}\n </button>\n );\n};\n\n// check if we are rendering a double line data\nconst isDoubleLineData = (\n content: TableCellProps[\"content\"],\n): content is DoubleLineData => {\n return (\n typeof content === \"object\" &&\n content !== null &&\n \"firstLine\" in content &&\n \"secondLine\" in content\n );\n};\n\n// check if we are rendering an action data\nconst isActionData = (\n content: TableCellProps[\"content\"],\n): content is ActionData => {\n return (\n typeof content === \"object\" &&\n content !== null &&\n \"label\" in content &&\n \"type\" in content\n );\n};\n\nconst TableCellContent: React.FC<{ content: TableCellProps[\"content\"] }> = ({\n content,\n}) => {\n if (typeof content === \"string\") {\n return <>{content}</>;\n }\n if (isDoubleLineData(content)) {\n return <DoubleLineContent data={content} />;\n }\n if (isActionData(content)) {\n return <ActionContent data={content} />;\n }\n return null;\n};\n\nconst TableCell = React.forwardRef<HTMLTableCellElement, TableCellProps>(\n ({ className, content, type, ...props }, ref) => (\n <td\n ref={ref}\n className={clsx(\n \"table__cell\",\n {\n \"table__cell--double-line\": type === \"double-line\",\n \"table__cell--action\": type === \"action\",\n },\n className,\n )}\n {...props}\n >\n <TableCellContent content={content} />\n </td>\n ),\n);\nTableCell.displayName = \"TableCell\";\n\nconst Pagination: React.FC<PaginationProps> = ({\n currentPage = 1,\n totalResults,\n resultsPerPage,\n currentResultsPerPage,\n setCurrentPage,\n onPageChange,\n className,\n serverSide = false,\n totalItems,\n hasNextPage,\n hasPreviousPage,\n onNextPage,\n onPreviousPage,\n}) => {\n const totalPages = serverSide\n ? Math.ceil((totalItems || totalResults) / resultsPerPage)\n : Math.ceil(totalResults / resultsPerPage);\n\n const handlePageChange = (page: number) => {\n setCurrentPage(page);\n if (onPageChange) {\n onPageChange(page);\n }\n };\n\n const handleNextPage = () => {\n const nextPage = currentPage + 1;\n if (serverSide && onNextPage) {\n onNextPage();\n }\n handlePageChange(nextPage);\n };\n\n const handlePreviousPage = () => {\n const prevPage = currentPage - 1;\n if (serverSide && onPreviousPage) {\n onPreviousPage();\n }\n handlePageChange(prevPage);\n };\n\n const isNextDisabled = serverSide ? !hasNextPage : currentPage === totalPages;\n const isPrevDisabled = serverSide ? !hasPreviousPage : currentPage === 1;\n\n const getPageNumbers = () => {\n const pages = [];\n const maxVisiblePages = 5;\n\n if (totalPages <= maxVisiblePages) {\n for (let i = 1; i <= totalPages; i++) {\n pages.push(i);\n }\n } else {\n pages.push(1);\n\n let start = Math.max(2, currentPage - 1);\n let end = Math.min(totalPages - 1, currentPage + 1);\n\n if (currentPage <= 3) {\n end = 4;\n } else if (currentPage >= totalPages - 2) {\n start = totalPages - 3;\n }\n\n if (start > 2) {\n pages.push(\"...\");\n }\n\n for (let i = start; i <= end; i++) {\n pages.push(i);\n }\n\n if (end < totalPages - 1) {\n pages.push(\"...\");\n }\n\n pages.push(totalPages);\n }\n\n return pages;\n };\n\n return (\n <div className={clsx(\"pagination\", className)}>\n <div className=\"pagination__info\">\n Stai visualizzando{\" \"}\n <span className=\"pagination__info__resultsPerPage\">\n {serverSide\n ? currentResultsPerPage\n : currentPage === totalPages && totalResults % resultsPerPage !== 0\n ? totalResults % resultsPerPage\n : resultsPerPage}\n </span>{\" \"}\n di {serverSide ? totalItems || totalResults : totalResults} risultati\n </div>\n <div className=\"pagination__nav\">\n <button\n className={clsx(\n \"pagination__button\",\n isPrevDisabled && \"pagination__button--disabled\",\n )}\n onClick={handlePreviousPage}\n disabled={isPrevDisabled}\n aria-label=\"Previous page\"\n >\n <svg\n className=\"pagination__button-arrow\"\n viewBox=\"0 0 24 24\"\n aria-hidden=\"true\"\n role=\"presentation\"\n >\n <path d=\"M15 18l-6-6 6-6\" />\n </svg>\n </button>\n\n {getPageNumbers().map((page, index) =>\n page === \"...\" ? (\n <span key={`ellipsis-${index}`} className=\"pagination__ellipsis\">\n ...\n </span>\n ) : (\n <button\n key={page}\n className={clsx(\n \"pagination__button\",\n currentPage === page && \"pagination__button--active\",\n )}\n onClick={() => handlePageChange(page as number)}\n disabled={page === currentPage}\n >\n {page}\n </button>\n ),\n )}\n\n <button\n className={clsx(\n \"pagination__button\",\n isNextDisabled && \"pagination__button--disabled\",\n )}\n onClick={handleNextPage}\n disabled={isNextDisabled}\n aria-label=\"Next page\"\n >\n <svg\n className=\"pagination__button-arrow\"\n viewBox=\"0 0 24 24\"\n aria-hidden=\"true\"\n role=\"presentation\"\n >\n <path d=\"M9 6l6 6-6 6\" />\n </svg>\n </button>\n </div>\n </div>\n );\n};\n\nexport {\n Table,\n TableHeader,\n TableBody,\n TableHead,\n TableRow,\n TableCell,\n Pagination,\n};\n"],"names":["Table","React","className","columns","data","pagination","initialCurrentPage","resultsPerPage","defaultSortDirection","setSelectedSort","initialSortConfig","serverSidePagination","totalItems","hasNextPage","hasPreviousPage","onNextPage","onPreviousPage","onPageChange","props","ref","sortConfig","setSortConfig","currentPage","setCurrentPage","useEffect","sortedData","a","b","aValue","bValue","column","col","parseDate","dateStr","datePart","timePart","day","month","year","hours","minutes","dateA","dateB","numA","numB","isDoubleLineData","handleSort","columnKey","newSortConfig","startIndex","endIndex","currentPageData","jsxs","clsx","jsx","TableHeader","TableRow","index","TableHead","TableBody","row","rowIndex","cellIndex","key","value","TableCell","isActionData","Pagination","children","config","onSort","isSorted","sortDirection","getAriaSortValue","renderIcon","icon","Info","Download","ActionIconText","_a","TriangleUp","TriangleDown","DoubleLineContent","Fragment","ActionContent","content","TableCellContent","type","totalResults","currentResultsPerPage","serverSide","totalPages","handlePageChange","page","handleNextPage","nextPage","handlePreviousPage","prevPage","isNextDisabled","isPrevDisabled","getPageNumbers","pages","i","start","end"],"mappings":"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"}
1
+ {"version":3,"file":"index.es73.js","sources":["../src/components/ui/Table/index.tsx"],"sourcesContent":["import * as React from \"react\";\nimport clsx from \"clsx\";\nimport \"./Table.scss\";\nimport { Download, Info, TriangleDown, TriangleUp } from \"@/icons\";\nimport { ActionIconText } from \"@/components\";\nimport { CommonIconsType } from \"@/types/icons\";\nimport { InfoPopupProps } from \"../InfoPopup\";\nimport { useEffect } from \"react\";\n\n// per le celle che vanno renderizzate su due righe\nexport interface DoubleLineData {\n firstLine: string;\n secondLine: string;\n}\n\n//per le celle che renderizzano un link o un bottone\nexport interface ActionData {\n label: string | React.ReactNode;\n ariaLabel: string;\n type: \"link\" | \"button\";\n link?: string;\n action?: () => void;\n}\n\nexport interface ColumnConfig {\n label: string;\n ariaLabel: string;\n sortable: boolean;\n action?: () => void;\n iconAction?: () => void;\n popupInfo?: InfoPopupProps;\n icon?: React.ReactNode | CommonIconsType;\n iconPosition?: \"left\" | \"right\";\n key?: string;\n type?: \"string\" | \"date\" | \"number\";\n scope?: \"col\" | \"row\" | \"colgroup\" | \"rowgroup\";\n}\n\nexport interface TableRowData {\n [key: string]: string | DoubleLineData | ActionData;\n}\n\nexport interface TableHeaderProps\n extends React.HTMLAttributes<HTMLTableSectionElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableBodyProps\n extends React.HTMLAttributes<HTMLTableSectionElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableRowProps\n extends React.HTMLAttributes<HTMLTableRowElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableHeadProps\n extends React.ThHTMLAttributes<HTMLTableCellElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableCellBaseProps\n extends Omit<React.TdHTMLAttributes<HTMLTableCellElement>, \"content\"> {\n type?: \"double-line\" | \"action\";\n}\n\nexport interface TableCellProps extends TableCellBaseProps {\n content: string | DoubleLineData | ActionData;\n}\n\nexport interface PaginationProps {\n currentPage: number;\n totalResults: number;\n currentResultsPerPage?: number; // used to display 8 di 188 if user is in the last page\n resultsPerPage: number;\n setCurrentPage: (page: number) => void;\n onPageChange?: (page: number) => void;\n className?: string;\n serverSide?: boolean;\n totalItems?: number;\n hasNextPage?: boolean;\n hasPreviousPage?: boolean;\n onNextPage?: () => void;\n onPreviousPage?: () => void;\n}\n\nexport interface TableProps\n extends React.TableHTMLAttributes<HTMLTableElement> {\n className?: string;\n columns: ColumnConfig[];\n data: TableRowData[];\n pagination?: boolean;\n initialCurrentPage?: number;\n resultsPerPage?: number;\n defaultSortDirection?: \"asc\" | \"desc\";\n setSelectedSort?: (sortConfig: {\n key: string;\n direction: \"asc\" | \"desc\";\n }) => void;\n initialSortConfig?: { key: string; direction: \"asc\" | \"desc\" };\n serverSidePagination?: boolean;\n totalItems?: number;\n hasNextPage?: boolean;\n hasPreviousPage?: boolean;\n onNextPage?: () => void;\n onPreviousPage?: () => void;\n onPageChange?: (page: number) => void;\n variant?: \"default\" | \"exemptions\";\n}\n\nconst Table = React.forwardRef<HTMLTableElement, TableProps>(\n (\n {\n className,\n columns,\n data,\n pagination,\n initialCurrentPage = 1,\n resultsPerPage = 10,\n defaultSortDirection = \"desc\",\n setSelectedSort,\n initialSortConfig,\n serverSidePagination = false,\n totalItems,\n hasNextPage,\n hasPreviousPage,\n onNextPage,\n onPreviousPage,\n onPageChange,\n ...props\n },\n ref,\n ) => {\n const [sortConfig, setSortConfig] = React.useState<{\n key: string;\n direction: \"asc\" | \"desc\";\n }>(\n initialSortConfig || {\n key: columns[0].key || columns[0].label,\n direction: defaultSortDirection,\n },\n );\n const [currentPage, setCurrentPage] = React.useState(initialCurrentPage);\n\n useEffect(() => {\n if (initialSortConfig) {\n setSortConfig(initialSortConfig);\n }\n }, [initialSortConfig]);\n\n const sortedData = React.useMemo(() => {\n return [...data].sort((a, b) => {\n const aValue = a[sortConfig.key];\n const bValue = b[sortConfig.key];\n const column = columns.find(\n (col) => (col.key || col.label) === sortConfig.key,\n );\n\n if (typeof aValue === \"string\" && typeof bValue === \"string\") {\n if (column?.type === \"date\") {\n // Convert Italian date format (DD/MM/YYYY - HH:mm) to Date object\n const parseDate = (dateStr: string) => {\n const [datePart, timePart] = dateStr.split(\" - \");\n const [day, month, year] = datePart.split(\"/\").map(Number);\n const [hours, minutes] = timePart.split(\":\").map(Number);\n return new Date(year, month - 1, day, hours, minutes);\n };\n\n const dateA = parseDate(aValue);\n const dateB = parseDate(bValue);\n return sortConfig.direction === \"asc\"\n ? dateA.getTime() - dateB.getTime()\n : dateB.getTime() - dateA.getTime();\n }\n\n if (column?.type === \"number\") {\n const numA = parseFloat(aValue);\n const numB = parseFloat(bValue);\n return sortConfig.direction === \"asc\" ? numA - numB : numB - numA;\n }\n\n return sortConfig.direction === \"asc\"\n ? aValue.localeCompare(bValue)\n : bValue.localeCompare(aValue);\n }\n\n if (isDoubleLineData(aValue) && isDoubleLineData(bValue)) {\n return sortConfig.direction === \"asc\"\n ? aValue.firstLine.localeCompare(bValue.firstLine)\n : bValue.firstLine.localeCompare(aValue.firstLine);\n }\n\n return 0;\n });\n }, [data, sortConfig, columns]);\n\n const handleSort = (columnKey: string) => {\n const newSortConfig = {\n key: columnKey,\n direction:\n sortConfig.key === columnKey && sortConfig.direction === \"asc\"\n ? \"desc\"\n : \"asc\",\n } as { key: string; direction: \"asc\" | \"desc\" };\n\n setSortConfig(newSortConfig);\n if (setSelectedSort) {\n setSelectedSort(newSortConfig);\n }\n };\n\n const startIndex =\n pagination && !serverSidePagination\n ? (currentPage - 1) * resultsPerPage\n : 0;\n const endIndex =\n pagination && !serverSidePagination\n ? Math.min(startIndex + resultsPerPage, sortedData.length)\n : sortedData.length;\n const currentPageData = serverSidePagination\n ? sortedData\n : sortedData.slice(startIndex, endIndex);\n\n return (\n <div className=\"position-relative w-full\">\n <table\n ref={ref}\n className={clsx(\"table\", className)}\n role=\"table\"\n {...props}\n >\n <TableHeader className=\"table__header\">\n <TableRow>\n {columns.map((column, index) => (\n <TableHead\n key={`${column.label}-${index}`}\n config={column}\n sortConfig={sortConfig}\n onSort={() =>\n column.sortable && handleSort(column.key || column.label)\n }\n variant={props.variant}\n />\n ))}\n </TableRow>\n </TableHeader>\n <TableBody className=\"table__body\">\n {currentPageData.map((row, rowIndex) => (\n <TableRow key={rowIndex} className=\"table__row\">\n {columns.map((column, cellIndex) => {\n const key = column.key || column.label;\n const value = row[key];\n return (\n <TableCell\n key={`${key}-${cellIndex}`}\n content={value || \"\"}\n type={\n value && isDoubleLineData(value)\n ? \"double-line\"\n : value && isActionData(value)\n ? \"action\"\n : undefined\n }\n />\n );\n })}\n </TableRow>\n ))}\n </TableBody>\n </table>\n {pagination && (\n <Pagination\n currentPage={currentPage}\n totalResults={\n serverSidePagination ? totalItems || 0 : sortedData.length\n }\n currentResultsPerPage={data.length}\n resultsPerPage={resultsPerPage}\n setCurrentPage={setCurrentPage}\n onPageChange={onPageChange}\n serverSide={serverSidePagination}\n totalItems={totalItems}\n hasNextPage={hasNextPage}\n hasPreviousPage={hasPreviousPage}\n onNextPage={onNextPage}\n onPreviousPage={onPreviousPage}\n />\n )}\n </div>\n );\n },\n);\nTable.displayName = \"Table\";\n\nconst TableHeader = React.forwardRef<HTMLTableSectionElement, TableHeaderProps>(\n ({ className, children, ...props }, ref) => (\n <thead\n ref={ref}\n className={clsx(\"[&_tr]:border-b-0\", className)}\n {...props}\n >\n {children}\n </thead>\n ),\n);\nTableHeader.displayName = \"TableHeader\";\n\nconst TableBody = React.forwardRef<HTMLTableSectionElement, TableBodyProps>(\n ({ className, children, ...props }, ref) => (\n <tbody\n ref={ref}\n className={clsx(\"[&_tr:last-child]:border-0\", className)}\n {...props}\n >\n {children}\n </tbody>\n ),\n);\nTableBody.displayName = \"TableBody\";\n\nconst TableRow = React.forwardRef<HTMLTableRowElement, TableRowProps>(\n ({ className, children, ...props }, ref) => (\n <tr\n ref={ref}\n className={clsx(\n \"border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted\",\n className,\n )}\n {...props}\n >\n {children}\n </tr>\n ),\n);\nTableRow.displayName = \"TableRow\";\n\nconst TableHead = React.forwardRef<\n HTMLTableCellElement,\n TableHeadProps & {\n config: ColumnConfig;\n sortConfig: { key: string; direction: \"asc\" | \"desc\" };\n onSort?: () => void;\n variant?: \"default\" | \"exemptions\";\n }\n>(({ className, config, sortConfig, onSort, ...props }, ref) => {\n const isSorted = sortConfig.key === (config.key || config.label);\n const sortDirection = isSorted ? sortConfig.direction : null;\n\n const getAriaSortValue = (): \"ascending\" | \"descending\" => {\n return sortDirection === \"asc\" ? \"ascending\" : \"descending\";\n };\n\n const renderIcon = (icon: React.ReactNode | CommonIconsType) => {\n switch (icon) {\n case \"info\":\n return <Info />;\n case \"download\":\n return <Download />;\n default:\n return icon;\n }\n };\n\n return (\n <th\n ref={ref}\n className={clsx(\n \"table__cell table__cell--header\",\n {\n \"table__cell--sortable\": config.sortable,\n \"table__cell--action\": config.action,\n },\n className,\n )}\n onClick={config.sortable ? onSort : config.action}\n aria-label={config.ariaLabel}\n aria-sort={isSorted ? getAriaSortValue() : undefined}\n scope={config.scope || \"col\"}\n {...props}\n >\n <div className=\"table__cell--header--content\">\n <div>\n <ActionIconText\n icon={renderIcon(config.icon)}\n noIcon={!renderIcon(config.icon)}\n textLabel={config.label}\n iconPosition={config.iconPosition}\n handleIconAction={() => {\n if (config.iconAction) {\n config.iconAction();\n }\n }}\n popupInfo={config.popupInfo}\n positionPopUp={config.popupInfo?.positionPopUp}\n classNameText={\n props.variant && \"fw-bold text-slate-28 fs-custom md-fs-6\"\n }\n />\n </div>\n {config.sortable && (\n <span className=\"sort-indicator\">\n <TriangleUp\n filled={isSorted && sortDirection === \"desc\"}\n className={clsx(\"sort-indicator__triangle\", {\n active: isSorted && sortDirection === \"desc\",\n })}\n />\n <TriangleDown\n filled={isSorted && sortDirection === \"asc\"}\n className={clsx(\"sort-indicator__triangle\", {\n active: isSorted && sortDirection === \"asc\",\n })}\n />\n </span>\n )}\n </div>\n </th>\n );\n});\nTableHead.displayName = \"TableHead\";\n\nconst DoubleLineContent: React.FC<{ data: DoubleLineData }> = ({ data }) => (\n <>\n <div className=\"table__cell--firstLine\">{data.firstLine}</div>\n <div className=\"table__cell--secondLine\">{data.secondLine}</div>\n </>\n);\n\nconst ActionContent: React.FC<{ data: ActionData }> = ({ data }) => {\n if (data.type === \"link\" && data.link) {\n return (\n <a href={data.link} aria-label={data.ariaLabel}>\n {data.label}\n </a>\n );\n }\n return (\n <button onClick={data.action} aria-label={data.ariaLabel}>\n {data.label}\n </button>\n );\n};\n\n// check if we are rendering a double line data\nconst isDoubleLineData = (\n content: TableCellProps[\"content\"],\n): content is DoubleLineData => {\n return (\n typeof content === \"object\" &&\n content !== null &&\n \"firstLine\" in content &&\n \"secondLine\" in content\n );\n};\n\n// check if we are rendering an action data\nconst isActionData = (\n content: TableCellProps[\"content\"],\n): content is ActionData => {\n return (\n typeof content === \"object\" &&\n content !== null &&\n \"label\" in content &&\n \"type\" in content\n );\n};\n\nconst TableCellContent: React.FC<{ content: TableCellProps[\"content\"] }> = ({\n content,\n}) => {\n if (typeof content === \"string\") {\n return <>{content}</>;\n }\n if (isDoubleLineData(content)) {\n return <DoubleLineContent data={content} />;\n }\n if (isActionData(content)) {\n return <ActionContent data={content} />;\n }\n return null;\n};\n\nconst TableCell = React.forwardRef<HTMLTableCellElement, TableCellProps>(\n ({ className, content, type, ...props }, ref) => (\n <td\n ref={ref}\n className={clsx(\n \"table__cell\",\n {\n \"table__cell--double-line\": type === \"double-line\",\n \"table__cell--action\": type === \"action\",\n },\n className,\n )}\n {...props}\n >\n <TableCellContent content={content} />\n </td>\n ),\n);\nTableCell.displayName = \"TableCell\";\n\nconst Pagination: React.FC<PaginationProps> = ({\n currentPage = 1,\n totalResults,\n resultsPerPage,\n currentResultsPerPage,\n setCurrentPage,\n onPageChange,\n className,\n serverSide = false,\n totalItems,\n hasNextPage,\n hasPreviousPage,\n onNextPage,\n onPreviousPage,\n}) => {\n const totalPages = serverSide\n ? Math.ceil((totalItems || totalResults) / resultsPerPage)\n : Math.ceil(totalResults / resultsPerPage);\n\n const handlePageChange = (page: number) => {\n setCurrentPage(page);\n if (onPageChange) {\n onPageChange(page);\n }\n };\n\n const handleNextPage = () => {\n const nextPage = currentPage + 1;\n if (serverSide && onNextPage) {\n onNextPage();\n }\n handlePageChange(nextPage);\n };\n\n const handlePreviousPage = () => {\n const prevPage = currentPage - 1;\n if (serverSide && onPreviousPage) {\n onPreviousPage();\n }\n handlePageChange(prevPage);\n };\n\n const isNextDisabled = serverSide ? !hasNextPage : currentPage === totalPages;\n const isPrevDisabled = serverSide ? !hasPreviousPage : currentPage === 1;\n\n const getPageNumbers = () => {\n const pages = [];\n const maxVisiblePages = 5;\n\n if (totalPages <= maxVisiblePages) {\n for (let i = 1; i <= totalPages; i++) {\n pages.push(i);\n }\n } else {\n pages.push(1);\n\n let start = Math.max(2, currentPage - 1);\n let end = Math.min(totalPages - 1, currentPage + 1);\n\n if (currentPage <= 3) {\n end = 4;\n } else if (currentPage >= totalPages - 2) {\n start = totalPages - 3;\n }\n\n if (start > 2) {\n pages.push(\"...\");\n }\n\n for (let i = start; i <= end; i++) {\n pages.push(i);\n }\n\n if (end < totalPages - 1) {\n pages.push(\"...\");\n }\n\n pages.push(totalPages);\n }\n\n return pages;\n };\n\n return (\n <div className={clsx(\"pagination\", className)}>\n <div className=\"pagination__info\">\n Stai visualizzando{\" \"}\n <span className=\"pagination__info__resultsPerPage\">\n {serverSide\n ? currentResultsPerPage\n : currentPage === totalPages && totalResults % resultsPerPage !== 0\n ? totalResults % resultsPerPage\n : resultsPerPage}\n </span>{\" \"}\n di {serverSide ? totalItems || totalResults : totalResults} risultati\n </div>\n <div className=\"pagination__nav\">\n <button\n className={clsx(\n \"pagination__button\",\n isPrevDisabled && \"pagination__button--disabled\",\n )}\n onClick={handlePreviousPage}\n disabled={isPrevDisabled}\n aria-label=\"Previous page\"\n >\n <svg\n className=\"pagination__button-arrow\"\n viewBox=\"0 0 24 24\"\n aria-hidden=\"true\"\n role=\"presentation\"\n >\n <path d=\"M15 18l-6-6 6-6\" />\n </svg>\n </button>\n\n {getPageNumbers().map((page, index) =>\n page === \"...\" ? (\n <span key={`ellipsis-${index}`} className=\"pagination__ellipsis\">\n ...\n </span>\n ) : (\n <button\n key={page}\n className={clsx(\n \"pagination__button\",\n currentPage === page && \"pagination__button--active\",\n )}\n onClick={() => handlePageChange(page as number)}\n disabled={page === currentPage}\n >\n {page}\n </button>\n ),\n )}\n\n <button\n className={clsx(\n \"pagination__button\",\n isNextDisabled && \"pagination__button--disabled\",\n )}\n onClick={handleNextPage}\n disabled={isNextDisabled}\n aria-label=\"Next page\"\n >\n <svg\n className=\"pagination__button-arrow\"\n viewBox=\"0 0 24 24\"\n aria-hidden=\"true\"\n role=\"presentation\"\n >\n <path d=\"M9 6l6 6-6 6\" />\n </svg>\n </button>\n </div>\n </div>\n );\n};\n\nexport {\n Table,\n TableHeader,\n TableBody,\n TableHead,\n TableRow,\n TableCell,\n Pagination,\n};\n"],"names":["Table","React","className","columns","data","pagination","initialCurrentPage","resultsPerPage","defaultSortDirection","setSelectedSort","initialSortConfig","serverSidePagination","totalItems","hasNextPage","hasPreviousPage","onNextPage","onPreviousPage","onPageChange","props","ref","sortConfig","setSortConfig","currentPage","setCurrentPage","useEffect","sortedData","a","b","aValue","bValue","column","col","parseDate","dateStr","datePart","timePart","day","month","year","hours","minutes","dateA","dateB","numA","numB","isDoubleLineData","handleSort","columnKey","newSortConfig","startIndex","endIndex","currentPageData","jsxs","clsx","jsx","TableHeader","TableRow","index","TableHead","TableBody","row","rowIndex","cellIndex","key","value","TableCell","isActionData","Pagination","children","config","onSort","isSorted","sortDirection","getAriaSortValue","renderIcon","icon","Info","Download","ActionIconText","_a","TriangleUp","TriangleDown","DoubleLineContent","Fragment","ActionContent","content","TableCellContent","type","totalResults","currentResultsPerPage","serverSide","totalPages","handlePageChange","page","handleNextPage","nextPage","handlePreviousPage","prevPage","isNextDisabled","isPrevDisabled","getPageNumbers","pages","i","start","end"],"mappings":"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"}