@intlayer/design-system 3.5.3 → 3.5.5

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 (492) hide show
  1. package/README.md +1 -1
  2. package/dist/.vite/manifest.json +274 -125
  3. package/dist/CopyButton-Cxu3goRg.cjs +59 -0
  4. package/dist/CopyButton-Cxu3goRg.cjs.map +1 -0
  5. package/dist/CopyButton-DlcDlf6U.js +60 -0
  6. package/dist/CopyButton-DlcDlf6U.js.map +1 -0
  7. package/dist/components/Auth/AuthModal/index.cjs +4 -0
  8. package/dist/components/Auth/AuthModal/index.cjs.map +1 -1
  9. package/dist/components/Auth/AuthModal/index.mjs +4 -0
  10. package/dist/components/Auth/AuthModal/index.mjs.map +1 -1
  11. package/dist/components/Auth/ChangePasswordForm/ChangePasswordForm.cjs +5 -4
  12. package/dist/components/Auth/ChangePasswordForm/ChangePasswordForm.cjs.map +1 -1
  13. package/dist/components/Auth/ChangePasswordForm/ChangePasswordForm.d.ts +1 -1
  14. package/dist/components/Auth/ChangePasswordForm/ChangePasswordForm.d.ts.map +1 -1
  15. package/dist/components/Auth/ChangePasswordForm/ChangePasswordForm.mjs +5 -4
  16. package/dist/components/Auth/ChangePasswordForm/ChangePasswordForm.mjs.map +1 -1
  17. package/dist/components/Auth/ChangePasswordForm/changePasswordForm.content.cjs +170 -0
  18. package/dist/components/Auth/ChangePasswordForm/changePasswordForm.content.cjs.map +1 -0
  19. package/dist/components/Auth/ChangePasswordForm/changePasswordForm.content.d.ts +26 -0
  20. package/dist/components/Auth/ChangePasswordForm/changePasswordForm.content.d.ts.map +1 -0
  21. package/dist/components/Auth/ChangePasswordForm/changePasswordForm.content.mjs +170 -0
  22. package/dist/components/Auth/ChangePasswordForm/changePasswordForm.content.mjs.map +1 -0
  23. package/dist/components/Auth/ChangePasswordForm/index.cjs +2 -2
  24. package/dist/components/Auth/ChangePasswordForm/index.d.ts +1 -1
  25. package/dist/components/Auth/ChangePasswordForm/index.d.ts.map +1 -1
  26. package/dist/components/Auth/ChangePasswordForm/index.mjs +2 -2
  27. package/dist/components/Auth/ChangePasswordForm/useChangePasswordSchema.cjs +37 -0
  28. package/dist/components/Auth/ChangePasswordForm/useChangePasswordSchema.cjs.map +1 -0
  29. package/dist/components/Auth/ChangePasswordForm/useChangePasswordSchema.content.cjs +131 -0
  30. package/dist/components/Auth/ChangePasswordForm/useChangePasswordSchema.content.cjs.map +1 -0
  31. package/dist/components/Auth/ChangePasswordForm/useChangePasswordSchema.content.d.ts +15 -0
  32. package/dist/components/Auth/ChangePasswordForm/useChangePasswordSchema.content.d.ts.map +1 -0
  33. package/dist/components/Auth/ChangePasswordForm/useChangePasswordSchema.content.mjs +131 -0
  34. package/dist/components/Auth/ChangePasswordForm/useChangePasswordSchema.content.mjs.map +1 -0
  35. package/dist/components/Auth/ChangePasswordForm/{ChangePasswordSchema.d.ts → useChangePasswordSchema.d.ts} +3 -3
  36. package/dist/components/Auth/ChangePasswordForm/useChangePasswordSchema.d.ts.map +1 -0
  37. package/dist/components/Auth/ChangePasswordForm/useChangePasswordSchema.mjs +37 -0
  38. package/dist/components/Auth/ChangePasswordForm/useChangePasswordSchema.mjs.map +1 -0
  39. package/dist/components/Auth/ExternalsLoginButtons/ExternalsLoginButtons.cjs +11 -10
  40. package/dist/components/Auth/ExternalsLoginButtons/ExternalsLoginButtons.cjs.map +1 -1
  41. package/dist/components/Auth/ExternalsLoginButtons/ExternalsLoginButtons.d.ts.map +1 -1
  42. package/dist/components/Auth/ExternalsLoginButtons/ExternalsLoginButtons.mjs +12 -11
  43. package/dist/components/Auth/ExternalsLoginButtons/ExternalsLoginButtons.mjs.map +1 -1
  44. package/dist/components/Auth/ExternalsLoginButtons/externalsLoginButtons.content.cjs +86 -32
  45. package/dist/components/Auth/ExternalsLoginButtons/externalsLoginButtons.content.cjs.map +1 -1
  46. package/dist/components/Auth/ExternalsLoginButtons/externalsLoginButtons.content.d.ts +13 -9
  47. package/dist/components/Auth/ExternalsLoginButtons/externalsLoginButtons.content.d.ts.map +1 -1
  48. package/dist/components/Auth/ExternalsLoginButtons/externalsLoginButtons.content.mjs +85 -31
  49. package/dist/components/Auth/ExternalsLoginButtons/externalsLoginButtons.content.mjs.map +1 -1
  50. package/dist/components/Auth/ResetPasswordForm/ResetPasswordForm.cjs +5 -4
  51. package/dist/components/Auth/ResetPasswordForm/ResetPasswordForm.cjs.map +1 -1
  52. package/dist/components/Auth/ResetPasswordForm/ResetPasswordForm.d.ts +1 -1
  53. package/dist/components/Auth/ResetPasswordForm/ResetPasswordForm.d.ts.map +1 -1
  54. package/dist/components/Auth/ResetPasswordForm/ResetPasswordForm.mjs +5 -4
  55. package/dist/components/Auth/ResetPasswordForm/ResetPasswordForm.mjs.map +1 -1
  56. package/dist/components/Auth/ResetPasswordForm/index.cjs +2 -2
  57. package/dist/components/Auth/ResetPasswordForm/index.d.ts +1 -1
  58. package/dist/components/Auth/ResetPasswordForm/index.d.ts.map +1 -1
  59. package/dist/components/Auth/ResetPasswordForm/index.mjs +2 -2
  60. package/dist/components/Auth/ResetPasswordForm/resetPasswordContent.content.cjs +123 -0
  61. package/dist/components/Auth/ResetPasswordForm/resetPasswordContent.content.cjs.map +1 -0
  62. package/dist/components/Auth/ResetPasswordForm/resetPasswordContent.content.d.ts +21 -0
  63. package/dist/components/Auth/ResetPasswordForm/resetPasswordContent.content.d.ts.map +1 -0
  64. package/dist/components/Auth/ResetPasswordForm/resetPasswordContent.content.mjs +123 -0
  65. package/dist/components/Auth/ResetPasswordForm/resetPasswordContent.content.mjs.map +1 -0
  66. package/dist/components/Auth/ResetPasswordForm/useResetPasswordSchema.cjs +16 -0
  67. package/dist/components/Auth/ResetPasswordForm/useResetPasswordSchema.cjs.map +1 -0
  68. package/dist/components/Auth/ResetPasswordForm/useResetPasswordSchema.content.cjs +56 -0
  69. package/dist/components/Auth/ResetPasswordForm/useResetPasswordSchema.content.cjs.map +1 -0
  70. package/dist/components/Auth/ResetPasswordForm/useResetPasswordSchema.content.d.ts +10 -0
  71. package/dist/components/Auth/ResetPasswordForm/useResetPasswordSchema.content.d.ts.map +1 -0
  72. package/dist/components/Auth/ResetPasswordForm/useResetPasswordSchema.content.mjs +56 -0
  73. package/dist/components/Auth/ResetPasswordForm/useResetPasswordSchema.content.mjs.map +1 -0
  74. package/dist/components/Auth/ResetPasswordForm/useResetPasswordSchema.d.ts +10 -0
  75. package/dist/components/Auth/ResetPasswordForm/useResetPasswordSchema.d.ts.map +1 -0
  76. package/dist/components/Auth/ResetPasswordForm/useResetPasswordSchema.mjs +16 -0
  77. package/dist/components/Auth/ResetPasswordForm/useResetPasswordSchema.mjs.map +1 -0
  78. package/dist/components/Auth/SignInForm/SignInForm.cjs +22 -15
  79. package/dist/components/Auth/SignInForm/SignInForm.cjs.map +1 -1
  80. package/dist/components/Auth/SignInForm/SignInForm.d.ts +1 -1
  81. package/dist/components/Auth/SignInForm/SignInForm.d.ts.map +1 -1
  82. package/dist/components/Auth/SignInForm/SignInForm.mjs +22 -15
  83. package/dist/components/Auth/SignInForm/SignInForm.mjs.map +1 -1
  84. package/dist/components/Auth/SignInForm/index.cjs +2 -2
  85. package/dist/components/Auth/SignInForm/index.d.ts +1 -1
  86. package/dist/components/Auth/SignInForm/index.d.ts.map +1 -1
  87. package/dist/components/Auth/SignInForm/index.mjs +2 -2
  88. package/dist/components/Auth/SignInForm/signIn.content.cjs +217 -0
  89. package/dist/components/Auth/SignInForm/signIn.content.cjs.map +1 -0
  90. package/dist/components/Auth/SignInForm/signIn.content.d.ts +31 -0
  91. package/dist/components/Auth/SignInForm/signIn.content.d.ts.map +1 -0
  92. package/dist/components/Auth/SignInForm/signIn.content.mjs +217 -0
  93. package/dist/components/Auth/SignInForm/signIn.content.mjs.map +1 -0
  94. package/dist/components/Auth/SignInForm/useSignInSchema.cjs +25 -0
  95. package/dist/components/Auth/SignInForm/useSignInSchema.cjs.map +1 -0
  96. package/dist/components/Auth/SignInForm/useSignInSchema.content.cjs +71 -0
  97. package/dist/components/Auth/SignInForm/useSignInSchema.content.cjs.map +1 -0
  98. package/dist/components/Auth/SignInForm/useSignInSchema.content.d.ts +11 -0
  99. package/dist/components/Auth/SignInForm/useSignInSchema.content.d.ts.map +1 -0
  100. package/dist/components/Auth/SignInForm/useSignInSchema.content.mjs +71 -0
  101. package/dist/components/Auth/SignInForm/useSignInSchema.content.mjs.map +1 -0
  102. package/dist/components/Auth/SignInForm/{SignInSchema.d.ts → useSignInSchema.d.ts} +3 -3
  103. package/dist/components/Auth/SignInForm/useSignInSchema.d.ts.map +1 -0
  104. package/dist/components/Auth/SignInForm/useSignInSchema.mjs +25 -0
  105. package/dist/components/Auth/SignInForm/useSignInSchema.mjs.map +1 -0
  106. package/dist/components/Auth/SignUpForm/SignUpForm.cjs +4 -4
  107. package/dist/components/Auth/SignUpForm/SignUpForm.cjs.map +1 -1
  108. package/dist/components/Auth/SignUpForm/SignUpForm.d.ts +1 -1
  109. package/dist/components/Auth/SignUpForm/SignUpForm.d.ts.map +1 -1
  110. package/dist/components/Auth/SignUpForm/SignUpForm.mjs +3 -3
  111. package/dist/components/Auth/SignUpForm/SignUpForm.mjs.map +1 -1
  112. package/dist/components/Auth/SignUpForm/index.cjs +2 -2
  113. package/dist/components/Auth/SignUpForm/index.d.ts +1 -1
  114. package/dist/components/Auth/SignUpForm/index.d.ts.map +1 -1
  115. package/dist/components/Auth/SignUpForm/index.mjs +2 -2
  116. package/dist/components/Auth/SignUpForm/signUpForm.content.cjs +182 -0
  117. package/dist/components/Auth/SignUpForm/signUpForm.content.cjs.map +1 -0
  118. package/dist/components/Auth/SignUpForm/signUpForm.content.d.ts +24 -0
  119. package/dist/components/Auth/SignUpForm/signUpForm.content.d.ts.map +1 -0
  120. package/dist/components/Auth/SignUpForm/signUpForm.content.mjs +182 -0
  121. package/dist/components/Auth/SignUpForm/signUpForm.content.mjs.map +1 -0
  122. package/dist/components/Auth/SignUpForm/useSignUpSchema.cjs +36 -0
  123. package/dist/components/Auth/SignUpForm/useSignUpSchema.cjs.map +1 -0
  124. package/dist/components/Auth/SignUpForm/useSignUpSchema.content.cjs +116 -0
  125. package/dist/components/Auth/SignUpForm/useSignUpSchema.content.cjs.map +1 -0
  126. package/dist/components/Auth/SignUpForm/useSignUpSchema.content.d.ts +14 -0
  127. package/dist/components/Auth/SignUpForm/useSignUpSchema.content.d.ts.map +1 -0
  128. package/dist/components/Auth/SignUpForm/useSignUpSchema.content.mjs +116 -0
  129. package/dist/components/Auth/SignUpForm/useSignUpSchema.content.mjs.map +1 -0
  130. package/dist/components/Auth/SignUpForm/{SignUpSchema.d.ts → useSignUpSchema.d.ts} +3 -3
  131. package/dist/components/Auth/SignUpForm/useSignUpSchema.d.ts.map +1 -0
  132. package/dist/components/Auth/SignUpForm/useSignUpSchema.mjs +36 -0
  133. package/dist/components/Auth/SignUpForm/useSignUpSchema.mjs.map +1 -0
  134. package/dist/components/Auth/index.cjs +8 -8
  135. package/dist/components/Auth/index.mjs +8 -8
  136. package/dist/components/Auth/useAuth/useSession.cjs +1 -0
  137. package/dist/components/Auth/useAuth/useSession.cjs.map +1 -1
  138. package/dist/components/Auth/useAuth/useSession.mjs +1 -0
  139. package/dist/components/Auth/useAuth/useSession.mjs.map +1 -1
  140. package/dist/components/Breadcrumb/breadcrumb.content.cjs +26 -0
  141. package/dist/components/Breadcrumb/breadcrumb.content.cjs.map +1 -0
  142. package/dist/components/Breadcrumb/breadcrumb.content.d.ts +8 -0
  143. package/dist/components/Breadcrumb/breadcrumb.content.d.ts.map +1 -0
  144. package/dist/components/Breadcrumb/breadcrumb.content.mjs +26 -0
  145. package/dist/components/Breadcrumb/breadcrumb.content.mjs.map +1 -0
  146. package/dist/components/Breadcrumb/index.cjs +103 -34
  147. package/dist/components/Breadcrumb/index.cjs.map +1 -1
  148. package/dist/components/Breadcrumb/index.d.ts +6 -2
  149. package/dist/components/Breadcrumb/index.d.ts.map +1 -1
  150. package/dist/components/Breadcrumb/index.mjs +103 -34
  151. package/dist/components/Breadcrumb/index.mjs.map +1 -1
  152. package/dist/components/Button/Button.cjs +7 -8
  153. package/dist/components/Button/Button.cjs.map +1 -1
  154. package/dist/components/Button/Button.d.ts.map +1 -1
  155. package/dist/components/Button/Button.mjs +7 -8
  156. package/dist/components/Button/Button.mjs.map +1 -1
  157. package/dist/components/Container/index.cjs +2 -2
  158. package/dist/components/Container/index.cjs.map +1 -1
  159. package/dist/components/Container/index.mjs +2 -2
  160. package/dist/components/Container/index.mjs.map +1 -1
  161. package/dist/components/DictionaryEditor/ValidDictionaryChangeButtons.cjs.map +1 -1
  162. package/dist/components/DictionaryEditor/ValidDictionaryChangeButtons.d.ts.map +1 -1
  163. package/dist/components/DictionaryEditor/ValidDictionaryChangeButtons.mjs.map +1 -1
  164. package/dist/components/DictionaryEditor/index.cjs +4 -0
  165. package/dist/components/DictionaryEditor/index.cjs.map +1 -1
  166. package/dist/components/DictionaryEditor/index.mjs +4 -0
  167. package/dist/components/DictionaryEditor/index.mjs.map +1 -1
  168. package/dist/components/DictionaryEditor/useEditedContentStore.cjs +3 -0
  169. package/dist/components/DictionaryEditor/useEditedContentStore.cjs.map +1 -1
  170. package/dist/components/DictionaryEditor/useEditedContentStore.d.ts +2 -2
  171. package/dist/components/DictionaryEditor/useEditedContentStore.d.ts.map +1 -1
  172. package/dist/components/DictionaryEditor/useEditedContentStore.mjs +3 -0
  173. package/dist/components/DictionaryEditor/useEditedContentStore.mjs.map +1 -1
  174. package/dist/components/DictionaryEditor/useEditionPanelStore.cjs.map +1 -1
  175. package/dist/components/DictionaryEditor/useEditionPanelStore.d.ts +1 -1
  176. package/dist/components/DictionaryEditor/useEditionPanelStore.d.ts.map +1 -1
  177. package/dist/components/DictionaryEditor/useEditionPanelStore.mjs.map +1 -1
  178. package/dist/components/DictionaryEditor/validDictionaryChangeButtons.content.cjs +60 -6
  179. package/dist/components/DictionaryEditor/validDictionaryChangeButtons.content.cjs.map +1 -1
  180. package/dist/components/DictionaryEditor/validDictionaryChangeButtons.content.d.ts.map +1 -1
  181. package/dist/components/DictionaryEditor/validDictionaryChangeButtons.content.mjs +60 -6
  182. package/dist/components/DictionaryEditor/validDictionaryChangeButtons.content.mjs.map +1 -1
  183. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.cjs +7 -5
  184. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.cjs.map +1 -1
  185. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.d.ts +1 -0
  186. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.d.ts.map +1 -1
  187. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.mjs +7 -5
  188. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.mjs.map +1 -1
  189. package/dist/components/DictionaryFieldEditor/DictionariesSelector/dictionariesSelector.content.cjs +22 -2
  190. package/dist/components/DictionaryFieldEditor/DictionariesSelector/dictionariesSelector.content.cjs.map +1 -1
  191. package/dist/components/DictionaryFieldEditor/DictionariesSelector/dictionariesSelector.content.d.ts.map +1 -1
  192. package/dist/components/DictionaryFieldEditor/DictionariesSelector/dictionariesSelector.content.mjs +22 -2
  193. package/dist/components/DictionaryFieldEditor/DictionariesSelector/dictionariesSelector.content.mjs.map +1 -1
  194. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/DictionaryCreationForm.cjs +14 -6
  195. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/DictionaryCreationForm.cjs.map +1 -1
  196. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/DictionaryCreationForm.mjs +14 -6
  197. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/DictionaryCreationForm.mjs.map +1 -1
  198. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/dictionaryCreationForm.content.cjs +151 -21
  199. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/dictionaryCreationForm.content.cjs.map +1 -1
  200. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/dictionaryCreationForm.content.d.ts.map +1 -1
  201. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/dictionaryCreationForm.content.mjs +151 -21
  202. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/dictionaryCreationForm.content.mjs.map +1 -1
  203. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.cjs +27 -0
  204. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.cjs.map +1 -0
  205. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.content.cjs +71 -0
  206. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.content.cjs.map +1 -0
  207. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.content.d.ts +11 -0
  208. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.content.d.ts.map +1 -0
  209. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.content.mjs +71 -0
  210. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.content.mjs.map +1 -0
  211. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/{dictionaryFormSchema.d.ts → useDictionaryFormSchema.d.ts} +3 -3
  212. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.d.ts.map +1 -0
  213. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.mjs +27 -0
  214. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.mjs.map +1 -0
  215. package/dist/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.cjs +24 -16
  216. package/dist/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.cjs.map +1 -1
  217. package/dist/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.mjs +24 -16
  218. package/dist/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.mjs.map +1 -1
  219. package/dist/components/DictionaryFieldEditor/DictionaryDetails/dictionaryDetails.content.cjs +176 -16
  220. package/dist/components/DictionaryFieldEditor/DictionaryDetails/dictionaryDetails.content.cjs.map +1 -1
  221. package/dist/components/DictionaryFieldEditor/DictionaryDetails/dictionaryDetails.content.d.ts.map +1 -1
  222. package/dist/components/DictionaryFieldEditor/DictionaryDetails/dictionaryDetails.content.mjs +176 -16
  223. package/dist/components/DictionaryFieldEditor/DictionaryDetails/dictionaryDetails.content.mjs.map +1 -1
  224. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.cjs +44 -0
  225. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.cjs.map +1 -0
  226. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.content.cjs +176 -0
  227. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.content.cjs.map +1 -0
  228. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.content.d.ts +17 -0
  229. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.content.d.ts.map +1 -0
  230. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.content.mjs +176 -0
  231. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.content.mjs.map +1 -0
  232. package/dist/components/DictionaryFieldEditor/DictionaryDetails/{DictionaryDetailsSchema.d.ts → useDictionaryDetailsSchema.d.ts} +3 -3
  233. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.d.ts.map +1 -0
  234. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.mjs +44 -0
  235. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.mjs.map +1 -0
  236. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.cjs +6 -3
  237. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.cjs.map +1 -1
  238. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.d.ts +1 -0
  239. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.d.ts.map +1 -1
  240. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.mjs +6 -3
  241. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.mjs.map +1 -1
  242. package/dist/components/DictionaryFieldEditor/EditorView/TextEditor.cjs +2 -2
  243. package/dist/components/DictionaryFieldEditor/EditorView/TextEditor.cjs.map +1 -1
  244. package/dist/components/DictionaryFieldEditor/EditorView/TextEditor.mjs +2 -2
  245. package/dist/components/DictionaryFieldEditor/EditorView/TextEditor.mjs.map +1 -1
  246. package/dist/components/DictionaryFieldEditor/JSONEditor.cjs +20 -18
  247. package/dist/components/DictionaryFieldEditor/JSONEditor.cjs.map +1 -1
  248. package/dist/components/DictionaryFieldEditor/JSONEditor.d.ts +1 -0
  249. package/dist/components/DictionaryFieldEditor/JSONEditor.d.ts.map +1 -1
  250. package/dist/components/DictionaryFieldEditor/JSONEditor.mjs +20 -18
  251. package/dist/components/DictionaryFieldEditor/JSONEditor.mjs.map +1 -1
  252. package/dist/components/DictionaryFieldEditor/KeyPathBreadcrumb.cjs +10 -2
  253. package/dist/components/DictionaryFieldEditor/KeyPathBreadcrumb.cjs.map +1 -1
  254. package/dist/components/DictionaryFieldEditor/KeyPathBreadcrumb.d.ts +2 -0
  255. package/dist/components/DictionaryFieldEditor/KeyPathBreadcrumb.d.ts.map +1 -1
  256. package/dist/components/DictionaryFieldEditor/KeyPathBreadcrumb.mjs +10 -2
  257. package/dist/components/DictionaryFieldEditor/KeyPathBreadcrumb.mjs.map +1 -1
  258. package/dist/components/DictionaryFieldEditor/NavigationView/navigationViewNode.content.cjs +121 -11
  259. package/dist/components/DictionaryFieldEditor/NavigationView/navigationViewNode.content.cjs.map +1 -1
  260. package/dist/components/DictionaryFieldEditor/NavigationView/navigationViewNode.content.d.ts.map +1 -1
  261. package/dist/components/DictionaryFieldEditor/NavigationView/navigationViewNode.content.mjs +121 -11
  262. package/dist/components/DictionaryFieldEditor/NavigationView/navigationViewNode.content.mjs.map +1 -1
  263. package/dist/components/DictionaryFieldEditor/NodeEditor.cjs +10 -14
  264. package/dist/components/DictionaryFieldEditor/NodeEditor.cjs.map +1 -1
  265. package/dist/components/DictionaryFieldEditor/NodeEditor.d.ts.map +1 -1
  266. package/dist/components/DictionaryFieldEditor/NodeEditor.mjs +10 -14
  267. package/dist/components/DictionaryFieldEditor/NodeEditor.mjs.map +1 -1
  268. package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.cjs +63 -20
  269. package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.cjs.map +1 -1
  270. package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.d.ts.map +1 -1
  271. package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.mjs +66 -23
  272. package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.mjs.map +1 -1
  273. package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.cjs +98 -6
  274. package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.cjs.map +1 -1
  275. package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.d.ts +4 -0
  276. package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.d.ts.map +1 -1
  277. package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.mjs +98 -6
  278. package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.mjs.map +1 -1
  279. package/dist/components/DictionaryFieldEditor/dictionaryFieldEditor.content.cjs +44 -4
  280. package/dist/components/DictionaryFieldEditor/dictionaryFieldEditor.content.cjs.map +1 -1
  281. package/dist/components/DictionaryFieldEditor/dictionaryFieldEditor.content.d.ts.map +1 -1
  282. package/dist/components/DictionaryFieldEditor/dictionaryFieldEditor.content.mjs +44 -4
  283. package/dist/components/DictionaryFieldEditor/dictionaryFieldEditor.content.mjs.map +1 -1
  284. package/dist/components/DictionaryFieldEditor/editorView.content.cjs +77 -7
  285. package/dist/components/DictionaryFieldEditor/editorView.content.cjs.map +1 -1
  286. package/dist/components/DictionaryFieldEditor/editorView.content.d.ts.map +1 -1
  287. package/dist/components/DictionaryFieldEditor/editorView.content.mjs +77 -7
  288. package/dist/components/DictionaryFieldEditor/editorView.content.mjs.map +1 -1
  289. package/dist/components/DictionaryFieldEditor/nodeTypeSelector.content.cjs +66 -6
  290. package/dist/components/DictionaryFieldEditor/nodeTypeSelector.content.cjs.map +1 -1
  291. package/dist/components/DictionaryFieldEditor/nodeTypeSelector.content.d.ts.map +1 -1
  292. package/dist/components/DictionaryFieldEditor/nodeTypeSelector.content.mjs +66 -6
  293. package/dist/components/DictionaryFieldEditor/nodeTypeSelector.content.mjs.map +1 -1
  294. package/dist/components/DropDown/index.cjs.map +1 -1
  295. package/dist/components/DropDown/index.d.ts +18 -1
  296. package/dist/components/DropDown/index.d.ts.map +1 -1
  297. package/dist/components/DropDown/index.mjs.map +1 -1
  298. package/dist/components/Headers/index.cjs +1 -1
  299. package/dist/components/Headers/index.cjs.map +1 -1
  300. package/dist/components/Headers/index.mjs +1 -1
  301. package/dist/components/Headers/index.mjs.map +1 -1
  302. package/dist/components/IDE/CodeRender copy.cjs +141 -0
  303. package/dist/components/IDE/CodeRender copy.cjs.map +1 -0
  304. package/dist/components/IDE/CodeRender copy.d.ts +14 -0
  305. package/dist/components/IDE/CodeRender copy.d.ts.map +1 -0
  306. package/dist/components/IDE/CodeRender copy.mjs +141 -0
  307. package/dist/components/IDE/CodeRender copy.mjs.map +1 -0
  308. package/dist/components/IDE/CodeRender.cjs +39 -625
  309. package/dist/components/IDE/CodeRender.cjs.map +1 -1
  310. package/dist/components/IDE/CodeRender.d.ts +4 -5
  311. package/dist/components/IDE/CodeRender.d.ts.map +1 -1
  312. package/dist/components/IDE/CodeRender.mjs +40 -604
  313. package/dist/components/IDE/CodeRender.mjs.map +1 -1
  314. package/dist/components/IDE/CopyButton.cjs +40 -0
  315. package/dist/components/IDE/CopyButton.cjs.map +1 -0
  316. package/dist/components/IDE/CopyButton.content.cjs +26 -0
  317. package/dist/components/IDE/CopyButton.content.cjs.map +1 -0
  318. package/dist/components/IDE/CopyButton.content.d.ts +8 -0
  319. package/dist/components/IDE/CopyButton.content.d.ts.map +1 -0
  320. package/dist/components/IDE/CopyButton.content.mjs +26 -0
  321. package/dist/components/IDE/CopyButton.content.mjs.map +1 -0
  322. package/dist/components/IDE/CopyButton.d.ts +7 -0
  323. package/dist/components/IDE/CopyButton.d.ts.map +1 -0
  324. package/dist/components/IDE/CopyButton.mjs +40 -0
  325. package/dist/components/IDE/CopyButton.mjs.map +1 -0
  326. package/dist/components/IDE/IDE.cjs +1 -1
  327. package/dist/components/IDE/IDE.cjs.map +1 -1
  328. package/dist/components/IDE/IDE.mjs +1 -1
  329. package/dist/components/IDE/IDE.mjs.map +1 -1
  330. package/dist/components/IDE/MarkDownRender.cjs +10 -2
  331. package/dist/components/IDE/MarkDownRender.cjs.map +1 -1
  332. package/dist/components/IDE/MarkDownRender.d.ts.map +1 -1
  333. package/dist/components/IDE/MarkDownRender.mjs +10 -2
  334. package/dist/components/IDE/MarkDownRender.mjs.map +1 -1
  335. package/dist/components/IDE/MonacoCode.cjs +129 -0
  336. package/dist/components/IDE/MonacoCode.cjs.map +1 -0
  337. package/dist/components/IDE/MonacoCode.d.ts +14 -0
  338. package/dist/components/IDE/MonacoCode.d.ts.map +1 -0
  339. package/dist/components/IDE/MonacoCode.mjs +129 -0
  340. package/dist/components/IDE/MonacoCode.mjs.map +1 -0
  341. package/dist/components/Link/Link.cjs +50 -31
  342. package/dist/components/Link/Link.cjs.map +1 -1
  343. package/dist/components/Link/Link.d.ts +3 -0
  344. package/dist/components/Link/Link.d.ts.map +1 -1
  345. package/dist/components/Link/Link.mjs +51 -32
  346. package/dist/components/Link/Link.mjs.map +1 -1
  347. package/dist/components/Link/index.cjs +1 -0
  348. package/dist/components/Link/index.cjs.map +1 -1
  349. package/dist/components/Link/index.mjs +3 -2
  350. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.cjs +122 -42
  351. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.cjs.map +1 -1
  352. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.d.ts +2 -0
  353. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.d.ts.map +1 -1
  354. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.mjs +123 -43
  355. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.mjs.map +1 -1
  356. package/dist/components/LocaleSwitcherDropDown/localeSwitcher.content.cjs +86 -0
  357. package/dist/components/LocaleSwitcherDropDown/localeSwitcher.content.cjs.map +1 -0
  358. package/dist/components/LocaleSwitcherDropDown/localeSwitcher.content.d.ts +14 -0
  359. package/dist/components/LocaleSwitcherDropDown/localeSwitcher.content.d.ts.map +1 -0
  360. package/dist/components/LocaleSwitcherDropDown/localeSwitcher.content.mjs +87 -0
  361. package/dist/components/LocaleSwitcherDropDown/localeSwitcher.content.mjs.map +1 -0
  362. package/dist/components/MarkDownRender/index.cjs +4 -2
  363. package/dist/components/MarkDownRender/index.cjs.map +1 -1
  364. package/dist/components/MarkDownRender/index.d.ts +3 -1
  365. package/dist/components/MarkDownRender/index.d.ts.map +1 -1
  366. package/dist/components/MarkDownRender/index.mjs +4 -2
  367. package/dist/components/MarkDownRender/index.mjs.map +1 -1
  368. package/dist/components/Modal/Modal.cjs +8 -10
  369. package/dist/components/Modal/Modal.cjs.map +1 -1
  370. package/dist/components/Modal/Modal.d.ts.map +1 -1
  371. package/dist/components/Modal/Modal.mjs +8 -10
  372. package/dist/components/Modal/Modal.mjs.map +1 -1
  373. package/dist/components/Navbar/DesktopNavbar.cjs +1 -1
  374. package/dist/components/Navbar/DesktopNavbar.cjs.map +1 -1
  375. package/dist/components/Navbar/DesktopNavbar.mjs +1 -1
  376. package/dist/components/Navbar/DesktopNavbar.mjs.map +1 -1
  377. package/dist/components/index.cjs +13 -8
  378. package/dist/components/index.cjs.map +1 -1
  379. package/dist/components/index.mjs +14 -9
  380. package/dist/components/index.mjs.map +1 -1
  381. package/dist/design-system.css +235 -0
  382. package/dist/hooks/index.cjs +6 -0
  383. package/dist/hooks/index.cjs.map +1 -1
  384. package/dist/hooks/index.d.ts +1 -0
  385. package/dist/hooks/index.d.ts.map +1 -1
  386. package/dist/hooks/index.mjs +7 -1
  387. package/dist/hooks/index.mjs.map +1 -1
  388. package/dist/hooks/intlayerAPIHooks.cjs +8 -2
  389. package/dist/hooks/intlayerAPIHooks.cjs.map +1 -1
  390. package/dist/hooks/intlayerAPIHooks.d.ts +4 -0
  391. package/dist/hooks/intlayerAPIHooks.d.ts.map +1 -1
  392. package/dist/hooks/intlayerAPIHooks.mjs +8 -2
  393. package/dist/hooks/intlayerAPIHooks.mjs.map +1 -1
  394. package/dist/hooks/useAsync/index.cjs +3 -0
  395. package/dist/hooks/useAsync/index.cjs.map +1 -1
  396. package/dist/hooks/useAsync/index.d.ts +1 -0
  397. package/dist/hooks/useAsync/index.d.ts.map +1 -1
  398. package/dist/hooks/useAsync/index.mjs +4 -1
  399. package/dist/hooks/useAsync/index.mjs.map +1 -1
  400. package/dist/hooks/useAsync/useAsync.cjs +2 -9
  401. package/dist/hooks/useAsync/useAsync.cjs.map +1 -1
  402. package/dist/hooks/useAsync/useAsync.d.ts.map +1 -1
  403. package/dist/hooks/useAsync/useAsync.mjs +3 -10
  404. package/dist/hooks/useAsync/useAsync.mjs.map +1 -1
  405. package/dist/hooks/useAsync/useAsyncStateStore.cjs +123 -69
  406. package/dist/hooks/useAsync/useAsyncStateStore.cjs.map +1 -1
  407. package/dist/hooks/useAsync/useAsyncStateStore.d.ts +35 -11
  408. package/dist/hooks/useAsync/useAsyncStateStore.d.ts.map +1 -1
  409. package/dist/hooks/useAsync/useAsyncStateStore.mjs +123 -69
  410. package/dist/hooks/useAsync/useAsyncStateStore.mjs.map +1 -1
  411. package/dist/hooks/useIntlayerAPI.d.ts +3 -0
  412. package/dist/hooks/useIntlayerAPI.d.ts.map +1 -1
  413. package/dist/hooks/useIsDarkMode.cjs +15 -0
  414. package/dist/hooks/useIsDarkMode.cjs.map +1 -0
  415. package/dist/hooks/useIsDarkMode.d.ts +2 -0
  416. package/dist/hooks/useIsDarkMode.d.ts.map +1 -0
  417. package/dist/hooks/useIsDarkMode.mjs +15 -0
  418. package/dist/hooks/useIsDarkMode.mjs.map +1 -0
  419. package/dist/libs/intlayer-api/ai.cjs +24 -0
  420. package/dist/libs/intlayer-api/ai.cjs.map +1 -0
  421. package/dist/libs/intlayer-api/ai.d.ts +10 -0
  422. package/dist/libs/intlayer-api/ai.d.ts.map +1 -0
  423. package/dist/libs/intlayer-api/ai.mjs +24 -0
  424. package/dist/libs/intlayer-api/ai.mjs.map +1 -0
  425. package/dist/libs/intlayer-api/index.cjs +3 -1
  426. package/dist/libs/intlayer-api/index.cjs.map +1 -1
  427. package/dist/libs/intlayer-api/index.d.ts +6 -0
  428. package/dist/libs/intlayer-api/index.d.ts.map +1 -1
  429. package/dist/libs/intlayer-api/index.mjs +3 -1
  430. package/dist/libs/intlayer-api/index.mjs.map +1 -1
  431. package/dist/tailwind.css +1 -1
  432. package/package.json +19 -16
  433. package/dist/__vite-browser-external-SDi5tJh6.cjs +0 -4
  434. package/dist/__vite-browser-external-SDi5tJh6.cjs.map +0 -1
  435. package/dist/__vite-browser-external-r74dyCO2.js +0 -5
  436. package/dist/__vite-browser-external-r74dyCO2.js.map +0 -1
  437. package/dist/components/Auth/ChangePasswordForm/ChangePasswordSchema.cjs +0 -66
  438. package/dist/components/Auth/ChangePasswordForm/ChangePasswordSchema.cjs.map +0 -1
  439. package/dist/components/Auth/ChangePasswordForm/ChangePasswordSchema.d.ts.map +0 -1
  440. package/dist/components/Auth/ChangePasswordForm/ChangePasswordSchema.mjs +0 -66
  441. package/dist/components/Auth/ChangePasswordForm/ChangePasswordSchema.mjs.map +0 -1
  442. package/dist/components/Auth/ChangePasswordForm/index.content.cjs +0 -67
  443. package/dist/components/Auth/ChangePasswordForm/index.content.cjs.map +0 -1
  444. package/dist/components/Auth/ChangePasswordForm/index.content.d.ts +0 -23
  445. package/dist/components/Auth/ChangePasswordForm/index.content.d.ts.map +0 -1
  446. package/dist/components/Auth/ChangePasswordForm/index.content.mjs +0 -67
  447. package/dist/components/Auth/ChangePasswordForm/index.content.mjs.map +0 -1
  448. package/dist/components/Auth/ResetPasswordForm/ResetPasswordSchema.cjs +0 -29
  449. package/dist/components/Auth/ResetPasswordForm/ResetPasswordSchema.cjs.map +0 -1
  450. package/dist/components/Auth/ResetPasswordForm/ResetPasswordSchema.d.ts +0 -10
  451. package/dist/components/Auth/ResetPasswordForm/ResetPasswordSchema.d.ts.map +0 -1
  452. package/dist/components/Auth/ResetPasswordForm/ResetPasswordSchema.mjs +0 -29
  453. package/dist/components/Auth/ResetPasswordForm/ResetPasswordSchema.mjs.map +0 -1
  454. package/dist/components/Auth/ResetPasswordForm/index.content.cjs +0 -50
  455. package/dist/components/Auth/ResetPasswordForm/index.content.cjs.map +0 -1
  456. package/dist/components/Auth/ResetPasswordForm/index.content.d.ts +0 -18
  457. package/dist/components/Auth/ResetPasswordForm/index.content.d.ts.map +0 -1
  458. package/dist/components/Auth/ResetPasswordForm/index.content.mjs +0 -50
  459. package/dist/components/Auth/ResetPasswordForm/index.content.mjs.map +0 -1
  460. package/dist/components/Auth/SignInForm/SignInSchema.cjs +0 -38
  461. package/dist/components/Auth/SignInForm/SignInSchema.cjs.map +0 -1
  462. package/dist/components/Auth/SignInForm/SignInSchema.d.ts.map +0 -1
  463. package/dist/components/Auth/SignInForm/SignInSchema.mjs +0 -38
  464. package/dist/components/Auth/SignInForm/SignInSchema.mjs.map +0 -1
  465. package/dist/components/Auth/SignInForm/index.content.cjs +0 -84
  466. package/dist/components/Auth/SignInForm/index.content.cjs.map +0 -1
  467. package/dist/components/Auth/SignInForm/index.content.d.ts +0 -28
  468. package/dist/components/Auth/SignInForm/index.content.d.ts.map +0 -1
  469. package/dist/components/Auth/SignInForm/index.content.mjs +0 -84
  470. package/dist/components/Auth/SignInForm/index.content.mjs.map +0 -1
  471. package/dist/components/Auth/SignUpForm/SignUpSchema.cjs +0 -61
  472. package/dist/components/Auth/SignUpForm/SignUpSchema.cjs.map +0 -1
  473. package/dist/components/Auth/SignUpForm/SignUpSchema.d.ts.map +0 -1
  474. package/dist/components/Auth/SignUpForm/SignUpSchema.mjs +0 -61
  475. package/dist/components/Auth/SignUpForm/SignUpSchema.mjs.map +0 -1
  476. package/dist/components/Auth/SignUpForm/index.content.cjs +0 -72
  477. package/dist/components/Auth/SignUpForm/index.content.cjs.map +0 -1
  478. package/dist/components/Auth/SignUpForm/index.content.d.ts +0 -24
  479. package/dist/components/Auth/SignUpForm/index.content.d.ts.map +0 -1
  480. package/dist/components/Auth/SignUpForm/index.content.mjs +0 -72
  481. package/dist/components/Auth/SignUpForm/index.content.mjs.map +0 -1
  482. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/dictionaryFormSchema.cjs +0 -40
  483. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/dictionaryFormSchema.cjs.map +0 -1
  484. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/dictionaryFormSchema.d.ts.map +0 -1
  485. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/dictionaryFormSchema.mjs +0 -40
  486. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/dictionaryFormSchema.mjs.map +0 -1
  487. package/dist/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsSchema.cjs +0 -85
  488. package/dist/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsSchema.cjs.map +0 -1
  489. package/dist/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsSchema.d.ts.map +0 -1
  490. package/dist/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsSchema.mjs +0 -85
  491. package/dist/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsSchema.mjs.map +0 -1
  492. package/dist/tailwind.js +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../src/components/DropDown/index.tsx"],"sourcesContent":["import type { FC } from 'react';\nimport { cn } from '../../utils/cn';\nimport { MaxHeightSmoother } from '../MaxHeightSmoother';\nimport type { DropDownType, PanelProps, TriggerProps } from './types';\n\n/**\n * Trigger allowing to open a dropdown menu.\n *\n * Example:\n * ```jsx\n * <DropDown identifier=\"dropdown\">\n * <DropDown.Trigger>\n * Open dropdown\n * </DropDown.Trigger>\n *\n * <DropDown.Panel identifier=\"dropdown\">\n * <div>Content</div>\n * </DropDown.Panel>\n * </DropDown>\n * ```\n *\n * > Note DropDown.Trigger can be replaced by a button. Don't add a button inside the trigger.\n */\nexport const DropDown: DropDownType = ({\n children,\n className,\n identifier,\n ...props\n}) => (\n <div\n className={cn(`group/dropdown relative flex`, className)}\n aria-label={`DropDown ${identifier}`}\n id={`unrollable-panel-button-${identifier}`}\n aria-haspopup\n {...props}\n >\n {children}\n </div>\n);\n\n/**\n * Trigger allowing to open a dropdown menu.\n *\n * Example:\n * ```jsx\n * <DropDown.Trigger identifier=\"dropdown\">\n * <div>Open dropdown</div>\n * </DropDown.Trigger>\n * ```\n *\n * > Note DropDown.Trigger can be replaced by a button. Don't add a button inside the trigger.\n */\nconst Trigger: FC<TriggerProps> = ({\n children,\n identifier,\n className,\n ...props\n}) => (\n <button\n className={cn('w-full cursor-pointer', className)}\n aria-label={`Open panel ${identifier}`}\n {...props}\n >\n {children}\n </button>\n);\n\n/**\n * Component that opens a dropdown menu when the trigger is clicked.\n *\n * Example:\n * ```jsx\n * <DropDown.Panel identifier=\"dropdown\">\n * <div>Content</div>\n * </DropDown.Panel>\n * ```\n */\nconst Panel: FC<PanelProps> = ({\n children,\n isHidden = undefined,\n isOverable = false,\n isFocusable = false,\n align = 'start',\n identifier,\n className,\n ...props\n}) => (\n <div\n className={cn(\n 'absolute top-[calc(100%+0.5rem)] z-[1000] min-w-full',\n align === 'start' && 'left-0',\n align === 'end' && 'right-0',\n className\n )}\n aria-hidden={isHidden}\n role=\"region\"\n aria-labelledby={`unrollable-panel-button-${identifier}`}\n id={`unrollable-panel-${identifier}`}\n >\n <MaxHeightSmoother\n isHidden={isHidden}\n className={cn(\n 'overflow-x-visible',\n isHidden !== false ? 'invisible' : 'visible',\n isOverable &&\n 'group-hover/dropdown:visible group-hover/dropdown:grid-rows-[1fr]',\n isFocusable &&\n 'group-focus-within/dropdown:visible group-focus-within/dropdown:grid-rows-[1fr]'\n )}\n {...props}\n >\n {children}\n </MaxHeightSmoother>\n </div>\n);\n\nDropDown.Trigger = Trigger;\nDropDown.Panel = Panel;\n"],"names":["jsx","cn","MaxHeightSmoother"],"mappings":";;;;;AAuBO,MAAM,WAAyB,CAAC;AAAA,EACrC;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MACEA,2BAAA,kBAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,WAAWC,SAAG,GAAA,gCAAgC,SAAS;AAAA,IACvD,cAAY,YAAY,UAAU;AAAA,IAClC,IAAI,2BAA2B,UAAU;AAAA,IACzC,iBAAa;AAAA,IACZ,GAAG;AAAA,IAEH;AAAA,EAAA;AACH;AAeF,MAAM,UAA4B,CAAC;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MACED,2BAAA,kBAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,WAAWC,SAAAA,GAAG,yBAAyB,SAAS;AAAA,IAChD,cAAY,cAAc,UAAU;AAAA,IACnC,GAAG;AAAA,IAEH;AAAA,EAAA;AACH;AAaF,MAAM,QAAwB,CAAC;AAAA,EAC7B;AAAA,EACA,WAAW;AAAA,EACX,aAAa;AAAA,EACb,cAAc;AAAA,EACd,QAAQ;AAAA,EACR;AAAA,EACA;AAAA,EACA,GAAG;AACL,MACED,2BAAA,kBAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,WAAWC,SAAA;AAAA,MACT;AAAA,MACA,UAAU,WAAW;AAAA,MACrB,UAAU,SAAS;AAAA,MACnB;AAAA,IACF;AAAA,IACA,eAAa;AAAA,IACb,MAAK;AAAA,IACL,mBAAiB,2BAA2B,UAAU;AAAA,IACtD,IAAI,oBAAoB,UAAU;AAAA,IAElC,UAAAD,2BAAA,kBAAA;AAAA,MAACE,mCAAA;AAAA,MAAA;AAAA,QACC;AAAA,QACA,WAAWD,SAAA;AAAA,UACT;AAAA,UACA,aAAa,QAAQ,cAAc;AAAA,UACnC,cACE;AAAA,UACF,eACE;AAAA,QACJ;AAAA,QACC,GAAG;AAAA,QAEH;AAAA,MAAA;AAAA,IAAA;AAAA,EACH;AACF;AAGF,SAAS,UAAU;AACnB,SAAS,QAAQ;;"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../src/components/DropDown/index.tsx"],"sourcesContent":["import type { FC, HTMLAttributes } from 'react';\nimport { cn } from '../../utils/cn';\nimport { MaxHeightSmoother } from '../MaxHeightSmoother';\n\nexport type DropDownProps = HTMLAttributes<HTMLDivElement> & {\n identifier: string;\n};\n\nexport type DropDownType = FC<DropDownProps> & {\n Trigger: FC<TriggerProps>;\n Panel: FC<PanelProps>;\n};\n\n/**\n * Trigger allowing to open a dropdown menu.\n *\n * Example:\n * ```jsx\n * <DropDown identifier=\"dropdown\">\n * <DropDown.Trigger>\n * Open dropdown\n * </DropDown.Trigger>\n *\n * <DropDown.Panel identifier=\"dropdown\">\n * <div>Content</div>\n * </DropDown.Panel>\n * </DropDown>\n * ```\n *\n * > Note DropDown.Trigger can be replaced by a button. Don't add a button inside the trigger.\n */\nexport const DropDown: DropDownType = ({\n children,\n className,\n identifier,\n ...props\n}) => (\n <div\n className={cn(`group/dropdown relative flex`, className)}\n aria-label={`DropDown ${identifier}`}\n id={`unrollable-panel-button-${identifier}`}\n aria-haspopup\n {...props}\n >\n {children}\n </div>\n);\n\nexport type TriggerProps = HTMLAttributes<HTMLButtonElement> & {\n identifier: string;\n};\n\n/**\n * Trigger allowing to open a dropdown menu.\n *\n * Example:\n * ```jsx\n * <DropDown.Trigger identifier=\"dropdown\">\n * <div>Open dropdown</div>\n * </DropDown.Trigger>\n * ```\n *\n * > Note DropDown.Trigger can be replaced by a button. Don't add a button inside the trigger.\n */\nconst Trigger: FC<TriggerProps> = ({\n children,\n identifier,\n className,\n ...props\n}) => (\n <button\n className={cn('w-full cursor-pointer', className)}\n aria-label={`Open panel ${identifier}`}\n {...props}\n >\n {children}\n </button>\n);\n\nexport type PanelProps = HTMLAttributes<HTMLDivElement> & {\n isFocusable?: boolean;\n isHidden?: boolean;\n isOverable?: boolean;\n identifier: string;\n align?: 'start' | 'end';\n};\n\n/**\n * Component that opens a dropdown menu when the trigger is clicked.\n *\n * Example:\n * ```jsx\n * <DropDown.Panel identifier=\"dropdown\">\n * <div>Content</div>\n * </DropDown.Panel>\n * ```\n */\nconst Panel: FC<PanelProps> = ({\n children,\n isHidden = undefined,\n isOverable = false,\n isFocusable = false,\n align = 'start',\n identifier,\n className,\n ...props\n}) => (\n <div\n className={cn(\n 'absolute top-[calc(100%+0.5rem)] z-[1000] min-w-full',\n align === 'start' && 'left-0',\n align === 'end' && 'right-0',\n className\n )}\n aria-hidden={isHidden}\n role=\"region\"\n aria-labelledby={`unrollable-panel-button-${identifier}`}\n id={`unrollable-panel-${identifier}`}\n >\n <MaxHeightSmoother\n isHidden={isHidden}\n className={cn(\n 'overflow-x-visible',\n isHidden !== false ? 'invisible' : 'visible',\n isOverable &&\n 'group-hover/dropdown:visible group-hover/dropdown:grid-rows-[1fr]',\n isFocusable &&\n 'group-focus-within/dropdown:visible group-focus-within/dropdown:grid-rows-[1fr]'\n )}\n {...props}\n >\n {children}\n </MaxHeightSmoother>\n </div>\n);\n\nDropDown.Trigger = Trigger;\nDropDown.Panel = Panel;\n"],"names":["jsx","cn","MaxHeightSmoother"],"mappings":";;;;;AA+BO,MAAM,WAAyB,CAAC;AAAA,EACrC;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MACEA,2BAAA,kBAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,WAAWC,SAAG,GAAA,gCAAgC,SAAS;AAAA,IACvD,cAAY,YAAY,UAAU;AAAA,IAClC,IAAI,2BAA2B,UAAU;AAAA,IACzC,iBAAa;AAAA,IACZ,GAAG;AAAA,IAEH;AAAA,EAAA;AACH;AAmBF,MAAM,UAA4B,CAAC;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MACED,2BAAA,kBAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,WAAWC,SAAAA,GAAG,yBAAyB,SAAS;AAAA,IAChD,cAAY,cAAc,UAAU;AAAA,IACnC,GAAG;AAAA,IAEH;AAAA,EAAA;AACH;AAqBF,MAAM,QAAwB,CAAC;AAAA,EAC7B;AAAA,EACA,WAAW;AAAA,EACX,aAAa;AAAA,EACb,cAAc;AAAA,EACd,QAAQ;AAAA,EACR;AAAA,EACA;AAAA,EACA,GAAG;AACL,MACED,2BAAA,kBAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,WAAWC,SAAA;AAAA,MACT;AAAA,MACA,UAAU,WAAW;AAAA,MACrB,UAAU,SAAS;AAAA,MACnB;AAAA,IACF;AAAA,IACA,eAAa;AAAA,IACb,MAAK;AAAA,IACL,mBAAiB,2BAA2B,UAAU;AAAA,IACtD,IAAI,oBAAoB,UAAU;AAAA,IAElC,UAAAD,2BAAA,kBAAA;AAAA,MAACE,mCAAA;AAAA,MAAA;AAAA,QACC;AAAA,QACA,WAAWD,SAAA;AAAA,UACT;AAAA,UACA,aAAa,QAAQ,cAAc;AAAA,UACnC,cACE;AAAA,UACF,eACE;AAAA,QACJ;AAAA,QACC,GAAG;AAAA,QAEH;AAAA,MAAA;AAAA,IAAA;AAAA,EACH;AACF;AAGF,SAAS,UAAU;AACnB,SAAS,QAAQ;;"}
