@tipp/ui 1.6.23 → 1.6.24

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 (325) hide show
  1. package/dist/app/index.cjs +387 -397
  2. package/dist/app/index.cjs.map +1 -1
  3. package/dist/app/index.js +18 -17
  4. package/dist/app/platform/coach-question-list.cjs +78 -72
  5. package/dist/app/platform/coach-question-list.cjs.map +1 -1
  6. package/dist/app/platform/coach-question-list.js +4 -3
  7. package/dist/app/platform/contents-card.cjs +61 -55
  8. package/dist/app/platform/contents-card.cjs.map +1 -1
  9. package/dist/app/platform/contents-card.js +4 -3
  10. package/dist/app/platform/edit-coaching-time.cjs +155 -165
  11. package/dist/app/platform/edit-coaching-time.cjs.map +1 -1
  12. package/dist/app/platform/edit-coaching-time.js +8 -7
  13. package/dist/app/platform/edit-service-type.cjs +148 -158
  14. package/dist/app/platform/edit-service-type.cjs.map +1 -1
  15. package/dist/app/platform/edit-service-type.js +8 -7
  16. package/dist/app/platform/goal-manage-card-edit.cjs +124 -118
  17. package/dist/app/platform/goal-manage-card-edit.cjs.map +1 -1
  18. package/dist/app/platform/goal-manage-card-edit.js +7 -6
  19. package/dist/app/platform/goal-manage-card-read.cjs +112 -106
  20. package/dist/app/platform/goal-manage-card-read.cjs.map +1 -1
  21. package/dist/app/platform/goal-manage-card-read.js +4 -3
  22. package/dist/app/platform/on-offline-radio-card.cjs +108 -102
  23. package/dist/app/platform/on-offline-radio-card.cjs.map +1 -1
  24. package/dist/app/platform/on-offline-radio-card.js +7 -6
  25. package/dist/app/platform/report-card.cjs +79 -73
  26. package/dist/app/platform/report-card.cjs.map +1 -1
  27. package/dist/app/platform/report-card.js +4 -3
  28. package/dist/app/platform/reservation-card.cjs +150 -144
  29. package/dist/app/platform/reservation-card.cjs.map +1 -1
  30. package/dist/app/platform/reservation-card.js +8 -7
  31. package/dist/app/platform/session-card.cjs +200 -210
  32. package/dist/app/platform/session-card.cjs.map +1 -1
  33. package/dist/app/platform/session-card.js +10 -9
  34. package/dist/app/platform/session-review-simple-read.cjs +79 -73
  35. package/dist/app/platform/session-review-simple-read.cjs.map +1 -1
  36. package/dist/app/platform/session-review-simple-read.js +4 -3
  37. package/dist/app/platform/userInfos/coaching-customer-info/index.cjs +112 -106
  38. package/dist/app/platform/userInfos/coaching-customer-info/index.cjs.map +1 -1
  39. package/dist/app/platform/userInfos/coaching-customer-info/index.js +8 -7
  40. package/dist/app/platform/userInfos/coaching-customer-info/large.cjs +89 -83
  41. package/dist/app/platform/userInfos/coaching-customer-info/large.cjs.map +1 -1
  42. package/dist/app/platform/userInfos/coaching-customer-info/large.js +4 -3
  43. package/dist/app/platform/userInfos/coaching-customer-info/medium.cjs +92 -86
  44. package/dist/app/platform/userInfos/coaching-customer-info/medium.cjs.map +1 -1
  45. package/dist/app/platform/userInfos/coaching-customer-info/medium.js +4 -3
  46. package/dist/app/platform/userInfos/coaching-customer-info/small.cjs +78 -72
  47. package/dist/app/platform/userInfos/coaching-customer-info/small.cjs.map +1 -1
  48. package/dist/app/platform/userInfos/coaching-customer-info/small.js +4 -3
  49. package/dist/app/platform/userInfos/session-user-info-detail.cjs +88 -82
  50. package/dist/app/platform/userInfos/session-user-info-detail.cjs.map +1 -1
  51. package/dist/app/platform/userInfos/session-user-info-detail.js +4 -3
  52. package/dist/app/platform/userInfos/utils.cjs +80 -74
  53. package/dist/app/platform/userInfos/utils.cjs.map +1 -1
  54. package/dist/app/platform/userInfos/utils.js +4 -3
  55. package/dist/atoms/button.d.cts +1 -1
  56. package/dist/atoms/button.d.ts +1 -1
  57. package/dist/atoms/dialog.cjs +41 -56
  58. package/dist/atoms/dialog.cjs.map +1 -1
  59. package/dist/atoms/dialog.js +2 -2
  60. package/dist/atoms/drawer.cjs +23 -41
  61. package/dist/atoms/drawer.cjs.map +1 -1
  62. package/dist/atoms/drawer.js +2 -2
  63. package/dist/atoms/index.cjs +159 -151
  64. package/dist/atoms/index.cjs.map +1 -1
  65. package/dist/atoms/index.js +7 -6
  66. package/dist/chunk-2NQ4PYPH.js +145 -0
  67. package/dist/chunk-2NQ4PYPH.js.map +1 -0
  68. package/dist/chunk-36BWVY4R.js +30 -0
  69. package/dist/chunk-36BWVY4R.js.map +1 -0
  70. package/dist/chunk-3F6KWGBZ.js +89 -0
  71. package/dist/chunk-3F6KWGBZ.js.map +1 -0
  72. package/dist/chunk-3FNXJ35I.js +54 -0
  73. package/dist/chunk-3FNXJ35I.js.map +1 -0
  74. package/dist/chunk-3TWYP5FO.js +57 -0
  75. package/dist/chunk-3TWYP5FO.js.map +1 -0
  76. package/dist/chunk-3WEXXGSP.js +53 -0
  77. package/dist/chunk-3WEXXGSP.js.map +1 -0
  78. package/dist/chunk-3X6SIK3W.js +106 -0
  79. package/dist/chunk-3X6SIK3W.js.map +1 -0
  80. package/dist/chunk-3XMCL5X4.js +106 -0
  81. package/dist/chunk-3XMCL5X4.js.map +1 -0
  82. package/dist/chunk-42MNZ5HL.js +54 -0
  83. package/dist/chunk-42MNZ5HL.js.map +1 -0
  84. package/dist/chunk-43TEFEIM.js +63 -0
  85. package/dist/chunk-43TEFEIM.js.map +1 -0
  86. package/dist/chunk-4TI72EQY.js +54 -0
  87. package/dist/chunk-4TI72EQY.js.map +1 -0
  88. package/dist/chunk-4VRGGFOT.js +54 -0
  89. package/dist/chunk-4VRGGFOT.js.map +1 -0
  90. package/dist/chunk-57F5B7FE.js +84 -0
  91. package/dist/chunk-57F5B7FE.js.map +1 -0
  92. package/dist/chunk-5F7NVKMI.js +74 -0
  93. package/dist/chunk-5F7NVKMI.js.map +1 -0
  94. package/dist/chunk-5JJVLL2A.js +30 -0
  95. package/dist/chunk-5JJVLL2A.js.map +1 -0
  96. package/dist/chunk-5QCIYLYC.js +70 -0
  97. package/dist/chunk-5QCIYLYC.js.map +1 -0
  98. package/dist/chunk-5RXSBHAF.js +284 -0
  99. package/dist/chunk-5RXSBHAF.js.map +1 -0
  100. package/dist/chunk-64UUNUIF.js +74 -0
  101. package/dist/chunk-64UUNUIF.js.map +1 -0
  102. package/dist/chunk-6ERCSTEP.js +357 -0
  103. package/dist/chunk-6ERCSTEP.js.map +1 -0
  104. package/dist/chunk-6HY2JAC2.js +145 -0
  105. package/dist/chunk-6HY2JAC2.js.map +1 -0
  106. package/dist/chunk-6X3CZMIC.js +174 -0
  107. package/dist/chunk-6X3CZMIC.js.map +1 -0
  108. package/dist/chunk-7SWVQEY6.js +73 -0
  109. package/dist/chunk-7SWVQEY6.js.map +1 -0
  110. package/dist/chunk-7ZXUG6W4.js +145 -0
  111. package/dist/chunk-7ZXUG6W4.js.map +1 -0
  112. package/dist/chunk-APHK52I3.js +164 -0
  113. package/dist/chunk-APHK52I3.js.map +1 -0
  114. package/dist/chunk-AQXVWKH6.js +19 -0
  115. package/dist/chunk-AQXVWKH6.js.map +1 -0
  116. package/dist/chunk-B7P4NYMW.js +164 -0
  117. package/dist/chunk-B7P4NYMW.js.map +1 -0
  118. package/dist/chunk-BNB3AEFM.js +70 -0
  119. package/dist/chunk-BNB3AEFM.js.map +1 -0
  120. package/dist/chunk-BUPPCVDT.js +30 -0
  121. package/dist/chunk-BUPPCVDT.js.map +1 -0
  122. package/dist/chunk-BVNUNZXK.js +30 -0
  123. package/dist/chunk-BVNUNZXK.js.map +1 -0
  124. package/dist/chunk-CBVIUEJB.js +117 -0
  125. package/dist/chunk-CBVIUEJB.js.map +1 -0
  126. package/dist/chunk-CC7CR4NT.js +174 -0
  127. package/dist/chunk-CC7CR4NT.js.map +1 -0
  128. package/dist/chunk-CXPOD6VX.js +58 -0
  129. package/dist/chunk-CXPOD6VX.js.map +1 -0
  130. package/dist/chunk-D2GFXT7B.js +164 -0
  131. package/dist/chunk-D2GFXT7B.js.map +1 -0
  132. package/dist/chunk-DEJVT5GM.js +58 -0
  133. package/dist/chunk-DEJVT5GM.js.map +1 -0
  134. package/dist/chunk-DEQLZ43V.js +117 -0
  135. package/dist/chunk-DEQLZ43V.js.map +1 -0
  136. package/dist/chunk-DJN2IEY6.js +23 -0
  137. package/dist/chunk-DJN2IEY6.js.map +1 -0
  138. package/dist/chunk-DSVS6ALA.js +174 -0
  139. package/dist/chunk-DSVS6ALA.js.map +1 -0
  140. package/dist/chunk-E2B4MIBN.js +60 -0
  141. package/dist/chunk-E2B4MIBN.js.map +1 -0
  142. package/dist/chunk-E3YG43CK.js +70 -0
  143. package/dist/chunk-E3YG43CK.js.map +1 -0
  144. package/dist/chunk-F5JCHRHO.js +102 -0
  145. package/dist/chunk-F5JCHRHO.js.map +1 -0
  146. package/dist/chunk-FJP2F6IC.js +39 -0
  147. package/dist/chunk-FJP2F6IC.js.map +1 -0
  148. package/dist/chunk-FX7FMZ2U.js +15 -0
  149. package/dist/chunk-FX7FMZ2U.js.map +1 -0
  150. package/dist/chunk-G2JN23PG.js +64 -0
  151. package/dist/chunk-G2JN23PG.js.map +1 -0
  152. package/dist/chunk-GDSTYYNT.js +106 -0
  153. package/dist/chunk-GDSTYYNT.js.map +1 -0
  154. package/dist/chunk-GDZ3OYPF.js +70 -0
  155. package/dist/chunk-GDZ3OYPF.js.map +1 -0
  156. package/dist/chunk-H76H7C6P.js +284 -0
  157. package/dist/chunk-H76H7C6P.js.map +1 -0
  158. package/dist/chunk-HQSSAZHP.js +84 -0
  159. package/dist/chunk-HQSSAZHP.js.map +1 -0
  160. package/dist/chunk-HRAIZGAV.js +164 -0
  161. package/dist/chunk-HRAIZGAV.js.map +1 -0
  162. package/dist/chunk-IWW6ST7Q.js +30 -0
  163. package/dist/chunk-IWW6ST7Q.js.map +1 -0
  164. package/dist/chunk-IYJ77DVE.js +63 -0
  165. package/dist/chunk-IYJ77DVE.js.map +1 -0
  166. package/dist/chunk-IZUCJFWS.js +357 -0
  167. package/dist/chunk-IZUCJFWS.js.map +1 -0
  168. package/dist/chunk-J5675IX6.js +145 -0
  169. package/dist/chunk-J5675IX6.js.map +1 -0
  170. package/dist/chunk-JPKBLDEX.js +174 -0
  171. package/dist/chunk-JPKBLDEX.js.map +1 -0
  172. package/dist/chunk-K2PTIGO7.js +54 -0
  173. package/dist/chunk-K2PTIGO7.js.map +1 -0
  174. package/dist/chunk-K7ITFD4P.js +45 -0
  175. package/dist/chunk-K7ITFD4P.js.map +1 -0
  176. package/dist/chunk-LCGQYQ2Y.js +145 -0
  177. package/dist/chunk-LCGQYQ2Y.js.map +1 -0
  178. package/dist/chunk-LGF7FERG.js +23 -0
  179. package/dist/chunk-LGF7FERG.js.map +1 -0
  180. package/dist/chunk-LSYQLE32.js +19 -0
  181. package/dist/chunk-LSYQLE32.js.map +1 -0
  182. package/dist/chunk-MEA2GIR7.js +192 -0
  183. package/dist/chunk-MEA2GIR7.js.map +1 -0
  184. package/dist/chunk-MMNUPVIX.js +128 -0
  185. package/dist/chunk-MMNUPVIX.js.map +1 -0
  186. package/dist/chunk-MRSCXF6Z.js +70 -0
  187. package/dist/chunk-MRSCXF6Z.js.map +1 -0
  188. package/dist/chunk-NHOR6XDA.js +30 -0
  189. package/dist/chunk-NHOR6XDA.js.map +1 -0
  190. package/dist/chunk-NVZTJG7X.js +57 -0
  191. package/dist/chunk-NVZTJG7X.js.map +1 -0
  192. package/dist/chunk-NWF4LV6Z.js +30 -0
  193. package/dist/chunk-NWF4LV6Z.js.map +1 -0
  194. package/dist/chunk-O33F7L7R.js +165 -0
  195. package/dist/chunk-O33F7L7R.js.map +1 -0
  196. package/dist/chunk-O5EI5UQD.js +102 -0
  197. package/dist/chunk-O5EI5UQD.js.map +1 -0
  198. package/dist/chunk-OFBTS6ZD.js +145 -0
  199. package/dist/chunk-OFBTS6ZD.js.map +1 -0
  200. package/dist/chunk-ON6X4DAK.js +45 -0
  201. package/dist/chunk-ON6X4DAK.js.map +1 -0
  202. package/dist/chunk-OWSYPSKK.js +84 -0
  203. package/dist/chunk-OWSYPSKK.js.map +1 -0
  204. package/dist/chunk-Q6Q7AOOQ.js +174 -0
  205. package/dist/chunk-Q6Q7AOOQ.js.map +1 -0
  206. package/dist/chunk-QC63I2BG.js +89 -0
  207. package/dist/chunk-QC63I2BG.js.map +1 -0
  208. package/dist/chunk-QIBROLOP.js +169 -0
  209. package/dist/chunk-QIBROLOP.js.map +1 -0
  210. package/dist/chunk-QIY5KHBO.js +64 -0
  211. package/dist/chunk-QIY5KHBO.js.map +1 -0
  212. package/dist/chunk-R23QFNIZ.js +84 -0
  213. package/dist/chunk-R23QFNIZ.js.map +1 -0
  214. package/dist/chunk-RFD5H6F6.js +174 -0
  215. package/dist/chunk-RFD5H6F6.js.map +1 -0
  216. package/dist/chunk-RNGCQ6Q5.js +54 -0
  217. package/dist/chunk-RNGCQ6Q5.js.map +1 -0
  218. package/dist/chunk-S2P3RYT2.js +174 -0
  219. package/dist/chunk-S2P3RYT2.js.map +1 -0
  220. package/dist/chunk-S4UCJELU.js +64 -0
  221. package/dist/chunk-S4UCJELU.js.map +1 -0
  222. package/dist/chunk-SM5ETU3K.js +284 -0
  223. package/dist/chunk-SM5ETU3K.js.map +1 -0
  224. package/dist/chunk-SMZIRKPK.js +70 -0
  225. package/dist/chunk-SMZIRKPK.js.map +1 -0
  226. package/dist/chunk-SNHJQ4GS.js +64 -0
  227. package/dist/chunk-SNHJQ4GS.js.map +1 -0
  228. package/dist/chunk-T23U4R7A.js +84 -0
  229. package/dist/chunk-T23U4R7A.js.map +1 -0
  230. package/dist/chunk-TD45ZF7D.js +31 -0
  231. package/dist/chunk-TD45ZF7D.js.map +1 -0
  232. package/dist/chunk-TTGSVKIG.js +99 -0
  233. package/dist/chunk-TTGSVKIG.js.map +1 -0
  234. package/dist/chunk-UB44BWD3.js +54 -0
  235. package/dist/chunk-UB44BWD3.js.map +1 -0
  236. package/dist/chunk-UL52QKAX.js +106 -0
  237. package/dist/chunk-UL52QKAX.js.map +1 -0
  238. package/dist/chunk-ULK3LVLV.js +145 -0
  239. package/dist/chunk-ULK3LVLV.js.map +1 -0
  240. package/dist/chunk-UQVTXKJY.js +30 -0
  241. package/dist/chunk-UQVTXKJY.js.map +1 -0
  242. package/dist/chunk-URCFWXSS.js +145 -0
  243. package/dist/chunk-URCFWXSS.js.map +1 -0
  244. package/dist/chunk-USAO24JU.js +164 -0
  245. package/dist/chunk-USAO24JU.js.map +1 -0
  246. package/dist/chunk-V3LWCHYU.js +101 -0
  247. package/dist/chunk-V3LWCHYU.js.map +1 -0
  248. package/dist/chunk-VEHJL7YX.js +145 -0
  249. package/dist/chunk-VEHJL7YX.js.map +1 -0
  250. package/dist/chunk-VGA7OYBC.js +165 -0
  251. package/dist/chunk-VGA7OYBC.js.map +1 -0
  252. package/dist/chunk-VHFAY5XN.js +146 -0
  253. package/dist/chunk-VHFAY5XN.js.map +1 -0
  254. package/dist/chunk-W3WQTY36.js +99 -0
  255. package/dist/chunk-W3WQTY36.js.map +1 -0
  256. package/dist/chunk-WL6DTHGM.js +164 -0
  257. package/dist/chunk-WL6DTHGM.js.map +1 -0
  258. package/dist/chunk-WLQ43ESH.js +89 -0
  259. package/dist/chunk-WLQ43ESH.js.map +1 -0
  260. package/dist/chunk-WNEXIUQ7.js +63 -0
  261. package/dist/chunk-WNEXIUQ7.js.map +1 -0
  262. package/dist/chunk-WW753CRQ.js +145 -0
  263. package/dist/chunk-WW753CRQ.js.map +1 -0
  264. package/dist/chunk-X3Z66RK2.js +85 -0
  265. package/dist/chunk-X3Z66RK2.js.map +1 -0
  266. package/dist/chunk-XD7T627Q.js +174 -0
  267. package/dist/chunk-XD7T627Q.js.map +1 -0
  268. package/dist/chunk-Y6WM6YGH.js +117 -0
  269. package/dist/chunk-Y6WM6YGH.js.map +1 -0
  270. package/dist/chunk-YFWG4PQ3.js +39 -0
  271. package/dist/chunk-YFWG4PQ3.js.map +1 -0
  272. package/dist/chunk-ZIB6X7QU.js +284 -0
  273. package/dist/chunk-ZIB6X7QU.js.map +1 -0
  274. package/dist/chunk-ZWYM5QVI.js +63 -0
  275. package/dist/chunk-ZWYM5QVI.js.map +1 -0
  276. package/dist/index.cjs +610 -589
  277. package/dist/index.cjs.map +1 -1
  278. package/dist/index.css +120 -75
  279. package/dist/index.d.cts +1 -0
  280. package/dist/index.d.ts +1 -0
  281. package/dist/index.js +28 -22
  282. package/dist/molecules/date-picker/date-picker-button.cjs +86 -80
  283. package/dist/molecules/date-picker/date-picker-button.cjs.map +1 -1
  284. package/dist/molecules/date-picker/date-picker-button.js +4 -3
  285. package/dist/molecules/expand-table/index.cjs +112 -106
  286. package/dist/molecules/expand-table/index.cjs.map +1 -1
  287. package/dist/molecules/expand-table/index.js +4 -3
  288. package/dist/molecules/expand-table/row.cjs +82 -76
  289. package/dist/molecules/expand-table/row.cjs.map +1 -1
  290. package/dist/molecules/expand-table/row.js +4 -3
  291. package/dist/molecules/ghost-post.cjs.map +1 -1
  292. package/dist/molecules/ghost-post.js +2 -2
  293. package/dist/molecules/index.cjs +237 -231
  294. package/dist/molecules/index.cjs.map +1 -1
  295. package/dist/molecules/index.js +7 -6
  296. package/dist/molecules/learning-post.cjs.map +1 -1
  297. package/dist/molecules/learning-post.js +2 -2
  298. package/dist/molecules/navigation.cjs +78 -72
  299. package/dist/molecules/navigation.cjs.map +1 -1
  300. package/dist/molecules/navigation.js +4 -3
  301. package/dist/molecules/radio-button-card.cjs +76 -70
  302. package/dist/molecules/radio-button-card.cjs.map +1 -1
  303. package/dist/molecules/radio-button-card.js +4 -3
  304. package/dist/molecules/tag-selector.cjs +77 -71
  305. package/dist/molecules/tag-selector.cjs.map +1 -1
  306. package/dist/molecules/tag-selector.js +4 -3
  307. package/dist/molecules/time-select.cjs +77 -71
  308. package/dist/molecules/time-select.cjs.map +1 -1
  309. package/dist/molecules/time-select.js +4 -3
  310. package/dist/theme/portal-provider.cjs +56 -0
  311. package/dist/theme/portal-provider.cjs.map +1 -0
  312. package/dist/theme/portal-provider.d.cts +13 -0
  313. package/dist/theme/portal-provider.d.ts +13 -0
  314. package/dist/theme/portal-provider.js +12 -0
  315. package/dist/theme/portal-provider.js.map +1 -0
  316. package/dist/theme/theme-provider.cjs.map +1 -1
  317. package/dist/theme/theme-provider.d.cts +1 -1
  318. package/dist/theme/theme-provider.d.ts +1 -1
  319. package/dist/theme/theme-provider.js +1 -1
  320. package/package.json +2 -2
  321. package/src/atoms/dialog.tsx +3 -3
  322. package/src/atoms/drawer.tsx +4 -9
  323. package/src/index.ts +1 -0
  324. package/src/theme/portal-provider.tsx +38 -0
  325. package/src/theme/theme-provider.tsx +1 -1
