@alfadocs/ui-kit 0.0.20 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (547) hide show
  1. package/dist/_chunks/accordion-BJD1aM67.js +117 -0
  2. package/dist/_chunks/accordion-BJD1aM67.js.map +1 -0
  3. package/dist/_chunks/agenda-card-Bld47Eul.js +130 -0
  4. package/dist/_chunks/agenda-card-Bld47Eul.js.map +1 -0
  5. package/dist/_chunks/agenda-tray-D86cNIJ0.js +119 -0
  6. package/dist/_chunks/agenda-tray-D86cNIJ0.js.map +1 -0
  7. package/dist/_chunks/ai-prompt-input-CdYwt2VP.js +379 -0
  8. package/dist/_chunks/ai-prompt-input-CdYwt2VP.js.map +1 -0
  9. package/dist/_chunks/{alert-C5ud6CfE.js → alert-ETrF7Q8J.js} +51 -51
  10. package/dist/_chunks/alert-ETrF7Q8J.js.map +1 -0
  11. package/dist/_chunks/apexcharts-theme-BkSShpEy.js +48 -0
  12. package/dist/_chunks/apexcharts-theme-BkSShpEy.js.map +1 -0
  13. package/dist/_chunks/{app-frame-CmIUp9BD.js → app-frame-uq2Gy0vs.js} +37 -37
  14. package/dist/_chunks/app-frame-uq2Gy0vs.js.map +1 -0
  15. package/dist/_chunks/aspect-ratio-BqU4itGW.js +56 -0
  16. package/dist/_chunks/aspect-ratio-BqU4itGW.js.map +1 -0
  17. package/dist/_chunks/{audio-recorder-GkGNtW2X.js → audio-recorder-D2UEBF9B.js} +98 -98
  18. package/dist/_chunks/audio-recorder-D2UEBF9B.js.map +1 -0
  19. package/dist/_chunks/{audio-visualiser-CIO3yy23.js → audio-visualiser-B4u4goV5.js} +46 -46
  20. package/dist/_chunks/audio-visualiser-B4u4goV5.js.map +1 -0
  21. package/dist/_chunks/{autocomplete.agent-kb0nmr6F.js → autocomplete.agent-Bi6CiRKa.js} +111 -111
  22. package/dist/_chunks/autocomplete.agent-Bi6CiRKa.js.map +1 -0
  23. package/dist/_chunks/{avatar-BsV7vRA6.js → avatar-BAhxbDEu.js} +38 -38
  24. package/dist/_chunks/avatar-BAhxbDEu.js.map +1 -0
  25. package/dist/_chunks/badge-zDghajh8.js +104 -0
  26. package/dist/_chunks/badge-zDghajh8.js.map +1 -0
  27. package/dist/_chunks/{balance-cell-renderer-BQwN51rT.js → balance-cell-renderer-BGyvZWjB.js} +123 -124
  28. package/dist/_chunks/balance-cell-renderer-BGyvZWjB.js.map +1 -0
  29. package/dist/_chunks/{breadcrumb-DnO6eHSS.js → breadcrumb-pdUacgm1.js} +40 -40
  30. package/dist/_chunks/breadcrumb-pdUacgm1.js.map +1 -0
  31. package/dist/_chunks/button-DmiGFnNA.js +119 -0
  32. package/dist/_chunks/button-DmiGFnNA.js.map +1 -0
  33. package/dist/_chunks/{button-group-CI7LFxt3.js → button-group-BtTHSyU0.js} +24 -24
  34. package/dist/_chunks/button-group-BtTHSyU0.js.map +1 -0
  35. package/dist/_chunks/{calendar-BIXVzhkL.js → calendar-BkDeDTaX.js} +333 -290
  36. package/dist/_chunks/calendar-BkDeDTaX.js.map +1 -0
  37. package/dist/_chunks/card-DeItIBcV.js +158 -0
  38. package/dist/_chunks/card-DeItIBcV.js.map +1 -0
  39. package/dist/_chunks/{chart.agent-DkmVXNsI.js → chart.agent-BdS-_8MO.js} +66 -64
  40. package/dist/_chunks/chart.agent-BdS-_8MO.js.map +1 -0
  41. package/dist/_chunks/chat-container-Co8HpB64.js +174 -0
  42. package/dist/_chunks/chat-container-Co8HpB64.js.map +1 -0
  43. package/dist/_chunks/{chat-input-aphxDjZL.js → chat-input-3rstZhHR.js} +57 -57
  44. package/dist/_chunks/chat-input-3rstZhHR.js.map +1 -0
  45. package/dist/_chunks/{chat-message-CdJSD18D.js → chat-message-dDMVSYBs.js} +66 -66
  46. package/dist/_chunks/chat-message-dDMVSYBs.js.map +1 -0
  47. package/dist/_chunks/checkbox-DMzgtnqw.js +116 -0
  48. package/dist/_chunks/checkbox-DMzgtnqw.js.map +1 -0
  49. package/dist/_chunks/{checkbox-group-D1aqVI0-.js → checkbox-group-DBnIBRT_.js} +34 -34
  50. package/dist/_chunks/checkbox-group-DBnIBRT_.js.map +1 -0
  51. package/dist/_chunks/{collapsible-jBFm7Ah8.js → collapsible-DPGQnHZh.js} +16 -16
  52. package/dist/_chunks/collapsible-DPGQnHZh.js.map +1 -0
  53. package/dist/_chunks/{color-picker-CiotzQJF.js → color-picker-OKKF3Dww.js} +158 -158
  54. package/dist/_chunks/color-picker-OKKF3Dww.js.map +1 -0
  55. package/dist/_chunks/{combobox.agent-B6RwDSct.js → combobox.agent-CfeB-IZ1.js} +107 -107
  56. package/dist/_chunks/combobox.agent-CfeB-IZ1.js.map +1 -0
  57. package/dist/_chunks/{command-palette.agent-B87_OkmC.js → command-palette.agent-XLfSGHCL.js} +27 -27
  58. package/dist/_chunks/command-palette.agent-XLfSGHCL.js.map +1 -0
  59. package/dist/_chunks/{date-picker-CdPuI3dK.js → date-picker-DXx8oSJb.js} +5 -5
  60. package/dist/_chunks/{date-picker-CdPuI3dK.js.map → date-picker-DXx8oSJb.js.map} +1 -1
  61. package/dist/_chunks/{date-range-picker-DfK4cjln.js → date-range-picker-C3CbY__H.js} +29 -29
  62. package/dist/_chunks/{date-range-picker-DfK4cjln.js.map → date-range-picker-C3CbY__H.js.map} +1 -1
  63. package/dist/_chunks/{date-time-picker-CX_FMsLG.js → date-time-picker-Bn3FPeAc.js} +58 -58
  64. package/dist/_chunks/date-time-picker-Bn3FPeAc.js.map +1 -0
  65. package/dist/_chunks/description-list-B1CL3RTG.js +187 -0
  66. package/dist/_chunks/description-list-B1CL3RTG.js.map +1 -0
  67. package/dist/_chunks/{dialog.agent-B276rAQF.js → dialog.agent-D9WeIWi2.js} +39 -39
  68. package/dist/_chunks/dialog.agent-D9WeIWi2.js.map +1 -0
  69. package/dist/_chunks/dropdown-menu-BnVUeVG3.js +210 -0
  70. package/dist/_chunks/dropdown-menu-BnVUeVG3.js.map +1 -0
  71. package/dist/_chunks/{empty-state-DiG7vYBM.js → empty-state-DV96gCnp.js} +37 -37
  72. package/dist/_chunks/empty-state-DV96gCnp.js.map +1 -0
  73. package/dist/_chunks/{file-upload.agent-BMow5yDY.js → file-upload.agent-DYFnqdxw.js} +185 -185
  74. package/dist/_chunks/file-upload.agent-DYFnqdxw.js.map +1 -0
  75. package/dist/_chunks/{flag-ChP784EM.js → flag-C3BUEwHH.js} +14 -14
  76. package/dist/_chunks/{flag-ChP784EM.js.map → flag-C3BUEwHH.js.map} +1 -1
  77. package/dist/_chunks/floating-action-button-RigP2E7o.js +95 -0
  78. package/dist/_chunks/floating-action-button-RigP2E7o.js.map +1 -0
  79. package/dist/_chunks/form-field-DI5LY5aG.js +121 -0
  80. package/dist/_chunks/form-field-DI5LY5aG.js.map +1 -0
  81. package/dist/_chunks/freemium-paywall-D0GiUFOe.js +197 -0
  82. package/dist/_chunks/freemium-paywall-D0GiUFOe.js.map +1 -0
  83. package/dist/_chunks/{header-BpKaSL_v.js → header-CW2oRd5H.js} +111 -111
  84. package/dist/_chunks/header-CW2oRd5H.js.map +1 -0
  85. package/dist/_chunks/icon-button-C482ii4y.js +45 -0
  86. package/dist/_chunks/icon-button-C482ii4y.js.map +1 -0
  87. package/dist/_chunks/{icon-button-group-tERESY-n.js → icon-button-group-BnhkUWUg.js} +56 -56
  88. package/dist/_chunks/icon-button-group-BnhkUWUg.js.map +1 -0
  89. package/dist/_chunks/{kbd-0iPlQjgC.js → kbd-DTcIjYA7.js} +52 -52
  90. package/dist/_chunks/kbd-DTcIjYA7.js.map +1 -0
  91. package/dist/_chunks/{key-value-pair--Je59tAF.js → key-value-pair-DDhSYdDL.js} +26 -26
  92. package/dist/_chunks/key-value-pair-DDhSYdDL.js.map +1 -0
  93. package/dist/_chunks/leo-sidebar-gXXcGPKk.js +755 -0
  94. package/dist/_chunks/leo-sidebar-gXXcGPKk.js.map +1 -0
  95. package/dist/_chunks/{list-n8vI8Yvn.js → list-Cwe8mcmh.js} +96 -96
  96. package/dist/_chunks/list-Cwe8mcmh.js.map +1 -0
  97. package/dist/_chunks/live-region-COggO6x6.js +57 -0
  98. package/dist/_chunks/live-region-COggO6x6.js.map +1 -0
  99. package/dist/_chunks/{logo-UNWYb9p7.js → logo-3wrZGpwg.js} +29 -29
  100. package/dist/_chunks/logo-3wrZGpwg.js.map +1 -0
  101. package/dist/_chunks/{matrix-rain-Q7xTEpKu.js → matrix-rain-gsHqSvW7.js} +75 -75
  102. package/dist/_chunks/matrix-rain-gsHqSvW7.js.map +1 -0
  103. package/dist/_chunks/message-card-DID3cXUW.js +275 -0
  104. package/dist/_chunks/message-card-DID3cXUW.js.map +1 -0
  105. package/dist/_chunks/message-tray-CVMLBnVp.js +302 -0
  106. package/dist/_chunks/message-tray-CVMLBnVp.js.map +1 -0
  107. package/dist/_chunks/{multi-select.agent-Cf4pU636.js → multi-select.agent-BUKYZJfp.js} +126 -126
  108. package/dist/_chunks/multi-select.agent-BUKYZJfp.js.map +1 -0
  109. package/dist/_chunks/{navigation-menu-DBDsAmXc.js → navigation-menu-NjwxyshT.js} +68 -97
  110. package/dist/_chunks/navigation-menu-NjwxyshT.js.map +1 -0
  111. package/dist/_chunks/notification-card-BZ33fq8H.js +255 -0
  112. package/dist/_chunks/notification-card-BZ33fq8H.js.map +1 -0
  113. package/dist/_chunks/{notification-tray-CNWPuPZp.js → notification-tray-CnEd7B2q.js} +96 -96
  114. package/dist/_chunks/notification-tray-CnEd7B2q.js.map +1 -0
  115. package/dist/_chunks/{number-input-B1Th0DdC.js → number-input-D7rSa_ef.js} +73 -73
  116. package/dist/_chunks/number-input-D7rSa_ef.js.map +1 -0
  117. package/dist/_chunks/{otp-input-CmoBuZ4K.js → otp-input-C9R9sC74.js} +42 -42
  118. package/dist/_chunks/otp-input-C9R9sC74.js.map +1 -0
  119. package/dist/_chunks/{pagination.agent-B5KLDCMN.js → pagination.agent-D75FB6XP.js} +106 -106
  120. package/dist/_chunks/pagination.agent-D75FB6XP.js.map +1 -0
  121. package/dist/_chunks/{password-input-DnjNh-hQ.js → password-input-C6PvKyQV.js} +59 -59
  122. package/dist/_chunks/password-input-C6PvKyQV.js.map +1 -0
  123. package/dist/_chunks/{patient-shell-D0RaWDMR.js → patient-shell-CGsmI5LJ.js} +9 -9
  124. package/dist/_chunks/{patient-shell-D0RaWDMR.js.map → patient-shell-CGsmI5LJ.js.map} +1 -1
  125. package/dist/_chunks/{payment-form-Cf7U6r5L.js → payment-form-l3j-gA-t.js} +108 -108
  126. package/dist/_chunks/payment-form-l3j-gA-t.js.map +1 -0
  127. package/dist/_chunks/{pdf-viewer.agent-DXjgDItg.js → pdf-viewer.agent-DuGfSoep.js} +234 -233
  128. package/dist/_chunks/pdf-viewer.agent-DuGfSoep.js.map +1 -0
  129. package/dist/_chunks/{phone-input-C2dtIuxW.js → phone-input-ZWa_FU4R.js} +112 -112
  130. package/dist/_chunks/phone-input-ZWa_FU4R.js.map +1 -0
  131. package/dist/_chunks/{popover-D1woU9mP.js → popover-CMr1pTPO.js} +58 -58
  132. package/dist/_chunks/popover-CMr1pTPO.js.map +1 -0
  133. package/dist/_chunks/{privacy-lock-C1X42Sit.js → privacy-lock-Br5k7Rul.js} +36 -36
  134. package/dist/_chunks/privacy-lock-Br5k7Rul.js.map +1 -0
  135. package/dist/_chunks/{progress-DL3-izuO.js → progress-D4ELgHG3.js} +43 -43
  136. package/dist/_chunks/progress-D4ELgHG3.js.map +1 -0
  137. package/dist/_chunks/radio-B_gvGU29.js +106 -0
  138. package/dist/_chunks/radio-B_gvGU29.js.map +1 -0
  139. package/dist/_chunks/radio-group-Bn8Wt0yc.js +88 -0
  140. package/dist/_chunks/radio-group-Bn8Wt0yc.js.map +1 -0
  141. package/dist/_chunks/{react-day-picker-DQKDiJ37.js → react-day-picker-d0MHsyCj.js} +174 -174
  142. package/dist/_chunks/{react-day-picker-DQKDiJ37.js.map → react-day-picker-d0MHsyCj.js.map} +1 -1
  143. package/dist/_chunks/{resizable.agent-DVk_jJur.js → resizable.agent-DBpPGNdy.js} +122 -122
  144. package/dist/_chunks/resizable.agent-DBpPGNdy.js.map +1 -0
  145. package/dist/_chunks/{rich-text-editor.agent-BOjF4Xao.js → rich-text-editor.agent-C1_E7_7t.js} +225 -225
  146. package/dist/_chunks/rich-text-editor.agent-C1_E7_7t.js.map +1 -0
  147. package/dist/_chunks/scroll-area-Ba99pJ_R.js +144 -0
  148. package/dist/_chunks/scroll-area-Ba99pJ_R.js.map +1 -0
  149. package/dist/_chunks/{search-bar-DgSOAajC.js → search-bar-VoTqJhRp.js} +131 -131
  150. package/dist/_chunks/search-bar-VoTqJhRp.js.map +1 -0
  151. package/dist/_chunks/search-input-D6rarD0_.js +197 -0
  152. package/dist/_chunks/search-input-D6rarD0_.js.map +1 -0
  153. package/dist/_chunks/select-DbxWF3O_.js +320 -0
  154. package/dist/_chunks/select-DbxWF3O_.js.map +1 -0
  155. package/dist/_chunks/{separator-DExI4amU.js → separator-BRQHi8s0.js} +17 -17
  156. package/dist/_chunks/separator-BRQHi8s0.js.map +1 -0
  157. package/dist/_chunks/sheet-DyWqluiS.js +188 -0
  158. package/dist/_chunks/sheet-DyWqluiS.js.map +1 -0
  159. package/dist/_chunks/sidebar-B52iGGNV.js +1076 -0
  160. package/dist/_chunks/sidebar-B52iGGNV.js.map +1 -0
  161. package/dist/_chunks/{sign-in-with-alfadocs-button-BBL11-Rt.js → sign-in-with-alfadocs-button-BU7MP5Hg.js} +4 -4
  162. package/dist/_chunks/{sign-in-with-alfadocs-button-BBL11-Rt.js.map → sign-in-with-alfadocs-button-BU7MP5Hg.js.map} +1 -1
  163. package/dist/_chunks/{signature-capture.agent-L_1_-zVR.js → signature-capture.agent-4htVctJ2.js} +163 -163
  164. package/dist/_chunks/signature-capture.agent-4htVctJ2.js.map +1 -0
  165. package/dist/_chunks/skeleton-ClO1v5GE.js +95 -0
  166. package/dist/_chunks/skeleton-ClO1v5GE.js.map +1 -0
  167. package/dist/_chunks/skip-link-CASJkBOe.js +68 -0
  168. package/dist/_chunks/skip-link-CASJkBOe.js.map +1 -0
  169. package/dist/_chunks/slider-n8JWpJvT.js +273 -0
  170. package/dist/_chunks/slider-n8JWpJvT.js.map +1 -0
  171. package/dist/_chunks/slot-grid-BRAkqChA.js +491 -0
  172. package/dist/_chunks/slot-grid-BRAkqChA.js.map +1 -0
  173. package/dist/_chunks/{sparkline.agent-BDTXzTy9.js → sparkline.agent-BLY1IMyW.js} +45 -45
  174. package/dist/_chunks/sparkline.agent-BLY1IMyW.js.map +1 -0
  175. package/dist/_chunks/{spinner-77xUGpuX.js → spinner-CoAOGcDa.js} +40 -40
  176. package/dist/_chunks/spinner-CoAOGcDa.js.map +1 -0
  177. package/dist/_chunks/stat-D76MNHzK.js +208 -0
  178. package/dist/_chunks/stat-D76MNHzK.js.map +1 -0
  179. package/dist/_chunks/{stepper-accordion-BkvqQWPI.js → stepper-accordion-DHQ80A4v.js} +33 -33
  180. package/dist/_chunks/stepper-accordion-DHQ80A4v.js.map +1 -0
  181. package/dist/_chunks/{stepper-calendar-BQMjrwzo.js → stepper-calendar-vtWwa2bY.js} +159 -159
  182. package/dist/_chunks/stepper-calendar-vtWwa2bY.js.map +1 -0
  183. package/dist/_chunks/stepper-progress-DMZ5w5VR.js +128 -0
  184. package/dist/_chunks/stepper-progress-DMZ5w5VR.js.map +1 -0
  185. package/dist/_chunks/streaming-text-D0cW8pwq.js +104 -0
  186. package/dist/_chunks/streaming-text-D0cW8pwq.js.map +1 -0
  187. package/dist/_chunks/suggestion-chip-BgNFpPEE.js +157 -0
  188. package/dist/_chunks/suggestion-chip-BgNFpPEE.js.map +1 -0
  189. package/dist/_chunks/switch-DtLPKO0p.js +137 -0
  190. package/dist/_chunks/switch-DtLPKO0p.js.map +1 -0
  191. package/dist/_chunks/{tabs.agent-FsGU3sZL.js → tabs.agent-BDUlyPbJ.js} +101 -101
  192. package/dist/_chunks/tabs.agent-BDUlyPbJ.js.map +1 -0
  193. package/dist/_chunks/tag-CfSZZN2f.js +194 -0
  194. package/dist/_chunks/tag-CfSZZN2f.js.map +1 -0
  195. package/dist/_chunks/task-card-B5xfiFg5.js +112 -0
  196. package/dist/_chunks/task-card-B5xfiFg5.js.map +1 -0
  197. package/dist/_chunks/task-tray-BnpiodZ4.js +99 -0
  198. package/dist/_chunks/task-tray-BnpiodZ4.js.map +1 -0
  199. package/dist/_chunks/text-area-BqbruBWx.js +152 -0
  200. package/dist/_chunks/text-area-BqbruBWx.js.map +1 -0
  201. package/dist/_chunks/text-input-lh6kRXZS.js +187 -0
  202. package/dist/_chunks/text-input-lh6kRXZS.js.map +1 -0
  203. package/dist/_chunks/theme-toggle-BHKMiORD.js +326 -0
  204. package/dist/_chunks/theme-toggle-BHKMiORD.js.map +1 -0
  205. package/dist/_chunks/{time-picker-BapZq0OY.js → time-picker-DbpAmPux.js} +102 -102
  206. package/dist/_chunks/time-picker-DbpAmPux.js.map +1 -0
  207. package/dist/_chunks/timeline-vjsUeuq1.js +219 -0
  208. package/dist/_chunks/timeline-vjsUeuq1.js.map +1 -0
  209. package/dist/_chunks/{timestamp-BLM-jjdw.js → timestamp-DmSt92P1.js} +30 -30
  210. package/dist/_chunks/timestamp-DmSt92P1.js.map +1 -0
  211. package/dist/_chunks/{toast-DSCqnDRl.js → toast-DllSITLf.js} +151 -151
  212. package/dist/_chunks/{toast-DSCqnDRl.js.map → toast-DllSITLf.js.map} +1 -1
  213. package/dist/_chunks/{tooltip-DF6WjD1r.js → tooltip-Dp3u8jGz.js} +30 -30
  214. package/dist/_chunks/tooltip-Dp3u8jGz.js.map +1 -0
  215. package/dist/_chunks/{tooth-scheme.agent-CFKl3iQr.js → tooth-scheme.agent-BRqxWa1D.js} +75 -75
  216. package/dist/_chunks/tooth-scheme.agent-BRqxWa1D.js.map +1 -0
  217. package/dist/_chunks/transcript-panel-Bg1BTMSr.js +265 -0
  218. package/dist/_chunks/transcript-panel-Bg1BTMSr.js.map +1 -0
  219. package/dist/_chunks/typing-indicator-BRg22Rqr.js +81 -0
  220. package/dist/_chunks/typing-indicator-BRg22Rqr.js.map +1 -0
  221. package/dist/_chunks/use-locale-BuXR_Zl9.js +32 -0
  222. package/dist/_chunks/use-locale-BuXR_Zl9.js.map +1 -0
  223. package/dist/_chunks/visually-hidden-Y3jcdCv-.js +21 -0
  224. package/dist/_chunks/visually-hidden-Y3jcdCv-.js.map +1 -0
  225. package/dist/_chunks/{warning-stack-Cyf_81SL.js → warning-stack-B9N9yWet.js} +38 -38
  226. package/dist/_chunks/warning-stack-B9N9yWet.js.map +1 -0
  227. package/dist/_chunks/{workflow-map-Uf-hHAO3.js → workflow-map-gBhL_Wrs.js} +385 -385
  228. package/dist/_chunks/workflow-map-gBhL_Wrs.js.map +1 -0
  229. package/dist/components/_shared/index.d.ts +2 -0
  230. package/dist/components/_shared/index.d.ts.map +1 -1
  231. package/dist/components/_shared/use-focus-trap.d.ts +32 -0
  232. package/dist/components/_shared/use-focus-trap.d.ts.map +1 -0
  233. package/dist/components/_shared/use-neutralize-hidden-focus.d.ts +3 -0
  234. package/dist/components/_shared/use-neutralize-hidden-focus.d.ts.map +1 -0
  235. package/dist/components/accordion/index.js +1 -1
  236. package/dist/components/agenda-card/index.js +1 -1
  237. package/dist/components/agenda-tray/index.js +1 -1
  238. package/dist/components/ai-prompt-input/index.js +1 -1
  239. package/dist/components/alert/index.js +1 -1
  240. package/dist/components/app-frame/index.js +1 -1
  241. package/dist/components/aspect-ratio/index.js +1 -1
  242. package/dist/components/audio-recorder/index.js +1 -1
  243. package/dist/components/audio-visualiser/index.js +1 -1
  244. package/dist/components/autocomplete/index.js +1 -1
  245. package/dist/components/avatar/index.js +1 -1
  246. package/dist/components/badge/index.js +1 -1
  247. package/dist/components/breadcrumb/index.js +1 -1
  248. package/dist/components/button/index.js +2 -2
  249. package/dist/components/button-group/index.js +1 -1
  250. package/dist/components/calendar/calendar.d.ts.map +1 -1
  251. package/dist/components/calendar/index.js +1 -1
  252. package/dist/components/card/index.js +1 -1
  253. package/dist/components/chart/chart.d.ts.map +1 -1
  254. package/dist/components/chart/index.js +1 -1
  255. package/dist/components/chat-container/index.js +1 -1
  256. package/dist/components/chat-input/index.js +1 -1
  257. package/dist/components/chat-message/index.js +1 -1
  258. package/dist/components/checkbox/index.js +1 -1
  259. package/dist/components/checkbox-group/index.js +1 -1
  260. package/dist/components/collapsible/index.js +1 -1
  261. package/dist/components/color-picker/index.js +1 -1
  262. package/dist/components/combobox/index.js +1 -1
  263. package/dist/components/command-palette/index.js +1 -1
  264. package/dist/components/data-table/index.js +1 -1
  265. package/dist/components/data-table/toolbar.d.ts.map +1 -1
  266. package/dist/components/date-picker/index.js +1 -1
  267. package/dist/components/date-range-picker/index.js +1 -1
  268. package/dist/components/date-time-picker/index.js +1 -1
  269. package/dist/components/description-list/index.js +1 -1
  270. package/dist/components/dialog/index.js +1 -1
  271. package/dist/components/dropdown-menu/index.js +1 -1
  272. package/dist/components/empty-state/index.js +1 -1
  273. package/dist/components/file-upload/index.js +1 -1
  274. package/dist/components/flag/index.js +1 -1
  275. package/dist/components/floating-action-button/index.js +1 -1
  276. package/dist/components/form-field/index.js +1 -1
  277. package/dist/components/freemium-paywall/index.js +1 -1
  278. package/dist/components/header/index.js +1 -1
  279. package/dist/components/icon-button/index.d.ts +3 -0
  280. package/dist/components/icon-button/index.d.ts.map +1 -0
  281. package/dist/components/icon-button/index.js +5 -0
  282. package/dist/components/icon-button/index.js.map +1 -0
  283. package/dist/components/icon-button-group/index.js +1 -1
  284. package/dist/components/index.d.ts +8 -2
  285. package/dist/components/index.d.ts.map +1 -1
  286. package/dist/components/kbd/index.js +1 -1
  287. package/dist/components/key-value-pair/index.js +1 -1
  288. package/dist/components/list/index.js +1 -1
  289. package/dist/components/live-region/index.d.ts +3 -0
  290. package/dist/components/live-region/index.d.ts.map +1 -0
  291. package/dist/components/live-region/index.js +5 -0
  292. package/dist/components/live-region/index.js.map +1 -0
  293. package/dist/components/live-region/live-region.d.ts +49 -0
  294. package/dist/components/live-region/live-region.d.ts.map +1 -0
  295. package/dist/components/logo/index.js +1 -1
  296. package/dist/components/matrix-rain/index.js +1 -1
  297. package/dist/components/message-card/index.js +1 -1
  298. package/dist/components/message-tray/index.js +1 -1
  299. package/dist/components/multi-select/index.js +1 -1
  300. package/dist/components/navigation-menu/index.d.ts +4 -2
  301. package/dist/components/navigation-menu/index.d.ts.map +1 -1
  302. package/dist/components/navigation-menu/index.js +3 -2
  303. package/dist/components/navigation-menu/index.js.map +1 -1
  304. package/dist/components/navigation-menu/navigation-menu.d.ts +2 -6
  305. package/dist/components/navigation-menu/navigation-menu.d.ts.map +1 -1
  306. package/dist/components/notification-card/index.js +1 -1
  307. package/dist/components/notification-tray/index.js +1 -1
  308. package/dist/components/number-input/index.js +1 -1
  309. package/dist/components/otp-input/index.js +1 -1
  310. package/dist/components/pagination/index.js +1 -1
  311. package/dist/components/password-input/index.js +1 -1
  312. package/dist/components/payment-form/index.js +1 -1
  313. package/dist/components/pdf-viewer/index.js +1 -1
  314. package/dist/components/pdf-viewer/pdf-viewer.d.ts.map +1 -1
  315. package/dist/components/phone-input/index.js +1 -1
  316. package/dist/components/popover/index.js +1 -1
  317. package/dist/components/privacy-lock/index.js +1 -1
  318. package/dist/components/progress/index.js +1 -1
  319. package/dist/components/radio/index.d.ts +3 -0
  320. package/dist/components/radio/index.d.ts.map +1 -0
  321. package/dist/components/radio/index.js +5 -0
  322. package/dist/components/radio/index.js.map +1 -0
  323. package/dist/components/radio-group/index.js +4 -3
  324. package/dist/components/radio-group/index.js.map +1 -1
  325. package/dist/components/resizable/index.js +1 -1
  326. package/dist/components/rich-text-editor/index.js +1 -1
  327. package/dist/components/scroll-area/index.js +1 -1
  328. package/dist/components/search-bar/index.js +1 -1
  329. package/dist/components/search-input/index.js +1 -1
  330. package/dist/components/select/index.js +1 -1
  331. package/dist/components/separator/index.js +1 -1
  332. package/dist/components/sheet/index.js +1 -1
  333. package/dist/components/sidebar/index.js +1 -1
  334. package/dist/components/sign-in-with-alfadocs-button/index.js +1 -1
  335. package/dist/components/signature-capture/index.js +1 -1
  336. package/dist/components/skeleton/index.js +1 -1
  337. package/dist/components/skip-link/index.d.ts +2 -0
  338. package/dist/components/skip-link/index.d.ts.map +1 -0
  339. package/dist/components/skip-link/index.js +5 -0
  340. package/dist/components/skip-link/index.js.map +1 -0
  341. package/dist/components/skip-link/skip-link.d.ts +34 -0
  342. package/dist/components/skip-link/skip-link.d.ts.map +1 -0
  343. package/dist/components/slider/index.js +1 -1
  344. package/dist/components/slot-grid/index.js +1 -1
  345. package/dist/components/sparkline/index.js +1 -1
  346. package/dist/components/sparkline/sparkline.d.ts.map +1 -1
  347. package/dist/components/spinner/index.js +1 -1
  348. package/dist/components/stat/index.js +1 -1
  349. package/dist/components/stepper-accordion/index.js +1 -1
  350. package/dist/components/stepper-calendar/index.js +1 -1
  351. package/dist/components/stepper-progress/index.js +1 -1
  352. package/dist/components/streaming-text/index.js +1 -1
  353. package/dist/components/suggestion-chip/index.js +1 -1
  354. package/dist/components/switch/index.js +1 -1
  355. package/dist/components/tabs/index.js +1 -1
  356. package/dist/components/tag/index.js +1 -1
  357. package/dist/components/task-card/index.js +1 -1
  358. package/dist/components/task-tray/index.js +1 -1
  359. package/dist/components/text-area/index.js +1 -1
  360. package/dist/components/text-input/index.js +1 -1
  361. package/dist/components/theme-toggle/index.d.ts +3 -0
  362. package/dist/components/theme-toggle/index.d.ts.map +1 -0
  363. package/dist/components/theme-toggle/index.js +5 -0
  364. package/dist/components/theme-toggle/index.js.map +1 -0
  365. package/dist/components/theme-toggle/theme-toggle.d.ts +34 -0
  366. package/dist/components/theme-toggle/theme-toggle.d.ts.map +1 -0
  367. package/dist/components/time-picker/index.js +1 -1
  368. package/dist/components/timeline/index.js +1 -1
  369. package/dist/components/timestamp/index.js +1 -1
  370. package/dist/components/toast/index.js +1 -1
  371. package/dist/components/tooltip/index.js +1 -1
  372. package/dist/components/tooth-scheme/index.js +1 -1
  373. package/dist/components/transcript-panel/index.js +1 -1
  374. package/dist/components/typing-indicator/index.js +1 -1
  375. package/dist/components/visually-hidden/index.d.ts +2 -0
  376. package/dist/components/visually-hidden/index.d.ts.map +1 -0
  377. package/dist/components/visually-hidden/index.js +5 -0
  378. package/dist/components/visually-hidden/index.js.map +1 -0
  379. package/dist/components/visually-hidden/visually-hidden.d.ts +11 -0
  380. package/dist/components/visually-hidden/visually-hidden.d.ts.map +1 -0
  381. package/dist/components/warning-stack/index.js +1 -1
  382. package/dist/components/workflow/index.js +1 -1
  383. package/dist/hooks/index.d.ts +3 -0
  384. package/dist/hooks/index.d.ts.map +1 -1
  385. package/dist/hooks/index.js +10 -7
  386. package/dist/hooks/index.js.map +1 -1
  387. package/dist/hooks/use-locale.d.ts +27 -0
  388. package/dist/hooks/use-locale.d.ts.map +1 -0
  389. package/dist/hooks/use-media-query.d.ts +17 -0
  390. package/dist/hooks/use-media-query.d.ts.map +1 -0
  391. package/dist/i18n/config.js +59 -2
  392. package/dist/i18n/config.js.map +1 -1
  393. package/dist/i18n/resources.d.ts +57 -0
  394. package/dist/i18n/resources.d.ts.map +1 -1
  395. package/dist/index.js +442 -431
  396. package/dist/index.js.map +1 -1
  397. package/dist/locales/de.json +19 -0
  398. package/dist/locales/en.json +19 -0
  399. package/dist/locales/it.json +19 -0
  400. package/dist/patterns/leo-assistant/index.js +1 -1
  401. package/dist/patterns/patient-shell/index.js +1 -1
  402. package/dist/tokens.css +2 -2
  403. package/package.json +4 -2
  404. package/dist/_chunks/accordion-Dgcd38U_.js +0 -117
  405. package/dist/_chunks/accordion-Dgcd38U_.js.map +0 -1
  406. package/dist/_chunks/agenda-card-B2gq-gTq.js +0 -130
  407. package/dist/_chunks/agenda-card-B2gq-gTq.js.map +0 -1
  408. package/dist/_chunks/agenda-tray-twa8g_87.js +0 -119
  409. package/dist/_chunks/agenda-tray-twa8g_87.js.map +0 -1
  410. package/dist/_chunks/ai-prompt-input-C6IY_Eds.js +0 -379
  411. package/dist/_chunks/ai-prompt-input-C6IY_Eds.js.map +0 -1
  412. package/dist/_chunks/alert-C5ud6CfE.js.map +0 -1
  413. package/dist/_chunks/apexcharts-theme-cpBYmCcr.js +0 -17
  414. package/dist/_chunks/apexcharts-theme-cpBYmCcr.js.map +0 -1
  415. package/dist/_chunks/app-frame-CmIUp9BD.js.map +0 -1
  416. package/dist/_chunks/aspect-ratio-Bo3cZXmR.js +0 -56
  417. package/dist/_chunks/aspect-ratio-Bo3cZXmR.js.map +0 -1
  418. package/dist/_chunks/audio-recorder-GkGNtW2X.js.map +0 -1
  419. package/dist/_chunks/audio-visualiser-CIO3yy23.js.map +0 -1
  420. package/dist/_chunks/autocomplete.agent-kb0nmr6F.js.map +0 -1
  421. package/dist/_chunks/avatar-BsV7vRA6.js.map +0 -1
  422. package/dist/_chunks/badge--CmSr7ok.js +0 -104
  423. package/dist/_chunks/badge--CmSr7ok.js.map +0 -1
  424. package/dist/_chunks/balance-cell-renderer-BQwN51rT.js.map +0 -1
  425. package/dist/_chunks/breadcrumb-DnO6eHSS.js.map +0 -1
  426. package/dist/_chunks/button-CXL8bA8G.js +0 -119
  427. package/dist/_chunks/button-CXL8bA8G.js.map +0 -1
  428. package/dist/_chunks/button-group-CI7LFxt3.js.map +0 -1
  429. package/dist/_chunks/calendar-BIXVzhkL.js.map +0 -1
  430. package/dist/_chunks/card-n97MNPP2.js +0 -158
  431. package/dist/_chunks/card-n97MNPP2.js.map +0 -1
  432. package/dist/_chunks/chart.agent-DkmVXNsI.js.map +0 -1
  433. package/dist/_chunks/chat-container-SR3UWxbL.js +0 -174
  434. package/dist/_chunks/chat-container-SR3UWxbL.js.map +0 -1
  435. package/dist/_chunks/chat-input-aphxDjZL.js.map +0 -1
  436. package/dist/_chunks/chat-message-CdJSD18D.js.map +0 -1
  437. package/dist/_chunks/checkbox-CfiZ0FZc.js +0 -116
  438. package/dist/_chunks/checkbox-CfiZ0FZc.js.map +0 -1
  439. package/dist/_chunks/checkbox-group-D1aqVI0-.js.map +0 -1
  440. package/dist/_chunks/collapsible-jBFm7Ah8.js.map +0 -1
  441. package/dist/_chunks/color-picker-CiotzQJF.js.map +0 -1
  442. package/dist/_chunks/combobox.agent-B6RwDSct.js.map +0 -1
  443. package/dist/_chunks/command-palette.agent-B87_OkmC.js.map +0 -1
  444. package/dist/_chunks/date-time-picker-CX_FMsLG.js.map +0 -1
  445. package/dist/_chunks/description-list-C5UPZgX6.js +0 -187
  446. package/dist/_chunks/description-list-C5UPZgX6.js.map +0 -1
  447. package/dist/_chunks/dialog.agent-B276rAQF.js.map +0 -1
  448. package/dist/_chunks/dropdown-menu-CJKvK7VG.js +0 -210
  449. package/dist/_chunks/dropdown-menu-CJKvK7VG.js.map +0 -1
  450. package/dist/_chunks/empty-state-DiG7vYBM.js.map +0 -1
  451. package/dist/_chunks/file-upload.agent-BMow5yDY.js.map +0 -1
  452. package/dist/_chunks/floating-action-button-BM9ib-Wf.js +0 -95
  453. package/dist/_chunks/floating-action-button-BM9ib-Wf.js.map +0 -1
  454. package/dist/_chunks/form-field-B4bwrccN.js +0 -121
  455. package/dist/_chunks/form-field-B4bwrccN.js.map +0 -1
  456. package/dist/_chunks/freemium-paywall-DVyNsQHS.js +0 -197
  457. package/dist/_chunks/freemium-paywall-DVyNsQHS.js.map +0 -1
  458. package/dist/_chunks/header-BpKaSL_v.js.map +0 -1
  459. package/dist/_chunks/icon-button-C1vpylg3.js +0 -45
  460. package/dist/_chunks/icon-button-C1vpylg3.js.map +0 -1
  461. package/dist/_chunks/icon-button-group-tERESY-n.js.map +0 -1
  462. package/dist/_chunks/kbd-0iPlQjgC.js.map +0 -1
  463. package/dist/_chunks/key-value-pair--Je59tAF.js.map +0 -1
  464. package/dist/_chunks/leo-sidebar-9A9AWBxX.js +0 -755
  465. package/dist/_chunks/leo-sidebar-9A9AWBxX.js.map +0 -1
  466. package/dist/_chunks/list-n8vI8Yvn.js.map +0 -1
  467. package/dist/_chunks/logo-UNWYb9p7.js.map +0 -1
  468. package/dist/_chunks/matrix-rain-Q7xTEpKu.js.map +0 -1
  469. package/dist/_chunks/message-card-g5VS5Q80.js +0 -275
  470. package/dist/_chunks/message-card-g5VS5Q80.js.map +0 -1
  471. package/dist/_chunks/message-tray-CAk-iibU.js +0 -302
  472. package/dist/_chunks/message-tray-CAk-iibU.js.map +0 -1
  473. package/dist/_chunks/multi-select.agent-Cf4pU636.js.map +0 -1
  474. package/dist/_chunks/navigation-menu-DBDsAmXc.js.map +0 -1
  475. package/dist/_chunks/notification-card-CQxJporb.js +0 -255
  476. package/dist/_chunks/notification-card-CQxJporb.js.map +0 -1
  477. package/dist/_chunks/notification-tray-CNWPuPZp.js.map +0 -1
  478. package/dist/_chunks/number-input-B1Th0DdC.js.map +0 -1
  479. package/dist/_chunks/otp-input-CmoBuZ4K.js.map +0 -1
  480. package/dist/_chunks/pagination.agent-B5KLDCMN.js.map +0 -1
  481. package/dist/_chunks/password-input-DnjNh-hQ.js.map +0 -1
  482. package/dist/_chunks/payment-form-Cf7U6r5L.js.map +0 -1
  483. package/dist/_chunks/pdf-viewer.agent-DXjgDItg.js.map +0 -1
  484. package/dist/_chunks/phone-input-C2dtIuxW.js.map +0 -1
  485. package/dist/_chunks/popover-D1woU9mP.js.map +0 -1
  486. package/dist/_chunks/privacy-lock-C1X42Sit.js.map +0 -1
  487. package/dist/_chunks/progress-DL3-izuO.js.map +0 -1
  488. package/dist/_chunks/radio-group-CXN9qNPe.js +0 -185
  489. package/dist/_chunks/radio-group-CXN9qNPe.js.map +0 -1
  490. package/dist/_chunks/resizable.agent-DVk_jJur.js.map +0 -1
  491. package/dist/_chunks/rich-text-editor.agent-BOjF4Xao.js.map +0 -1
  492. package/dist/_chunks/scroll-area-DXn-YWHY.js +0 -144
  493. package/dist/_chunks/scroll-area-DXn-YWHY.js.map +0 -1
  494. package/dist/_chunks/search-bar-DgSOAajC.js.map +0 -1
  495. package/dist/_chunks/search-input-D4tC_Prn.js +0 -197
  496. package/dist/_chunks/search-input-D4tC_Prn.js.map +0 -1
  497. package/dist/_chunks/select-B4m4upMg.js +0 -320
  498. package/dist/_chunks/select-B4m4upMg.js.map +0 -1
  499. package/dist/_chunks/separator-DExI4amU.js.map +0 -1
  500. package/dist/_chunks/sheet-D6XOx0fK.js +0 -188
  501. package/dist/_chunks/sheet-D6XOx0fK.js.map +0 -1
  502. package/dist/_chunks/sidebar-r645O-k9.js +0 -1076
  503. package/dist/_chunks/sidebar-r645O-k9.js.map +0 -1
  504. package/dist/_chunks/signature-capture.agent-L_1_-zVR.js.map +0 -1
  505. package/dist/_chunks/skeleton-vbTWUntB.js +0 -95
  506. package/dist/_chunks/skeleton-vbTWUntB.js.map +0 -1
  507. package/dist/_chunks/slider-B3DBwmcm.js +0 -273
  508. package/dist/_chunks/slider-B3DBwmcm.js.map +0 -1
  509. package/dist/_chunks/slot-grid-DL_Tuj0p.js +0 -491
  510. package/dist/_chunks/slot-grid-DL_Tuj0p.js.map +0 -1
  511. package/dist/_chunks/sparkline.agent-BDTXzTy9.js.map +0 -1
  512. package/dist/_chunks/spinner-77xUGpuX.js.map +0 -1
  513. package/dist/_chunks/stat-CrumvZWf.js +0 -208
  514. package/dist/_chunks/stat-CrumvZWf.js.map +0 -1
  515. package/dist/_chunks/stepper-accordion-BkvqQWPI.js.map +0 -1
  516. package/dist/_chunks/stepper-calendar-BQMjrwzo.js.map +0 -1
  517. package/dist/_chunks/stepper-progress-Bwfl-0rV.js +0 -128
  518. package/dist/_chunks/stepper-progress-Bwfl-0rV.js.map +0 -1
  519. package/dist/_chunks/streaming-text-Cu9YQe_1.js +0 -104
  520. package/dist/_chunks/streaming-text-Cu9YQe_1.js.map +0 -1
  521. package/dist/_chunks/suggestion-chip-XkxDJiPW.js +0 -157
  522. package/dist/_chunks/suggestion-chip-XkxDJiPW.js.map +0 -1
  523. package/dist/_chunks/switch-DyC0ThNT.js +0 -137
  524. package/dist/_chunks/switch-DyC0ThNT.js.map +0 -1
  525. package/dist/_chunks/tabs.agent-FsGU3sZL.js.map +0 -1
  526. package/dist/_chunks/tag-BucAvfTX.js +0 -194
  527. package/dist/_chunks/tag-BucAvfTX.js.map +0 -1
  528. package/dist/_chunks/task-card-uxjApfcg.js +0 -112
  529. package/dist/_chunks/task-card-uxjApfcg.js.map +0 -1
  530. package/dist/_chunks/task-tray-BdfM3p8N.js +0 -99
  531. package/dist/_chunks/task-tray-BdfM3p8N.js.map +0 -1
  532. package/dist/_chunks/text-area-CKxZ7cS3.js +0 -152
  533. package/dist/_chunks/text-area-CKxZ7cS3.js.map +0 -1
  534. package/dist/_chunks/text-input-D16CcMlL.js +0 -187
  535. package/dist/_chunks/text-input-D16CcMlL.js.map +0 -1
  536. package/dist/_chunks/time-picker-BapZq0OY.js.map +0 -1
  537. package/dist/_chunks/timeline-D3VOf4RT.js +0 -219
  538. package/dist/_chunks/timeline-D3VOf4RT.js.map +0 -1
  539. package/dist/_chunks/timestamp-BLM-jjdw.js.map +0 -1
  540. package/dist/_chunks/tooltip-DF6WjD1r.js.map +0 -1
  541. package/dist/_chunks/tooth-scheme.agent-CFKl3iQr.js.map +0 -1
  542. package/dist/_chunks/transcript-panel-aI14fHYA.js +0 -265
  543. package/dist/_chunks/transcript-panel-aI14fHYA.js.map +0 -1
  544. package/dist/_chunks/typing-indicator-BTVDEpnd.js +0 -81
  545. package/dist/_chunks/typing-indicator-BTVDEpnd.js.map +0 -1
  546. package/dist/_chunks/warning-stack-Cyf_81SL.js.map +0 -1
  547. package/dist/_chunks/workflow-map-Uf-hHAO3.js.map +0 -1