@@ -1,4 +1,11 @@
1
- import { DropDownType } from './types';
1
+ import { FC, HTMLAttributes } from 'react';
2
+ export type DropDownProps = HTMLAttributes<HTMLDivElement> & {
3
+ identifier: string;
4
+ };
5
+ export type DropDownType = FC<DropDownProps> & {
6
+ Trigger: FC<TriggerProps>;
7
+ Panel: FC<PanelProps>;
8
+ };
2
9
  /**
3
10
  * Trigger allowing to open a dropdown menu.
4
11
  *
@@ -18,4 +25,14 @@ import { DropDownType } from './types';
18
25
  * > Note DropDown.Trigger can be replaced by a button. Don't add a button inside the trigger.
19
26
  */
20
27
  export declare const DropDown: DropDownType;
28
+ export type TriggerProps = HTMLAttributes<HTMLButtonElement> & {
29
+ identifier: string;
30
+ };
31
+ export type PanelProps = HTMLAttributes<HTMLDivElement> & {
32
+ isFocusable?: boolean;
33
+ isHidden?: boolean;
34
+ isOverable?: boolean;
35
+ identifier: string;
36
+ align?: 'start' | 'end';
37
+ };
21
38
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/DropDown/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAA4B,MAAM,SAAS,CAAC;AAEtE;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,QAAQ,EAAE,YAetB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/DropDown/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAIhD,MAAM,MAAM,aAAa,GAAG,cAAc,CAAC,cAAc,CAAC,GAAG;IAC3D,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,EAAE,CAAC,aAAa,CAAC,GAAG;IAC7C,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC;IAC1B,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC;CACvB,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,QAAQ,EAAE,YAetB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,cAAc,CAAC,iBAAiB,CAAC,GAAG;IAC7D,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AA6BF,MAAM,MAAM,UAAU,GAAG,cAAc,CAAC,cAAc,CAAC,GAAG;IACxD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;CACzB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/components/DropDown/index.tsx"],"sourcesContent":["import type { FC } from 'react';\nimport { cn } from '../../utils/cn';\nimport { MaxHeightSmoother } from '../MaxHeightSmoother';\nimport type { DropDownType, PanelProps, TriggerProps } from './types';\n\n/**\n * Trigger allowing to open a dropdown menu.\n *\n * Example:\n * ```jsx\n * <DropDown identifier=\"dropdown\">\n * <DropDown.Trigger>\n * Open dropdown\n * </DropDown.Trigger>\n *\n * <DropDown.Panel identifier=\"dropdown\">\n * <div>Content</div>\n * </DropDown.Panel>\n * </DropDown>\n * ```\n *\n * > Note DropDown.Trigger can be replaced by a button. Don't add a button inside the trigger.\n */\nexport const DropDown: DropDownType = ({\n children,\n className,\n identifier,\n ...props\n}) => (\n <div\n className={cn(`group/dropdown relative flex`, className)}\n aria-label={`DropDown ${identifier}`}\n id={`unrollable-panel-button-${identifier}`}\n aria-haspopup\n {...props}\n >\n {children}\n </div>\n);\n\n/**\n * Trigger allowing to open a dropdown menu.\n *\n * Example:\n * ```jsx\n * <DropDown.Trigger identifier=\"dropdown\">\n * <div>Open dropdown</div>\n * </DropDown.Trigger>\n * ```\n *\n * > Note DropDown.Trigger can be replaced by a button. Don't add a button inside the trigger.\n */\nconst Trigger: FC<TriggerProps> = ({\n children,\n identifier,\n className,\n ...props\n}) => (\n <button\n className={cn('w-full cursor-pointer', className)}\n aria-label={`Open panel ${identifier}`}\n {...props}\n >\n {children}\n </button>\n);\n\n/**\n * Component that opens a dropdown menu when the trigger is clicked.\n *\n * Example:\n * ```jsx\n * <DropDown.Panel identifier=\"dropdown\">\n * <div>Content</div>\n * </DropDown.Panel>\n * ```\n */\nconst Panel: FC<PanelProps> = ({\n children,\n isHidden = undefined,\n isOverable = false,\n isFocusable = false,\n align = 'start',\n identifier,\n className,\n ...props\n}) => (\n <div\n className={cn(\n 'absolute top-[calc(100%+0.5rem)] z-[1000] min-w-full',\n align === 'start' && 'left-0',\n align === 'end' && 'right-0',\n className\n )}\n aria-hidden={isHidden}\n role=\"region\"\n aria-labelledby={`unrollable-panel-button-${identifier}`}\n id={`unrollable-panel-${identifier}`}\n >\n <MaxHeightSmoother\n isHidden={isHidden}\n className={cn(\n 'overflow-x-visible',\n isHidden !== false ? 'invisible' : 'visible',\n isOverable &&\n 'group-hover/dropdown:visible group-hover/dropdown:grid-rows-[1fr]',\n isFocusable &&\n 'group-focus-within/dropdown:visible group-focus-within/dropdown:grid-rows-[1fr]'\n )}\n {...props}\n >\n {children}\n </MaxHeightSmoother>\n </div>\n);\n\nDropDown.Trigger = Trigger;\nDropDown.Panel = Panel;\n"],"names":["jsx"],"mappings":";;;AAuBO,MAAM,WAAyB,CAAC;AAAA,EACrC;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MACEA,kCAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,WAAW,GAAG,gCAAgC,SAAS;AAAA,IACvD,cAAY,YAAY,UAAU;AAAA,IAClC,IAAI,2BAA2B,UAAU;AAAA,IACzC,iBAAa;AAAA,IACZ,GAAG;AAAA,IAEH;AAAA,EAAA;AACH;AAeF,MAAM,UAA4B,CAAC;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MACEA,kCAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,WAAW,GAAG,yBAAyB,SAAS;AAAA,IAChD,cAAY,cAAc,UAAU;AAAA,IACnC,GAAG;AAAA,IAEH;AAAA,EAAA;AACH;AAaF,MAAM,QAAwB,CAAC;AAAA,EAC7B;AAAA,EACA,WAAW;AAAA,EACX,aAAa;AAAA,EACb,cAAc;AAAA,EACd,QAAQ;AAAA,EACR;AAAA,EACA;AAAA,EACA,GAAG;AACL,MACEA,kCAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,WAAW;AAAA,MACT;AAAA,MACA,UAAU,WAAW;AAAA,MACrB,UAAU,SAAS;AAAA,MACnB;AAAA,IACF;AAAA,IACA,eAAa;AAAA,IACb,MAAK;AAAA,IACL,mBAAiB,2BAA2B,UAAU;AAAA,IACtD,IAAI,oBAAoB,UAAU;AAAA,IAElC,UAAAA,kCAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC;AAAA,QACA,WAAW;AAAA,UACT;AAAA,UACA,aAAa,QAAQ,cAAc;AAAA,UACnC,cACE;AAAA,UACF,eACE;AAAA,QACJ;AAAA,QACC,GAAG;AAAA,QAEH;AAAA,MAAA;AAAA,IAAA;AAAA,EACH;AACF;AAGF,SAAS,UAAU;AACnB,SAAS,QAAQ;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/components/DropDown/index.tsx"],"sourcesContent":["import type { FC, HTMLAttributes } from 'react';\nimport { cn } from '../../utils/cn';\nimport { MaxHeightSmoother } from '../MaxHeightSmoother';\n\nexport type DropDownProps = HTMLAttributes<HTMLDivElement> & {\n identifier: string;\n};\n\nexport type DropDownType = FC<DropDownProps> & {\n Trigger: FC<TriggerProps>;\n Panel: FC<PanelProps>;\n};\n\n/**\n * Trigger allowing to open a dropdown menu.\n *\n * Example:\n * ```jsx\n * <DropDown identifier=\"dropdown\">\n * <DropDown.Trigger>\n * Open dropdown\n * </DropDown.Trigger>\n *\n * <DropDown.Panel identifier=\"dropdown\">\n * <div>Content</div>\n * </DropDown.Panel>\n * </DropDown>\n * ```\n *\n * > Note DropDown.Trigger can be replaced by a button. Don't add a button inside the trigger.\n */\nexport const DropDown: DropDownType = ({\n children,\n className,\n identifier,\n ...props\n}) => (\n <div\n className={cn(`group/dropdown relative flex`, className)}\n aria-label={`DropDown ${identifier}`}\n id={`unrollable-panel-button-${identifier}`}\n aria-haspopup\n {...props}\n >\n {children}\n </div>\n);\n\nexport type TriggerProps = HTMLAttributes<HTMLButtonElement> & {\n identifier: string;\n};\n\n/**\n * Trigger allowing to open a dropdown menu.\n *\n * Example:\n * ```jsx\n * <DropDown.Trigger identifier=\"dropdown\">\n * <div>Open dropdown</div>\n * </DropDown.Trigger>\n * ```\n *\n * > Note DropDown.Trigger can be replaced by a button. Don't add a button inside the trigger.\n */\nconst Trigger: FC<TriggerProps> = ({\n children,\n identifier,\n className,\n ...props\n}) => (\n <button\n className={cn('w-full cursor-pointer', className)}\n aria-label={`Open panel ${identifier}`}\n {...props}\n >\n {children}\n </button>\n);\n\nexport type PanelProps = HTMLAttributes<HTMLDivElement> & {\n isFocusable?: boolean;\n isHidden?: boolean;\n isOverable?: boolean;\n identifier: string;\n align?: 'start' | 'end';\n};\n\n/**\n * Component that opens a dropdown menu when the trigger is clicked.\n *\n * Example:\n * ```jsx\n * <DropDown.Panel identifier=\"dropdown\">\n * <div>Content</div>\n * </DropDown.Panel>\n * ```\n */\nconst Panel: FC<PanelProps> = ({\n children,\n isHidden = undefined,\n isOverable = false,\n isFocusable = false,\n align = 'start',\n identifier,\n className,\n ...props\n}) => (\n <div\n className={cn(\n 'absolute top-[calc(100%+0.5rem)] z-[1000] min-w-full',\n align === 'start' && 'left-0',\n align === 'end' && 'right-0',\n className\n )}\n aria-hidden={isHidden}\n role=\"region\"\n aria-labelledby={`unrollable-panel-button-${identifier}`}\n id={`unrollable-panel-${identifier}`}\n >\n <MaxHeightSmoother\n isHidden={isHidden}\n className={cn(\n 'overflow-x-visible',\n isHidden !== false ? 'invisible' : 'visible',\n isOverable &&\n 'group-hover/dropdown:visible group-hover/dropdown:grid-rows-[1fr]',\n isFocusable &&\n 'group-focus-within/dropdown:visible group-focus-within/dropdown:grid-rows-[1fr]'\n )}\n {...props}\n >\n {children}\n </MaxHeightSmoother>\n </div>\n);\n\nDropDown.Trigger = Trigger;\nDropDown.Panel = Panel;\n"],"names":["jsx"],"mappings":";;;AA+BO,MAAM,WAAyB,CAAC;AAAA,EACrC;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MACEA,kCAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,WAAW,GAAG,gCAAgC,SAAS;AAAA,IACvD,cAAY,YAAY,UAAU;AAAA,IAClC,IAAI,2BAA2B,UAAU;AAAA,IACzC,iBAAa;AAAA,IACZ,GAAG;AAAA,IAEH;AAAA,EAAA;AACH;AAmBF,MAAM,UAA4B,CAAC;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MACEA,kCAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,WAAW,GAAG,yBAAyB,SAAS;AAAA,IAChD,cAAY,cAAc,UAAU;AAAA,IACnC,GAAG;AAAA,IAEH;AAAA,EAAA;AACH;AAqBF,MAAM,QAAwB,CAAC;AAAA,EAC7B;AAAA,EACA,WAAW;AAAA,EACX,aAAa;AAAA,EACb,cAAc;AAAA,EACd,QAAQ;AAAA,EACR;AAAA,EACA;AAAA,EACA,GAAG;AACL,MACEA,kCAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,WAAW;AAAA,MACT;AAAA,MACA,UAAU,WAAW;AAAA,MACrB,UAAU,SAAS;AAAA,MACnB;AAAA,IACF;AAAA,IACA,eAAa;AAAA,IACb,MAAK;AAAA,IACL,mBAAiB,2BAA2B,UAAU;AAAA,IACtD,IAAI,oBAAoB,UAAU;AAAA,IAElC,UAAAA,kCAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC;AAAA,QACA,WAAW;AAAA,UACT;AAAA,UACA,aAAa,QAAQ,cAAc;AAAA,UACnC,cACE;AAAA,UACF,eACE;AAAA,QACJ;AAAA,QACC,GAAG;AAAA,QAEH;AAAA,MAAA;AAAA,IAAA;AAAA,EACH;AACF;AAGF,SAAS,UAAU;AACnB,SAAS,QAAQ;"}
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("../../jsx-runtime-XHKiWCTo.cjs");
4
4
  const utils_cn = require("../../utils/cn.cjs");