@@ -63,40 +63,27 @@ __export(dialog_exports, {
63
63
  });
64
64
  module.exports = __toCommonJS(dialog_exports);
65
65
  var RadixDialog = __toESM(require("@radix-ui/react-dialog"), 1);
66
- var import_react_icons2 = require("@radix-ui/react-icons");
66
+ var import_react_icons = require("@radix-ui/react-icons");
67
67
  var import_themes4 = require("@radix-ui/themes");
68
68
 
69
- // src/atoms/toast.tsx
70
- var import_react_icons = require("@radix-ui/react-icons");
71
- var import_react_toastify = require("react-toastify");
72
- var import_react_toastify2 = require("react-toastify");
69
+ // src/theme/portal-provider.tsx
70
+ var import_react = require("react");
73
71
  var import_jsx_runtime = require("react/jsx-runtime");
74
- function CloseButton() {
75
- return null;
76
- }
77
- function ToastContainer(props) {
78
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
79
- import_react_toastify.ToastContainer,
80
- __spreadValues({
81
- autoClose: 5e3,
82
- closeButton: CloseButton,
83
- closeOnClick: true,
84
- draggable: true,
85
- hideProgressBar: true,
86
- icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_icons.InfoCircledIcon, {}),
87
- newestOnTop: true,
88
- pauseOnFocusLoss: true,
89
- pauseOnHover: true,
90
- position: "bottom-right",
91
- rtl: false,
92
- style: { zIndex: 999999 }
93
- }, props)
94
- );
95
- }
72
+ var PortalContext = (0, import_react.createContext)(
73
+ null
74
+ );
75
+ var usePortalContainer = () => {
76
+ try {
77
+ const state = (0, import_react.useContext)(PortalContext);
78
+ return state;
79
+ } catch (error) {
80
+ throw new Error("PortalProvider not found");
81
+ }
82
+ };
96
83
 