@@ -1,18 +1,18 @@
1
1
  import { jsx as n, jsxs as u, Fragment as te } from "react/jsx-runtime";
2
- import { forwardRef as ae, useState as N, useEffect as T, useRef as V, useImperativeHandle as oe, useMemo as Z, useId as se, useCallback as ie } from "react";
2
+ import { forwardRef as se, useState as N, useEffect as T, useRef as V, useImperativeHandle as ae, useMemo as Z, useId as oe, useCallback as ie } from "react";
3
3
  import { c as I } from "./index-D2ZczOXr.js";
4
4
  import { useTranslation as $ } from "react-i18next";
5
- import { S as J } from "./spinner-77xUGpuX.js";
6
- import { A as W } from "./alert-C5ud6CfE.js";
7
- import { loadStripe as ce } from "@stripe/stripe-js";
8
- import { Elements as le, useStripe as de, useElements as ue, PaymentElement as me, AddressElement as pe } from "@stripe/react-stripe-js";
5
+ import { S as J } from "./spinner-CoAOGcDa.js";
6
+ import { A as W } from "./alert-ETrF7Q8J.js";
7
+ import { loadStripe as de } from "@stripe/stripe-js";
8
+ import { Elements as ce, useStripe as le, useElements as ue, PaymentElement as me, AddressElement as pe } from "@stripe/react-stripe-js";
9
9
  function Y() {
10
10
  return typeof document < "u" && typeof window < "u";
11
11
  }