5
- const styledHeading = `relative scroll-m-8 scroll-p-8`;
5
+ const styledHeading = `relative scroll-mb-8 scroll-mt-[30vh] scroll-p-8`;
6
6
  const styledAfter = `after:content-['#'] after:scale-75 after:px-6 after:text-neutral after:absolute after:top-0 after:h-full after:-left-12 after:hover:cursor-pointer dark:after:text-neutral-dark after:absolute after:to-neutral after:md:opacity-0 after:transition-opacity hover:after:opacity-80 after:duration-200 after:delay-100`;
7
7
  const StyledH1 = ({
8
8
  className,
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../src/components/Headers/index.tsx"],"sourcesContent":["import type { FC, HTMLAttributes, MouseEvent } from 'react';\nimport { cn } from '../../utils/cn';\n\nconst styledHeading = `relative scroll-m-8 scroll-p-8`;\nconst styledAfter = `after:content-['#'] after:scale-75 after:px-6 after:text-neutral after:absolute after:top-0 after:h-full after:-left-12 after:hover:cursor-pointer dark:after:text-neutral-dark after:absolute after:to-neutral after:md:opacity-0 after:transition-opacity hover:after:opacity-80 after:duration-200 after:delay-100`;\n\nconst StyledH1: FC<HTMLAttributes<HTMLHeadingElement>> = ({\n className,\n ...props\n}) => (\n // eslint-disable-next-line jsx-a11y/heading-has-content\n <h1 className={cn('mt-5 text-2xl font-bold', className)} {...props} />\n);\n\nconst StyledH2: FC<HTMLAttributes<HTMLHeadingElement>> = ({\n className,\n ...props\n}) => (\n // eslint-disable-next-line jsx-a11y/heading-has-content\n <h2\n className={cn('mt-5 text-2xl font-bold', styledHeading, className)}\n {...props}\n />\n);\n\nconst StyledH3: FC<HTMLAttributes<HTMLHeadingElement>> = ({\n className,\n ...props\n}) => (\n // eslint-disable-next-line jsx-a11y/heading-has-content\n <h3\n className={cn('mt-3 text-xl font-bold', styledHeading, className)}\n {...props}\n />\n);\n\nconst StyledH4: FC<HTMLAttributes<HTMLHeadingElement>> = ({\n className,\n ...props\n}) => (\n // eslint-disable-next-line jsx-a11y/heading-has-content\n <h4\n className={cn('mt-3 text-lg font-bold', styledHeading, className)}\n {...props}\n />\n);\n\nconst StyledH5: FC<HTMLAttributes<HTMLHeadingElement>> = ({\n className,\n ...props\n}) => (\n // eslint-disable-next-line jsx-a11y/heading-has-content\n <h5\n className={cn('mt-3 text-base font-bold', styledHeading, className)}\n {...props}\n />\n);\n\ntype HeadingProps = HTMLAttributes<HTMLHeadingElement> & {\n isClickable?: boolean;\n};\ntype HeadingGlobalProps = HeadingProps & {\n H: FC<HTMLAttributes<HTMLHeadingElement>>;\n};\ntype HeadingType = (props: HeadingGlobalProps) => JSX.Element;\n\nconst getId = (children: string) =>\n String(children)\n // replace accents\n .normalize('NFD')\n .replace(/[\\u0300-\\u036f]/g, '')\n // replace spaces\n .replace(/\\s+/g, '-')\n .toLowerCase();\n\nconst scrollToHash = (id: string) => {\n const element = document.getElementById(id);\n const offset = 150;\n const y =\n (element?.getBoundingClientRect()?.top ?? 0) + window.scrollY - offset;\n\n window.scrollTo({ top: y, behavior: 'smooth' });\n};\n\nconst afterClick = (parentElem: Element, e: MouseEvent<HTMLHeadingElement>) => {\n const parentLeft = parentElem.getBoundingClientRect().left,\n parentTop = parentElem.getBoundingClientRect().top;\n\n const after = window.getComputedStyle(parentElem, ':after');\n\n const afterStart = parentLeft + parseInt(after.getPropertyValue('left'), 10),\n afterEnd = afterStart + parseInt(after.width, 10);\n\n const afterYStart = parentTop + parseInt(after.getPropertyValue('top'), 10),\n afterYEnd = afterYStart + parseInt(after.height, 10);\n\n const mouseX = e.clientX,\n mouseY = e.clientY;\n\n const isAfterClicked: boolean =\n mouseX >= afterStart &&\n mouseX <= afterEnd &&\n mouseY >= afterYStart &&\n mouseY <= afterYEnd;\n\n return isAfterClicked;\n};\n\nconst HeadingWrapper: HeadingType = ({\n H,\n children,\n className,\n isClickable,\n ...props\n}) => {\n const id = typeof children === 'string' ? getId(children) : undefined;\n\n const onClick = (e: MouseEvent<HTMLHeadingElement>) => {\n const { id } = e.currentTarget;\n\n const isAfterClicker = afterClick(e.currentTarget, e);\n\n if (isAfterClicker && typeof id === 'string') {\n const urlWithoutHash = window.location.href.split('#')[0];\n const url = `${urlWithoutHash}#${id}`;\n\n // copy the url to the clipboard\n navigator.clipboard.writeText(url);\n\n scrollToHash(id);\n }\n };\n\n return (\n <H\n id={id}\n onClick={isClickable ? onClick : undefined}\n aria-label={\n isClickable\n ? `Click to scroll to section ${id} and copy the link to the clipboard`\n : undefined\n }\n className={cn(isClickable && styledAfter, className)}\n {...props}\n >\n {children}\n </H>\n );\n};\n\nexport const H1: FC<HeadingProps> = ({ isClickable: _, ...props }) => (\n <StyledH1 {...props} />\n);\n\nexport const H2: FC<HeadingProps> = ({ isClickable = false, ...props }) => (\n <HeadingWrapper H={StyledH2} isClickable={isClickable} {...props} />\n);\nexport const H3: FC<HeadingProps> = ({ isClickable = false, ...props }) => (\n <HeadingWrapper H={StyledH3} isClickable={isClickable} {...props} />\n);\nexport const H4: FC<HeadingProps> = ({ isClickable = false, ...props }) => (\n <HeadingWrapper H={StyledH4} isClickable={isClickable} {...props} />\n);\nexport const H5: FC<HeadingProps> = ({ isClickable = false, ...props }) => (\n <HeadingWrapper H={StyledH5} isClickable={isClickable} {...props} />\n);\n"],"names":["jsx","cn","id"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../src/components/Headers/index.tsx"],"sourcesContent":["import type { FC, HTMLAttributes, MouseEvent } from 'react';\nimport { cn } from '../../utils/cn';\n\nconst styledHeading = `relative scroll-mb-8 scroll-mt-[30vh] scroll-p-8`;\nconst styledAfter = `after:content-['#'] after:scale-75 after:px-6 after:text-neutral after:absolute after:top-0 after:h-full after:-left-12 after:hover:cursor-pointer dark:after:text-neutral-dark after:absolute after:to-neutral after:md:opacity-0 after:transition-opacity hover:after:opacity-80 after:duration-200 after:delay-100`;\n\nconst StyledH1: FC<HTMLAttributes<HTMLHeadingElement>> = ({\n className,\n ...props\n}) => (\n // eslint-disable-next-line jsx-a11y/heading-has-content\n <h1 className={cn('mt-5 text-2xl font-bold', className)} {...props} />\n);\n\nconst StyledH2: FC<HTMLAttributes<HTMLHeadingElement>> = ({\n className,\n ...props\n}) => (\n // eslint-disable-next-line jsx-a11y/heading-has-content\n <h2\n className={cn('mt-5 text-2xl font-bold', styledHeading, className)}\n {...props}\n />\n);\n\nconst StyledH3: FC<HTMLAttributes<HTMLHeadingElement>> = ({\n className,\n ...props\n}) => (\n // eslint-disable-next-line jsx-a11y/heading-has-content\n <h3\n className={cn('mt-3 text-xl font-bold', styledHeading, className)}\n {...props}\n />\n);\n\nconst StyledH4: FC<HTMLAttributes<HTMLHeadingElement>> = ({\n className,\n ...props\n}) => (\n // eslint-disable-next-line jsx-a11y/heading-has-content\n <h4\n className={cn('mt-3 text-lg font-bold', styledHeading, className)}\n {...props}\n />\n);\n\nconst StyledH5: FC<HTMLAttributes<HTMLHeadingElement>> = ({\n className,\n ...props\n}) => (\n // eslint-disable-next-line jsx-a11y/heading-has-content\n <h5\n className={cn('mt-3 text-base font-bold', styledHeading, className)}\n {...props}\n />\n);\n\ntype HeadingProps = HTMLAttributes<HTMLHeadingElement> & {\n isClickable?: boolean;\n};\ntype HeadingGlobalProps = HeadingProps & {\n H: FC<HTMLAttributes<HTMLHeadingElement>>;\n};\ntype HeadingType = (props: HeadingGlobalProps) => JSX.Element;\n\nconst getId = (children: string) =>\n String(children)\n // replace accents\n .normalize('NFD')\n .replace(/[\\u0300-\\u036f]/g, '')\n // replace spaces\n .replace(/\\s+/g, '-')\n .toLowerCase();\n\nconst scrollToHash = (id: string) => {\n const element = document.getElementById(id);\n const offset = 150;\n const y =\n (element?.getBoundingClientRect()?.top ?? 0) + window.scrollY - offset;\n\n window.scrollTo({ top: y, behavior: 'smooth' });\n};\n\nconst afterClick = (parentElem: Element, e: MouseEvent<HTMLHeadingElement>) => {\n const parentLeft = parentElem.getBoundingClientRect().left,\n parentTop = parentElem.getBoundingClientRect().top;\n\n const after = window.getComputedStyle(parentElem, ':after');\n\n const afterStart = parentLeft + parseInt(after.getPropertyValue('left'), 10),\n afterEnd = afterStart + parseInt(after.width, 10);\n\n const afterYStart = parentTop + parseInt(after.getPropertyValue('top'), 10),\n afterYEnd = afterYStart + parseInt(after.height, 10);\n\n const mouseX = e.clientX,\n mouseY = e.clientY;\n\n const isAfterClicked: boolean =\n mouseX >= afterStart &&\n mouseX <= afterEnd &&\n mouseY >= afterYStart &&\n mouseY <= afterYEnd;\n\n return isAfterClicked;\n};\n\nconst HeadingWrapper: HeadingType = ({\n H,\n children,\n className,\n isClickable,\n ...props\n}) => {\n const id = typeof children === 'string' ? getId(children) : undefined;\n\n const onClick = (e: MouseEvent<HTMLHeadingElement>) => {\n const { id } = e.currentTarget;\n\n const isAfterClicker = afterClick(e.currentTarget, e);\n\n if (isAfterClicker && typeof id === 'string') {\n const urlWithoutHash = window.location.href.split('#')[0];\n const url = `${urlWithoutHash}#${id}`;\n\n // copy the url to the clipboard\n navigator.clipboard.writeText(url);\n\n scrollToHash(id);\n }\n };\n\n return (\n <H\n id={id}\n onClick={isClickable ? onClick : undefined}\n aria-label={\n isClickable\n ? `Click to scroll to section ${id} and copy the link to the clipboard`\n : undefined\n }\n className={cn(isClickable && styledAfter, className)}\n {...props}\n >\n {children}\n </H>\n );\n};\n\nexport const H1: FC<HeadingProps> = ({ isClickable: _, ...props }) => (\n <StyledH1 {...props} />\n);\n\nexport const H2: FC<HeadingProps> = ({ isClickable = false, ...props }) => (\n <HeadingWrapper H={StyledH2} isClickable={isClickable} {...props} />\n);\nexport const H3: FC<HeadingProps> = ({ isClickable = false, ...props }) => (\n <HeadingWrapper H={StyledH3} isClickable={isClickable} {...props} />\n);\nexport const H4: FC<HeadingProps> = ({ isClickable = false, ...props }) => (\n <HeadingWrapper H={StyledH4} isClickable={isClickable} {...props} />\n);\nexport const H5: FC<HeadingProps> = ({ isClickable = false, ...props }) => (\n <HeadingWrapper H={StyledH5} isClickable={isClickable} {...props} />\n);\n"],"names":["jsx","cn","id"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { j as jsxRuntimeExports } from "../../jsx-runtime-DaNGiM0W.js";
2
2
  import { cn } from "../../utils/cn.mjs";
3
- const styledHeading = `relative scroll-m-8 scroll-p-8`;
3
+ const styledHeading = `relative scroll-mb-8 scroll-mt-[30vh] scroll-p-8`;
4
4
  const styledAfter = `after:content-['#'] after:scale-75 after:px-6 after:text-neutral after:absolute after:top-0 after:h-full after:-left-12 after:hover:cursor-pointer dark:after:text-neutral-dark after:absolute after:to-neutral after:md:opacity-0 after:transition-opacity hover:after:opacity-80 after:duration-200 after:delay-100`;
5
5
  const StyledH1 = ({
6
6
  className,
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/components/Headers/index.tsx"],"sourcesContent":["import type { FC, HTMLAttributes, MouseEvent } from 'react';\nimport { cn } from '../../utils/cn';\n\nconst styledHeading = `relative scroll-m-8 scroll-p-8`;\nconst styledAfter = `after:content-['#'] after:scale-75 after:px-6 after:text-neutral after:absolute after:top-0 after:h-full after:-left-12 after:hover:cursor-pointer dark:after:text-neutral-dark after:absolute after:to-neutral after:md:opacity-0 after:transition-opacity hover:after:opacity-80 after:duration-200 after:delay-100`;\n\nconst StyledH1: FC<HTMLAttributes<HTMLHeadingElement>> = ({\n className,\n ...props\n}) => (\n // eslint-disable-next-line jsx-a11y/heading-has-content\n <h1 className={cn('mt-5 text-2xl font-bold', className)} {...props} />\n);\n\nconst StyledH2: FC<HTMLAttributes<HTMLHeadingElement>> = ({\n className,\n ...props\n}) => (\n // eslint-disable-next-line jsx-a11y/heading-has-content\n <h2\n className={cn('mt-5 text-2xl font-bold', styledHeading, className)}\n {...props}\n />\n);\n\nconst StyledH3: FC<HTMLAttributes<HTMLHeadingElement>> = ({\n className,\n ...props\n}) => (\n // eslint-disable-next-line jsx-a11y/heading-has-content\n <h3\n className={cn('mt-3 text-xl font-bold', styledHeading, className)}\n {...props}\n />\n);\n\nconst StyledH4: FC<HTMLAttributes<HTMLHeadingElement>> = ({\n className,\n ...props\n}) => (\n // eslint-disable-next-line jsx-a11y/heading-has-content\n <h4\n className={cn('mt-3 text-lg font-bold', styledHeading, className)}\n {...props}\n />\n);\n\nconst StyledH5: FC<HTMLAttributes<HTMLHeadingElement>> = ({\n className,\n ...props\n}) => (\n // eslint-disable-next-line jsx-a11y/heading-has-content\n <h5\n className={cn('mt-3 text-base font-bold', styledHeading, className)}\n {...props}\n />\n);\n\ntype HeadingProps = HTMLAttributes<HTMLHeadingElement> & {\n isClickable?: boolean;\n};\ntype HeadingGlobalProps = HeadingProps & {\n H: FC<HTMLAttributes<HTMLHeadingElement>>;\n};\ntype HeadingType = (props: HeadingGlobalProps) => JSX.Element;\n\nconst getId = (children: string) =>\n String(children)\n // replace accents\n .normalize('NFD')\n .replace(/[\\u0300-\\u036f]/g, '')\n // replace spaces\n .replace(/\\s+/g, '-')\n .toLowerCase();\n\nconst scrollToHash = (id: string) => {\n const element = document.getElementById(id);\n const offset = 150;\n const y =\n (element?.getBoundingClientRect()?.top ?? 0) + window.scrollY - offset;\n\n window.scrollTo({ top: y, behavior: 'smooth' });\n};\n\nconst afterClick = (parentElem: Element, e: MouseEvent<HTMLHeadingElement>) => {\n const parentLeft = parentElem.getBoundingClientRect().left,\n parentTop = parentElem.getBoundingClientRect().top;\n\n const after = window.getComputedStyle(parentElem, ':after');\n\n const afterStart = parentLeft + parseInt(after.getPropertyValue('left'), 10),\n afterEnd = afterStart + parseInt(after.width, 10);\n\n const afterYStart = parentTop + parseInt(after.getPropertyValue('top'), 10),\n afterYEnd = afterYStart + parseInt(after.height, 10);\n\n const mouseX = e.clientX,\n mouseY = e.clientY;\n\n const isAfterClicked: boolean =\n mouseX >= afterStart &&\n mouseX <= afterEnd &&\n mouseY >= afterYStart &&\n mouseY <= afterYEnd;\n\n return isAfterClicked;\n};\n\nconst HeadingWrapper: HeadingType = ({\n H,\n children,\n className,\n isClickable,\n ...props\n}) => {\n const id = typeof children === 'string' ? getId(children) : undefined;\n\n const onClick = (e: MouseEvent<HTMLHeadingElement>) => {\n const { id } = e.currentTarget;\n\n const isAfterClicker = afterClick(e.currentTarget, e);\n\n if (isAfterClicker && typeof id === 'string') {\n const urlWithoutHash = window.location.href.split('#')[0];\n const url = `${urlWithoutHash}#${id}`;\n\n // copy the url to the clipboard\n navigator.clipboard.writeText(url);\n\n scrollToHash(id);\n }\n };\n\n return (\n <H\n id={id}\n onClick={isClickable ? onClick : undefined}\n aria-label={\n isClickable\n ? `Click to scroll to section ${id} and copy the link to the clipboard`\n : undefined\n }\n className={cn(isClickable && styledAfter, className)}\n {...props}\n >\n {children}\n </H>\n );\n};\n\nexport const H1: FC<HeadingProps> = ({ isClickable: _, ...props }) => (\n <StyledH1 {...props} />\n);\n\nexport const H2: FC<HeadingProps> = ({ isClickable = false, ...props }) => (\n <HeadingWrapper H={StyledH2} isClickable={isClickable} {...props} />\n);\nexport const H3: FC<HeadingProps> = ({ isClickable = false, ...props }) => (\n <HeadingWrapper H={StyledH3} isClickable={isClickable} {...props} />\n);\nexport const H4: FC<HeadingProps> = ({ isClickable = false, ...props }) => (\n <HeadingWrapper H={StyledH4} isClickable={isClickable} {...props} />\n);\nexport const H5: FC<HeadingProps> = ({ isClickable = false, ...props }) => (\n <HeadingWrapper H={StyledH5} isClickable={isClickable} {...props} />\n);\n"],"names":["jsx","id"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/components/Headers/index.tsx"],"sourcesContent":["import type { FC, HTMLAttributes, MouseEvent } from 'react';\nimport { cn } from '../../utils/cn';\n\nconst styledHeading = `relative scroll-mb-8 scroll-mt-[30vh] scroll-p-8`;\nconst styledAfter = `after:content-['#'] after:scale-75 after:px-6 after:text-neutral after:absolute after:top-0 after:h-full after:-left-12 after:hover:cursor-pointer dark:after:text-neutral-dark after:absolute after:to-neutral after:md:opacity-0 after:transition-opacity hover:after:opacity-80 after:duration-200 after:delay-100`;\n\nconst StyledH1: FC<HTMLAttributes<HTMLHeadingElement>> = ({\n className,\n ...props\n}) => (\n // eslint-disable-next-line jsx-a11y/heading-has-content\n <h1 className={cn('mt-5 text-2xl font-bold', className)} {...props} />\n);\n\nconst StyledH2: FC<HTMLAttributes<HTMLHeadingElement>> = ({\n className,\n ...props\n}) => (\n // eslint-disable-next-line jsx-a11y/heading-has-content\n <h2\n className={cn('mt-5 text-2xl font-bold', styledHeading, className)}\n {...props}\n />\n);\n\nconst StyledH3: FC<HTMLAttributes<HTMLHeadingElement>> = ({\n className,\n ...props\n}) => (\n // eslint-disable-next-line jsx-a11y/heading-has-content\n <h3\n className={cn('mt-3 text-xl font-bold', styledHeading, className)}\n {...props}\n />\n);\n\nconst StyledH4: FC<HTMLAttributes<HTMLHeadingElement>> = ({\n className,\n ...props\n}) => (\n // eslint-disable-next-line jsx-a11y/heading-has-content\n <h4\n className={cn('mt-3 text-lg font-bold', styledHeading, className)}\n {...props}\n />\n);\n\nconst StyledH5: FC<HTMLAttributes<HTMLHeadingElement>> = ({\n className,\n ...props\n}) => (\n // eslint-disable-next-line jsx-a11y/heading-has-content\n <h5\n className={cn('mt-3 text-base font-bold', styledHeading, className)}\n {...props}\n />\n);\n\ntype HeadingProps = HTMLAttributes<HTMLHeadingElement> & {\n isClickable?: boolean;\n};\ntype HeadingGlobalProps = HeadingProps & {\n H: FC<HTMLAttributes<HTMLHeadingElement>>;\n};\ntype HeadingType = (props: HeadingGlobalProps) => JSX.Element;\n\nconst getId = (children: string) =>\n String(children)\n // replace accents\n .normalize('NFD')\n .replace(/[\\u0300-\\u036f]/g, '')\n // replace spaces\n .replace(/\\s+/g, '-')\n .toLowerCase();\n\nconst scrollToHash = (id: string) => {\n const element = document.getElementById(id);\n const offset = 150;\n const y =\n (element?.getBoundingClientRect()?.top ?? 0) + window.scrollY - offset;\n\n window.scrollTo({ top: y, behavior: 'smooth' });\n};\n\nconst afterClick = (parentElem: Element, e: MouseEvent<HTMLHeadingElement>) => {\n const parentLeft = parentElem.getBoundingClientRect().left,\n parentTop = parentElem.getBoundingClientRect().top;\n\n const after = window.getComputedStyle(parentElem, ':after');\n\n const afterStart = parentLeft + parseInt(after.getPropertyValue('left'), 10),\n afterEnd = afterStart + parseInt(after.width, 10);\n\n const afterYStart = parentTop + parseInt(after.getPropertyValue('top'), 10),\n afterYEnd = afterYStart + parseInt(after.height, 10);\n\n const mouseX = e.clientX,\n mouseY = e.clientY;\n\n const isAfterClicked: boolean =\n mouseX >= afterStart &&\n mouseX <= afterEnd &&\n mouseY >= afterYStart &&\n mouseY <= afterYEnd;\n\n return isAfterClicked;\n};\n\nconst HeadingWrapper: HeadingType = ({\n H,\n children,\n className,\n isClickable,\n ...props\n}) => {\n const id = typeof children === 'string' ? getId(children) : undefined;\n\n const onClick = (e: MouseEvent<HTMLHeadingElement>) => {\n const { id } = e.currentTarget;\n\n const isAfterClicker = afterClick(e.currentTarget, e);\n\n if (isAfterClicker && typeof id === 'string') {\n const urlWithoutHash = window.location.href.split('#')[0];\n const url = `${urlWithoutHash}#${id}`;\n\n // copy the url to the clipboard\n navigator.clipboard.writeText(url);\n\n scrollToHash(id);\n }\n };\n\n return (\n <H\n id={id}\n onClick={isClickable ? onClick : undefined}\n aria-label={\n isClickable\n ? `Click to scroll to section ${id} and copy the link to the clipboard`\n : undefined\n }\n className={cn(isClickable && styledAfter, className)}\n {...props}\n >\n {children}\n </H>\n );\n};\n\nexport const H1: FC<HeadingProps> = ({ isClickable: _, ...props }) => (\n <StyledH1 {...props} />\n);\n\nexport const H2: FC<HeadingProps> = ({ isClickable = false, ...props }) => (\n <HeadingWrapper H={StyledH2} isClickable={isClickable} {...props} />\n);\nexport const H3: FC<HeadingProps> = ({ isClickable = false, ...props }) => (\n <HeadingWrapper H={StyledH3} isClickable={isClickable} {...props} />\n);\nexport const H4: FC<HeadingProps> = ({ isClickable = false, ...props }) => (\n <HeadingWrapper H={StyledH4} isClickable={isClickable} {...props} />\n);\nexport const H5: FC<HeadingProps> = ({ isClickable = false, ...props }) => (\n <HeadingWrapper H={StyledH5} isClickable={isClickable} {...props} />\n);\n"],"names":["jsx","id"],"mappings":"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"}
@@ -0,0 +1,141 @@
1
+ "use client";
2
+ "use strict";
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
4
+ const jsxRuntime = require("../../jsx-runtime-XHKiWCTo.cjs");
5
+ const react = require("@monaco-editor/react");
6
+ const lucideReact = require("lucide-react");
7
+ const require$$0 = require("react");
8
+ const CopyToClipboard = require("react-copy-to-clipboard");
9
+ const utils_cn = require("../../utils/cn.cjs");
10
+ const components_Button_Button = require("../Button/Button.cjs");
11
+ const components_Loader_index = require("../Loader/index.cjs");
12
+ const MonacoCode = ({
13
+ children,
14
+ language,
15
+ isDarkMode,
16
+ showLineNumbers,
17
+ showCopyButton = true,
18
+ isReadOnly = false,
19
+ onChange
20
+ }) => {
21
+ const [copied, setCopied] = require$$0.useState(false);
22
+ const containerRef = require$$0.useRef(null);
23
+ const ideRef = require$$0.useRef(null);
24
+ const [editorSize, setEditorSize] = require$$0.useState({ height: 0, width: 0 });
25
+ require$$0.useEffect(() => {
26
+ const timer = setTimeout(() => {
27
+ setCopied(false);
28
+ }, 1e3);
29
+ return () => clearTimeout(timer);
30
+ }, [copied]);
31
+ const handleMountIde = require$$0.useCallback(
32
+ (editor, monaco) => {
33
+ ideRef.current = editor;
34
+ const contentHeight = (editor.getContentHeight() ?? 0) + 25;
35
+ monaco.editor.defineTheme("transparent-theme", {
36
+ base: isDarkMode ? "vs-dark" : "vs",
37
+ inherit: true,
38
+ rules: [],
39
+ colors: {
40
+ "editor.background": "#00000000"
41
+ }
42
+ });
43
+ monaco.languages.typescript.typescriptDefaults.setDiagnosticsOptions({
44
+ noSemanticValidation: true,
45
+ // Disables type checking
46
+ noSyntaxValidation: true
47
+ // Disables syntax errors
48
+ });
49
+ monaco.languages.typescript.javascriptDefaults.setDiagnosticsOptions({
50
+ noSemanticValidation: true,
51
+ noSyntaxValidation: true
52
+ });
53
+ monaco.languages.typescript.typescriptDefaults.setCompilerOptions({
54
+ noLib: true,
55
+ allowNonTsExtensions: true
56
+ });
57
+ monaco.languages.typescript.javascriptDefaults.setCompilerOptions({
58
+ noLib: true,
59
+ allowNonTsExtensions: true
60
+ });
61
+ setEditorSize({
62
+ height: contentHeight,
63
+ width: containerRef.current?.clientWidth ?? 0
64
+ });
65
+ },
66
+ [isDarkMode]
67
+ );
68
+ const isShowLineNumbers = showLineNumbers ?? children.split("\n").length > 1;
69
+ return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsxs(
70
+ "div",
71
+ {
72
+ className: utils_cn.cn(
73
+ "relative h-full w-full text-sm",
74
+ showLineNumbers && "ml-0"
75
+ ),
76
+ children: [
77
+ showCopyButton && /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(CopyToClipboard, { text: children, onCopy: () => setCopied(true), children: /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(
78
+ components_Button_Button.Button,
79
+ {
80
+ className: utils_cn.cn(
81
+ "absolute right-3 top-3 z-50",
82
+ copied && "!text-success/70 !dark:text-success-dark/70"
83
+ ),
84
+ label: "Cpoy code",
85
+ variant: "hoverable",
86
+ color: "text",
87
+ size: "icon-sm",
88
+ Icon: copied ? lucideReact.CopyCheckIcon : lucideReact.CopyIcon
89
+ }
90
+ ) }),
91
+ /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(
92
+ "div",
93
+ {
94
+ className: "grid size-full grid-cols-[0px] overflow-auto",
95
+ ref: containerRef,
96
+ children: /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(
97
+ react.Editor,
98
+ {
99
+ ...editorSize,
100
+ defaultLanguage: "typescript",
101
+ language,
102
+ loading: /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(components_Loader_index.Loader, {}),
103
+ defaultValue: String(children).replace(/\n$/, ""),
104
+ onMount: handleMountIde,
105
+ onChange,
106
+ options: {
107
+ readOnly: isReadOnly,
108
+ cursorStyle: "line",
109
+ minimap: { enabled: false },
110
+ scrollbar: {
111
+ vertical: "hidden",
112
+ verticalScrollbarSize: 0,
113
+ alwaysConsumeMouseWheel: false
114
+ },
115
+ folding: false,
116
+ // Disable code folding
117
+ renderValidationDecorations: "off",
118
+ // Disable error/warning decorations
119
+ quickSuggestions: false,
120
+ // Disable IntelliSense
121
+ parameterHints: { enabled: false },
122
+ // Disable parameter hints
123
+ suggestOnTriggerCharacters: false,
124
+ // Disable suggestions on typing
125
+ mouseWheelScrollSensitivity: 0,
126
+ fastScrollSensitivity: 0,
127
+ scrollBeyondLastLine: false,
128
+ lineNumbers: isShowLineNumbers ? "on" : "off"
129
+ },
130
+ theme: "transparent-theme",
131
+ className: "my-2 rounded-md"
132
+ }
133
+ )
134
+ }
135
+ )
136
+ ]
137
+ }
138
+ );
139
+ };
140
+ exports.MonacoCode = MonacoCode;
141
+ //# sourceMappingURL=CodeRender copy.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CodeRender copy.cjs","sources":["../../../src/components/IDE/CodeRender copy.tsx"],"sourcesContent":["'use client';\n\nimport { Editor, OnChange, OnMount } from '@monaco-editor/react';\nimport { CopyCheckIcon, CopyIcon } from 'lucide-react';\nimport { type FC, useEffect, useState, useRef, useCallback } from 'react';\nimport CopyToClipboard from 'react-copy-to-clipboard';\nimport { cn } from '../../utils/cn';\nimport { Button } from '../Button';\nimport { Loader } from '../Loader';\n\ntype CodeCompProps = {\n children: string;\n language: string;\n isDarkMode?: boolean;\n showLineNumbers?: boolean;\n showCopyButton?: boolean;\n isReadOnly?: boolean;\n onChange?: OnChange;\n};\n\nexport const MonacoCode: FC<CodeCompProps> = ({\n children,\n language,\n isDarkMode,\n showLineNumbers,\n showCopyButton = true,\n isReadOnly = false,\n onChange,\n}) => {\n const [copied, setCopied] = useState(false);\n const containerRef = useRef<HTMLDivElement>(null);\n const ideRef = useRef(null);\n const [editorSize, setEditorSize] = useState<{\n height: number;\n width: number;\n }>({ height: 0, width: 0 });\n\n useEffect(() => {\n const timer = setTimeout(() => {\n setCopied(false);\n }, 1000);\n return () => clearTimeout(timer);\n }, [copied]);\n\n const handleMountIde: OnMount = useCallback(\n (editor, monaco) => {\n // first time you set the height based on content Height\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ideRef.current = editor as any;\n const contentHeight = (editor.getContentHeight() ?? 0) + 25;\n\n monaco.editor.defineTheme('transparent-theme', {\n base: isDarkMode ? 'vs-dark' : 'vs',\n inherit: true,\n rules: [],\n colors: {\n 'editor.background': '#00000000',\n },\n });\n\n // Disable TypeScript diagnostics\n monaco.languages.typescript.typescriptDefaults.setDiagnosticsOptions({\n noSemanticValidation: true, // Disables type checking\n noSyntaxValidation: true, // Disables syntax errors\n });\n\n // Disable JavaScript diagnostics\n monaco.languages.typescript.javascriptDefaults.setDiagnosticsOptions({\n noSemanticValidation: true,\n noSyntaxValidation: true,\n });\n\n // Disable unnecessary language features (e.g., suggestions, quick fixes)\n monaco.languages.typescript.typescriptDefaults.setCompilerOptions({\n noLib: true,\n allowNonTsExtensions: true,\n });\n\n monaco.languages.typescript.javascriptDefaults.setCompilerOptions({\n noLib: true,\n allowNonTsExtensions: true,\n });\n\n setEditorSize({\n height: contentHeight,\n width: containerRef.current?.clientWidth ?? 0,\n });\n },\n [isDarkMode]\n );\n\n const isShowLineNumbers = showLineNumbers ?? children.split('\\n').length > 1;\n\n return (\n <div\n className={cn(\n 'relative h-full w-full text-sm',\n showLineNumbers && 'ml-0'\n )}\n >\n {showCopyButton && (\n <CopyToClipboard text={children} onCopy={() => setCopied(true)}>\n <Button\n className={cn(\n 'absolute right-3 top-3 z-50',\n copied && '!text-success/70 !dark:text-success-dark/70'\n )}\n label=\"Cpoy code\"\n variant=\"hoverable\"\n color=\"text\"\n size=\"icon-sm\"\n Icon={copied ? CopyCheckIcon : CopyIcon}\n />\n </CopyToClipboard>\n )}\n <div\n className=\"grid size-full grid-cols-[0px] overflow-auto\"\n ref={containerRef}\n >\n <Editor\n {...editorSize}\n defaultLanguage=\"typescript\"\n language={language}\n loading={<Loader />}\n defaultValue={String(children).replace(/\\n$/, '')}\n onMount={handleMountIde}\n onChange={onChange}\n options={{\n readOnly: isReadOnly,\n cursorStyle: 'line',\n minimap: { enabled: false },\n scrollbar: {\n vertical: 'hidden',\n verticalScrollbarSize: 0,\n alwaysConsumeMouseWheel: false,\n },\n folding: false, // Disable code folding\n renderValidationDecorations: 'off', // Disable error/warning decorations\n quickSuggestions: false, // Disable IntelliSense\n parameterHints: { enabled: false }, // Disable parameter hints\n suggestOnTriggerCharacters: false, // Disable suggestions on typing\n\n mouseWheelScrollSensitivity: 0,\n fastScrollSensitivity: 0,\n scrollBeyondLastLine: false,\n lineNumbers: isShowLineNumbers ? 'on' : 'off',\n }}\n theme=\"transparent-theme\"\n className=\"my-2 rounded-md\"\n />\n </div>\n </div>\n );\n};\n"],"names":["useState","useRef","useEffect","useCallback","jsxs","cn","jsx","Button","CopyCheckIcon","CopyIcon","Editor","Loader"],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { OnChange } from '@monaco-editor/react';
2
+ import { FC } from 'react';
3
+ type CodeCompProps = {
4
+ children: string;
5
+ language: string;
6
+ isDarkMode?: boolean;
7
+ showLineNumbers?: boolean;
8
+ showCopyButton?: boolean;
9
+ isReadOnly?: boolean;
10
+ onChange?: OnChange;
11
+ };
12
+ export declare const MonacoCode: FC<CodeCompProps>;
13
+ export {};
14
+ //# sourceMappingURL=CodeRender%20copy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CodeRender copy.d.ts","sourceRoot":"","sources":["../../../src/components/IDE/CodeRender copy.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAU,QAAQ,EAAW,MAAM,sBAAsB,CAAC;AAEjE,OAAO,EAAE,KAAK,EAAE,EAA4C,MAAM,OAAO,CAAC;AAM1E,KAAK,aAAa,GAAG;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,EAAE,CAAC,aAAa,CAqIxC,CAAC"}
@@ -0,0 +1,141 @@
1
+ "use client";
2
+ import { j as jsxRuntimeExports } from "../../jsx-runtime-DaNGiM0W.js";
3
+ import { Editor } from "@monaco-editor/react";
4
+ import { CopyCheckIcon, CopyIcon } from "lucide-react";
5
+ import { useState, useRef, useEffect, useCallback } from "react";
6
+ import CopyToClipboard from "react-copy-to-clipboard";
7
+ import { cn } from "../../utils/cn.mjs";
8
+ import { Button } from "../Button/Button.mjs";
9
+ import { Loader } from "../Loader/index.mjs";
10
+ const MonacoCode = ({
11
+ children,
12
+ language,
13
+ isDarkMode,
14
+ showLineNumbers,
15
+ showCopyButton = true,
16
+ isReadOnly = false,
17
+ onChange
18
+ }) => {
19
+ const [copied, setCopied] = useState(false);
20
+ const containerRef = useRef(null);
21
+ const ideRef = useRef(null);
22
+ const [editorSize, setEditorSize] = useState({ height: 0, width: 0 });
23
+ useEffect(() => {
24
+ const timer = setTimeout(() => {
25
+ setCopied(false);
26
+ }, 1e3);
27
+ return () => clearTimeout(timer);
28
+ }, [copied]);
29
+ const handleMountIde = useCallback(
30
+ (editor, monaco) => {
31
+ ideRef.current = editor;
32
+ const contentHeight = (editor.getContentHeight() ?? 0) + 25;
33
+ monaco.editor.defineTheme("transparent-theme", {
34
+ base: isDarkMode ? "vs-dark" : "vs",
35
+ inherit: true,
36
+ rules: [],
37
+ colors: {
38
+ "editor.background": "#00000000"
39
+ }
40
+ });
41
+ monaco.languages.typescript.typescriptDefaults.setDiagnosticsOptions({
42
+ noSemanticValidation: true,
43
+ // Disables type checking
44
+ noSyntaxValidation: true
45
+ // Disables syntax errors
46
+ });
47
+ monaco.languages.typescript.javascriptDefaults.setDiagnosticsOptions({
48
+ noSemanticValidation: true,
49
+ noSyntaxValidation: true
50
+ });
51
+ monaco.languages.typescript.typescriptDefaults.setCompilerOptions({
52
+ noLib: true,
53
+ allowNonTsExtensions: true
54
+ });
55
+ monaco.languages.typescript.javascriptDefaults.setCompilerOptions({
56
+ noLib: true,
57
+ allowNonTsExtensions: true
58
+ });
59
+ setEditorSize({
60
+ height: contentHeight,
61
+ width: containerRef.current?.clientWidth ?? 0
62
+ });
63
+ },
64
+ [isDarkMode]
65
+ );
66
+ const isShowLineNumbers = showLineNumbers ?? children.split("\n").length > 1;
67
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs(
68
+ "div",
69
+ {
70
+ className: cn(
71
+ "relative h-full w-full text-sm",
72
+ showLineNumbers && "ml-0"
73
+ ),
74
+ children: [
75
+ showCopyButton && /* @__PURE__ */ jsxRuntimeExports.jsx(CopyToClipboard, { text: children, onCopy: () => setCopied(true), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
76
+ Button,
77
+ {
78
+ className: cn(
79
+ "absolute right-3 top-3 z-50",
80
+ copied && "!text-success/70 !dark:text-success-dark/70"
81
+ ),
82
+ label: "Cpoy code",
83
+ variant: "hoverable",
84
+ color: "text",
85
+ size: "icon-sm",
86
+ Icon: copied ? CopyCheckIcon : CopyIcon
87
+ }
88
+ ) }),
89
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
90
+ "div",
91
+ {
92
+ className: "grid size-full grid-cols-[0px] overflow-auto",
93
+ ref: containerRef,
94
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(
95
+ Editor,
96
+ {
97
+ ...editorSize,
98
+ defaultLanguage: "typescript",
99
+ language,
100
+ loading: /* @__PURE__ */ jsxRuntimeExports.jsx(Loader, {}),
101
+ defaultValue: String(children).replace(/\n$/, ""),
102
+ onMount: handleMountIde,
103
+ onChange,
104
+ options: {
105
+ readOnly: isReadOnly,
106
+ cursorStyle: "line",
107
+ minimap: { enabled: false },
108
+ scrollbar: {
109
+ vertical: "hidden",
110
+ verticalScrollbarSize: 0,
111
+ alwaysConsumeMouseWheel: false
112
+ },
113
+ folding: false,
114
+ // Disable code folding
115
+ renderValidationDecorations: "off",
116
+ // Disable error/warning decorations
117
+ quickSuggestions: false,
118
+ // Disable IntelliSense
119
+ parameterHints: { enabled: false },
120
+ // Disable parameter hints
121
+ suggestOnTriggerCharacters: false,
122
+ // Disable suggestions on typing
123
+ mouseWheelScrollSensitivity: 0,
124
+ fastScrollSensitivity: 0,
125
+ scrollBeyondLastLine: false,
126
+ lineNumbers: isShowLineNumbers ? "on" : "off"
127
+ },
128
+ theme: "transparent-theme",
129
+ className: "my-2 rounded-md"
130
+ }
131
+ )
132
+ }
133
+ )
134
+ ]
135
+ }
136
+ );
137
+ };
138
+ export {
139
+ MonacoCode
140
+ };
141
+ //# sourceMappingURL=CodeRender copy.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CodeRender copy.mjs","sources":["../../../src/components/IDE/CodeRender copy.tsx"],"sourcesContent":["'use client';\n\nimport { Editor, OnChange, OnMount } from '@monaco-editor/react';\nimport { CopyCheckIcon, CopyIcon } from 'lucide-react';\nimport { type FC, useEffect, useState, useRef, useCallback } from 'react';\nimport CopyToClipboard from 'react-copy-to-clipboard';\nimport { cn } from '../../utils/cn';\nimport { Button } from '../Button';\nimport { Loader } from '../Loader';\n\ntype CodeCompProps = {\n children: string;\n language: string;\n isDarkMode?: boolean;\n showLineNumbers?: boolean;\n showCopyButton?: boolean;\n isReadOnly?: boolean;\n onChange?: OnChange;\n};\n\nexport const MonacoCode: FC<CodeCompProps> = ({\n children,\n language,\n isDarkMode,\n showLineNumbers,\n showCopyButton = true,\n isReadOnly = false,\n onChange,\n}) => {\n const [copied, setCopied] = useState(false);\n const containerRef = useRef<HTMLDivElement>(null);\n const ideRef = useRef(null);\n const [editorSize, setEditorSize] = useState<{\n height: number;\n width: number;\n }>({ height: 0, width: 0 });\n\n useEffect(() => {\n const timer = setTimeout(() => {\n setCopied(false);\n }, 1000);\n return () => clearTimeout(timer);\n }, [copied]);\n\n const handleMountIde: OnMount = useCallback(\n (editor, monaco) => {\n // first time you set the height based on content Height\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ideRef.current = editor as any;\n const contentHeight = (editor.getContentHeight() ?? 0) + 25;\n\n monaco.editor.defineTheme('transparent-theme', {\n base: isDarkMode ? 'vs-dark' : 'vs',\n inherit: true,\n rules: [],\n colors: {\n 'editor.background': '#00000000',\n },\n });\n\n // Disable TypeScript diagnostics\n monaco.languages.typescript.typescriptDefaults.setDiagnosticsOptions({\n noSemanticValidation: true, // Disables type checking\n noSyntaxValidation: true, // Disables syntax errors\n });\n\n // Disable JavaScript diagnostics\n monaco.languages.typescript.javascriptDefaults.setDiagnosticsOptions({\n noSemanticValidation: true,\n noSyntaxValidation: true,\n });\n\n // Disable unnecessary language features (e.g., suggestions, quick fixes)\n monaco.languages.typescript.typescriptDefaults.setCompilerOptions({\n noLib: true,\n allowNonTsExtensions: true,\n });\n\n monaco.languages.typescript.javascriptDefaults.setCompilerOptions({\n noLib: true,\n allowNonTsExtensions: true,\n });\n\n setEditorSize({\n height: contentHeight,\n width: containerRef.current?.clientWidth ?? 0,\n });\n },\n [isDarkMode]\n );\n\n const isShowLineNumbers = showLineNumbers ?? children.split('\\n').length > 1;\n\n return (\n <div\n className={cn(\n 'relative h-full w-full text-sm',\n showLineNumbers && 'ml-0'\n )}\n >\n {showCopyButton && (\n <CopyToClipboard text={children} onCopy={() => setCopied(true)}>\n <Button\n className={cn(\n 'absolute right-3 top-3 z-50',\n copied && '!text-success/70 !dark:text-success-dark/70'\n )}\n label=\"Cpoy code\"\n variant=\"hoverable\"\n color=\"text\"\n size=\"icon-sm\"\n Icon={copied ? CopyCheckIcon : CopyIcon}\n />\n </CopyToClipboard>\n )}\n <div\n className=\"grid size-full grid-cols-[0px] overflow-auto\"\n ref={containerRef}\n >\n <Editor\n {...editorSize}\n defaultLanguage=\"typescript\"\n language={language}\n loading={<Loader />}\n defaultValue={String(children).replace(/\\n$/, '')}\n onMount={handleMountIde}\n onChange={onChange}\n options={{\n readOnly: isReadOnly,\n cursorStyle: 'line',\n minimap: { enabled: false },\n scrollbar: {\n vertical: 'hidden',\n verticalScrollbarSize: 0,\n alwaysConsumeMouseWheel: false,\n },\n folding: false, // Disable code folding\n renderValidationDecorations: 'off', // Disable error/warning decorations\n quickSuggestions: false, // Disable IntelliSense\n parameterHints: { enabled: false }, // Disable parameter hints\n suggestOnTriggerCharacters: false, // Disable suggestions on typing\n\n mouseWheelScrollSensitivity: 0,\n fastScrollSensitivity: 0,\n scrollBeyondLastLine: false,\n lineNumbers: isShowLineNumbers ? 'on' : 'off',\n }}\n theme=\"transparent-theme\"\n className=\"my-2 rounded-md\"\n />\n </div>\n </div>\n );\n};\n"],"names":["jsxs","jsx"],"mappings":"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"}