97
84
  // src/atoms/heading.tsx
98
85
  var import_themes = require("@radix-ui/themes");
99
- var import_react = require("react");
86
+ var import_react2 = require("react");
100
87
 
101
88
  // src/utils/map-with-responsive.ts
102
89
  var mapWithResponsive = (args) => {
@@ -137,7 +124,7 @@ var mapVariant = (variant) => {
137
124
  };
138
125
  function Heading2(props) {
139
126
  const _a = props, { size, children, variant } = _a, rest = __objRest(_a, ["size", "children", "variant"]);
140
- const radixSize = (0, import_react.useMemo)(() => {
127
+ const radixSize = (0, import_react2.useMemo)(() => {
141
128
  return variant ? mapWithResponsive({
142
129
  value: variant,
143
130
  mapFn: mapVariant
@@ -182,33 +169,31 @@ function Content2(props) {
182
169
  "hideCloseButton",
183
170
  "className"
184
171
  ]);
185
- return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(RadixDialog.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_themes4.Theme, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(RadixDialog.Overlay, { className: "DialogOverlay", children: [
186
- /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(
187
- RadixDialog.Content,
188
- __spreadProps(__spreadValues({
189
- className: `DialogContent ${className || ""}`,
190
- onPointerDownOutside: preventDefault,
191
- style: __spreadValues({
192
- width,
193
- maxWidth,
194
- minWidth,
195
- maxHeight,
196
- height,
197
- minHeight
198
- }, style)
199
- }, rest), {
200
- children: [
201
- /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(import_themes4.Flex, { gap: "2", justify: "between", children: [
202
- /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(RadixDialog.Title, { asChild: true, children: typeof title === "string" ? /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(Heading2, { align: "center", mb: "2", variant: "heading3", children: title }) : title }),
203
- !hideCloseButton && /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(RadixDialog.Close, { asChild: true, className: "DialogClose", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_themes3.IconButton, { color: "gray", variant: "ghost", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_react_icons2.Cross1Icon, {}) }) })
204
- ] }),
205
- children,
206
- buttons ? /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_themes4.Flex, { gap: "3", justify: "end", mt: "3", children: buttons }) : null
207
- ]
208
- })
209
- ),
210
- /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(ToastContainer, {})
211
- ] }) }) });
172
+ const { dialogContainerRef } = usePortalContainer();
173
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(RadixDialog.Portal, { container: dialogContainerRef.current, children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_themes4.Theme, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(RadixDialog.Overlay, { className: "DialogOverlay", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(
174
+ RadixDialog.Content,
175
+ __spreadProps(__spreadValues({
176
+ className: `DialogContent ${className || ""}`,
177
+ onPointerDownOutside: preventDefault,
178
+ style: __spreadValues({
179
+ width,
180
+ maxWidth,
181
+ minWidth,
182
+ maxHeight,
183
+ height,
184
+ minHeight
185
+ }, style)
186
+ }, rest), {
187
+ children: [
188
+ /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(import_themes4.Flex, { gap: "2", justify: "between", children: [
189
+ /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(RadixDialog.Title, { asChild: true, children: typeof title === "string" ? /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(Heading2, { align: "center", mb: "2", variant: "heading3", children: title }) : title }),
190
+ !hideCloseButton && /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(RadixDialog.Close, { asChild: true, className: "DialogClose", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_themes3.IconButton, { color: "gray", variant: "ghost", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_react_icons.Cross1Icon, {}) }) })
191
+ ] }),
192
+ children,
193
+ buttons ? /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_themes4.Flex, { gap: "3", justify: "end", mt: "3", children: buttons }) : null
194
+ ]
195
+ })
196
+ ) }) }) });
212
197
  }