12
12
  function j(r) {
13
13
  if (!Y())
14
14
  return { theme: "stripe" };
15
- const t = r ?? document.documentElement, a = getComputedStyle(t), e = (o) => a.getPropertyValue(o).trim();
15
+ const t = r ?? document.documentElement, s = getComputedStyle(t), e = (a) => s.getPropertyValue(a).trim();
16
16
  return {
17
17
  theme: t.classList.contains("theme-dark") ? "night" : "stripe",
18
18
  variables: {
@@ -71,14 +71,14 @@ function j(r) {
71
71
  function fe(r, t) {
72
72
  if (!Y()) return () => {
73
73
  };
74
- const a = document.documentElement, e = () => r(j(t)), i = new MutationObserver(e);
75
- i.observe(a, {
74
+ const s = document.documentElement, e = () => r(j(t)), i = new MutationObserver(e);
75
+ i.observe(s, {
76
76
  attributes: !0,
77
77
  attributeFilter: ["class", "dir", "lang"]
78
78
  });
79
- const o = window.matchMedia("(prefers-color-scheme: dark)"), m = window.matchMedia("(prefers-reduced-motion: reduce)");
80
- return o.addEventListener("change", e), m.addEventListener("change", e), () => {
81
- i.disconnect(), o.removeEventListener("change", e), m.removeEventListener("change", e);
79
+ const a = window.matchMedia("(prefers-color-scheme: dark)"), m = window.matchMedia("(prefers-reduced-motion: reduce)");
80
+ return a.addEventListener("change", e), m.addEventListener("change", e), () => {
81
+ i.disconnect(), a.removeEventListener("change", e), m.removeEventListener("change", e);
82
82
  };
83
83
  }
84
84
  const be = /* @__PURE__ */ new Set([
@@ -100,10 +100,10 @@ const be = /* @__PURE__ */ new Set([
100
100
  "XOF",
101
101
  "XPF"
102
102
  ]);
103
- function B(r, t, a) {
103
+ function B(r, t, s) {
104
104
  const e = t.toUpperCase(), i = be.has(e) ? r : r / 100;
105
105
  try {
106
- return new Intl.NumberFormat(a, {
106
+ return new Intl.NumberFormat(s, {
107
107
  style: "currency",
108
108
  currency: e
109
109
  }).format(i);
@@ -119,8 +119,8 @@ function ve(r) {
119
119
  const t = r.trim();
120
120
  if (t === "" || typeof window > "u") return null;
121
121
  try {
122
- const a = new URL(t, window.location.href);
123
- return !(/* @__PURE__ */ new Set(["http:", "https:"])).has(a.protocol) || a.origin !== window.location.origin ? null : a.toString();
122
+ const s = new URL(t, window.location.href);
123
+ return !(/* @__PURE__ */ new Set(["http:", "https:"])).has(s.protocol) || s.origin !== window.location.origin ? null : s.toString();
124
124
  } catch {
125
125
  return null;
126
126
  }
@@ -156,76 +156,76 @@ function ge(r) {
156
156
  }
157
157
  const ye = I(
158
158
  [
159
- "payment-form-alfadocs flex flex-col",
160
- "gap-[var(--spacing-md)]",
161
- "bg-[var(--background)] text-[var(--foreground)]",
162
- "rounded-[var(--radius-md)] border border-[color:var(--border)]",
163
- "p-[var(--spacing-md)]",
164
- "aria-disabled:opacity-[var(--opacity-50)] aria-disabled:cursor-not-allowed"
159
+ "ds:payment-form-alfadocs ds:flex ds:flex-col",
160
+ "ds:gap-[var(--spacing-md)]",
161
+ "ds:bg-[var(--background)] ds:text-[var(--foreground)]",
162
+ "ds:rounded-[var(--radius-md)] ds:border ds:border-[color:var(--border)]",
163
+ "ds:p-[var(--spacing-md)]",
164
+ "ds:aria-disabled:opacity-[var(--opacity-50)] ds:aria-disabled:cursor-not-allowed"
165
165
  ].join(" ")
166
166
  ), U = I(
167
- ["flex flex-col gap-[var(--spacing-xs)]"].join(" ")
167
+ ["ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]"].join(" ")
168
168
  ), E = I(
169
169
  [
170
170
  "type-label",
171
- "text-[var(--foreground)]"
171
+ "ds:text-[var(--foreground)]"
172
172
  ].join(" ")
173
173
  ), Q = I(
174
174
  [
175
- "flex items-baseline justify-between",
176
- "gap-[var(--spacing-sm)]",
177
- "ps-[var(--spacing-sm)] pe-[var(--spacing-sm)]",
178
- "pt-[var(--spacing-xs)] pb-[var(--spacing-xs)]",
179
- "bg-[var(--muted)]",
180
- "rounded-[var(--radius-sm)]",
181
- "text-[var(--foreground)]"
175
+ "ds:flex ds:items-baseline ds:justify-between",
176
+ "ds:gap-[var(--spacing-sm)]",
177
+ "ds:ps-[var(--spacing-sm)] ds:pe-[var(--spacing-sm)]",
178
+ "ds:pt-[var(--spacing-xs)] ds:pb-[var(--spacing-xs)]",
179
+ "ds:bg-[var(--muted)]",
180
+ "ds:rounded-[var(--radius-sm)]",
181
+ "ds:text-[var(--foreground)]"
182
182
  ].join(" ")
183
183
  ), ee = I(
184
184
  [
185
- "inline-flex items-center justify-center gap-[var(--spacing-xs)]",
186
- "min-block-size-[var(--min-target-size)]",
187
- "min-inline-size-[var(--min-target-size)]",
188
- "ps-[var(--spacing-md)] pe-[var(--spacing-md)]",
189
- "rounded-[var(--radius-sm)]",
190
- "bg-[var(--primary)] text-[var(--primary-foreground)]",
191
- "text-[var(--font-size-base)] font-medium",
192
- "transition-colors duration-[var(--animation-duration)] motion-reduce:transition-none",
193
- "hover:bg-[var(--primary-hover)]",
194
- "focus-visible:outline-[length:var(--focus-ring-width)]",
195
- "focus-visible:outline-solid",
196
- "focus-visible:outline-[var(--ring)]",
197
- "focus-visible:outline-offset-[length:var(--focus-ring-offset)]",
198
- "forced-colors:focus-visible:outline-[CanvasText]",
199
- "aria-disabled:opacity-[var(--opacity-50)] aria-disabled:cursor-not-allowed",
200
- "aria-busy:cursor-wait"
185
+ "ds:inline-flex ds:items-center ds:justify-center ds:gap-[var(--spacing-xs)]",
186
+ "ds:min-block-size-[var(--min-target-size)]",
187
+ "ds:min-inline-size-[var(--min-target-size)]",
188
+ "ds:ps-[var(--spacing-md)] ds:pe-[var(--spacing-md)]",
189
+ "ds:rounded-[var(--radius-sm)]",
190
+ "ds:bg-[var(--primary)] ds:text-[var(--primary-foreground)]",
191
+ "ds:text-[var(--font-size-base)] ds:font-medium",
192
+ "ds:transition-colors ds:duration-[var(--animation-duration)] ds:motion-reduce:transition-none",
193
+ "ds:hover:bg-[var(--primary-hover)]",
194
+ "ds:focus-visible:outline-[length:var(--focus-ring-width)]",
195
+ "ds:focus-visible:outline-solid",
196
+ "ds:focus-visible:outline-[var(--ring)]",
197
+ "ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]",
198
+ "ds:forced-colors:focus-visible:outline-[CanvasText]",
199
+ "ds:aria-disabled:opacity-[var(--opacity-50)] ds:aria-disabled:cursor-not-allowed",
200
+ "ds:aria-busy:cursor-wait"
201
201
  ].join(" ")
202
202
  );
203
203
  function he(r) {
204
204
  const {
205
205
  amount: t,
206
- currency: a,
206
+ currency: s,
207
207
  locale: e,
208
208
  billingAddress: i,
209
- returnUrl: o,
209
+ returnUrl: a,
210
210
  onSuccess: m,
211
211
  onError: _
212
- } = r, { t: s } = $(), h = de(), p = ue(), F = se(), b = Z(
212
+ } = r, { t: o } = $(), h = le(), p = ue(), F = oe(), b = Z(
213
213
  () => `pay-${F.replace(/[^a-zA-Z0-9-_]/g, "")}`,
214
214
  [F]
215
- ), L = `${b}-payment`, g = `${b}-address`, k = `${b}-error`, [l, w] = N(!1), [P, C] = N(!1), [A, c] = N(null), [y, S] = N(""), M = V(m), d = V(_);
215
+ ), L = `${b}-payment`, g = `${b}-address`, k = `${b}-error`, [c, w] = N(!1), [P, C] = N(!1), [A, d] = N(null), [y, S] = N(""), M = V(m), l = V(_);
216
216
  T(() => {
217
- M.current = m, d.current = _;
217
+ M.current = m, l.current = _;
218
218
  }, [m, _]);
219
219
  const D = ie(
220
220
  async (f) => {
221
221
  var q, G, O, K;
222
- if (f && f.preventDefault(), !h || !p || l) return;
223
- w(!0), c(null), S("");
224
- const x = ve(o);
225
- if (o !== void 0 && x === null) {
226
- c("payment.error.invalidReturnUrl"), S(s("payment.error.invalidReturnUrl")), (q = d.current) == null || q.call(d, {
222
+ if (f && f.preventDefault(), !h || !p || c) return;
223
+ w(!0), d(null), S("");
224
+ const x = ve(a);
225
+ if (a !== void 0 && x === null) {
226
+ d("payment.error.invalidReturnUrl"), S(o("payment.error.invalidReturnUrl")), (q = l.current) == null || q.call(l, {
227
227
  code: "invalid_return_url",
228
- translatedMessage: s("payment.error.invalidReturnUrl")
228
+ translatedMessage: o("payment.error.invalidReturnUrl")
229
229
  }), w(!1);
230
230
  return;
231
231
  }
@@ -237,24 +237,24 @@ function he(r) {
237
237
  });
238
238
  if (v.error) {
239
239
  const R = v.error.code ?? "generic", z = ge(R), ne = X(v.error.message ?? "");
240
- c(z), S(s(z)), (G = d.current) == null || G.call(d, {
240
+ d(z), S(o(z)), (G = l.current) == null || G.call(l, {
241
241
  code: R,
242
- translatedMessage: ne || s(z)
242
+ translatedMessage: ne || o(z)
243
243
  });
244
244
  return;
245
245
  }
246
246
  v.paymentIntent && ((O = M.current) == null || O.call(M, v.paymentIntent.id));
247
247
  } catch (v) {
248
248
  const R = v instanceof Error ? v.message : "", z = X(R);
249
- c("payment.error.generic"), S(s("payment.error.generic")), (K = d.current) == null || K.call(d, {
249
+ d("payment.error.generic"), S(o("payment.error.generic")), (K = l.current) == null || K.call(l, {
250
250
  code: "unexpected",
251
- translatedMessage: z || s("payment.error.generic")
251
+ translatedMessage: z || o("payment.error.generic")
252
252
  });
253
253
  } finally {
254
254
  w(!1);
255
255
  }
256
256
  },
257
- [h, p, l, o, s]
257
+ [h, p, c, a, o]
258
258
  );
259
259
  T(() => {
260
260
  const f = document.getElementById(b);
@@ -264,24 +264,24 @@ function he(r) {
264
264
  };
265
265
  return f.addEventListener("payment-form:submit", x), () => f.removeEventListener("payment-form:submit", x);
266
266
  }, [b, D]);
267
- const re = !h || !p || !P || l;
267
+ const re = !h || !p || !P || c;
268
268
  return /* @__PURE__ */ n(
269
269
  "form",
270
270
  {
271
271
  id: b,
272
272
  onSubmit: D,
273
- "aria-label": s("payment.ariaLabel"),
274
- "aria-busy": l || void 0,
273
+ "aria-label": o("payment.ariaLabel"),
274
+ "aria-busy": c || void 0,
275
275
  noValidate: !0,
276
- children: /* @__PURE__ */ u("div", { className: "flex flex-col gap-[var(--spacing-md)]", children: [
276
+ children: /* @__PURE__ */ u("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
277
277
  /* @__PURE__ */ u("div", { className: Q(), children: [
278
- /* @__PURE__ */ n("span", { className: E(), children: s("payment.amountLabel") }),
278
+ /* @__PURE__ */ n("span", { className: E(), children: o("payment.amountLabel") }),
279
279
  /* @__PURE__ */ n(
280
280
  "span",
281
281
  {
282
282
  className: "type-title-card",
283
283
  "data-testid": "payment-amount",
284
- children: B(t, a, e)
284
+ children: B(t, s, e)
285
285
  }
286
286
  )
287
287
  ] }),
@@ -292,7 +292,7 @@ function he(r) {
292
292
  className: U(),
293
293
  "data-testid": "payment-field",
294
294
  children: [
295
- /* @__PURE__ */ n("span", { className: E(), children: s("payment.fields.card") }),
295
+ /* @__PURE__ */ n("span", { className: E(), children: o("payment.fields.card") }),
296
296
  /* @__PURE__ */ n(
297
297
  me,
298
298
  {
@@ -301,7 +301,7 @@ function he(r) {
301
301
  layout: { type: "accordion", defaultCollapsed: !1 }
302
302
  },
303
303
  onChange: (f) => {
304
- C(f.complete === !0), f.complete && (c(null), S(""));
304
+ C(f.complete === !0), f.complete && (d(null), S(""));
305
305
  }
306
306
  }
307
307
  )
@@ -315,7 +315,7 @@ function he(r) {
315
315
  className: U(),
316
316
  "data-testid": "payment-address",
317
317
  children: [
318
- /* @__PURE__ */ n("span", { className: E(), children: s("payment.billingAddress") }),
318
+ /* @__PURE__ */ n("span", { className: E(), children: o("payment.billingAddress") }),
319
319
  /* @__PURE__ */ n(
320
320
  pe,
321
321
  {
@@ -341,15 +341,15 @@ function he(r) {
341
341
  {
342
342
  type: "submit",
343
343
  "aria-disabled": re || void 0,
344
- "aria-busy": l || void 0,
344
+ "aria-busy": c || void 0,
345
345
  "aria-describedby": A ? k : void 0,
346
346
  className: ee(),
347
347
  "data-testid": "payment-submit",
348
- children: l ? /* @__PURE__ */ u(te, { children: [
349
- /* @__PURE__ */ n(J, { size: "sm", label: s("payment.processing") }),
350
- /* @__PURE__ */ n("span", { children: s("payment.processing") })
351
- ] }) : /* @__PURE__ */ n("span", { children: s("payment.submit", {
352
- amount: B(t, a, e)
348
+ children: c ? /* @__PURE__ */ u(te, { children: [
349
+ /* @__PURE__ */ n(J, { size: "sm", label: o("payment.processing") }),
350
+ /* @__PURE__ */ n("span", { children: o("payment.processing") })
351
+ ] }) : /* @__PURE__ */ n("span", { children: o("payment.submit", {
352
+ amount: B(t, s, e)
353
353
  }) })
354
354
  }
355
355
  )
@@ -414,57 +414,57 @@ function we(r) {
414
414
  const t = r === "cn" ? "zh" : r;
415
415
  if (H.has(t))
416
416
  return t;
417
- const a = t.split("-")[0];
418
- return H.has(a) ? a : "auto";
417
+ const s = t.split("-")[0];
418
+ return H.has(s) ? s : "auto";
419
419
  }
420
- const xe = ae(
420
+ const xe = se(
421
421
  ({
422
422
  clientSecret: r,
423
423
  publishableKey: t,
424
- currency: a,
424
+ currency: s,
425
425
  amount: e,
426
426
  onSuccess: i,
427
- onError: o,
427
+ onError: a,
428
428
  billingAddress: m = !1,
429
429
  locale: _,
430
- ariaLabel: s,
430
+ ariaLabel: o,
431
431
  returnUrl: h,
432
432
  stripePromise: p,
433
433
  className: F
434
434
  }, b) => {
435
- const { i18n: L } = $(), g = we(_ ?? L.language ?? "en"), [k, l] = N(
435
+ const { i18n: L } = $(), g = we(_ ?? L.language ?? "en"), [k, c] = N(
436
436
  p ?? null
437
437
  );
438
438
  T(() => {
439
439
  if (p !== void 0) {
440
- l(p);
440
+ c(p);
441
441
  return;
442
442
  }
443
443
  if (!t) {
444
- l(null);
444
+ c(null);
445
445
  return;
446
446
  }
447
- l(ce(t));
447
+ c(de(t));
448
448
  }, [p, t]);
449
449
  const [w, P] = N(
450
450
  () => j()
451
451
  );
452
452
  T(() => (P(j()), fe(P)), []);
453
453
  const C = V(null);
454
- oe(
454
+ ae(
455
455
  b,
456
456
  () => ({
457
457
  submit: async () => {
458
458
  var y;
459
- const c = (y = C.current) == null ? void 0 : y.querySelector("form");
460
- c && c.dispatchEvent(
459
+ const d = (y = C.current) == null ? void 0 : y.querySelector("form");
460
+ d && d.dispatchEvent(
461
461
  new CustomEvent("payment-form:submit", { bubbles: !0 })
462
462
  );
463
463
  },
464
464
  reset: () => {
465
465
  var y;
466
- const c = (y = C.current) == null ? void 0 : y.querySelector("form");
467
- c instanceof HTMLFormElement && c.reset();
466
+ const d = (y = C.current) == null ? void 0 : y.querySelector("form");
467
+ d instanceof HTMLFormElement && d.reset();
468
468
  }
469
469
  }),
470
470
  []
@@ -481,12 +481,12 @@ const xe = ae(
481
481
  "div",
482
482
  {
483
483
  ref: C,
484
- "aria-label": s,
484
+ "aria-label": o,
485
485
  className: [ye(), F].filter(Boolean).join(" "),
486
486
  "data-component": "payment-form",
487
487
  "data-testid": "payment-form-root",
488
488
  children: k && r ? /* @__PURE__ */ n(
489
- le,
489
+ ce,
490
490
  {
491
491
  stripe: k,
492
492
  options: A,
@@ -494,12 +494,12 @@ const xe = ae(
494
494
  he,
495
495
  {
496
496
  amount: e,
497
- currency: a,
497
+ currency: s,
498
498
  locale: g,
499
499
  billingAddress: m,
500
500
  returnUrl: h,
501
501
  onSuccess: i,
502
- onError: o
502
+ onError: a
503
503
  }
504
504
  )
505
505
  },
@@ -508,7 +508,7 @@ const xe = ae(
508
508
  Ne,
509
509
  {
510
510
  amount: e,
511
- currency: a,
511
+ currency: s,
512
512
  locale: g,
513
513
  billingAddress: m
514
514
  }
@@ -519,34 +519,34 @@ const xe = ae(
519
519
  );
520
520
  xe.displayName = "PaymentForm";
521
521
  function Ne(r) {
522
- const { amount: t, currency: a, locale: e, billingAddress: i } = r, { t: o } = $();
522
+ const { amount: t, currency: s, locale: e, billingAddress: i } = r, { t: a } = $();
523
523
  return /* @__PURE__ */ u(
524
524
  "div",
525
525
  {
526
- className: "flex flex-col gap-[var(--spacing-md)]",
526
+ className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]",
527
527
  "data-testid": "payment-skeleton",
528
528
  "aria-busy": "true",
529
529
  children: [
530
530
  /* @__PURE__ */ u("div", { className: Q(), children: [
531
- /* @__PURE__ */ n("span", { className: E(), children: o("payment.amountLabel") }),
532
- /* @__PURE__ */ n("span", { className: "type-title-card", children: B(t, a, e) })
531
+ /* @__PURE__ */ n("span", { className: E(), children: a("payment.amountLabel") }),
532
+ /* @__PURE__ */ n("span", { className: "type-title-card", children: B(t, s, e) })
533
533
  ] }),
534
534
  /* @__PURE__ */ u("div", { className: U(), children: [
535
- /* @__PURE__ */ n("span", { className: E(), children: o("payment.fields.card") }),
535
+ /* @__PURE__ */ n("span", { className: E(), children: a("payment.fields.card") }),
536
536
  /* @__PURE__ */ n(
537
537
  "div",
538
538
  {
539
- className: "min-block-size-[var(--min-target-size)] rounded-[var(--radius-sm)] border border-[color:var(--border)] bg-[var(--muted)]",
539
+ className: "ds:min-block-size-[var(--min-target-size)] ds:rounded-[var(--radius-sm)] ds:border ds:border-[color:var(--border)] ds:bg-[var(--muted)]",
540
540
  "aria-hidden": "true"
541
541
  }
542
542
  )
543
543
  ] }),
544
544
  i ? /* @__PURE__ */ u("div", { className: U(), children: [
545
- /* @__PURE__ */ n("span", { className: E(), children: o("payment.billingAddress") }),
545
+ /* @__PURE__ */ n("span", { className: E(), children: a("payment.billingAddress") }),
546
546
  /* @__PURE__ */ n(
547
547
  "div",
548
548
  {
549
- className: "min-block-size-[calc(var(--min-target-size)*2)] rounded-[var(--radius-sm)] border border-[color:var(--border)] bg-[var(--muted)]",
549
+ className: "ds:min-block-size-[calc(var(--min-target-size)*2)] ds:rounded-[var(--radius-sm)] ds:border ds:border-[color:var(--border)] ds:bg-[var(--muted)]",
550
550
  "aria-hidden": "true"
551
551
  }
552
552
  )
@@ -559,8 +559,8 @@ function Ne(r) {
559
559
  className: ee(),
560
560
  disabled: !0,
561
561
  children: [
562
- /* @__PURE__ */ n(J, { size: "sm", label: o("payment.processing") }),
563
- /* @__PURE__ */ n("span", { children: o("payment.processing") })
562
+ /* @__PURE__ */ n(J, { size: "sm", label: a("payment.processing") }),
563
+ /* @__PURE__ */ n("span", { children: a("payment.processing") })
564
564
  ]
565
565
  }
566
566
  )
@@ -576,4 +576,4 @@ export {
576
576
  B as f,
577
577
  ee as s
578
578
  };
579
- //# sourceMappingURL=payment-form-Cf7U6r5L.js.map
579
+ //# sourceMappingURL=payment-form-l3j-gA-t.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment-form-l3j-gA-t.js","sources":["../../src/tokens/themes/bridges/stripe-appearance.ts","../../src/components/payment-form/payment-form.tsx"],"sourcesContent":["import type { Appearance } from '@stripe/stripe-js';\n\n/**\n * Reads the current design-system tokens from a theme-root element and maps\n * them to Stripe Elements' Appearance API. `root` defaults to\n * `document.documentElement` but consumers can pass a scoped theme wrapper\n * (e.g. a modal with its own `.theme-accessible` override) so that Stripe\n * iframes pick up the right token set.\n *\n * Tokens referenced: --primary, --background, --foreground, --muted,\n * --muted-foreground, --border, --destructive, --radius-md, --font-sans,\n * --font-size-base, --spacing-sm, --animation-duration, --focus-ring-width,\n * --ring.\n *\n * No hex / rgb / hsl literals — every value flows from the token layer.\n */\n\nfunction isBrowser(): boolean {\n return typeof document !== 'undefined' && typeof window !== 'undefined';\n}\n\nexport function getStripeAppearance(root?: HTMLElement): Appearance {\n if (!isBrowser()) {\n return { theme: 'stripe' };\n }\n\n const target = root ?? document.documentElement;\n const styles = getComputedStyle(target);\n const read = (token: string) => styles.getPropertyValue(token).trim();\n const isDark = target.classList.contains('theme-dark');\n\n return {\n theme: isDark ? 'night' : 'stripe',\n variables: {\n colorPrimary: read('--primary'),\n colorBackground: read('--background'),\n colorText: read('--foreground'),\n colorDanger: read('--destructive'),\n colorTextSecondary: read('--muted-foreground'),\n colorTextPlaceholder: read('--muted-foreground'),\n borderRadius: read('--radius-md'),\n fontFamily: read('--font-sans'),\n fontSizeBase: read('--font-size-base'),\n // Stripe multiplies spacingUnit throughout every Element; --spacing-sm\n // gives readable density. Keep this in sync with the JSDoc above.\n spacingUnit: read('--spacing-sm'),\n },\n rules: {\n '.Input': {\n backgroundColor: read('--background'),\n border: `1px solid ${read('--border')}`,\n color: read('--foreground'),\n padding: read('--spacing-sm'),\n transition: `border-color ${read('--animation-duration')} ease-out`,\n },\n '.Input:focus': {\n borderColor: read('--primary'),\n boxShadow: `0 0 0 ${read('--focus-ring-width')} ${read('--ring')}`,\n outline: 'none',\n },\n '.Input--invalid': {\n borderColor: read('--destructive'),\n color: read('--foreground'),\n },\n '.Label': {\n color: read('--foreground'),\n fontWeight: read('--font-weight-medium'),\n fontSize: read('--font-size-sm'),\n },\n '.Error': {\n color: read('--destructive'),\n fontSize: read('--font-size-sm'),\n },\n '.Tab': {\n border: `1px solid ${read('--border')}`,\n backgroundColor: read('--background'),\n color: read('--foreground'),\n },\n '.Tab--selected': {\n borderColor: read('--primary'),\n backgroundColor: read('--background'),\n color: read('--primary'),\n },\n },\n };\n}\n\n/**\n * Calls `onChange(getStripeAppearance(root))` whenever the theme root's\n * class list mutates (theme switch) or the user toggles\n * `prefers-color-scheme` / `prefers-reduced-motion`. Returns an\n * unsubscribe function.\n */\nexport function subscribeStripeAppearance(\n onChange: (next: Appearance) => void,\n root?: HTMLElement,\n): () => void {\n if (!isBrowser()) return () => undefined;\n\n const target = root ?? document.documentElement;\n const emit = () => onChange(getStripeAppearance(root));\n\n const observer = new MutationObserver(emit);\n observer.observe(target, {\n attributes: true,\n attributeFilter: ['class', 'dir', 'lang'],\n });\n\n const schemeMql = window.matchMedia('(prefers-color-scheme: dark)');\n const motionMql = window.matchMedia('(prefers-reduced-motion: reduce)');\n schemeMql.addEventListener('change', emit);\n motionMql.addEventListener('change', emit);\n\n return () => {\n observer.disconnect();\n schemeMql.removeEventListener('change', emit);\n motionMql.removeEventListener('change', emit);\n };\n}\n","/* ------------------------------------------------------------------ */\n/* PaymentForm — Stripe Elements wrapper (PCI DSS SAQ-A). */\n/* */\n/* - Library: `@stripe/react-stripe-js` + `@stripe/stripe-js` (see */\n/* `src/docs/08-third-party.mdx §Payments`). Card number, expiry, */\n/* CVC, and postal code all live inside Stripe-hosted iframes on */\n/* `js.stripe.com` — raw PAN never touches our origin, keeping us */\n/* inside PCI DSS SAQ-A scope. */\n/* */\n/* - Theming: the `stripe-appearance` bridge snapshots our tokens into */\n/* Stripe's Appearance API (`variables`, `rules`). A */\n/* `MutationObserver` on `<html class>` re-runs the snapshot when */\n/* the user flips theme so the embedded iframes repaint. */\n/* */\n/* - Security invariants enforced in this file: */\n/* 1. No `<input type=\"tel\" name=\"card\">` anywhere. */\n/* 2. Error strings are sanitised via `stripCardLikeDigits` before */\n/* forwarding to `onError` (replaces any `\\b\\d{4,}\\b` with */\n/* `****`). */\n/* 3. Element change events are never logged; any dev-only logging */\n/* is gated behind `import.meta.env.DEV` — never runs in prod. */\n/* */\n/* TODO: */\n/* - Stripe's `direction: 'rtl'` is not part of the current */\n/* `Appearance` TypeScript type; we rely on CSS mirroring of our */\n/* chrome via logical properties and let Stripe lay out the iframe */\n/* ltr for now. Revisit when @stripe/stripe-js publishes the type. */\n/* - No `<CardNumberElement>` / split-fields story — `PaymentElement` */\n/* handles accordion + card-only modes via its own `layout` option.*/\n/* ------------------------------------------------------------------ */\n\nimport {\n forwardRef,\n useCallback,\n useEffect,\n useId,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n type FormEvent,\n} from 'react';\nimport { cva } from 'class-variance-authority';\nimport { useTranslation } from 'react-i18next';\nimport { Spinner } from '../spinner';\nimport { Alert } from '../alert';\nimport {\n loadStripe,\n type Stripe,\n type Appearance,\n type StripeElementLocale,\n} from '@stripe/stripe-js';\nimport {\n Elements,\n PaymentElement,\n AddressElement,\n useElements,\n useStripe,\n} from '@stripe/react-stripe-js';\n\nimport {\n getStripeAppearance,\n subscribeStripeAppearance,\n} from '../../tokens/themes/bridges/stripe-appearance';\n\n/* ------------------------------------------------------------------ */\n/* Public types */\n/* ------------------------------------------------------------------ */\n\nexport type PaymentCurrency = string; // ISO-4217\n\nexport interface PaymentFormProps {\n /** Required — from your server, created via the PaymentIntents API. */\n clientSecret: string;\n /** Stripe publishable key (`pk_test_…` / `pk_live_…`). */\n publishableKey: string;\n /** ISO-4217 currency code (e.g. 'EUR', 'USD', 'JPY'). */\n currency: PaymentCurrency;\n /** Amount in the currency's smallest unit (cents for EUR/USD, yen for JPY). */\n amount: number;\n /** Called with the PaymentIntent id on successful confirmation. */\n onSuccess?: (paymentIntentId: string) => void;\n /** Called with a sanitised error (no PAN digits, no Stripe English strings). */\n onError?: (error: { code: string; translatedMessage: string }) => void;\n /** Show the billing-address collector below the payment fields. */\n billingAddress?: boolean;\n /** Locale override — defaults to the active i18next locale. */\n locale?: string;\n /** Accessible label for the form. */\n ariaLabel?: string;\n /** URL Stripe redirects to when a payment method requires it. */\n returnUrl?: string;\n /** Pre-injected Stripe instance — used by tests + stories to bypass the network. */\n stripePromise?: Promise<Stripe | null> | null;\n className?: string;\n}\n\nexport interface PaymentFormHandle {\n /** Programmatically submit the form (same flow as the Pay button). */\n submit: () => Promise<void>;\n /** Reset the form to its initial state. */\n reset: () => void;\n}\n\n/* ------------------------------------------------------------------ */\n/* Currency helpers */\n/* ------------------------------------------------------------------ */\n\n/**\n * Currencies that Stripe bills in their base unit (no decimals). Source:\n * https://stripe.com/docs/currencies#zero-decimal — list pinned per\n * 08-third-party.mdx.\n */\nconst ZERO_DECIMAL_CURRENCIES = new Set<string>([\n 'BIF',\n 'CLP',\n 'DJF',\n 'GNF',\n 'IDR',\n 'JPY',\n 'KMF',\n 'KRW',\n 'MGA',\n 'PYG',\n 'RWF',\n 'UGX',\n 'VND',\n 'VUV',\n 'XAF',\n 'XOF',\n 'XPF',\n]);\n\nexport function formatPaymentAmount(\n amount: number,\n currency: string,\n locale: string,\n): string {\n const iso = currency.toUpperCase();\n const major = ZERO_DECIMAL_CURRENCIES.has(iso) ? amount : amount / 100;\n try {\n return new Intl.NumberFormat(locale, {\n style: 'currency',\n currency: iso,\n }).format(major);\n } catch {\n // Invalid locale/currency pair — fall back to a safe format so we\n // never leak raw amount integers into the UI.\n return new Intl.NumberFormat('en', {\n style: 'currency',\n currency: iso,\n }).format(major);\n }\n}\n\n/* ------------------------------------------------------------------ */\n/* Return URL validation */\n/* ------------------------------------------------------------------ */\n\n/**\n * Resolve `returnUrl` against the current origin. Accepts:\n * - absolute URLs on the same origin as `window.location`\n * - relative paths (resolved against the current origin)\n * Rejects (returns `null`):\n * - cross-origin URLs — would leak `payment_intent_client_secret`\n * - `javascript:` / `data:` / `file:` / `blob:` schemes\n * - SSR contexts (no `window`) — the submit path requires a browser\n * anyway, so rejecting here is the safer default.\n * See security-hardening.mdx.\n */\nexport function validateReturnUrl(\n returnUrl: string | undefined,\n): string | null {\n if (returnUrl === undefined) return null;\n const raw = returnUrl.trim();\n if (raw === '') return null;\n if (typeof window === 'undefined') return null;\n try {\n const resolved = new URL(raw, window.location.href);\n const allowedSchemes = new Set(['http:', 'https:']);\n if (!allowedSchemes.has(resolved.protocol)) return null;\n if (resolved.origin !== window.location.origin) return null;\n return resolved.toString();\n } catch {\n return null;\n }\n}\n\n/* ------------------------------------------------------------------ */\n/* Error sanitisation */\n/* ------------------------------------------------------------------ */\n\n/**\n * Replace any run of 4+ consecutive digits with `****`. Called before any\n * error text leaves the wrapper. Defensive: even though Stripe's error\n * strings don't normally contain PANs, a future SDK change could, and we\n * want a hard guarantee that `console` / analytics / Sentry breadcrumbs\n * stay clear of anything that looks like card data.\n */\nexport function stripCardLikeDigits(message: string): string {\n if (!message) return message;\n // Deliberately no word boundaries: a PAN run embedded between word\n // characters (e.g. \"CARD4242424242424242DECLINED\") must still be masked.\n return message.replace(/\\d{4,}/g, '****');\n}\n\n/**\n * Map a Stripe error code (e.g. `card_declined`, `incorrect_number`) to a\n * translation key under `payment.error.*`. Unknown codes fall through to\n * `payment.error.generic`.\n */\nexport function stripeErrorCodeToI18nKey(code: string | undefined): string {\n switch (code) {\n case 'incorrect_number':\n case 'invalid_number':\n return 'payment.error.cardNumber';\n case 'invalid_expiry_month':\n case 'invalid_expiry_year':\n case 'expired_card':\n return 'payment.error.expiry';\n case 'invalid_cvc':\n case 'incorrect_cvc':\n return 'payment.error.cvc';\n case 'incorrect_zip':\n case 'invalid_zip':\n return 'payment.error.postalCode';\n case 'card_declined':\n case 'do_not_honor':\n case 'generic_decline':\n return 'payment.error.declined';\n case 'network_error':\n case 'api_connection_error':\n return 'payment.error.network';\n default:\n return 'payment.error.generic';\n }\n}\n\n/* ------------------------------------------------------------------ */\n/* CVA */\n/* ------------------------------------------------------------------ */\n\nconst formVariants = cva(\n [\n 'ds:payment-form-alfadocs ds:flex ds:flex-col',\n 'ds:gap-[var(--spacing-md)]',\n 'ds:bg-[var(--background)] ds:text-[var(--foreground)]',\n 'ds:rounded-[var(--radius-md)] ds:border ds:border-[color:var(--border)]',\n 'ds:p-[var(--spacing-md)]',\n 'ds:aria-disabled:opacity-[var(--opacity-50)] ds:aria-disabled:cursor-not-allowed',\n ].join(' '),\n);\n\nconst fieldLabelVariants = cva(\n ['ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]'].join(' '),\n);\n\nconst labelTextVariants = cva(\n [\n 'type-label',\n 'ds:text-[var(--foreground)]',\n ].join(' '),\n);\n\nconst amountSummaryVariants = cva(\n [\n 'ds:flex ds:items-baseline ds:justify-between',\n 'ds:gap-[var(--spacing-sm)]',\n 'ds:ps-[var(--spacing-sm)] ds:pe-[var(--spacing-sm)]',\n 'ds:pt-[var(--spacing-xs)] ds:pb-[var(--spacing-xs)]',\n 'ds:bg-[var(--muted)]',\n 'ds:rounded-[var(--radius-sm)]',\n 'ds:text-[var(--foreground)]',\n ].join(' '),\n);\n\nconst submitButtonVariants = cva(\n [\n 'ds:inline-flex ds:items-center ds:justify-center ds:gap-[var(--spacing-xs)]',\n 'ds:min-block-size-[var(--min-target-size)]',\n 'ds:min-inline-size-[var(--min-target-size)]',\n 'ds:ps-[var(--spacing-md)] ds:pe-[var(--spacing-md)]',\n 'ds:rounded-[var(--radius-sm)]',\n 'ds:bg-[var(--primary)] ds:text-[var(--primary-foreground)]',\n 'ds:text-[var(--font-size-base)] ds:font-medium',\n 'ds:transition-colors ds:duration-[var(--animation-duration)] ds:motion-reduce:transition-none',\n 'ds:hover:bg-[var(--primary-hover)]',\n 'ds:focus-visible:outline-[length:var(--focus-ring-width)]',\n 'ds:focus-visible:outline-solid',\n 'ds:focus-visible:outline-[var(--ring)]',\n 'ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]',\n 'ds:forced-colors:focus-visible:outline-[CanvasText]',\n 'ds:aria-disabled:opacity-[var(--opacity-50)] ds:aria-disabled:cursor-not-allowed',\n 'ds:aria-busy:cursor-wait',\n ].join(' '),\n);\n\n/* ------------------------------------------------------------------ */\n/* Inner form — lives inside the <Elements> provider */\n/* ------------------------------------------------------------------ */\n\ninterface InnerPaymentFormProps {\n amount: number;\n currency: string;\n locale: string;\n billingAddress: boolean;\n returnUrl: string | undefined;\n onSuccess: PaymentFormProps['onSuccess'];\n onError: PaymentFormProps['onError'];\n}\n\nfunction InnerPaymentForm(props: InnerPaymentFormProps): JSX.Element {\n const {\n amount,\n currency,\n locale,\n billingAddress,\n returnUrl,\n onSuccess,\n onError,\n } = props;\n\n const { t } = useTranslation();\n const stripe = useStripe();\n const elements = useElements();\n\n const rawId = useId();\n const idSafe = useMemo(\n () => `pay-${rawId.replace(/[^a-zA-Z0-9-_]/g, '')}`,\n [rawId],\n );\n const paymentFieldId = `${idSafe}-payment`;\n const addressFieldId = `${idSafe}-address`;\n const errorId = `${idSafe}-error`;\n\n const [processing, setProcessing] = useState(false);\n const [elementComplete, setElementComplete] = useState(false);\n const [errorKey, setErrorKey] = useState<string | null>(null);\n const [errorMessage, setErrorMessage] = useState<string>('');\n\n const onSuccessRef = useRef(onSuccess);\n const onErrorRef = useRef(onError);\n useEffect(() => {\n onSuccessRef.current = onSuccess;\n onErrorRef.current = onError;\n }, [onSuccess, onError]);\n\n const handleSubmit = useCallback(\n async (event?: FormEvent<HTMLFormElement>): Promise<void> => {\n if (event) event.preventDefault();\n if (!stripe || !elements) return;\n if (processing) return;\n\n setProcessing(true);\n setErrorKey(null);\n setErrorMessage('');\n\n // Validate returnUrl at the boundary so even a careless consumer\n // cannot leak payment_intent_client_secret to a third-party origin.\n const safeReturnUrl = validateReturnUrl(returnUrl);\n if (returnUrl !== undefined && safeReturnUrl === null) {\n setErrorKey('payment.error.invalidReturnUrl');\n setErrorMessage(t('payment.error.invalidReturnUrl'));\n onErrorRef.current?.({\n code: 'invalid_return_url',\n translatedMessage: t('payment.error.invalidReturnUrl'),\n });\n setProcessing(false);\n return;\n }\n try {\n const result = await stripe.confirmPayment({\n elements,\n confirmParams: safeReturnUrl ? { return_url: safeReturnUrl } : {},\n redirect: 'if_required',\n });\n\n if (result.error) {\n const code = result.error.code ?? 'generic';\n const key = stripeErrorCodeToI18nKey(code);\n // CRITICAL: sanitise before storing OR forwarding.\n const safe = stripCardLikeDigits(result.error.message ?? '');\n setErrorKey(key);\n setErrorMessage(t(key));\n onErrorRef.current?.({\n code,\n translatedMessage: safe || t(key),\n });\n return;\n }\n\n // Success path — only the PaymentIntent id leaves the wrapper.\n if (result.paymentIntent) {\n onSuccessRef.current?.(result.paymentIntent.id);\n }\n } catch (err: unknown) {\n const raw = err instanceof Error ? err.message : '';\n const safe = stripCardLikeDigits(raw);\n setErrorKey('payment.error.generic');\n setErrorMessage(t('payment.error.generic'));\n onErrorRef.current?.({\n code: 'unexpected',\n translatedMessage: safe || t('payment.error.generic'),\n });\n } finally {\n setProcessing(false);\n }\n },\n [stripe, elements, processing, returnUrl, t],\n );\n\n // Imperative submit hook used by the outer component's ref handle.\n useEffect(() => {\n const host = document.getElementById(idSafe);\n if (!host) return;\n const submitter = () => {\n void handleSubmit();\n };\n host.addEventListener('payment-form:submit', submitter);\n return () => host.removeEventListener('payment-form:submit', submitter);\n }, [idSafe, handleSubmit]);\n\n const submitDisabled = !stripe || !elements || !elementComplete || processing;\n\n return (\n <form\n id={idSafe}\n onSubmit={handleSubmit}\n aria-label={t('payment.ariaLabel')}\n aria-busy={processing || undefined}\n noValidate\n >\n <div className=\"ds:flex ds:flex-col ds:gap-[var(--spacing-md)]\">\n <div className={amountSummaryVariants()}>\n <span className={labelTextVariants()}>{t('payment.amountLabel')}</span>\n <span\n className=\"type-title-card\"\n data-testid=\"payment-amount\"\n >\n {formatPaymentAmount(amount, currency, locale)}\n </span>\n </div>\n\n <label\n htmlFor={paymentFieldId}\n className={fieldLabelVariants()}\n data-testid=\"payment-field\"\n >\n <span className={labelTextVariants()}>{t('payment.fields.card')}</span>\n <PaymentElement\n id={paymentFieldId}\n options={{\n layout: { type: 'accordion', defaultCollapsed: false },\n }}\n onChange={(ev) => {\n // NOTE: never log `ev` — change events may include hints\n // about field contents. Keep only the boolean completeness.\n setElementComplete(ev.complete === true);\n if (ev.complete) {\n setErrorKey(null);\n setErrorMessage('');\n }\n }}\n />\n </label>\n\n {billingAddress ? (\n <label\n htmlFor={addressFieldId}\n className={fieldLabelVariants()}\n data-testid=\"payment-address\"\n >\n <span className={labelTextVariants()}>\n {t('payment.billingAddress')}\n </span>\n <AddressElement\n id={addressFieldId}\n options={{ mode: 'billing' }}\n />\n </label>\n ) : null}\n\n {errorKey ? (\n <Alert\n id={errorId}\n variant=\"error\"\n live=\"polite\"\n data-testid=\"payment-error\"\n >\n <Alert.Description>{errorMessage}</Alert.Description>\n </Alert>\n ) : null}\n\n <button\n type=\"submit\"\n aria-disabled={submitDisabled || undefined}\n aria-busy={processing || undefined}\n aria-describedby={errorKey ? errorId : undefined}\n className={submitButtonVariants()}\n data-testid=\"payment-submit\"\n >\n {processing ? (\n <>\n <Spinner size=\"sm\" label={t('payment.processing')} />\n <span>{t('payment.processing')}</span>\n </>\n ) : (\n <span>\n {t('payment.submit', {\n amount: formatPaymentAmount(amount, currency, locale),\n })}\n </span>\n )}\n </button>\n </div>\n </form>\n );\n}\n\n/* ------------------------------------------------------------------ */\n/* PaymentForm — outer wrapper */\n/* ------------------------------------------------------------------ */\n\n/**\n * Stripe ships a closed union of supported locales; anything outside it\n * must fall through to `'auto'` (Stripe picks the best match from the\n * browser). We also normalise the legacy `cn` code to `zh` per\n * `src/docs/06-i18n.mdx`.\n */\nconst STRIPE_LOCALES = new Set<StripeElementLocale>([\n 'auto', 'ar', 'bg', 'cs', 'da', 'de', 'el', 'en', 'en-AU', 'en-CA',\n 'en-NZ', 'en-GB', 'es', 'es-ES', 'es-419', 'et', 'fi', 'fil', 'fr',\n 'fr-CA', 'fr-FR', 'he', 'hu', 'hr', 'id', 'it', 'it-IT', 'ja', 'ko',\n 'lt', 'lv', 'ms', 'mt', 'nb', 'nl', 'no', 'pl', 'pt', 'pt-BR', 'ro',\n 'ru', 'sk', 'sl', 'sv', 'th', 'tr', 'vi', 'zh', 'zh-HK', 'zh-TW',\n]);\n\nfunction normaliseLocale(input: string): StripeElementLocale {\n if (!input) return 'auto';\n const candidate = input === 'cn' ? 'zh' : input;\n if ((STRIPE_LOCALES as Set<string>).has(candidate)) {\n return candidate as StripeElementLocale;\n }\n // Try stripping region (\"en-US\" → \"en\") before giving up.\n const base = candidate.split('-')[0];\n if ((STRIPE_LOCALES as Set<string>).has(base)) {\n return base as StripeElementLocale;\n }\n return 'auto';\n}\n\nexport const PaymentForm = forwardRef<PaymentFormHandle, PaymentFormProps>(\n (\n {\n clientSecret,\n publishableKey,\n currency,\n amount,\n onSuccess,\n onError,\n billingAddress = false,\n locale,\n ariaLabel,\n returnUrl,\n stripePromise: injectedStripe,\n className,\n },\n ref,\n ) => {\n const { i18n } = useTranslation();\n const activeLocale = normaliseLocale(locale ?? i18n.language ?? 'en');\n\n // Stripe instance — pre-injected (tests/stories) or lazily loaded.\n const [stripeInstance, setStripeInstance] = useState<Promise<Stripe | null> | null>(\n injectedStripe ?? null,\n );\n\n useEffect(() => {\n if (injectedStripe !== undefined) {\n setStripeInstance(injectedStripe);\n return;\n }\n if (!publishableKey) {\n setStripeInstance(null);\n return;\n }\n // `loadStripe` is cached by the SDK — safe to call per mount.\n setStripeInstance(loadStripe(publishableKey));\n }, [injectedStripe, publishableKey]);\n\n // Appearance bridge — snapshot + subscribe.\n const [appearance, setAppearance] = useState<Appearance>(() =>\n getStripeAppearance(),\n );\n useEffect(() => {\n setAppearance(getStripeAppearance());\n const unsubscribe = subscribeStripeAppearance(setAppearance);\n return unsubscribe;\n }, []);\n\n // Imperative handle — dispatch a custom event at the inner form so we\n // can trigger the same submit path as the button without leaking refs\n // through the Stripe `<Elements>` provider (which owns its own tree).\n const hostRef = useRef<HTMLDivElement>(null);\n useImperativeHandle(\n ref,\n (): PaymentFormHandle => ({\n submit: async () => {\n const form = hostRef.current?.querySelector('form');\n if (form) {\n form.dispatchEvent(\n new CustomEvent('payment-form:submit', { bubbles: true }),\n );\n }\n },\n reset: () => {\n const form = hostRef.current?.querySelector('form');\n if (form instanceof HTMLFormElement) {\n form.reset();\n }\n },\n }),\n [],\n );\n\n const elementsOptions = useMemo(\n () => ({\n clientSecret,\n appearance,\n locale: activeLocale,\n }),\n [clientSecret, appearance, activeLocale],\n );\n\n return (\n <div\n ref={hostRef}\n aria-label={ariaLabel}\n className={[formVariants(), className].filter(Boolean).join(' ')}\n data-component=\"payment-form\"\n data-testid=\"payment-form-root\"\n >\n {stripeInstance && clientSecret ? (\n <Elements\n stripe={stripeInstance}\n options={elementsOptions}\n key={clientSecret}\n >\n <InnerPaymentForm\n amount={amount}\n currency={currency}\n locale={activeLocale}\n billingAddress={billingAddress}\n returnUrl={returnUrl}\n onSuccess={onSuccess}\n onError={onError}\n />\n </Elements>\n ) : (\n <PaymentFormSkeleton\n amount={amount}\n currency={currency}\n locale={activeLocale}\n billingAddress={billingAddress}\n />\n )}\n </div>\n );\n },\n);\n\nPaymentForm.displayName = 'PaymentForm';\n\n/* ------------------------------------------------------------------ */\n/* Skeleton — visual chrome when Stripe hasn't loaded yet */\n/* ------------------------------------------------------------------ */\n\ninterface PaymentFormSkeletonProps {\n amount: number;\n currency: string;\n locale: string;\n billingAddress: boolean;\n}\n\nfunction PaymentFormSkeleton(props: PaymentFormSkeletonProps): JSX.Element {\n const { amount, currency, locale, billingAddress } = props;\n const { t } = useTranslation();\n\n return (\n <div\n className=\"ds:flex ds:flex-col ds:gap-[var(--spacing-md)]\"\n data-testid=\"payment-skeleton\"\n aria-busy=\"true\"\n >\n <div className={amountSummaryVariants()}>\n <span className={labelTextVariants()}>{t('payment.amountLabel')}</span>\n <span className=\"type-title-card\">\n {formatPaymentAmount(amount, currency, locale)}\n </span>\n </div>\n <div className={fieldLabelVariants()}>\n <span className={labelTextVariants()}>{t('payment.fields.card')}</span>\n <div\n className=\"ds:min-block-size-[var(--min-target-size)] ds:rounded-[var(--radius-sm)] ds:border ds:border-[color:var(--border)] ds:bg-[var(--muted)]\"\n aria-hidden=\"true\"\n />\n </div>\n {billingAddress ? (\n <div className={fieldLabelVariants()}>\n <span className={labelTextVariants()}>\n {t('payment.billingAddress')}\n </span>\n <div\n className=\"ds:min-block-size-[calc(var(--min-target-size)*2)] ds:rounded-[var(--radius-sm)] ds:border ds:border-[color:var(--border)] ds:bg-[var(--muted)]\"\n aria-hidden=\"true\"\n />\n </div>\n ) : null}\n <button\n type=\"button\"\n aria-disabled=\"true\"\n className={submitButtonVariants()}\n disabled\n >\n <Spinner size=\"sm\" label={t('payment.processing')} />\n <span>{t('payment.processing')}</span>\n </button>\n </div>\n );\n}\n\nexport {\n formVariants as paymentFormVariants,\n submitButtonVariants as paymentSubmitButtonVariants,\n};\n"],"names":["isBrowser","getStripeAppearance","root","target","styles","read","token","subscribeStripeAppearance","onChange","emit","observer","schemeMql","motionMql","ZERO_DECIMAL_CURRENCIES","formatPaymentAmount","amount","currency","locale","iso","major","validateReturnUrl","returnUrl","raw","resolved","stripCardLikeDigits","message","stripeErrorCodeToI18nKey","code","formVariants","cva","fieldLabelVariants","labelTextVariants","amountSummaryVariants","submitButtonVariants","InnerPaymentForm","props","billingAddress","onSuccess","onError","t","useTranslation","stripe","useStripe","elements","useElements","rawId","useId","idSafe","useMemo","paymentFieldId","addressFieldId","errorId","processing","setProcessing","useState","elementComplete","setElementComplete","errorKey","setErrorKey","errorMessage","setErrorMessage","onSuccessRef","useRef","onErrorRef","useEffect","handleSubmit","useCallback","event","safeReturnUrl","_a","result","key","safe","_b","_c","err","_d","host","submitter","submitDisabled","jsx","jsxs","PaymentElement","ev","AddressElement","Alert","Fragment","Spinner","STRIPE_LOCALES","normaliseLocale","input","candidate","base","PaymentForm","forwardRef","clientSecret","publishableKey","ariaLabel","injectedStripe","className","ref","i18n","activeLocale","stripeInstance","setStripeInstance","loadStripe","appearance","setAppearance","hostRef","useImperativeHandle","form","elementsOptions","Elements","PaymentFormSkeleton"],"mappings":"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"}