213
198
  function Close2(_a) {
214
199
  var _b = _a, {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/atoms/dialog.tsx","../../src/atoms/toast.tsx","../../src/atoms/heading.tsx","../../src/utils/map-with-responsive.ts","../../src/atoms/icon-button.tsx"],"sourcesContent":["import * as RadixDialog from '@radix-ui/react-dialog';\nimport { Cross1Icon } from '@radix-ui/react-icons';\nimport { Flex, Theme } from '@radix-ui/themes';\nimport { ToastContainer } from './toast';\nimport { Heading } from './heading';\nimport { IconButton } from './icon-button';\n\ntype ContentProps = RadixDialog.DialogContentProps & {\n width?: string;\n maxWidth?: string;\n minWidth?: string;\n height?: string;\n maxHeight?: string;\n minHeight?: string;\n title?: string;\n hideCloseButton?: boolean;\n buttons?: React.ReactElement;\n};\n\nconst preventDefault: RadixDialog.DialogContentProps['onPointerDownOutside'] = (\n e\n) => {\n e.preventDefault();\n};\n\nfunction Content(props: ContentProps): React.ReactElement {\n const {\n children,\n style = {},\n width,\n maxWidth,\n minWidth,\n maxHeight,\n height,\n minHeight,\n title,\n buttons,\n hideCloseButton,\n className,\n ...rest\n } = props;\n\n return (\n <RadixDialog.Portal>\n <Theme asChild>\n <RadixDialog.Overlay className=\"DialogOverlay\">\n <RadixDialog.Content\n className={`DialogContent ${className || ''}`}\n onPointerDownOutside={preventDefault}\n style={{\n width,\n maxWidth,\n minWidth,\n maxHeight,\n height,\n minHeight,\n ...style,\n }}\n {...rest}\n >\n <Flex gap=\"2\" justify=\"between\">\n <RadixDialog.Title asChild>\n {typeof title === 'string' ? (\n <Heading align=\"center\" mb=\"2\" variant=\"heading3\">\n {title}\n </Heading>\n ) : (\n title\n )}\n </RadixDialog.Title>\n {!hideCloseButton && (\n <RadixDialog.Close asChild className=\"DialogClose\">\n <IconButton color=\"gray\" variant=\"ghost\">\n <Cross1Icon />\n </IconButton>\n </RadixDialog.Close>\n )}\n </Flex>\n {children}\n {buttons ? (\n <Flex gap=\"3\" justify=\"end\" mt=\"3\">\n {buttons}\n </Flex>\n ) : null}\n </RadixDialog.Content>\n <ToastContainer />\n </RadixDialog.Overlay>\n </Theme>\n </RadixDialog.Portal>\n );\n}\n\nfunction Close({\n children,\n ...rest\n}: RadixDialog.DialogCloseProps): React.ReactElement {\n return (\n <RadixDialog.Close asChild {...rest}>\n {children}\n </RadixDialog.Close>\n );\n}\n\nfunction Trigger({\n children,\n ...rest\n}: RadixDialog.DialogTriggerProps): React.ReactElement {\n return (\n <RadixDialog.Trigger asChild {...rest}>\n {children}\n </RadixDialog.Trigger>\n );\n}\n\nexport const Dialog = {\n Root: RadixDialog.Root,\n Trigger,\n Content,\n Close,\n Description: RadixDialog.Description,\n Title: RadixDialog.Title,\n};\n","import { InfoCircledIcon } from '@radix-ui/react-icons';\nimport {\n ToastContainer as ToastifyContainer,\n type ToastContainerProps,\n} from 'react-toastify';\n\nexport { toast } from 'react-toastify';\n\nfunction CloseButton(): React.ReactNode {\n return null;\n}\n\nexport function ToastContainer(props: ToastContainerProps): React.ReactElement {\n return (\n <ToastifyContainer\n autoClose={5000}\n closeButton={CloseButton}\n closeOnClick\n draggable\n hideProgressBar\n icon={<InfoCircledIcon />}\n newestOnTop\n pauseOnFocusLoss\n pauseOnHover\n position=\"bottom-right\"\n rtl={false}\n style={{ zIndex: 999999 }}\n {...props}\n />\n );\n}\n","import {\n Heading as RadixHeading,\n type HeadingProps as RadixHeadingProps,\n} from '@radix-ui/themes';\nimport type { Responsive } from '@radix-ui/themes/props';\nimport { useMemo } from 'react';\nimport { mapWithResponsive } from '@/utils/map-with-responsive';\n\nexport { Heading as RadixHeading } from '@radix-ui/themes';\ntype HeadingVariant =\n | 'heading1'\n | 'heading2'\n | 'heading3'\n | 'heading4'\n | 'heading5';\nexport type HeadingProps = RadixHeadingProps & {\n variant?: Responsive<HeadingVariant>;\n};\n\ntype HeadingSize = '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9';\n\nconst mapVariant = (variant?: HeadingVariant): HeadingSize | undefined => {\n switch (variant) {\n case 'heading1':\n return '7';\n case 'heading2':\n return '6';\n case 'heading3':\n return '5';\n case 'heading4':\n return '4';\n case 'heading5':\n return '3';\n default:\n return undefined;\n }\n};\n\nexport function Heading(props: HeadingProps): React.ReactElement {\n const { size, children, variant, ...rest } = props;\n const radixSize = useMemo<RadixHeadingProps['size']>(() => {\n return variant\n ? mapWithResponsive({\n value: variant,\n mapFn: mapVariant,\n })\n : size;\n\n // if (typeof variant === 'string') {\n // return mapVariant(variant);\n // }\n // if (typeof variant === 'object') {\n // const newObj: Partial<Record<Breakpoint, HeadingSize>> = {};\n // let key: Breakpoint;\n // for (key in variant) {\n // newObj[key] = mapVariant(variant[key]);\n // }\n // return newObj;\n // }\n // return size;\n }, [size, variant]);\n\n return (\n <RadixHeading {...rest} size={radixSize}>\n {children}\n </RadixHeading>\n );\n}\n","import type { Breakpoint, Responsive } from \"@radix-ui/themes/props\";\n\nexport const mapWithResponsive = <T extends string,K extends string>(\n args: {value: Responsive<T>, mapFn: (value?:T)=>K |undefined}\n): Responsive<K> | undefined => {\n const {value, mapFn} = args;\n if(typeof value === 'string'){\n return mapFn(value);\n };\n \n if(typeof value === 'object'){\n const newObj: Partial<Record<Breakpoint, K>> = {};\n let key: Breakpoint;\n for(key in value){\n newObj[key] = mapFn(value[key]);\n }\n return newObj;\n }\n return value;\n};\n","export { IconButton, type IconButtonProps } from '@radix-ui/themes';\n"],"mappings":"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","names":["import_react_icons","import_themes","import_react_toastify","ToastifyContainer","import_themes","import_jsx_runtime","Heading","RadixHeading","import_themes","import_jsx_runtime","Content","Heading","Close","Trigger"]}
1
+ {"version":3,"sources":["../../src/atoms/dialog.tsx","../../src/theme/portal-provider.tsx","../../src/atoms/heading.tsx","../../src/utils/map-with-responsive.ts","../../src/atoms/icon-button.tsx"],"sourcesContent":["import * as RadixDialog from '@radix-ui/react-dialog';\nimport { Cross1Icon } from '@radix-ui/react-icons';\nimport { Flex, Theme } from '@radix-ui/themes';\nimport { usePortalContainer } from '@/theme/portal-provider';\nimport { Heading } from './heading';\nimport { IconButton } from './icon-button';\n\ntype ContentProps = RadixDialog.DialogContentProps & {\n width?: string;\n maxWidth?: string;\n minWidth?: string;\n height?: string;\n maxHeight?: string;\n minHeight?: string;\n title?: string;\n hideCloseButton?: boolean;\n buttons?: React.ReactElement;\n};\n\nconst preventDefault: RadixDialog.DialogContentProps['onPointerDownOutside'] = (\n e\n) => {\n e.preventDefault();\n};\n\nfunction Content(props: ContentProps): React.ReactElement {\n const {\n children,\n style = {},\n width,\n maxWidth,\n minWidth,\n maxHeight,\n height,\n minHeight,\n title,\n buttons,\n hideCloseButton,\n className,\n ...rest\n } = props;\n const { dialogContainerRef } = usePortalContainer();\n\n return (\n <RadixDialog.Portal container={dialogContainerRef.current}>\n <Theme asChild>\n <RadixDialog.Overlay className=\"DialogOverlay\">\n <RadixDialog.Content\n className={`DialogContent ${className || ''}`}\n onPointerDownOutside={preventDefault}\n style={{\n width,\n maxWidth,\n minWidth,\n maxHeight,\n height,\n minHeight,\n ...style,\n }}\n {...rest}\n >\n <Flex gap=\"2\" justify=\"between\">\n <RadixDialog.Title asChild>\n {typeof title === 'string' ? (\n <Heading align=\"center\" mb=\"2\" variant=\"heading3\">\n {title}\n </Heading>\n ) : (\n title\n )}\n </RadixDialog.Title>\n {!hideCloseButton && (\n <RadixDialog.Close asChild className=\"DialogClose\">\n <IconButton color=\"gray\" variant=\"ghost\">\n <Cross1Icon />\n </IconButton>\n </RadixDialog.Close>\n )}\n </Flex>\n {children}\n {buttons ? (\n <Flex gap=\"3\" justify=\"end\" mt=\"3\">\n {buttons}\n </Flex>\n ) : null}\n </RadixDialog.Content>\n </RadixDialog.Overlay>\n </Theme>\n </RadixDialog.Portal>\n );\n}\n\nfunction Close({\n children,\n ...rest\n}: RadixDialog.DialogCloseProps): React.ReactElement {\n return (\n <RadixDialog.Close asChild {...rest}>\n {children}\n </RadixDialog.Close>\n );\n}\n\nfunction Trigger({\n children,\n ...rest\n}: RadixDialog.DialogTriggerProps): React.ReactElement {\n return (\n <RadixDialog.Trigger asChild {...rest}>\n {children}\n </RadixDialog.Trigger>\n );\n}\n\nexport const Dialog = {\n Root: RadixDialog.Root,\n Trigger,\n Content,\n Close,\n Description: RadixDialog.Description,\n Title: RadixDialog.Title,\n};\n","import React, { createContext, useContext, useRef } from 'react';\n\ninterface PortalProviderProps {\n children: React.ReactElement;\n}\n\ninterface PortalState {\n dialogContainerRef: React.RefObject<HTMLDivElement>;\n drawerContainerRef: React.RefObject<HTMLDivElement>;\n}\n\nconst PortalContext = createContext<PortalState>(\n null as unknown as PortalState\n);\n\nexport function PortalProvider({ children }: PortalProviderProps): JSX.Element {\n const dialogContainerRef = useRef<HTMLDivElement | null>(null);\n const drawerContainerRef = useRef<HTMLDivElement | null>(null);\n\n return (\n <PortalContext.Provider value={{ dialogContainerRef, drawerContainerRef }}>\n {children}\n <div className=\"drawer-portal-container\" ref={drawerContainerRef} />\n <div className=\"dialog-portal-container\" ref={dialogContainerRef} />\n </PortalContext.Provider>\n );\n}\n\nexport const usePortalContainer = (): PortalState => {\n try {\n const state = useContext(PortalContext);\n return state;\n } catch (error) {\n throw new Error('PortalProvider not found');\n }\n};\n\nexport default PortalProvider;\n","import {\n Heading as RadixHeading,\n type HeadingProps as RadixHeadingProps,\n} from '@radix-ui/themes';\nimport type { Responsive } from '@radix-ui/themes/props';\nimport { useMemo } from 'react';\nimport { mapWithResponsive } from '@/utils/map-with-responsive';\n\nexport { Heading as RadixHeading } from '@radix-ui/themes';\ntype HeadingVariant =\n | 'heading1'\n | 'heading2'\n | 'heading3'\n | 'heading4'\n | 'heading5';\nexport type HeadingProps = RadixHeadingProps & {\n variant?: Responsive<HeadingVariant>;\n};\n\ntype HeadingSize = '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9';\n\nconst mapVariant = (variant?: HeadingVariant): HeadingSize | undefined => {\n switch (variant) {\n case 'heading1':\n return '7';\n case 'heading2':\n return '6';\n case 'heading3':\n return '5';\n case 'heading4':\n return '4';\n case 'heading5':\n return '3';\n default:\n return undefined;\n }\n};\n\nexport function Heading(props: HeadingProps): React.ReactElement {\n const { size, children, variant, ...rest } = props;\n const radixSize = useMemo<RadixHeadingProps['size']>(() => {\n return variant\n ? mapWithResponsive({\n value: variant,\n mapFn: mapVariant,\n })\n : size;\n\n // if (typeof variant === 'string') {\n // return mapVariant(variant);\n // }\n // if (typeof variant === 'object') {\n // const newObj: Partial<Record<Breakpoint, HeadingSize>> = {};\n // let key: Breakpoint;\n // for (key in variant) {\n // newObj[key] = mapVariant(variant[key]);\n // }\n // return newObj;\n // }\n // return size;\n }, [size, variant]);\n\n return (\n <RadixHeading {...rest} size={radixSize}>\n {children}\n </RadixHeading>\n );\n}\n","import type { Breakpoint, Responsive } from \"@radix-ui/themes/props\";\n\nexport const mapWithResponsive = <T extends string,K extends string>(\n args: {value: Responsive<T>, mapFn: (value?:T)=>K |undefined}\n): Responsive<K> | undefined => {\n const {value, mapFn} = args;\n if(typeof value === 'string'){\n return mapFn(value);\n };\n \n if(typeof value === 'object'){\n const newObj: Partial<Record<Breakpoint, K>> = {};\n let key: Breakpoint;\n for(key in value){\n newObj[key] = mapFn(value[key]);\n }\n return newObj;\n }\n return value;\n};\n","export { IconButton, type IconButtonProps } from '@radix-ui/themes';\n"],"mappings":"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","names":["import_themes","import_react","import_themes","import_jsx_runtime","Heading","RadixHeading","import_themes","import_jsx_runtime","Content","Heading","Close","Trigger"]}
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  Dialog
3
- } from "../chunk-2GVQIRVC.js";
3
+ } from "../chunk-3X6SIK3W.js";
4
4
  import "../chunk-HJB3AASV.js";
5
5
  import "../chunk-LDBWASUA.js";
6
- import "../chunk-CYYWMYE7.js";
6
+ import "../chunk-TD45ZF7D.js";
7
7
  import "../chunk-O3DNDMV3.js";
8
8
  import "../chunk-N552FDTV.js";
9
9
  export {
@@ -65,17 +65,31 @@ __export(drawer_exports, {
65
65
  Trigger: () => Trigger2
66
66
  });
67
67
  module.exports = __toCommonJS(drawer_exports);
68
- var import_react = require("react");
69
68
  var Dialog = __toESM(require("@radix-ui/react-dialog"), 1);
70
69
  var import_themes4 = require("@radix-ui/themes");
71
70
 
72
- // src/icons/close-panel-arrow.tsx
73
- var React = __toESM(require("react"), 1);
71
+ // src/theme/portal-provider.tsx
72
+ var import_react = require("react");
74
73
  var import_jsx_runtime = require("react/jsx-runtime");
75
- var ClosePanelArrowIcon = React.forwardRef(
74
+ var PortalContext = (0, import_react.createContext)(
75
+ null
76
+ );
77
+ var usePortalContainer = () => {
78
+ try {
79
+ const state = (0, import_react.useContext)(PortalContext);
80
+ return state;
81
+ } catch (error) {
82
+ throw new Error("PortalProvider not found");
83
+ }
84
+ };
85
+
86
+ // src/icons/close-panel-arrow.tsx
87
+ var React2 = __toESM(require("react"), 1);
88
+ var import_jsx_runtime2 = require("react/jsx-runtime");
89
+ var ClosePanelArrowIcon = React2.forwardRef(
76
90
  (_a, forwardedRef) => {
77
91
  var _b = _a, { color = "currentColor" } = _b, props = __objRest(_b, ["color"]);
78
- return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
92
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
79
93
  "svg",
80
94
  __spreadProps(__spreadValues({
81
95
  fill: "none",
@@ -86,7 +100,7 @@ var ClosePanelArrowIcon = React.forwardRef(
86
100
  }, props), {
87
101
  ref: forwardedRef,
88
102
  children: [
89
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
103
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
90
104
  "path",
91
105
  {
92
106
  clipRule: "evenodd",
@@ -95,7 +109,7 @@ var ClosePanelArrowIcon = React.forwardRef(
95
109
  fillRule: "evenodd"
96
110
  }
97
111
  ),
98
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
112
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
99
113
  "path",
100
114
  {
101
115
  clipRule: "evenodd",
@@ -120,34 +134,6 @@ var import_themes2 = require("@radix-ui/themes");
120
134
  // src/atoms/icon-button.tsx
121
135
  var import_themes3 = require("@radix-ui/themes");
122
136
 
123
- // src/atoms/toast.tsx
124
- var import_react_icons = require("@radix-ui/react-icons");
125
- var import_react_toastify = require("react-toastify");
126
- var import_react_toastify2 = require("react-toastify");
127
- var import_jsx_runtime2 = require("react/jsx-runtime");
128
- function CloseButton() {
129
- return null;
130
- }
131
- function ToastContainer(props) {
132
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
133
- import_react_toastify.ToastContainer,
134
- __spreadValues({
135
- autoClose: 5e3,
136
- closeButton: CloseButton,
137
- closeOnClick: true,
138
- draggable: true,
139
- hideProgressBar: true,
140
- icon: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react_icons.InfoCircledIcon, {}),
141
- newestOnTop: true,
142
- pauseOnFocusLoss: true,
143
- pauseOnHover: true,
144
- position: "bottom-right",
145
- rtl: false,
146
- style: { zIndex: 999999 }
147
- }, props)
148
- );
149
- }
150
-
151
137
  // src/atoms/drawer.tsx
152
138
  var import_jsx_runtime3 = require("react/jsx-runtime");
153
139
  function Root2(props) {
@@ -158,16 +144,12 @@ var preventDefault = (e) => {
158
144
  };
159
145
  function Content2(props) {
160
146
  const _a = props, { position = "right", className, children } = _a, rest = __objRest(_a, ["position", "className", "children"]);
161
- const containerRef = (0, import_react.useRef)(null);
162
- (0, import_react.useEffect)(() => {
163
- containerRef.current = document.getElementsByClassName("radix-themes")[0];
164
- }, []);
165
147
  const mobileHeaderSize = 48;
166
148
  const desktopHeaderSize = 64;
167
149
  const separatorSize = 1;
168
- return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(Dialog.Portal, { container: containerRef.current, children: /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(import_themes4.Theme, { children: [
150
+ const { drawerContainerRef } = usePortalContainer();
151
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(Dialog.Portal, { container: drawerContainerRef.current, children: /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(import_themes4.Theme, { children: [
169
152
  /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(Dialog.Overlay, { className: "DrawerOverlay" }),
170
- /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(ToastContainer, {}),
171
153
  /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
172
154
  Dialog.Content,
173
155
  __spreadProps(__spreadValues({
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/atoms/drawer.tsx","../../src/icons/close-panel-arrow.tsx","../../src/atoms/flex.tsx","../../src/atoms/separator.tsx","../../src/atoms/icon-button.tsx","../../src/atoms/toast.tsx"],"sourcesContent":["import React, { useEffect, useRef } from 'react';\nimport * as Dialog from '@radix-ui/react-dialog';\nimport { Grid, Theme } from '@radix-ui/themes';\nimport { ClosePanelArrowIcon } from '../icons/close-panel-arrow';\nimport { Flex } from './flex';\nimport { Separator } from './separator';\nimport { IconButton } from './icon-button';\nimport { ToastContainer } from './toast';\n\nexport function Root(props: Dialog.DialogProps): React.ReactNode {\n return <Dialog.Root {...props} />;\n}\n\ntype ContentProps = Dialog.DialogContentProps & {\n /** Drawer가 붙는 위치, 기본값 right */\n position?: 'left' | 'right' | 'bottom' | 'top';\n};\n\nconst preventDefault: Dialog.DialogContentProps['onPointerDownOutside'] = (\n e\n) => {\n e.preventDefault();\n};\n\nexport function Content(props: ContentProps): React.ReactElement {\n const { position = 'right', className, children, ...rest } = props;\n\n const containerRef = useRef<Element | null>(null);\n useEffect(() => {\n containerRef.current = document.getElementsByClassName('radix-themes')[0];\n }, []);\n\n const mobileHeaderSize = 48;\n const desktopHeaderSize = 64;\n const separatorSize = 1;\n\n return (\n <Dialog.Portal container={containerRef.current}>\n <Theme>\n <Dialog.Overlay className=\"DrawerOverlay\" />\n <ToastContainer />\n <Dialog.Content\n className={`DrawerContent ${position} ${className || ''}`}\n onPointerDownOutside={preventDefault}\n {...rest}\n >\n <Grid\n height=\"100%\"\n overflow=\"hidden\"\n rows={{\n initial: `${mobileHeaderSize}px ${separatorSize}px calc(100% - ${mobileHeaderSize + separatorSize}px)`,\n sm: `${desktopHeaderSize}px ${separatorSize}px calc(100% - ${desktopHeaderSize + separatorSize}px)`,\n }}\n >\n <Flex align=\"center\" px={{ initial: '4', md: '6' }}>\n <Dialog.Close asChild>\n <IconButton color=\"gray\" variant=\"outline\">\n <ClosePanelArrowIcon />\n </IconButton>\n </Dialog.Close>\n </Flex>\n <Separator orientation=\"horizontal\" size=\"4\" />\n {children}\n </Grid>\n </Dialog.Content>\n </Theme>\n </Dialog.Portal>\n );\n}\n\nexport function Trigger(props: Dialog.DialogTriggerProps): React.ReactElement {\n return <Dialog.Trigger asChild {...props} />;\n}\n\nexport const Drawer = {\n Root: Dialog.Root,\n Trigger,\n Content,\n Close: Dialog.Close,\n Title: Dialog.Title,\n Description: Dialog.Description,\n};\n","import * as React from 'react';\nimport type { IconProps } from './types';\n\nexport const ClosePanelArrowIcon = React.forwardRef<SVGSVGElement, IconProps>(\n ({ color = 'currentColor', ...props }, forwardedRef) => {\n return (\n <svg\n fill=\"none\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n width=\"16\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n ref={forwardedRef}\n >\n <path\n clipRule=\"evenodd\"\n d=\"M3.19315 2.16529C3.43937 1.93445 3.82611 1.94693 4.05695 2.19315L9.87499 7.15624C9.87499 7.15624 10.4479 7.72916 9.87499 8.30207L4.05695 12.8068C3.82611 13.0531 3.43937 13.0656 3.19315 12.8347C2.94693 12.6038 2.93445 12.2171 3.16529 11.9709L8.72916 7.72916L3.16529 3.02908C2.93445 2.78285 2.94693 2.39612 3.19315 2.16529Z\"\n fill={color}\n fillRule=\"evenodd\"\n />\n <path\n clipRule=\"evenodd\"\n d=\"M12.1733 2.58667C12.1733 2.26266 11.9107 2 11.5867 2C11.2627 2 11 2.26266 11 2.58667V12.7201C11 13.044 11.2627 13.3067 11.5867 13.3067C11.9107 13.3067 12.1733 13.044 12.1733 12.7201V2.58667Z\"\n fill={color}\n fillRule=\"evenodd\"\n />\n </svg>\n );\n }\n);\n\nClosePanelArrowIcon.displayName = 'ArrowDownIcon';\n","export { Flex, type FlexProps } from '@radix-ui/themes';\n","export { Separator, type SeparatorProps } from '@radix-ui/themes';\n","export { IconButton, type IconButtonProps } from '@radix-ui/themes';\n","import { InfoCircledIcon } from '@radix-ui/react-icons';\nimport {\n ToastContainer as ToastifyContainer,\n type ToastContainerProps,\n} from 'react-toastify';\n\nexport { toast } from 'react-toastify';\n\nfunction CloseButton(): React.ReactNode {\n return null;\n}\n\nexport function ToastContainer(props: ToastContainerProps): React.ReactElement {\n return (\n <ToastifyContainer\n autoClose={5000}\n closeButton={CloseButton}\n closeOnClick\n draggable\n hideProgressBar\n icon={<InfoCircledIcon />}\n newestOnTop\n pauseOnFocusLoss\n pauseOnHover\n position=\"bottom-right\"\n rtl={false}\n style={{ zIndex: 999999 }}\n {...props}\n />\n );\n}\n"],"mappings":"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","names":["Content","Root","Trigger","import_themes","import_themes","import_themes","import_react_toastify","import_jsx_runtime","ToastifyContainer","import_jsx_runtime","Root","Content","Trigger"]}
1
+ {"version":3,"sources":["../../src/atoms/drawer.tsx","../../src/theme/portal-provider.tsx","../../src/icons/close-panel-arrow.tsx","../../src/atoms/flex.tsx","../../src/atoms/separator.tsx","../../src/atoms/icon-button.tsx"],"sourcesContent":["import React from 'react';\nimport * as Dialog from '@radix-ui/react-dialog';\nimport { Grid, Theme } from '@radix-ui/themes';\nimport { usePortalContainer } from '@/theme/portal-provider';\nimport { ClosePanelArrowIcon } from '../icons/close-panel-arrow';\nimport { Flex } from './flex';\nimport { Separator } from './separator';\nimport { IconButton } from './icon-button';\n\nexport function Root(props: Dialog.DialogProps): React.ReactNode {\n return <Dialog.Root {...props} />;\n}\n\ntype ContentProps = Dialog.DialogContentProps & {\n /** Drawer가 붙는 위치, 기본값 right */\n position?: 'left' | 'right' | 'bottom' | 'top';\n};\n\nconst preventDefault: Dialog.DialogContentProps['onPointerDownOutside'] = (\n e\n) => {\n e.preventDefault();\n};\n\nexport function Content(props: ContentProps): React.ReactElement {\n const { position = 'right', className, children, ...rest } = props;\n\n const mobileHeaderSize = 48;\n const desktopHeaderSize = 64;\n const separatorSize = 1;\n const { drawerContainerRef } = usePortalContainer();\n\n return (\n <Dialog.Portal container={drawerContainerRef.current}>\n <Theme>\n <Dialog.Overlay className=\"DrawerOverlay\" />\n <Dialog.Content\n className={`DrawerContent ${position} ${className || ''}`}\n onPointerDownOutside={preventDefault}\n {...rest}\n >\n <Grid\n height=\"100%\"\n overflow=\"hidden\"\n rows={{\n initial: `${mobileHeaderSize}px ${separatorSize}px calc(100% - ${mobileHeaderSize + separatorSize}px)`,\n sm: `${desktopHeaderSize}px ${separatorSize}px calc(100% - ${desktopHeaderSize + separatorSize}px)`,\n }}\n >\n <Flex align=\"center\" px={{ initial: '4', md: '6' }}>\n <Dialog.Close asChild>\n <IconButton color=\"gray\" variant=\"outline\">\n <ClosePanelArrowIcon />\n </IconButton>\n </Dialog.Close>\n </Flex>\n <Separator orientation=\"horizontal\" size=\"4\" />\n {children}\n </Grid>\n </Dialog.Content>\n </Theme>\n </Dialog.Portal>\n );\n}\n\nexport function Trigger(props: Dialog.DialogTriggerProps): React.ReactElement {\n return <Dialog.Trigger asChild {...props} />;\n}\n\nexport const Drawer = {\n Root: Dialog.Root,\n Trigger,\n Content,\n Close: Dialog.Close,\n Title: Dialog.Title,\n Description: Dialog.Description,\n};\n","import React, { createContext, useContext, useRef } from 'react';\n\ninterface PortalProviderProps {\n children: React.ReactElement;\n}\n\ninterface PortalState {\n dialogContainerRef: React.RefObject<HTMLDivElement>;\n drawerContainerRef: React.RefObject<HTMLDivElement>;\n}\n\nconst PortalContext = createContext<PortalState>(\n null as unknown as PortalState\n);\n\nexport function PortalProvider({ children }: PortalProviderProps): JSX.Element {\n const dialogContainerRef = useRef<HTMLDivElement | null>(null);\n const drawerContainerRef = useRef<HTMLDivElement | null>(null);\n\n return (\n <PortalContext.Provider value={{ dialogContainerRef, drawerContainerRef }}>\n {children}\n <div className=\"drawer-portal-container\" ref={drawerContainerRef} />\n <div className=\"dialog-portal-container\" ref={dialogContainerRef} />\n </PortalContext.Provider>\n );\n}\n\nexport const usePortalContainer = (): PortalState => {\n try {\n const state = useContext(PortalContext);\n return state;\n } catch (error) {\n throw new Error('PortalProvider not found');\n }\n};\n\nexport default PortalProvider;\n","import * as React from 'react';\nimport type { IconProps } from './types';\n\nexport const ClosePanelArrowIcon = React.forwardRef<SVGSVGElement, IconProps>(\n ({ color = 'currentColor', ...props }, forwardedRef) => {\n return (\n <svg\n fill=\"none\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n width=\"16\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n ref={forwardedRef}\n >\n <path\n clipRule=\"evenodd\"\n d=\"M3.19315 2.16529C3.43937 1.93445 3.82611 1.94693 4.05695 2.19315L9.87499 7.15624C9.87499 7.15624 10.4479 7.72916 9.87499 8.30207L4.05695 12.8068C3.82611 13.0531 3.43937 13.0656 3.19315 12.8347C2.94693 12.6038 2.93445 12.2171 3.16529 11.9709L8.72916 7.72916L3.16529 3.02908C2.93445 2.78285 2.94693 2.39612 3.19315 2.16529Z\"\n fill={color}\n fillRule=\"evenodd\"\n />\n <path\n clipRule=\"evenodd\"\n d=\"M12.1733 2.58667C12.1733 2.26266 11.9107 2 11.5867 2C11.2627 2 11 2.26266 11 2.58667V12.7201C11 13.044 11.2627 13.3067 11.5867 13.3067C11.9107 13.3067 12.1733 13.044 12.1733 12.7201V2.58667Z\"\n fill={color}\n fillRule=\"evenodd\"\n />\n </svg>\n );\n }\n);\n\nClosePanelArrowIcon.displayName = 'ArrowDownIcon';\n","export { Flex, type FlexProps } from '@radix-ui/themes';\n","export { Separator, type SeparatorProps } from '@radix-ui/themes';\n","export { IconButton, type IconButtonProps } from '@radix-ui/themes';\n"],"mappings":"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","names":["Content","Root","Trigger","import_themes","React","import_jsx_runtime","import_themes","import_themes","import_jsx_runtime","Root","Content","Trigger"]}
@@ -3,10 +3,10 @@ import {
3
3
  Drawer,
4
4
  Root,
5
5
  Trigger
6
- } from "../chunk-5QXQPRW7.js";
6
+ } from "../chunk-57F5B7FE.js";
7
7
  import "../chunk-UNTA4JJU.js";
8
8
  import "../chunk-HYITAA4J.js";
9
- import "../chunk-CYYWMYE7.js";
9
+ import "../chunk-TD45ZF7D.js";
10
10
  import "../chunk-O3DNDMV3.js";
11
11
  import "../chunk-25HMMI7R.js";
12
12
  import "../chunk-N552FDTV.js";