@intlayer/design-system 7.5.13 → 7.5.14

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 (520) hide show
  1. package/dist/esm/_virtual/rolldown_runtime.mjs +2 -2
  2. package/dist/esm/components/Accordion/Accordion.mjs.map +1 -1
  3. package/dist/esm/components/Avatar/index.mjs.map +1 -1
  4. package/dist/esm/components/Badge/index.mjs.map +1 -1
  5. package/dist/esm/components/Breadcrumb/index.mjs.map +1 -1
  6. package/dist/esm/components/Button/Button.mjs.map +1 -1
  7. package/dist/esm/components/Carousel/index.mjs.map +1 -1
  8. package/dist/esm/components/ClickOutsideDiv/index.mjs.map +1 -1
  9. package/dist/esm/components/CollapsibleTable/CollapsibleTable.mjs.map +1 -1
  10. package/dist/esm/components/Command/index.mjs.map +1 -1
  11. package/dist/esm/components/Container/index.mjs.map +1 -1
  12. package/dist/esm/components/ContentEditor/ContentEditor.mjs.map +1 -1
  13. package/dist/esm/components/ContentEditor/ContentEditorInput.mjs.map +1 -1
  14. package/dist/esm/components/ContentEditor/ContentEditorTextArea.mjs.map +1 -1
  15. package/dist/esm/components/ContentSelector/ContentSelector.mjs.map +1 -1
  16. package/dist/esm/components/CopyButton/index.mjs.map +1 -1
  17. package/dist/esm/components/CopyToClipboard/index.mjs.map +1 -1
  18. package/dist/esm/components/DictionaryEditor/DictionaryEditor.mjs.map +1 -1
  19. package/dist/esm/components/DictionaryEditor/ItemLayout.mjs.map +1 -1
  20. package/dist/esm/components/DictionaryEditor/NodeWrapper/ArrayWrapper.mjs.map +1 -1
  21. package/dist/esm/components/DictionaryEditor/NodeWrapper/ConditionWrapper.mjs.map +1 -1
  22. package/dist/esm/components/DictionaryEditor/NodeWrapper/EnumerationWrapper.mjs.map +1 -1
  23. package/dist/esm/components/DictionaryEditor/NodeWrapper/FileWrapper.mjs.map +1 -1
  24. package/dist/esm/components/DictionaryEditor/NodeWrapper/InsertionWrapper.mjs.map +1 -1
  25. package/dist/esm/components/DictionaryEditor/NodeWrapper/MarkdownWrapper.mjs.map +1 -1
  26. package/dist/esm/components/DictionaryEditor/NodeWrapper/NestedObjectWrapper.mjs.map +1 -1
  27. package/dist/esm/components/DictionaryEditor/NodeWrapper/StringWrapper.mjs.map +1 -1
  28. package/dist/esm/components/DictionaryEditor/NodeWrapper/TranslationWrapper.mjs.map +1 -1
  29. package/dist/esm/components/DictionaryEditor/NodeWrapper/index.mjs.map +1 -1
  30. package/dist/esm/components/DictionaryFieldEditor/ContentEditor.mjs.map +1 -1
  31. package/dist/esm/components/DictionaryFieldEditor/ContentEditorView/TextEditor.mjs.map +1 -1
  32. package/dist/esm/components/DictionaryFieldEditor/DictionaryCreationForm/DictionaryCreationForm.mjs.map +1 -1
  33. package/dist/esm/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.mjs.map +1 -1
  34. package/dist/esm/components/DictionaryFieldEditor/DictionaryFieldEditor.mjs.map +1 -1
  35. package/dist/esm/components/DictionaryFieldEditor/EnumKeyInput.mjs.map +1 -1
  36. package/dist/esm/components/DictionaryFieldEditor/JSONEditor.mjs.map +1 -1
  37. package/dist/esm/components/DictionaryFieldEditor/KeyPathBreadcrumb.mjs.map +1 -1
  38. package/dist/esm/components/DictionaryFieldEditor/NavigationView/NavigationViewNode.mjs.map +1 -1
  39. package/dist/esm/components/DictionaryFieldEditor/NodeTypeSelector.mjs.map +1 -1
  40. package/dist/esm/components/DictionaryFieldEditor/SaveForm/SaveForm.mjs.map +1 -1
  41. package/dist/esm/components/DictionaryFieldEditor/StructureEditor.mjs.map +1 -1
  42. package/dist/esm/components/DictionaryFieldEditor/StructureView/StructureView.mjs.map +1 -1
  43. package/dist/esm/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcher.mjs.map +1 -1
  44. package/dist/esm/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcherContext.mjs.map +1 -1
  45. package/dist/esm/components/DropDown/index.mjs.map +1 -1
  46. package/dist/esm/components/EditableField/EditableFieldInput.mjs.map +1 -1
  47. package/dist/esm/components/EditableField/EditableFieldLayout.mjs.map +1 -1
  48. package/dist/esm/components/EditableField/EditableFieldTextArea.mjs.map +1 -1
  49. package/dist/esm/components/ExpandCollapse/ExpandCollapse.mjs.map +1 -1
  50. package/dist/esm/components/Flags/Flag.mjs.map +1 -1
  51. package/dist/esm/components/Flags/flags.mjs +2 -2
  52. package/dist/esm/components/Footer/index.mjs.map +1 -1
  53. package/dist/esm/components/Form/FormControl.mjs.map +1 -1
  54. package/dist/esm/components/Form/FormDescription.mjs.map +1 -1
  55. package/dist/esm/components/Form/FormItem.mjs.map +1 -1
  56. package/dist/esm/components/Form/FormLabel.mjs.map +1 -1
  57. package/dist/esm/components/Form/FormMessage.mjs.map +1 -1
  58. package/dist/esm/components/Form/elements/AutoSizeTextAreaElement.mjs.map +1 -1
  59. package/dist/esm/components/Form/elements/CheckboxElement.mjs.map +1 -1
  60. package/dist/esm/components/Form/elements/FormElementWrapper.mjs.map +1 -1
  61. package/dist/esm/components/Form/elements/InputElement.mjs.map +1 -1
  62. package/dist/esm/components/Form/elements/InputPasswordElement.mjs.map +1 -1
  63. package/dist/esm/components/Form/elements/SearchInputElement.mjs.map +1 -1
  64. package/dist/esm/components/Form/elements/TextAreaElement.mjs.map +1 -1
  65. package/dist/esm/components/Form/layout/FormItemLayout.mjs.map +1 -1
  66. package/dist/esm/components/Form/layout/FormLabelLayout.mjs.map +1 -1
  67. package/dist/esm/components/Form/layout/RequiredStar.mjs.map +1 -1
  68. package/dist/esm/components/Headers/index.mjs.map +1 -1
  69. package/dist/esm/components/HeightResizer/index.mjs.map +1 -1
  70. package/dist/esm/components/HideShow/index.mjs.map +1 -1
  71. package/dist/esm/components/IDE/Code.mjs.map +1 -1
  72. package/dist/esm/components/IDE/CodeBlockClient.mjs.map +1 -1
  73. package/dist/esm/components/IDE/CodeBlockServer.mjs.map +1 -1
  74. package/dist/esm/components/IDE/CodeBlockShiki.mjs.map +1 -1
  75. package/dist/esm/components/IDE/CodeConditionalRenderer.mjs.map +1 -1
  76. package/dist/esm/components/IDE/CodeContext.mjs.map +1 -1
  77. package/dist/esm/components/IDE/CodeFormatSelector.mjs.map +1 -1
  78. package/dist/esm/components/IDE/ContentDeclarationFormatSelector.mjs.map +1 -1
  79. package/dist/esm/components/IDE/CopyCode.mjs.map +1 -1
  80. package/dist/esm/components/IDE/FileList.mjs.map +1 -1
  81. package/dist/esm/components/IDE/FileTree.mjs.map +1 -1
  82. package/dist/esm/components/IDE/IDE.mjs.map +1 -1
  83. package/dist/esm/components/IDE/MarkDownRender.mjs.map +1 -1
  84. package/dist/esm/components/IDE/MonacoCode.mjs.map +1 -1
  85. package/dist/esm/components/IDE/PackageManagerSelector.mjs.map +1 -1
  86. package/dist/esm/components/IDE/createFileTree.mjs.map +1 -1
  87. package/dist/esm/components/InformationTag/index.mjs.map +1 -1
  88. package/dist/esm/components/Input/Checkbox.mjs.map +1 -1
  89. package/dist/esm/components/Input/Input.mjs.map +1 -1
  90. package/dist/esm/components/Input/InputPassword.mjs.map +1 -1
  91. package/dist/esm/components/Input/OTPInput.mjs.map +1 -1
  92. package/dist/esm/components/KeyboardScreenAdapter/index.mjs.map +1 -1
  93. package/dist/esm/components/KeyboardShortcut/KeyboardShortcut.mjs.map +1 -1
  94. package/dist/esm/components/Label/index.mjs.map +1 -1
  95. package/dist/esm/components/LanguageBackground/index.mjs +2 -1
  96. package/dist/esm/components/LanguageBackground/index.mjs.map +1 -1
  97. package/dist/esm/components/Link/Link.mjs.map +1 -1
  98. package/dist/esm/components/Loader/index.mjs.map +1 -1
  99. package/dist/esm/components/LocaleSwitcherContentDropDown/LocaleSwitcherContent.mjs.map +1 -1
  100. package/dist/esm/components/LocaleSwitcherContentDropDown/LocaleSwitcherContentContext.mjs.map +1 -1
  101. package/dist/esm/components/LocaleSwitcherDropDown/LocaleSwitcher.mjs.map +1 -1
  102. package/dist/esm/components/Logo/Logo.mjs.map +1 -1
  103. package/dist/esm/components/Logo/LogoTextOnly.mjs.map +1 -1
  104. package/dist/esm/components/Logo/LogoWithText.mjs.map +1 -1
  105. package/dist/esm/components/Logo/LogoWithTextBelow.mjs.map +1 -1
  106. package/dist/esm/components/MarkDownRender/MarkDownRender.mjs.map +1 -1
  107. package/dist/esm/components/MarkDownRender/processor.mjs.map +1 -1
  108. package/dist/esm/components/MaxHeightSmoother/index.mjs.map +1 -1
  109. package/dist/esm/components/Modal/Modal.mjs.map +1 -1
  110. package/dist/esm/components/Navbar/MobileNavbar.mjs.map +1 -1
  111. package/dist/esm/components/Navbar/useNavigation.mjs.map +1 -1
  112. package/dist/esm/components/Pagination/NumberItemsSelector.mjs.map +1 -1
  113. package/dist/esm/components/Pagination/Pagination.mjs.map +1 -1
  114. package/dist/esm/components/Pagination/ShowingResultsNumberItems.mjs.map +1 -1
  115. package/dist/esm/components/Pattern/DotPattern.mjs.map +1 -1
  116. package/dist/esm/components/Pattern/GridPattern.mjs.map +1 -1
  117. package/dist/esm/components/Pattern/SpotLight.mjs.map +1 -1
  118. package/dist/esm/components/Popover/dynamic.mjs.map +1 -1
  119. package/dist/esm/components/Popover/static.mjs.map +1 -1
  120. package/dist/esm/components/PressableSpan/PressableSpan.mjs.map +1 -1
  121. package/dist/esm/components/RightDrawer/RightDrawer.mjs.map +1 -1
  122. package/dist/esm/components/Select/Multiselect.mjs.map +1 -1
  123. package/dist/esm/components/Select/Select.mjs.map +1 -1
  124. package/dist/esm/components/SocialNetworks/DiscordLogo.mjs.map +1 -1
  125. package/dist/esm/components/SocialNetworks/FacebookLogo.mjs.map +1 -1
  126. package/dist/esm/components/SocialNetworks/InstagramLogo.mjs.map +1 -1
  127. package/dist/esm/components/SocialNetworks/LinkedInLogo.mjs.map +1 -1
  128. package/dist/esm/components/SocialNetworks/ProductHuntLogo.mjs.map +1 -1
  129. package/dist/esm/components/SocialNetworks/TiktokLogo.mjs.map +1 -1
  130. package/dist/esm/components/SocialNetworks/XLogo.mjs.map +1 -1
  131. package/dist/esm/components/SocialNetworks/YoutubeLogo.mjs.map +1 -1
  132. package/dist/esm/components/SocialNetworks/index.mjs.map +1 -1
  133. package/dist/esm/components/SwitchSelector/index.mjs.map +1 -1
  134. package/dist/esm/components/Tab/Tab.mjs.map +1 -1
  135. package/dist/esm/components/Tab/TabContext.mjs.map +1 -1
  136. package/dist/esm/components/Table/Table.mjs.map +1 -1
  137. package/dist/esm/components/Tag/index.mjs.map +1 -1
  138. package/dist/esm/components/Terminal/Terminal.mjs.map +1 -1
  139. package/dist/esm/components/TextArea/AutoSizeTextArea.mjs.map +1 -1
  140. package/dist/esm/components/TextArea/AutocompleteTextArea.mjs.map +1 -1
  141. package/dist/esm/components/TextArea/TextArea.mjs.map +1 -1
  142. package/dist/esm/components/ThemeSwitcherDropDown/DesktopThemeSwitcher.mjs.map +1 -1
  143. package/dist/esm/components/ThemeSwitcherDropDown/MobileThemeSwitcher.mjs.map +1 -1
  144. package/dist/esm/components/Toaster/Toast.mjs.map +1 -1
  145. package/dist/esm/components/Toaster/useToast.mjs.map +1 -1
  146. package/dist/esm/components/WithResizer/index.mjs.map +1 -1
  147. package/dist/esm/dist/esm/components/Container/index.mjs +133 -0
  148. package/dist/esm/dist/esm/components/Container/index.mjs.map +1 -0
  149. package/dist/esm/dist/esm/components/Flags/Flag.mjs +330 -0
  150. package/dist/esm/dist/esm/components/Flags/Flag.mjs.map +1 -0
  151. package/dist/esm/dist/esm/components/Flags/ae.mjs +37 -0
  152. package/dist/esm/dist/esm/components/Flags/ae.mjs.map +1 -0
  153. package/dist/esm/dist/esm/components/Flags/af.mjs +97 -0
  154. package/dist/esm/dist/esm/components/Flags/af.mjs.map +1 -0
  155. package/dist/esm/dist/esm/components/Flags/al.mjs +38 -0
  156. package/dist/esm/dist/esm/components/Flags/al.mjs.map +1 -0
  157. package/dist/esm/dist/esm/components/Flags/am.mjs +34 -0
  158. package/dist/esm/dist/esm/components/Flags/am.mjs.map +1 -0
  159. package/dist/esm/dist/esm/components/Flags/ar.mjs +161 -0
  160. package/dist/esm/dist/esm/components/Flags/ar.mjs.map +1 -0
  161. package/dist/esm/dist/esm/components/Flags/at.mjs +31 -0
  162. package/dist/esm/dist/esm/components/Flags/at.mjs.map +1 -0
  163. package/dist/esm/dist/esm/components/Flags/au.mjs +43 -0
  164. package/dist/esm/dist/esm/components/Flags/au.mjs.map +1 -0
  165. package/dist/esm/dist/esm/components/Flags/az.mjs +47 -0
  166. package/dist/esm/dist/esm/components/Flags/az.mjs.map +1 -0
  167. package/dist/esm/dist/esm/components/Flags/ba.mjs +41 -0
  168. package/dist/esm/dist/esm/components/Flags/ba.mjs.map +1 -0
  169. package/dist/esm/dist/esm/components/Flags/bd.mjs +33 -0
  170. package/dist/esm/dist/esm/components/Flags/bd.mjs.map +1 -0
  171. package/dist/esm/dist/esm/components/Flags/be.mjs +37 -0
  172. package/dist/esm/dist/esm/components/Flags/be.mjs.map +1 -0
  173. package/dist/esm/dist/esm/components/Flags/bg.mjs +34 -0
  174. package/dist/esm/dist/esm/components/Flags/bg.mjs.map +1 -0
  175. package/dist/esm/dist/esm/components/Flags/bh.mjs +31 -0
  176. package/dist/esm/dist/esm/components/Flags/bh.mjs.map +1 -0
  177. package/dist/esm/dist/esm/components/Flags/bn.mjs +43 -0
  178. package/dist/esm/dist/esm/components/Flags/bn.mjs.map +1 -0
  179. package/dist/esm/dist/esm/components/Flags/bo.mjs +3031 -0
  180. package/dist/esm/dist/esm/components/Flags/bo.mjs.map +1 -0
  181. package/dist/esm/dist/esm/components/Flags/br.mjs +107 -0
  182. package/dist/esm/dist/esm/components/Flags/br.mjs.map +1 -0
  183. package/dist/esm/dist/esm/components/Flags/bw.mjs +34 -0
  184. package/dist/esm/dist/esm/components/Flags/bw.mjs.map +1 -0
  185. package/dist/esm/dist/esm/components/Flags/by.mjs +46 -0
  186. package/dist/esm/dist/esm/components/Flags/by.mjs.map +1 -0
  187. package/dist/esm/dist/esm/components/Flags/bz.mjs +339 -0
  188. package/dist/esm/dist/esm/components/Flags/bz.mjs.map +1 -0
  189. package/dist/esm/dist/esm/components/Flags/ca.mjs +31 -0
  190. package/dist/esm/dist/esm/components/Flags/ca.mjs.map +1 -0
  191. package/dist/esm/dist/esm/components/Flags/ch.mjs +31 -0
  192. package/dist/esm/dist/esm/components/Flags/ch.mjs.map +1 -0
  193. package/dist/esm/dist/esm/components/Flags/cl.mjs +44 -0
  194. package/dist/esm/dist/esm/components/Flags/cl.mjs.map +1 -0
  195. package/dist/esm/dist/esm/components/Flags/cn.mjs +58 -0
  196. package/dist/esm/dist/esm/components/Flags/cn.mjs.map +1 -0
  197. package/dist/esm/dist/esm/components/Flags/co.mjs +37 -0
  198. package/dist/esm/dist/esm/components/Flags/co.mjs.map +1 -0
  199. package/dist/esm/dist/esm/components/Flags/cr.mjs +37 -0
  200. package/dist/esm/dist/esm/components/Flags/cr.mjs.map +1 -0
  201. package/dist/esm/dist/esm/components/Flags/cu.mjs +44 -0
  202. package/dist/esm/dist/esm/components/Flags/cu.mjs.map +1 -0
  203. package/dist/esm/dist/esm/components/Flags/cv.mjs +44 -0
  204. package/dist/esm/dist/esm/components/Flags/cv.mjs.map +1 -0
  205. package/dist/esm/dist/esm/components/Flags/cz.mjs +34 -0
  206. package/dist/esm/dist/esm/components/Flags/cz.mjs.map +1 -0
  207. package/dist/esm/dist/esm/components/Flags/de.mjs +34 -0
  208. package/dist/esm/dist/esm/components/Flags/de.mjs.map +1 -0
  209. package/dist/esm/dist/esm/components/Flags/dj.mjs +44 -0
  210. package/dist/esm/dist/esm/components/Flags/dj.mjs.map +1 -0
  211. package/dist/esm/dist/esm/components/Flags/dk.mjs +34 -0
  212. package/dist/esm/dist/esm/components/Flags/dk.mjs.map +1 -0
  213. package/dist/esm/dist/esm/components/Flags/do.mjs +212 -0
  214. package/dist/esm/dist/esm/components/Flags/do.mjs.map +1 -0
  215. package/dist/esm/dist/esm/components/Flags/dz.mjs +34 -0
  216. package/dist/esm/dist/esm/components/Flags/dz.mjs.map +1 -0
  217. package/dist/esm/dist/esm/components/Flags/ec.mjs +623 -0
  218. package/dist/esm/dist/esm/components/Flags/ec.mjs.map +1 -0
  219. package/dist/esm/dist/esm/components/Flags/ee.mjs +34 -0
  220. package/dist/esm/dist/esm/components/Flags/ee.mjs.map +1 -0
  221. package/dist/esm/dist/esm/components/Flags/eg.mjs +113 -0
  222. package/dist/esm/dist/esm/components/Flags/eg.mjs.map +1 -0
  223. package/dist/esm/dist/esm/components/Flags/es-ct.mjs +33 -0
  224. package/dist/esm/dist/esm/components/Flags/es-ct.mjs.map +1 -0
  225. package/dist/esm/dist/esm/components/Flags/es-ga.mjs +793 -0
  226. package/dist/esm/dist/esm/components/Flags/es-ga.mjs.map +1 -0
  227. package/dist/esm/dist/esm/components/Flags/es-pv.mjs +34 -0
  228. package/dist/esm/dist/esm/components/Flags/es-pv.mjs.map +1 -0
  229. package/dist/esm/dist/esm/components/Flags/es.mjs +2227 -0
  230. package/dist/esm/dist/esm/components/Flags/es.mjs.map +1 -0
  231. package/dist/esm/dist/esm/components/Flags/et.mjs +51 -0
  232. package/dist/esm/dist/esm/components/Flags/et.mjs.map +1 -0
  233. package/dist/esm/dist/esm/components/Flags/fi.mjs +34 -0
  234. package/dist/esm/dist/esm/components/Flags/fi.mjs.map +1 -0
  235. package/dist/esm/dist/esm/components/Flags/fo.mjs +42 -0
  236. package/dist/esm/dist/esm/components/Flags/fo.mjs.map +1 -0
  237. package/dist/esm/dist/esm/components/Flags/fr.mjs +34 -0
  238. package/dist/esm/dist/esm/components/Flags/fr.mjs.map +1 -0
  239. package/dist/esm/dist/esm/components/Flags/gb-wls.mjs +44 -0
  240. package/dist/esm/dist/esm/components/Flags/gb-wls.mjs.map +1 -0
  241. package/dist/esm/dist/esm/components/Flags/gb.mjs +40 -0
  242. package/dist/esm/dist/esm/components/Flags/gb.mjs.map +1 -0
  243. package/dist/esm/dist/esm/components/Flags/ge.mjs +38 -0
  244. package/dist/esm/dist/esm/components/Flags/ge.mjs.map +1 -0
  245. package/dist/esm/dist/esm/components/Flags/gh.mjs +37 -0
  246. package/dist/esm/dist/esm/components/Flags/gh.mjs.map +1 -0
  247. package/dist/esm/dist/esm/components/Flags/gr.mjs +67 -0
  248. package/dist/esm/dist/esm/components/Flags/gr.mjs.map +1 -0
  249. package/dist/esm/dist/esm/components/Flags/gt.mjs +462 -0
  250. package/dist/esm/dist/esm/components/Flags/gt.mjs.map +1 -0
  251. package/dist/esm/dist/esm/components/Flags/gw.mjs +68 -0
  252. package/dist/esm/dist/esm/components/Flags/gw.mjs.map +1 -0
  253. package/dist/esm/dist/esm/components/Flags/hk.mjs +45 -0
  254. package/dist/esm/dist/esm/components/Flags/hk.mjs.map +1 -0
  255. package/dist/esm/dist/esm/components/Flags/hn.mjs +84 -0
  256. package/dist/esm/dist/esm/components/Flags/hn.mjs.map +1 -0
  257. package/dist/esm/dist/esm/components/Flags/hr.mjs +95 -0
  258. package/dist/esm/dist/esm/components/Flags/hr.mjs.map +1 -0
  259. package/dist/esm/dist/esm/components/Flags/hu.mjs +34 -0
  260. package/dist/esm/dist/esm/components/Flags/hu.mjs.map +1 -0
  261. package/dist/esm/dist/esm/components/Flags/id.mjs +31 -0
  262. package/dist/esm/dist/esm/components/Flags/id.mjs.map +1 -0
  263. package/dist/esm/dist/esm/components/Flags/ie.mjs +37 -0
  264. package/dist/esm/dist/esm/components/Flags/ie.mjs.map +1 -0
  265. package/dist/esm/dist/esm/components/Flags/il.mjs +47 -0
  266. package/dist/esm/dist/esm/components/Flags/il.mjs.map +1 -0
  267. package/dist/esm/dist/esm/components/Flags/in.mjs +75 -0
  268. package/dist/esm/dist/esm/components/Flags/in.mjs.map +1 -0
  269. package/dist/esm/dist/esm/components/Flags/iq.mjs +41 -0
  270. package/dist/esm/dist/esm/components/Flags/iq.mjs.map +1 -0
  271. package/dist/esm/dist/esm/components/Flags/ir.mjs +113 -0
  272. package/dist/esm/dist/esm/components/Flags/ir.mjs.map +1 -0
  273. package/dist/esm/dist/esm/components/Flags/is.mjs +41 -0
  274. package/dist/esm/dist/esm/components/Flags/is.mjs.map +1 -0
  275. package/dist/esm/dist/esm/components/Flags/it.mjs +37 -0
  276. package/dist/esm/dist/esm/components/Flags/it.mjs.map +1 -0
  277. package/dist/esm/dist/esm/components/Flags/jm.mjs +37 -0
  278. package/dist/esm/dist/esm/components/Flags/jm.mjs.map +1 -0
  279. package/dist/esm/dist/esm/components/Flags/jo.mjs +49 -0
  280. package/dist/esm/dist/esm/components/Flags/jo.mjs.map +1 -0
  281. package/dist/esm/dist/esm/components/Flags/jp.mjs +42 -0
  282. package/dist/esm/dist/esm/components/Flags/jp.mjs.map +1 -0
  283. package/dist/esm/dist/esm/components/Flags/ke.mjs +92 -0
  284. package/dist/esm/dist/esm/components/Flags/ke.mjs.map +1 -0
  285. package/dist/esm/dist/esm/components/Flags/kg.mjs +50 -0
  286. package/dist/esm/dist/esm/components/Flags/kg.mjs.map +1 -0
  287. package/dist/esm/dist/esm/components/Flags/kh.mjs +77 -0
  288. package/dist/esm/dist/esm/components/Flags/kh.mjs.map +1 -0
  289. package/dist/esm/dist/esm/components/Flags/km.mjs +53 -0
  290. package/dist/esm/dist/esm/components/Flags/km.mjs.map +1 -0
  291. package/dist/esm/dist/esm/components/Flags/kr.mjs +65 -0
  292. package/dist/esm/dist/esm/components/Flags/kr.mjs.map +1 -0
  293. package/dist/esm/dist/esm/components/Flags/kw.mjs +45 -0
  294. package/dist/esm/dist/esm/components/Flags/kw.mjs.map +1 -0
  295. package/dist/esm/dist/esm/components/Flags/kz.mjs +95 -0
  296. package/dist/esm/dist/esm/components/Flags/kz.mjs.map +1 -0
  297. package/dist/esm/dist/esm/components/Flags/la.mjs +40 -0
  298. package/dist/esm/dist/esm/components/Flags/la.mjs.map +1 -0
  299. package/dist/esm/dist/esm/components/Flags/lb.mjs +51 -0
  300. package/dist/esm/dist/esm/components/Flags/lb.mjs.map +1 -0
  301. package/dist/esm/dist/esm/components/Flags/li.mjs +137 -0
  302. package/dist/esm/dist/esm/components/Flags/li.mjs.map +1 -0
  303. package/dist/esm/dist/esm/components/Flags/lk.mjs +74 -0
  304. package/dist/esm/dist/esm/components/Flags/lk.mjs.map +1 -0
  305. package/dist/esm/dist/esm/components/Flags/lt.mjs +47 -0
  306. package/dist/esm/dist/esm/components/Flags/lt.mjs.map +1 -0
  307. package/dist/esm/dist/esm/components/Flags/lu.mjs +34 -0
  308. package/dist/esm/dist/esm/components/Flags/lu.mjs.map +1 -0
  309. package/dist/esm/dist/esm/components/Flags/lv.mjs +31 -0
  310. package/dist/esm/dist/esm/components/Flags/lv.mjs.map +1 -0
  311. package/dist/esm/dist/esm/components/Flags/ly.mjs +40 -0
  312. package/dist/esm/dist/esm/components/Flags/ly.mjs.map +1 -0
  313. package/dist/esm/dist/esm/components/Flags/ma.mjs +33 -0
  314. package/dist/esm/dist/esm/components/Flags/ma.mjs.map +1 -0
  315. package/dist/esm/dist/esm/components/Flags/mc.mjs +34 -0
  316. package/dist/esm/dist/esm/components/Flags/mc.mjs.map +1 -0
  317. package/dist/esm/dist/esm/components/Flags/md.mjs +318 -0
  318. package/dist/esm/dist/esm/components/Flags/md.mjs.map +1 -0
  319. package/dist/esm/dist/esm/components/Flags/mk.mjs +38 -0
  320. package/dist/esm/dist/esm/components/Flags/mk.mjs.map +1 -0
  321. package/dist/esm/dist/esm/components/Flags/mm.mjs +59 -0
  322. package/dist/esm/dist/esm/components/Flags/mm.mjs.map +1 -0
  323. package/dist/esm/dist/esm/components/Flags/mn.mjs +60 -0
  324. package/dist/esm/dist/esm/components/Flags/mn.mjs.map +1 -0
  325. package/dist/esm/dist/esm/components/Flags/mo.mjs +43 -0
  326. package/dist/esm/dist/esm/components/Flags/mo.mjs.map +1 -0
  327. package/dist/esm/dist/esm/components/Flags/mr.mjs +38 -0
  328. package/dist/esm/dist/esm/components/Flags/mr.mjs.map +1 -0
  329. package/dist/esm/dist/esm/components/Flags/mt.mjs +154 -0
  330. package/dist/esm/dist/esm/components/Flags/mt.mjs.map +1 -0
  331. package/dist/esm/dist/esm/components/Flags/mv.mjs +41 -0
  332. package/dist/esm/dist/esm/components/Flags/mv.mjs.map +1 -0
  333. package/dist/esm/dist/esm/components/Flags/mx.mjs +1366 -0
  334. package/dist/esm/dist/esm/components/Flags/mx.mjs.map +1 -0
  335. package/dist/esm/dist/esm/components/Flags/my.mjs +79 -0
  336. package/dist/esm/dist/esm/components/Flags/my.mjs.map +1 -0
  337. package/dist/esm/dist/esm/components/Flags/mz.mjs +93 -0
  338. package/dist/esm/dist/esm/components/Flags/mz.mjs.map +1 -0
  339. package/dist/esm/dist/esm/components/Flags/ng.mjs +34 -0
  340. package/dist/esm/dist/esm/components/Flags/ng.mjs.map +1 -0
  341. package/dist/esm/dist/esm/components/Flags/ni.mjs +452 -0
  342. package/dist/esm/dist/esm/components/Flags/ni.mjs.map +1 -0
  343. package/dist/esm/dist/esm/components/Flags/nl.mjs +34 -0
  344. package/dist/esm/dist/esm/components/Flags/nl.mjs.map +1 -0
  345. package/dist/esm/dist/esm/components/Flags/no.mjs +40 -0
  346. package/dist/esm/dist/esm/components/Flags/no.mjs.map +1 -0
  347. package/dist/esm/dist/esm/components/Flags/np.mjs +39 -0
  348. package/dist/esm/dist/esm/components/Flags/np.mjs.map +1 -0
  349. package/dist/esm/dist/esm/components/Flags/nz.mjs +105 -0
  350. package/dist/esm/dist/esm/components/Flags/nz.mjs.map +1 -0
  351. package/dist/esm/dist/esm/components/Flags/om.mjs +540 -0
  352. package/dist/esm/dist/esm/components/Flags/om.mjs.map +1 -0
  353. package/dist/esm/dist/esm/components/Flags/pa.mjs +47 -0
  354. package/dist/esm/dist/esm/components/Flags/pa.mjs.map +1 -0
  355. package/dist/esm/dist/esm/components/Flags/pe.mjs +31 -0
  356. package/dist/esm/dist/esm/components/Flags/pe.mjs.map +1 -0
  357. package/dist/esm/dist/esm/components/Flags/ph.mjs +37 -0
  358. package/dist/esm/dist/esm/components/Flags/ph.mjs.map +1 -0
  359. package/dist/esm/dist/esm/components/Flags/pk.mjs +39 -0
  360. package/dist/esm/dist/esm/components/Flags/pk.mjs.map +1 -0
  361. package/dist/esm/dist/esm/components/Flags/pl.mjs +31 -0
  362. package/dist/esm/dist/esm/components/Flags/pl.mjs.map +1 -0
  363. package/dist/esm/dist/esm/components/Flags/pr.mjs +44 -0
  364. package/dist/esm/dist/esm/components/Flags/pr.mjs.map +1 -0
  365. package/dist/esm/dist/esm/components/Flags/ps.mjs +46 -0
  366. package/dist/esm/dist/esm/components/Flags/ps.mjs.map +1 -0
  367. package/dist/esm/dist/esm/components/Flags/pt.mjs +153 -0
  368. package/dist/esm/dist/esm/components/Flags/pt.mjs.map +1 -0
  369. package/dist/esm/dist/esm/components/Flags/py.mjs +62 -0
  370. package/dist/esm/dist/esm/components/Flags/py.mjs.map +1 -0
  371. package/dist/esm/dist/esm/components/Flags/qa.mjs +31 -0
  372. package/dist/esm/dist/esm/components/Flags/qa.mjs.map +1 -0
  373. package/dist/esm/dist/esm/components/Flags/ro.mjs +37 -0
  374. package/dist/esm/dist/esm/components/Flags/ro.mjs.map +1 -0
  375. package/dist/esm/dist/esm/components/Flags/rs.mjs +821 -0
  376. package/dist/esm/dist/esm/components/Flags/rs.mjs.map +1 -0
  377. package/dist/esm/dist/esm/components/Flags/ru.mjs +34 -0
  378. package/dist/esm/dist/esm/components/Flags/ru.mjs.map +1 -0
  379. package/dist/esm/dist/esm/components/Flags/sa.mjs +80 -0
  380. package/dist/esm/dist/esm/components/Flags/sa.mjs.map +1 -0
  381. package/dist/esm/dist/esm/components/Flags/sd.mjs +45 -0
  382. package/dist/esm/dist/esm/components/Flags/sd.mjs.map +1 -0
  383. package/dist/esm/dist/esm/components/Flags/se.mjs +31 -0
  384. package/dist/esm/dist/esm/components/Flags/se.mjs.map +1 -0
  385. package/dist/esm/dist/esm/components/Flags/sg.mjs +43 -0
  386. package/dist/esm/dist/esm/components/Flags/sg.mjs.map +1 -0
  387. package/dist/esm/dist/esm/components/Flags/si.mjs +60 -0
  388. package/dist/esm/dist/esm/components/Flags/si.mjs.map +1 -0
  389. package/dist/esm/dist/esm/components/Flags/sk.mjs +46 -0
  390. package/dist/esm/dist/esm/components/Flags/sk.mjs.map +1 -0
  391. package/dist/esm/dist/esm/components/Flags/so.mjs +38 -0
  392. package/dist/esm/dist/esm/components/Flags/so.mjs.map +1 -0
  393. package/dist/esm/dist/esm/components/Flags/st.mjs +74 -0
  394. package/dist/esm/dist/esm/components/Flags/st.mjs.map +1 -0
  395. package/dist/esm/dist/esm/components/Flags/sv.mjs +1736 -0
  396. package/dist/esm/dist/esm/components/Flags/sv.mjs.map +1 -0
  397. package/dist/esm/dist/esm/components/Flags/sy.mjs +37 -0
  398. package/dist/esm/dist/esm/components/Flags/sy.mjs.map +1 -0
  399. package/dist/esm/dist/esm/components/Flags/td.mjs +34 -0
  400. package/dist/esm/dist/esm/components/Flags/td.mjs.map +1 -0
  401. package/dist/esm/dist/esm/components/Flags/th.mjs +34 -0
  402. package/dist/esm/dist/esm/components/Flags/th.mjs.map +1 -0
  403. package/dist/esm/dist/esm/components/Flags/tl.mjs +44 -0
  404. package/dist/esm/dist/esm/components/Flags/tl.mjs.map +1 -0
  405. package/dist/esm/dist/esm/components/Flags/tn.mjs +31 -0
  406. package/dist/esm/dist/esm/components/Flags/tn.mjs.map +1 -0
  407. package/dist/esm/dist/esm/components/Flags/tr.mjs +37 -0
  408. package/dist/esm/dist/esm/components/Flags/tr.mjs.map +1 -0
  409. package/dist/esm/dist/esm/components/Flags/tt.mjs +36 -0
  410. package/dist/esm/dist/esm/components/Flags/tt.mjs.map +1 -0
  411. package/dist/esm/dist/esm/components/Flags/tw.mjs +41 -0
  412. package/dist/esm/dist/esm/components/Flags/tw.mjs.map +1 -0
  413. package/dist/esm/dist/esm/components/Flags/tz.mjs +45 -0
  414. package/dist/esm/dist/esm/components/Flags/tz.mjs.map +1 -0
  415. package/dist/esm/dist/esm/components/Flags/ua.mjs +34 -0
  416. package/dist/esm/dist/esm/components/Flags/ua.mjs.map +1 -0
  417. package/dist/esm/dist/esm/components/Flags/ug.mjs +146 -0
  418. package/dist/esm/dist/esm/components/Flags/ug.mjs.map +1 -0
  419. package/dist/esm/dist/esm/components/Flags/us.mjs +46 -0
  420. package/dist/esm/dist/esm/components/Flags/us.mjs.map +1 -0
  421. package/dist/esm/dist/esm/components/Flags/uy.mjs +64 -0
  422. package/dist/esm/dist/esm/components/Flags/uy.mjs.map +1 -0
  423. package/dist/esm/dist/esm/components/Flags/uz.mjs +110 -0
  424. package/dist/esm/dist/esm/components/Flags/uz.mjs.map +1 -0
  425. package/dist/esm/dist/esm/components/Flags/ve.mjs +85 -0
  426. package/dist/esm/dist/esm/components/Flags/ve.mjs.map +1 -0
  427. package/dist/esm/dist/esm/components/Flags/vn.mjs +38 -0
  428. package/dist/esm/dist/esm/components/Flags/vn.mjs.map +1 -0
  429. package/dist/esm/dist/esm/components/Flags/xx.mjs +36 -0
  430. package/dist/esm/dist/esm/components/Flags/xx.mjs.map +1 -0
  431. package/dist/esm/dist/esm/components/Flags/ye.mjs +37 -0
  432. package/dist/esm/dist/esm/components/Flags/ye.mjs.map +1 -0
  433. package/dist/esm/dist/esm/components/Flags/za.mjs +52 -0
  434. package/dist/esm/dist/esm/components/Flags/za.mjs.map +1 -0
  435. package/dist/esm/dist/esm/components/Flags/zw.mjs +71 -0
  436. package/dist/esm/dist/esm/components/Flags/zw.mjs.map +1 -0
  437. package/dist/esm/dist/esm/utils/cn.mjs +9 -0
  438. package/dist/esm/dist/esm/utils/cn.mjs.map +1 -0
  439. package/dist/esm/hooks/useHorizontalSwipe.mjs.map +1 -1
  440. package/dist/esm/hooks/useItemSelector.mjs.map +1 -1
  441. package/dist/esm/hooks/usePersistedStore.mjs.map +1 -1
  442. package/dist/esm/hooks/useScrollY.mjs.map +1 -1
  443. package/dist/esm/libs/auth.mjs.map +1 -1
  444. package/dist/esm/providers/ReactQueryProvider.mjs.map +1 -1
  445. package/dist/esm/utils/object.mjs.map +1 -1
  446. package/dist/types/components/Breadcrumb/breadcrumb.content.d.ts +3 -3
  447. package/dist/types/components/Breadcrumb/index.d.ts +2 -2
  448. package/dist/types/components/Breadcrumb/index.d.ts.map +1 -1
  449. package/dist/types/components/Browser/browser.content.d.ts +17 -17
  450. package/dist/types/components/Browser/browser.content.d.ts.map +1 -1
  451. package/dist/types/components/Button/Button.d.ts +5 -5
  452. package/dist/types/components/Carousel/index.content.d.ts +7 -7
  453. package/dist/types/components/CollapsibleTable/CollapsibleTable.d.ts +2 -2
  454. package/dist/types/components/Command/index.d.ts +17 -17
  455. package/dist/types/components/Container/index.d.ts +7 -7
  456. package/dist/types/components/Container/index.d.ts.map +1 -1
  457. package/dist/types/components/CopyButton/CopyButton.content.d.ts +3 -3
  458. package/dist/types/components/CopyButton/CopyButton.content.d.ts.map +1 -1
  459. package/dist/types/components/DictionaryFieldEditor/DictionaryCreationForm/dictionaryCreationForm.content.d.ts +25 -25
  460. package/dist/types/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.content.d.ts +9 -9
  461. package/dist/types/components/DictionaryFieldEditor/DictionaryDetails/dictionaryDetails.content.d.ts +33 -33
  462. package/dist/types/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.content.d.ts +25 -25
  463. package/dist/types/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.content.d.ts.map +1 -1
  464. package/dist/types/components/DictionaryFieldEditor/NavigationView/navigationViewNode.content.d.ts +25 -25
  465. package/dist/types/components/DictionaryFieldEditor/SaveForm/saveForm.content.d.ts +33 -33
  466. package/dist/types/components/DictionaryFieldEditor/StructureView/structureView.content.d.ts +9 -9
  467. package/dist/types/components/DictionaryFieldEditor/VersionSwitcherDropDown/versionSwitcherDropDown.content.d.ts +7 -7
  468. package/dist/types/components/DictionaryFieldEditor/dictionaryFieldEditor.content.d.ts +5 -5
  469. package/dist/types/components/DictionaryFieldEditor/nodeTypeSelector.content.d.ts +31 -31
  470. package/dist/types/components/DictionaryFieldEditor/nodeTypeSelector.content.d.ts.map +1 -1
  471. package/dist/types/components/ExpandCollapse/expandCollapse.content.d.ts +4 -4
  472. package/dist/types/components/Form/FormBase.d.ts +2 -2
  473. package/dist/types/components/Form/FormField.d.ts +2 -2
  474. package/dist/types/components/Form/FormItem.d.ts +2 -2
  475. package/dist/types/components/Form/FormItem.d.ts.map +1 -1
  476. package/dist/types/components/Form/elements/EditableFieldInputElement.d.ts +2 -2
  477. package/dist/types/components/Form/elements/EditableFieldTextAreaElement.d.ts +2 -2
  478. package/dist/types/components/Form/elements/MultiselectElement.d.ts +2 -2
  479. package/dist/types/components/Form/elements/SelectElement.d.ts +2 -2
  480. package/dist/types/components/Form/elements/SwitchSelectorElement.d.ts +2 -2
  481. package/dist/types/components/IDE/CodeContext.d.ts +2 -2
  482. package/dist/types/components/IDE/CodeContext.d.ts.map +1 -1
  483. package/dist/types/components/IDE/code.content.d.ts +5 -5
  484. package/dist/types/components/IDE/code.content.d.ts.map +1 -1
  485. package/dist/types/components/IDE/copyCode.content.d.ts +5 -5
  486. package/dist/types/components/IDE/copyCode.content.d.ts.map +1 -1
  487. package/dist/types/components/IDE/selectors.content.d.ts +13 -13
  488. package/dist/types/components/Input/Checkbox.d.ts +3 -3
  489. package/dist/types/components/Input/Checkbox.d.ts.map +1 -1
  490. package/dist/types/components/Input/Input.d.ts +2 -2
  491. package/dist/types/components/Input/OTPInput.d.ts +4 -4
  492. package/dist/types/components/Input/SearchInput.d.ts +2 -2
  493. package/dist/types/components/Link/Link.d.ts +4 -4
  494. package/dist/types/components/Link/Link.d.ts.map +1 -1
  495. package/dist/types/components/Loader/index.content.d.ts +3 -3
  496. package/dist/types/components/Loader/spinner.d.ts +2 -2
  497. package/dist/types/components/LocaleSwitcherContentDropDown/localeSwitcher.content.d.ts +17 -17
  498. package/dist/types/components/LocaleSwitcherDropDown/localeSwitcher.content.d.ts +13 -13
  499. package/dist/types/components/MaxWidthSmoother/index.d.ts +2 -2
  500. package/dist/types/components/Navbar/Burger.d.ts +2 -2
  501. package/dist/types/components/Navbar/MobileNavbar.d.ts +2 -2
  502. package/dist/types/components/Navbar/MobileNavbar.d.ts.map +1 -1
  503. package/dist/types/components/Navbar/index.d.ts +2 -2
  504. package/dist/types/components/Navbar/index.d.ts.map +1 -1
  505. package/dist/types/components/Pagination/Pagination.d.ts +2 -2
  506. package/dist/types/components/Pagination/Pagination.d.ts.map +1 -1
  507. package/dist/types/components/Pagination/pagination.content.d.ts +12 -12
  508. package/dist/types/components/RightDrawer/rightDrawer.content.d.ts +5 -5
  509. package/dist/types/components/SocialNetworks/index.d.ts +2 -2
  510. package/dist/types/components/SwitchSelector/index.d.ts +6 -6
  511. package/dist/types/components/Tab/Tab.d.ts +2 -2
  512. package/dist/types/components/Tab/Tab.d.ts.map +1 -1
  513. package/dist/types/components/TabSelector/TabSelector.d.ts +3 -3
  514. package/dist/types/components/TabSelector/TabSelector.d.ts.map +1 -1
  515. package/dist/types/components/Table/table.content.d.ts +3 -3
  516. package/dist/types/components/Tag/index.d.ts +4 -4
  517. package/dist/types/components/Terminal/terminal.content.d.ts +5 -5
  518. package/dist/types/components/Toaster/Toaster.d.ts +2 -2
  519. package/dist/types/hooks/useItemSelector.d.ts.map +1 -1
  520. package/package.json +31 -31
@@ -1 +1 @@
1
- {"version":3,"file":"useItemSelector.mjs","names":["targetElement: HTMLElement | null","newPosition: VerticalStyleState","newPosition: HorizontalStyleState","mutationObservers: MutationObserver[]","resizeObservers: ResizeObserver[]"],"sources":["../../../src/hooks/useItemSelector.ts"],"sourcesContent":["'use client';\n\nimport { type RefObject, useEffect, useRef, useState } from 'react';\n\nexport type ItemSelectorOrientation = 'horizontal' | 'vertical';\n\ntype HorizontalStyleState = {\n left: number;\n width: number;\n opacity: number;\n};\n\ntype VerticalStyleState = {\n top: number;\n height: number;\n opacity: number;\n};\n\ntype StyleState = HorizontalStyleState | VerticalStyleState;\n\nconst selectorDefault = (option: HTMLElement) =>\n option?.getAttribute('aria-selected') === 'true';\n\ntype Options = {\n selector?: (option: HTMLElement, index: number) => boolean;\n isHoverable?: boolean;\n orientation?: ItemSelectorOrientation;\n};\n\nexport const useItemSelector = (\n optionsRefs: RefObject<HTMLElement[]>,\n {\n selector = selectorDefault,\n isHoverable = false,\n orientation = 'horizontal',\n }: Options = {\n selector: selectorDefault,\n isHoverable: false,\n orientation: 'horizontal',\n }\n) => {\n const [choiceIndicatorPosition, setChoiceIndicatorPosition] =\n useState<StyleState | null>(null);\n\n const [hoveredItem, setHoveredItem] = useState<HTMLElement | null>(null);\n const hideTimeoutRef = useRef<NodeJS.Timeout | null>(null);\n const lastPositionRef = useRef<StyleState | null>(null);\n\n const itemsLength = optionsRefs.current.length;\n\n const calculatePosition = () => {\n let targetElement: HTMLElement | null = null;\n\n if (hoveredItem) {\n targetElement = hoveredItem;\n // Clear any pending hide timeout when hovering over an item\n if (hideTimeoutRef.current) {\n clearTimeout(hideTimeoutRef.current);\n hideTimeoutRef.current = null;\n }\n } else {\n targetElement = optionsRefs.current.find(selector) ?? null;\n }\n\n if (!targetElement) {\n // Keep previous position but set opacity to 0\n if (orientation === 'vertical') {\n setChoiceIndicatorPosition((prev) => {\n const verticalPrev = prev as VerticalStyleState | null;\n const newPosition: VerticalStyleState = {\n top: verticalPrev?.top ?? 0,\n height: verticalPrev?.height ?? 0,\n opacity: 0,\n };\n lastPositionRef.current = newPosition;\n return newPosition;\n });\n } else {\n setChoiceIndicatorPosition((prev) => {\n const horizontalPrev = prev as HorizontalStyleState | null;\n const newPosition: HorizontalStyleState = {\n left: horizontalPrev?.left ?? 0,\n width: horizontalPrev?.width ?? 0,\n opacity: 0,\n };\n lastPositionRef.current = newPosition;\n return newPosition;\n });\n }\n return;\n }\n\n if (orientation === 'vertical') {\n const top = targetElement.offsetTop;\n const height = targetElement.offsetHeight;\n\n const newPosition = {\n top,\n height,\n opacity: 1,\n };\n setChoiceIndicatorPosition(newPosition);\n lastPositionRef.current = newPosition;\n } else {\n const left = targetElement.offsetLeft;\n const width = targetElement.offsetWidth;\n\n const newPosition = {\n left,\n width,\n opacity: 1,\n };\n setChoiceIndicatorPosition(newPosition);\n lastPositionRef.current = newPosition;\n }\n };\n\n useEffect(() => {\n calculatePosition();\n\n // Event listeners for window events\n window.addEventListener('resize', calculatePosition);\n window.addEventListener('DOMContentLoaded', calculatePosition);\n\n // MutationObserver to watch for 'aria-selected' changes\n const mutationObservers: MutationObserver[] = [];\n\n optionsRefs.current.forEach((option) => {\n if (option) {\n const observer = new MutationObserver((mutations) => {\n for (const mutation of mutations) {\n if (\n mutation.type === 'attributes' &&\n mutation.attributeName === 'aria-selected'\n ) {\n calculatePosition();\n break;\n }\n }\n });\n\n observer.observe(option, {\n attributes: true,\n attributeFilter: ['aria-selected'],\n });\n\n mutationObservers.push(observer);\n }\n });\n\n // ResizeObserver to watch for size changes\n const resizeObservers: ResizeObserver[] = [];\n\n const observeSize = (element: HTMLElement) => {\n if (!element) return;\n const resizeObserver = new ResizeObserver(() => {\n calculatePosition();\n });\n resizeObserver.observe(element);\n resizeObservers.push(resizeObserver);\n };\n\n // Observe the selected item\n const selectedItem = optionsRefs.current.find(selector) ?? null;\n\n if (selectedItem) {\n observeSize(selectedItem);\n }\n\n // Observe the hovered item\n if (hoveredItem) {\n observeSize(hoveredItem);\n }\n\n // Add hover event listeners\n const handleMouseEnter = (event: Event) => {\n // Clear any pending hide timeout\n if (hideTimeoutRef.current) {\n clearTimeout(hideTimeoutRef.current);\n hideTimeoutRef.current = null;\n }\n setHoveredItem(event.currentTarget as HTMLElement);\n };\n\n const handleMouseLeave = () => {\n // Clear any existing timeout\n if (hideTimeoutRef.current) {\n clearTimeout(hideTimeoutRef.current);\n }\n\n // Keep the indicator at its current position for 150ms\n // before removing the hovered item\n hideTimeoutRef.current = setTimeout(() => {\n setHoveredItem(null);\n }, 150); // 150ms delay before hiding\n };\n\n if (isHoverable) {\n optionsRefs.current.forEach((option) => {\n option?.addEventListener('mouseenter', handleMouseEnter, {\n passive: true,\n });\n option?.addEventListener('mouseleave', handleMouseLeave, {\n passive: true,\n });\n });\n }\n\n return () => {\n // Clear any pending hide timeout\n if (hideTimeoutRef.current) {\n clearTimeout(hideTimeoutRef.current);\n }\n\n // Cleanup window event listeners\n window.removeEventListener('resize', calculatePosition);\n window.removeEventListener('DOMContentLoaded', calculatePosition);\n\n // Disconnect MutationObservers\n mutationObservers.forEach((observer) => {\n observer.disconnect();\n });\n\n // Disconnect ResizeObservers\n resizeObservers.forEach((observer) => {\n observer.disconnect();\n });\n\n // Remove hover event listeners\n optionsRefs.current.forEach((option) => {\n option?.removeEventListener('mouseenter', handleMouseEnter);\n option?.removeEventListener('mouseleave', handleMouseLeave);\n });\n };\n }, [optionsRefs, selector, hoveredItem, itemsLength, orientation]);\n\n return { choiceIndicatorPosition, calculatePosition, orientation };\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"useItemSelector.mjs","names":[],"sources":["../../../src/hooks/useItemSelector.ts"],"sourcesContent":["'use client';\n\nimport { type RefObject, useEffect, useRef, useState } from 'react';\n\nexport type ItemSelectorOrientation = 'horizontal' | 'vertical';\n\ntype HorizontalStyleState = {\n left: number;\n width: number;\n opacity: number;\n};\n\ntype VerticalStyleState = {\n top: number;\n height: number;\n opacity: number;\n};\n\ntype StyleState = HorizontalStyleState | VerticalStyleState;\n\nconst selectorDefault = (option: HTMLElement) =>\n option?.getAttribute('aria-selected') === 'true';\n\ntype Options = {\n selector?: (option: HTMLElement, index: number) => boolean;\n isHoverable?: boolean;\n orientation?: ItemSelectorOrientation;\n};\n\nexport const useItemSelector = (\n optionsRefs: RefObject<HTMLElement[]>,\n {\n selector = selectorDefault,\n isHoverable = false,\n orientation = 'horizontal',\n }: Options = {\n selector: selectorDefault,\n isHoverable: false,\n orientation: 'horizontal',\n }\n) => {\n const [choiceIndicatorPosition, setChoiceIndicatorPosition] =\n useState<StyleState | null>(null);\n\n const [hoveredItem, setHoveredItem] = useState<HTMLElement | null>(null);\n const hideTimeoutRef = useRef<NodeJS.Timeout | null>(null);\n const lastPositionRef = useRef<StyleState | null>(null);\n\n const itemsLength = optionsRefs.current.length;\n\n const calculatePosition = () => {\n let targetElement: HTMLElement | null = null;\n\n if (hoveredItem) {\n targetElement = hoveredItem;\n // Clear any pending hide timeout when hovering over an item\n if (hideTimeoutRef.current) {\n clearTimeout(hideTimeoutRef.current);\n hideTimeoutRef.current = null;\n }\n } else {\n targetElement = optionsRefs.current.find(selector) ?? null;\n }\n\n if (!targetElement) {\n // Keep previous position but set opacity to 0\n if (orientation === 'vertical') {\n setChoiceIndicatorPosition((prev) => {\n const verticalPrev = prev as VerticalStyleState | null;\n const newPosition: VerticalStyleState = {\n top: verticalPrev?.top ?? 0,\n height: verticalPrev?.height ?? 0,\n opacity: 0,\n };\n lastPositionRef.current = newPosition;\n return newPosition;\n });\n } else {\n setChoiceIndicatorPosition((prev) => {\n const horizontalPrev = prev as HorizontalStyleState | null;\n const newPosition: HorizontalStyleState = {\n left: horizontalPrev?.left ?? 0,\n width: horizontalPrev?.width ?? 0,\n opacity: 0,\n };\n lastPositionRef.current = newPosition;\n return newPosition;\n });\n }\n return;\n }\n\n if (orientation === 'vertical') {\n const top = targetElement.offsetTop;\n const height = targetElement.offsetHeight;\n\n const newPosition = {\n top,\n height,\n opacity: 1,\n };\n setChoiceIndicatorPosition(newPosition);\n lastPositionRef.current = newPosition;\n } else {\n const left = targetElement.offsetLeft;\n const width = targetElement.offsetWidth;\n\n const newPosition = {\n left,\n width,\n opacity: 1,\n };\n setChoiceIndicatorPosition(newPosition);\n lastPositionRef.current = newPosition;\n }\n };\n\n useEffect(() => {\n calculatePosition();\n\n // Event listeners for window events\n window.addEventListener('resize', calculatePosition);\n window.addEventListener('DOMContentLoaded', calculatePosition);\n\n // MutationObserver to watch for 'aria-selected' changes\n const mutationObservers: MutationObserver[] = [];\n\n optionsRefs.current.forEach((option) => {\n if (option) {\n const observer = new MutationObserver((mutations) => {\n for (const mutation of mutations) {\n if (\n mutation.type === 'attributes' &&\n mutation.attributeName === 'aria-selected'\n ) {\n calculatePosition();\n break;\n }\n }\n });\n\n observer.observe(option, {\n attributes: true,\n attributeFilter: ['aria-selected'],\n });\n\n mutationObservers.push(observer);\n }\n });\n\n // ResizeObserver to watch for size changes\n const resizeObservers: ResizeObserver[] = [];\n\n const observeSize = (element: HTMLElement) => {\n if (!element) return;\n const resizeObserver = new ResizeObserver(() => {\n calculatePosition();\n });\n resizeObserver.observe(element);\n resizeObservers.push(resizeObserver);\n };\n\n // Observe the selected item\n const selectedItem = optionsRefs.current.find(selector) ?? null;\n\n if (selectedItem) {\n observeSize(selectedItem);\n }\n\n // Observe the hovered item\n if (hoveredItem) {\n observeSize(hoveredItem);\n }\n\n // Add hover event listeners\n const handleMouseEnter = (event: Event) => {\n // Clear any pending hide timeout\n if (hideTimeoutRef.current) {\n clearTimeout(hideTimeoutRef.current);\n hideTimeoutRef.current = null;\n }\n setHoveredItem(event.currentTarget as HTMLElement);\n };\n\n const handleMouseLeave = () => {\n // Clear any existing timeout\n if (hideTimeoutRef.current) {\n clearTimeout(hideTimeoutRef.current);\n }\n\n // Keep the indicator at its current position for 150ms\n // before removing the hovered item\n hideTimeoutRef.current = setTimeout(() => {\n setHoveredItem(null);\n }, 150); // 150ms delay before hiding\n };\n\n if (isHoverable) {\n optionsRefs.current.forEach((option) => {\n option?.addEventListener('mouseenter', handleMouseEnter, {\n passive: true,\n });\n option?.addEventListener('mouseleave', handleMouseLeave, {\n passive: true,\n });\n });\n }\n\n return () => {\n // Clear any pending hide timeout\n if (hideTimeoutRef.current) {\n clearTimeout(hideTimeoutRef.current);\n }\n\n // Cleanup window event listeners\n window.removeEventListener('resize', calculatePosition);\n window.removeEventListener('DOMContentLoaded', calculatePosition);\n\n // Disconnect MutationObservers\n mutationObservers.forEach((observer) => {\n observer.disconnect();\n });\n\n // Disconnect ResizeObservers\n resizeObservers.forEach((observer) => {\n observer.disconnect();\n });\n\n // Remove hover event listeners\n optionsRefs.current.forEach((option) => {\n option?.removeEventListener('mouseenter', handleMouseEnter);\n option?.removeEventListener('mouseleave', handleMouseLeave);\n });\n };\n }, [optionsRefs, selector, hoveredItem, itemsLength, orientation]);\n\n return { choiceIndicatorPosition, calculatePosition, orientation };\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"usePersistedStore.mjs","names":["result: S","setStateWrapper: typeof setState","newValue: S"],"sources":["../../../src/hooks/usePersistedStore.ts"],"sourcesContent":["'use client';\n\nimport {\n type Dispatch,\n type SetStateAction,\n useCallback,\n useEffect,\n useMemo,\n useState,\n} from 'react';\n\nexport const usePersistedStore = <S>(\n key: string,\n initialState?: S | (() => S)\n): [S, Dispatch<SetStateAction<S>>, () => void, () => void] => {\n const [state, setState] = useState<S>(() => {\n // If you have an initial value on the client, send a message out immediately\n if (initialState !== undefined) {\n const result: S =\n typeof initialState === 'function'\n ? (initialState as () => S)()\n : initialState;\n\n if (typeof window === 'undefined') return result;\n\n const persistedState = localStorage?.getItem(key);\n\n if (persistedState) {\n try {\n return JSON.parse(persistedState);\n } catch (e) {\n console.error(e);\n }\n }\n\n return result;\n }\n\n return undefined as S;\n });\n\n useEffect(() => {\n const persistedState = localStorage?.getItem(key);\n\n if (\n persistedState &&\n persistedState !== 'undefined' &&\n state === undefined\n ) {\n try {\n setState(JSON.parse(persistedState));\n } catch (e) {\n console.error(e);\n }\n } else if (initialState !== undefined && state === undefined) {\n setState(initialState);\n }\n }, [key, state]);\n\n /**\n * Allows setting state either directly or via a functional update.\n * If passed a function, we merge/update based on the previous state.\n */\n const setStateWrapper: typeof setState = useCallback(\n (valueOrUpdater: SetStateAction<S>) => {\n setState((prev) => {\n const newValue: S =\n typeof valueOrUpdater === 'function'\n ? (valueOrUpdater as (prevVal: S) => S)(prev)\n : valueOrUpdater;\n\n if (newValue !== 'undefined') {\n localStorage?.setItem(key, JSON.stringify(newValue));\n return newValue;\n }\n\n return prev;\n });\n },\n [key, setState]\n );\n\n const loadState = useCallback(() => {\n const savedState = localStorage?.getItem(key);\n if (savedState) {\n setState(JSON.parse(savedState));\n }\n }, [key, setState]);\n\n const clearState = useCallback(() => {\n localStorage?.removeItem(key);\n setState(undefined as S);\n }, [key]);\n\n return useMemo(\n () => [state, setStateWrapper, loadState, clearState],\n [state, setStateWrapper, loadState, clearState]\n );\n};\n"],"mappings":";;;;;AAWA,MAAa,qBACX,KACA,iBAC6D;CAC7D,MAAM,CAAC,OAAO,YAAY,eAAkB;AAE1C,MAAI,iBAAiB,QAAW;GAC9B,MAAMA,SACJ,OAAO,iBAAiB,aACnB,cAA0B,GAC3B;AAEN,OAAI,OAAO,WAAW,YAAa,QAAO;GAE1C,MAAM,iBAAiB,cAAc,QAAQ,IAAI;AAEjD,OAAI,eACF,KAAI;AACF,WAAO,KAAK,MAAM,eAAe;YAC1B,GAAG;AACV,YAAQ,MAAM,EAAE;;AAIpB,UAAO;;GAIT;AAEF,iBAAgB;EACd,MAAM,iBAAiB,cAAc,QAAQ,IAAI;AAEjD,MACE,kBACA,mBAAmB,eACnB,UAAU,OAEV,KAAI;AACF,YAAS,KAAK,MAAM,eAAe,CAAC;WAC7B,GAAG;AACV,WAAQ,MAAM,EAAE;;WAET,iBAAiB,UAAa,UAAU,OACjD,UAAS,aAAa;IAEvB,CAAC,KAAK,MAAM,CAAC;;;;;CAMhB,MAAMC,kBAAmC,aACtC,mBAAsC;AACrC,YAAU,SAAS;GACjB,MAAMC,WACJ,OAAO,mBAAmB,aACrB,eAAqC,KAAK,GAC3C;AAEN,OAAI,aAAa,aAAa;AAC5B,kBAAc,QAAQ,KAAK,KAAK,UAAU,SAAS,CAAC;AACpD,WAAO;;AAGT,UAAO;IACP;IAEJ,CAAC,KAAK,SAAS,CAChB;CAED,MAAM,YAAY,kBAAkB;EAClC,MAAM,aAAa,cAAc,QAAQ,IAAI;AAC7C,MAAI,WACF,UAAS,KAAK,MAAM,WAAW,CAAC;IAEjC,CAAC,KAAK,SAAS,CAAC;CAEnB,MAAM,aAAa,kBAAkB;AACnC,gBAAc,WAAW,IAAI;AAC7B,WAAS,OAAe;IACvB,CAAC,IAAI,CAAC;AAET,QAAO,cACC;EAAC;EAAO;EAAiB;EAAW;EAAW,EACrD;EAAC;EAAO;EAAiB;EAAW;EAAW,CAChD"}
1
+ {"version":3,"file":"usePersistedStore.mjs","names":[],"sources":["../../../src/hooks/usePersistedStore.ts"],"sourcesContent":["'use client';\n\nimport {\n type Dispatch,\n type SetStateAction,\n useCallback,\n useEffect,\n useMemo,\n useState,\n} from 'react';\n\nexport const usePersistedStore = <S>(\n key: string,\n initialState?: S | (() => S)\n): [S, Dispatch<SetStateAction<S>>, () => void, () => void] => {\n const [state, setState] = useState<S>(() => {\n // If you have an initial value on the client, send a message out immediately\n if (initialState !== undefined) {\n const result: S =\n typeof initialState === 'function'\n ? (initialState as () => S)()\n : initialState;\n\n if (typeof window === 'undefined') return result;\n\n const persistedState = localStorage?.getItem(key);\n\n if (persistedState) {\n try {\n return JSON.parse(persistedState);\n } catch (e) {\n console.error(e);\n }\n }\n\n return result;\n }\n\n return undefined as S;\n });\n\n useEffect(() => {\n const persistedState = localStorage?.getItem(key);\n\n if (\n persistedState &&\n persistedState !== 'undefined' &&\n state === undefined\n ) {\n try {\n setState(JSON.parse(persistedState));\n } catch (e) {\n console.error(e);\n }\n } else if (initialState !== undefined && state === undefined) {\n setState(initialState);\n }\n }, [key, state]);\n\n /**\n * Allows setting state either directly or via a functional update.\n * If passed a function, we merge/update based on the previous state.\n */\n const setStateWrapper: typeof setState = useCallback(\n (valueOrUpdater: SetStateAction<S>) => {\n setState((prev) => {\n const newValue: S =\n typeof valueOrUpdater === 'function'\n ? (valueOrUpdater as (prevVal: S) => S)(prev)\n : valueOrUpdater;\n\n if (newValue !== 'undefined') {\n localStorage?.setItem(key, JSON.stringify(newValue));\n return newValue;\n }\n\n return prev;\n });\n },\n [key, setState]\n );\n\n const loadState = useCallback(() => {\n const savedState = localStorage?.getItem(key);\n if (savedState) {\n setState(JSON.parse(savedState));\n }\n }, [key, setState]);\n\n const clearState = useCallback(() => {\n localStorage?.removeItem(key);\n setState(undefined as S);\n }, [key]);\n\n return useMemo(\n () => [state, setStateWrapper, loadState, clearState],\n [state, setStateWrapper, loadState, clearState]\n );\n};\n"],"mappings":";;;;;AAWA,MAAa,qBACX,KACA,iBAC6D;CAC7D,MAAM,CAAC,OAAO,YAAY,eAAkB;AAE1C,MAAI,iBAAiB,QAAW;GAC9B,MAAM,SACJ,OAAO,iBAAiB,aACnB,cAA0B,GAC3B;AAEN,OAAI,OAAO,WAAW,YAAa,QAAO;GAE1C,MAAM,iBAAiB,cAAc,QAAQ,IAAI;AAEjD,OAAI,eACF,KAAI;AACF,WAAO,KAAK,MAAM,eAAe;YAC1B,GAAG;AACV,YAAQ,MAAM,EAAE;;AAIpB,UAAO;;GAIT;AAEF,iBAAgB;EACd,MAAM,iBAAiB,cAAc,QAAQ,IAAI;AAEjD,MACE,kBACA,mBAAmB,eACnB,UAAU,OAEV,KAAI;AACF,YAAS,KAAK,MAAM,eAAe,CAAC;WAC7B,GAAG;AACV,WAAQ,MAAM,EAAE;;WAET,iBAAiB,UAAa,UAAU,OACjD,UAAS,aAAa;IAEvB,CAAC,KAAK,MAAM,CAAC;;;;;CAMhB,MAAM,kBAAmC,aACtC,mBAAsC;AACrC,YAAU,SAAS;GACjB,MAAM,WACJ,OAAO,mBAAmB,aACrB,eAAqC,KAAK,GAC3C;AAEN,OAAI,aAAa,aAAa;AAC5B,kBAAc,QAAQ,KAAK,KAAK,UAAU,SAAS,CAAC;AACpD,WAAO;;AAGT,UAAO;IACP;IAEJ,CAAC,KAAK,SAAS,CAChB;CAED,MAAM,YAAY,kBAAkB;EAClC,MAAM,aAAa,cAAc,QAAQ,IAAI;AAC7C,MAAI,WACF,UAAS,KAAK,MAAM,WAAW,CAAC;IAEjC,CAAC,KAAK,SAAS,CAAC;CAEnB,MAAM,aAAa,kBAAkB;AACnC,gBAAc,WAAW,IAAI;AAC7B,WAAS,OAAe;IACvB,CAAC,IAAI,CAAC;AAET,QAAO,cACC;EAAC;EAAO;EAAiB;EAAW;EAAW,EACrD;EAAC;EAAO;EAAiB;EAAW;EAAW,CAChD"}
@@ -1 +1 @@
1
- {"version":3,"file":"useScrollY.mjs","names":["INITIAL_SCROLL_STATE: UseScrollYResult","lastSnapshot: UseScrollYResult","scrollY","scrollHeight","clientHeight","scrollYMax","scrollPercentage"],"sources":["../../../src/hooks/useScrollY.ts"],"sourcesContent":["'use client';\n\nimport { useCallback, useSyncExternalStore } from 'react';\nimport { useGetElementOrWindow } from './useGetElementOrWindow';\n\ntype UseScrollYProps = {\n element?: HTMLElement;\n};\n\ntype UseScrollYResult = {\n scrollY: number;\n scrollPercentage: number;\n scrollYMax: number;\n};\n\nconst INITIAL_SCROLL_STATE: UseScrollYResult = {\n scrollY: 0,\n scrollPercentage: 0,\n scrollYMax: 0,\n};\n\nlet lastSnapshot: UseScrollYResult = INITIAL_SCROLL_STATE;\n\nexport const useScrollY = (props?: UseScrollYProps): UseScrollYResult => {\n const { element } = props ?? {};\n\n const containerElement = useGetElementOrWindow(element);\n\n const subscribe = useCallback(\n (onChange: () => void) => {\n if (typeof window === 'undefined' || !containerElement) return () => {};\n let raf = 0;\n\n const handler = () => {\n if (raf) return;\n raf = window.requestAnimationFrame(() => {\n raf = 0;\n onChange();\n });\n };\n\n containerElement.addEventListener('scroll', handler, { passive: true });\n\n return () => {\n containerElement.removeEventListener('scroll', handler);\n if (raf) window.cancelAnimationFrame(raf);\n };\n },\n [containerElement]\n );\n\n const getSnapshot = (): UseScrollYResult => {\n if (typeof window === 'undefined' || !containerElement) {\n return INITIAL_SCROLL_STATE; // SSR/hydration-safe\n }\n\n // Handle custom element\n if (containerElement instanceof HTMLElement) {\n const scrollY = containerElement.scrollTop;\n const scrollHeight = containerElement.scrollHeight;\n const clientHeight = containerElement.clientHeight;\n const scrollYMax = Math.max(0, scrollHeight - clientHeight);\n const scrollPercentage = scrollYMax > 0 ? scrollY / scrollYMax : 0;\n\n if (\n lastSnapshot.scrollY === scrollY &&\n lastSnapshot.scrollPercentage === scrollPercentage &&\n lastSnapshot.scrollYMax === scrollYMax\n ) {\n return lastSnapshot;\n }\n\n lastSnapshot = { scrollY, scrollPercentage, scrollYMax };\n return lastSnapshot;\n }\n\n // Handle window\n const doc = document.documentElement;\n const body = document.body;\n\n const scrollY =\n window.scrollY ??\n window.pageYOffset ??\n doc?.scrollTop ??\n body?.scrollTop ??\n 0;\n\n const scrollHeight = doc?.scrollHeight ?? body?.scrollHeight ?? 0;\n const clientHeight = doc?.clientHeight ?? window.innerHeight ?? 0;\n const scrollYMax = Math.max(0, scrollHeight - clientHeight);\n const scrollPercentage = scrollYMax > 0 ? scrollY / scrollYMax : 0;\n\n if (\n lastSnapshot.scrollY === scrollY &&\n lastSnapshot.scrollPercentage === scrollPercentage &&\n lastSnapshot.scrollYMax === scrollYMax\n ) {\n return lastSnapshot;\n }\n\n lastSnapshot = { scrollY, scrollPercentage, scrollYMax };\n return lastSnapshot;\n };\n\n const getServerSnapshot = (): UseScrollYResult => INITIAL_SCROLL_STATE;\n\n return useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);\n};\n"],"mappings":";;;;;;AAeA,MAAMA,uBAAyC;CAC7C,SAAS;CACT,kBAAkB;CAClB,YAAY;CACb;AAED,IAAIC,eAAiC;AAErC,MAAa,cAAc,UAA8C;CACvE,MAAM,EAAE,YAAY,SAAS,EAAE;CAE/B,MAAM,mBAAmB,sBAAsB,QAAQ;CAEvD,MAAM,YAAY,aACf,aAAyB;AACxB,MAAI,OAAO,WAAW,eAAe,CAAC,iBAAkB,cAAa;EACrE,IAAI,MAAM;EAEV,MAAM,gBAAgB;AACpB,OAAI,IAAK;AACT,SAAM,OAAO,4BAA4B;AACvC,UAAM;AACN,cAAU;KACV;;AAGJ,mBAAiB,iBAAiB,UAAU,SAAS,EAAE,SAAS,MAAM,CAAC;AAEvE,eAAa;AACX,oBAAiB,oBAAoB,UAAU,QAAQ;AACvD,OAAI,IAAK,QAAO,qBAAqB,IAAI;;IAG7C,CAAC,iBAAiB,CACnB;CAED,MAAM,oBAAsC;AAC1C,MAAI,OAAO,WAAW,eAAe,CAAC,iBACpC,QAAO;AAIT,MAAI,4BAA4B,aAAa;GAC3C,MAAMC,YAAU,iBAAiB;GACjC,MAAMC,iBAAe,iBAAiB;GACtC,MAAMC,iBAAe,iBAAiB;GACtC,MAAMC,eAAa,KAAK,IAAI,GAAGF,iBAAeC,eAAa;GAC3D,MAAME,qBAAmBD,eAAa,IAAIH,YAAUG,eAAa;AAEjE,OACE,aAAa,YAAYH,aACzB,aAAa,qBAAqBI,sBAClC,aAAa,eAAeD,aAE5B,QAAO;AAGT,kBAAe;IAAE;IAAS;IAAkB;IAAY;AACxD,UAAO;;EAIT,MAAM,MAAM,SAAS;EACrB,MAAM,OAAO,SAAS;EAEtB,MAAM,UACJ,OAAO,WACP,OAAO,eACP,KAAK,aACL,MAAM,aACN;EAEF,MAAM,eAAe,KAAK,gBAAgB,MAAM,gBAAgB;EAChE,MAAM,eAAe,KAAK,gBAAgB,OAAO,eAAe;EAChE,MAAM,aAAa,KAAK,IAAI,GAAG,eAAe,aAAa;EAC3D,MAAM,mBAAmB,aAAa,IAAI,UAAU,aAAa;AAEjE,MACE,aAAa,YAAY,WACzB,aAAa,qBAAqB,oBAClC,aAAa,eAAe,WAE5B,QAAO;AAGT,iBAAe;GAAE;GAAS;GAAkB;GAAY;AACxD,SAAO;;CAGT,MAAM,0BAA4C;AAElD,QAAO,qBAAqB,WAAW,aAAa,kBAAkB"}
1
+ {"version":3,"file":"useScrollY.mjs","names":["scrollY","scrollHeight","clientHeight","scrollYMax","scrollPercentage"],"sources":["../../../src/hooks/useScrollY.ts"],"sourcesContent":["'use client';\n\nimport { useCallback, useSyncExternalStore } from 'react';\nimport { useGetElementOrWindow } from './useGetElementOrWindow';\n\ntype UseScrollYProps = {\n element?: HTMLElement;\n};\n\ntype UseScrollYResult = {\n scrollY: number;\n scrollPercentage: number;\n scrollYMax: number;\n};\n\nconst INITIAL_SCROLL_STATE: UseScrollYResult = {\n scrollY: 0,\n scrollPercentage: 0,\n scrollYMax: 0,\n};\n\nlet lastSnapshot: UseScrollYResult = INITIAL_SCROLL_STATE;\n\nexport const useScrollY = (props?: UseScrollYProps): UseScrollYResult => {\n const { element } = props ?? {};\n\n const containerElement = useGetElementOrWindow(element);\n\n const subscribe = useCallback(\n (onChange: () => void) => {\n if (typeof window === 'undefined' || !containerElement) return () => {};\n let raf = 0;\n\n const handler = () => {\n if (raf) return;\n raf = window.requestAnimationFrame(() => {\n raf = 0;\n onChange();\n });\n };\n\n containerElement.addEventListener('scroll', handler, { passive: true });\n\n return () => {\n containerElement.removeEventListener('scroll', handler);\n if (raf) window.cancelAnimationFrame(raf);\n };\n },\n [containerElement]\n );\n\n const getSnapshot = (): UseScrollYResult => {\n if (typeof window === 'undefined' || !containerElement) {\n return INITIAL_SCROLL_STATE; // SSR/hydration-safe\n }\n\n // Handle custom element\n if (containerElement instanceof HTMLElement) {\n const scrollY = containerElement.scrollTop;\n const scrollHeight = containerElement.scrollHeight;\n const clientHeight = containerElement.clientHeight;\n const scrollYMax = Math.max(0, scrollHeight - clientHeight);\n const scrollPercentage = scrollYMax > 0 ? scrollY / scrollYMax : 0;\n\n if (\n lastSnapshot.scrollY === scrollY &&\n lastSnapshot.scrollPercentage === scrollPercentage &&\n lastSnapshot.scrollYMax === scrollYMax\n ) {\n return lastSnapshot;\n }\n\n lastSnapshot = { scrollY, scrollPercentage, scrollYMax };\n return lastSnapshot;\n }\n\n // Handle window\n const doc = document.documentElement;\n const body = document.body;\n\n const scrollY =\n window.scrollY ??\n window.pageYOffset ??\n doc?.scrollTop ??\n body?.scrollTop ??\n 0;\n\n const scrollHeight = doc?.scrollHeight ?? body?.scrollHeight ?? 0;\n const clientHeight = doc?.clientHeight ?? window.innerHeight ?? 0;\n const scrollYMax = Math.max(0, scrollHeight - clientHeight);\n const scrollPercentage = scrollYMax > 0 ? scrollY / scrollYMax : 0;\n\n if (\n lastSnapshot.scrollY === scrollY &&\n lastSnapshot.scrollPercentage === scrollPercentage &&\n lastSnapshot.scrollYMax === scrollYMax\n ) {\n return lastSnapshot;\n }\n\n lastSnapshot = { scrollY, scrollPercentage, scrollYMax };\n return lastSnapshot;\n };\n\n const getServerSnapshot = (): UseScrollYResult => INITIAL_SCROLL_STATE;\n\n return useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);\n};\n"],"mappings":";;;;;;AAeA,MAAM,uBAAyC;CAC7C,SAAS;CACT,kBAAkB;CAClB,YAAY;CACb;AAED,IAAI,eAAiC;AAErC,MAAa,cAAc,UAA8C;CACvE,MAAM,EAAE,YAAY,SAAS,EAAE;CAE/B,MAAM,mBAAmB,sBAAsB,QAAQ;CAEvD,MAAM,YAAY,aACf,aAAyB;AACxB,MAAI,OAAO,WAAW,eAAe,CAAC,iBAAkB,cAAa;EACrE,IAAI,MAAM;EAEV,MAAM,gBAAgB;AACpB,OAAI,IAAK;AACT,SAAM,OAAO,4BAA4B;AACvC,UAAM;AACN,cAAU;KACV;;AAGJ,mBAAiB,iBAAiB,UAAU,SAAS,EAAE,SAAS,MAAM,CAAC;AAEvE,eAAa;AACX,oBAAiB,oBAAoB,UAAU,QAAQ;AACvD,OAAI,IAAK,QAAO,qBAAqB,IAAI;;IAG7C,CAAC,iBAAiB,CACnB;CAED,MAAM,oBAAsC;AAC1C,MAAI,OAAO,WAAW,eAAe,CAAC,iBACpC,QAAO;AAIT,MAAI,4BAA4B,aAAa;GAC3C,MAAMA,YAAU,iBAAiB;GACjC,MAAMC,iBAAe,iBAAiB;GACtC,MAAMC,iBAAe,iBAAiB;GACtC,MAAMC,eAAa,KAAK,IAAI,GAAGF,iBAAeC,eAAa;GAC3D,MAAME,qBAAmBD,eAAa,IAAIH,YAAUG,eAAa;AAEjE,OACE,aAAa,YAAYH,aACzB,aAAa,qBAAqBI,sBAClC,aAAa,eAAeD,aAE5B,QAAO;AAGT,kBAAe;IAAE;IAAS;IAAkB;IAAY;AACxD,UAAO;;EAIT,MAAM,MAAM,SAAS;EACrB,MAAM,OAAO,SAAS;EAEtB,MAAM,UACJ,OAAO,WACP,OAAO,eACP,KAAK,aACL,MAAM,aACN;EAEF,MAAM,eAAe,KAAK,gBAAgB,MAAM,gBAAgB;EAChE,MAAM,eAAe,KAAK,gBAAgB,OAAO,eAAe;EAChE,MAAM,aAAa,KAAK,IAAI,GAAG,eAAe,aAAa;EAC3D,MAAM,mBAAmB,aAAa,IAAI,UAAU,aAAa;AAEjE,MACE,aAAa,YAAY,WACzB,aAAa,qBAAqB,oBAClC,aAAa,eAAe,WAE5B,QAAO;AAGT,iBAAe;GAAE;GAAS;GAAkB;GAAY;AACxD,SAAO;;CAGT,MAAM,0BAA4C;AAElD,QAAO,qBAAqB,WAAW,aAAa,kBAAkB"}
@@ -1 +1 @@
1
- {"version":3,"file":"auth.mjs","names":["signInEmail: AuthClient['signIn']['email']","signInSocial: AuthClient['signIn']['social']","signUpEmail: AuthClient['signUp']['email']","signOut: AuthClient['signOut']","changePasswordSession: AuthClient['changePassword']","requestPasswordResetSession: AuthClient['requestPasswordReset']","resetPassword: AuthClient['resetPassword']","verifyEmailSession: AuthClient['verifyEmail']","getSession: AuthClient['getSession']","forgetPassword: AuthClient['requestPasswordReset']","sendVerificationEmail: AuthClient['sendVerificationEmail']","changeEmail: AuthClient['changeEmail']","deleteUser: AuthClient['deleteUser']","revokeSession: AuthClient['revokeSession']","revokeSessions: AuthClient['revokeSessions']","revokeOtherSessions: AuthClient['revokeOtherSessions']","linkSocial: AuthClient['linkSocial']","listAccounts: AuthClient['listAccounts']","unlinkAccount: AuthClient['unlinkAccount']","refreshToken: AuthClient['refreshToken']","getAccessToken: AuthClient['getAccessToken']","accountInfo: AuthClient['accountInfo']","updateUser: AuthClient['updateUser']","listSessions: AuthClient['listSessions']","enableTwoFactor: AuthClient['twoFactor']['enable']","disableTwoFactor: AuthClient['twoFactor']['disable']","verifyTotp: AuthClient['twoFactor']['verifyTotp']","verifyBackupCode: AuthClient['twoFactor']['verifyBackupCode']","addPasskey: AuthClient['passkey']['addPasskey']","signInPasskey: AuthClient['signIn']['passkey']","deletePasskey: AuthClient['passkey']['deletePasskey']","signInMagicLink: any","signInSSO: AuthClient['signIn']['sso']","registerSSO: AuthClient['sso']['register']"],"sources":["../../../src/libs/auth.ts"],"sourcesContent":["import { passkeyClient } from '@better-auth/passkey/client';\nimport { ssoClient } from '@better-auth/sso/client';\nimport configuration from '@intlayer/config/built';\nimport type { IntlayerConfig } from '@intlayer/types';\nimport { createAuthClient } from 'better-auth/client';\nimport { magicLinkClient, twoFactorClient } from 'better-auth/client/plugins';\n\nconst getAuthClient = (backendURL: string) =>\n createAuthClient({\n baseURL: backendURL,\n withCredentials: true, // makes fetch forward cookies\n plugins: [\n twoFactorClient({\n onTwoFactorRedirect: () => {\n // Preserve redirect_url when redirecting to 2FA\n const searchParams = new URLSearchParams(window.location.search);\n const redirectUrl = searchParams.get('redirect_url');\n const twoFaUrl = redirectUrl\n ? `/auth/2fa?redirect_url=${encodeURIComponent(redirectUrl)}`\n : '/auth/2fa';\n window.location.href = twoFaUrl;\n },\n }),\n passkeyClient(),\n magicLinkClient() as never,\n ssoClient(),\n ],\n });\n\ntype AuthClient = ReturnType<typeof getAuthClient>;\n\nexport interface AuthAPI {\n getAuthClient: () => AuthClient;\n signInEmail: AuthClient['signIn']['email'];\n signUpEmail: AuthClient['signUp']['email'];\n signOut: AuthClient['signOut'];\n signInSocial: AuthClient['signIn']['social'];\n linkSocial: AuthClient['linkSocial'];\n changePasswordSession: AuthClient['changePassword'];\n requestPasswordResetSession: AuthClient['requestPasswordReset'];\n resetPassword: AuthClient['resetPassword'];\n verifyEmailSession: AuthClient['verifyEmail'];\n getSession: AuthClient['getSession'];\n forgetPassword: AuthClient['requestPasswordReset'];\n sendVerificationEmail: AuthClient['sendVerificationEmail'];\n changeEmail: AuthClient['changeEmail'];\n deleteUser: AuthClient['deleteUser'];\n revokeSession: AuthClient['revokeSession'];\n revokeSessions: AuthClient['revokeSessions'];\n revokeOtherSessions: AuthClient['revokeOtherSessions'];\n listAccounts: AuthClient['listAccounts'];\n unlinkAccount: AuthClient['unlinkAccount'];\n refreshToken: AuthClient['refreshToken'];\n getAccessToken: AuthClient['getAccessToken'];\n accountInfo: AuthClient['accountInfo'];\n updateUser: AuthClient['updateUser'];\n listSessions: AuthClient['listSessions'];\n enableTwoFactor: AuthClient['twoFactor']['enable'];\n disableTwoFactor: AuthClient['twoFactor']['disable'];\n verifyTotp: AuthClient['twoFactor']['verifyTotp'];\n verifyBackupCode: AuthClient['twoFactor']['verifyBackupCode'];\n addPasskey: AuthClient['passkey']['addPasskey'];\n signInPasskey: AuthClient['signIn']['passkey'];\n deletePasskey: AuthClient['passkey']['deletePasskey'];\n listPasskeys: () => Promise<any>;\n signInMagicLink: (\n // Redeclare it because of type inference issues\n input: { email: string; callbackURL: string }\n ) => any;\n registerSSO: AuthClient['sso']['register'];\n listSSOProviders: () => Promise<any>;\n deleteSSOProvider: (args: { providerId: string }) => Promise<any>;\n signInSSO: AuthClient['signIn']['sso'];\n}\n\nexport const getAuthAPI = (intlayerConfig?: IntlayerConfig): AuthAPI => {\n const backendURL =\n intlayerConfig?.editor?.backendURL ?? configuration?.editor?.backendURL;\n\n if (!backendURL) {\n throw new Error(\n 'Backend URL is not defined in the Intlayer configuration.'\n );\n }\n\n const client = getAuthClient(backendURL);\n\n const signInEmail: AuthClient['signIn']['email'] = async (...args) => {\n return client.signIn.email(...args);\n };\n\n const signInSocial: AuthClient['signIn']['social'] = async (...args) => {\n return client.signIn.social(...args);\n };\n\n const signUpEmail: AuthClient['signUp']['email'] = async (...args) => {\n return client.signUp.email(...args);\n };\n\n const signOut: AuthClient['signOut'] = async (...args) => {\n return client.signOut(...args);\n };\n\n const changePasswordSession: AuthClient['changePassword'] = async (\n ...args\n ) => {\n return client.changePassword(...args);\n };\n\n const requestPasswordResetSession: AuthClient['requestPasswordReset'] =\n async (...args) => {\n return client.requestPasswordReset(...args);\n };\n\n // @ts-ignore - resetPassword is not typed\n const resetPassword: AuthClient['resetPassword'] = async (...args) => {\n return client.resetPassword(...args);\n };\n\n const verifyEmailSession: AuthClient['verifyEmail'] = async (...args) => {\n return client.verifyEmail(...args);\n };\n\n const getSession: AuthClient['getSession'] = async (...args) => {\n return client.getSession(...args);\n };\n\n const forgetPassword: AuthClient['requestPasswordReset'] = async (\n ...args\n ) => {\n return client.requestPasswordReset(...args);\n };\n\n const sendVerificationEmail: AuthClient['sendVerificationEmail'] = async (\n ...args\n ) => {\n return client.sendVerificationEmail(...args);\n };\n\n const changeEmail: AuthClient['changeEmail'] = async (...args) => {\n return client.changeEmail(...args);\n };\n\n // @ts-ignore - deleteUser is not typed\n const deleteUser: AuthClient['deleteUser'] = async (...args) => {\n return client.deleteUser(...args);\n };\n\n const revokeSession: AuthClient['revokeSession'] = async (...args) => {\n return client.revokeSession(...args);\n };\n\n const revokeSessions: AuthClient['revokeSessions'] = async (...args) => {\n return client.revokeSessions(...args);\n };\n\n const revokeOtherSessions: AuthClient['revokeOtherSessions'] = async (\n ...args\n ) => {\n return client.revokeOtherSessions(...args);\n };\n\n const linkSocial: AuthClient['linkSocial'] = async (...args) => {\n return client.linkSocial(...args);\n };\n\n const listAccounts: AuthClient['listAccounts'] = async (...args) => {\n return client.listAccounts(...args);\n };\n\n const unlinkAccount: AuthClient['unlinkAccount'] = async (...args) => {\n return client.unlinkAccount(...args);\n };\n\n const refreshToken: AuthClient['refreshToken'] = async (...args) => {\n return client.refreshToken(...args);\n };\n\n const getAccessToken: AuthClient['getAccessToken'] = async (...args) => {\n return client.getAccessToken(...args);\n };\n\n const accountInfo: AuthClient['accountInfo'] = async (...args) => {\n return client.accountInfo(...args);\n };\n\n const updateUser: AuthClient['updateUser'] = async (...args) => {\n return client.updateUser(...args);\n };\n\n const listSessions: AuthClient['listSessions'] = async (...args) => {\n return client.listSessions(...args);\n };\n\n const enableTwoFactor: AuthClient['twoFactor']['enable'] = async (\n ...args\n ) => {\n return client.twoFactor.enable(...args) as ReturnType<\n AuthClient['twoFactor']['enable']\n >;\n };\n\n const disableTwoFactor: AuthClient['twoFactor']['disable'] = async (\n ...args\n ) => {\n return client.twoFactor.disable(...args) as ReturnType<\n AuthClient['twoFactor']['disable']\n >;\n };\n\n const verifyTotp: AuthClient['twoFactor']['verifyTotp'] = async (...args) => {\n return client.twoFactor.verifyTotp(...args) as ReturnType<\n AuthClient['twoFactor']['verifyTotp']\n >;\n };\n\n const verifyBackupCode: AuthClient['twoFactor']['verifyBackupCode'] = async (\n ...args\n ) => {\n return client.twoFactor.verifyBackupCode(...args) as ReturnType<\n AuthClient['twoFactor']['verifyBackupCode']\n >;\n };\n\n const addPasskey: AuthClient['passkey']['addPasskey'] = async (...args) => {\n return client.passkey.addPasskey(...args);\n };\n\n const signInPasskey: AuthClient['signIn']['passkey'] = async (...args) => {\n return client.signIn.passkey(...args);\n };\n\n const deletePasskey: AuthClient['passkey']['deletePasskey'] = async (\n ...args\n ) => {\n return client.passkey.deletePasskey(...args);\n };\n\n const listPasskeys = async () => {\n // @ts-ignore - listPasskeys may not be typed yet\n return client.$fetch('/passkey/list-user-passkeys', {\n method: 'GET',\n });\n };\n\n const signInMagicLink: any = async (...args: any[]) => {\n return (client.signIn as any).magicLink(...args);\n };\n\n const signInSSO: AuthClient['signIn']['sso'] = async (...args) => {\n return client.signIn.sso(...args);\n };\n\n const registerSSO: AuthClient['sso']['register'] = async (...args) => {\n return client.sso.register(...args);\n };\n\n const listSSOProviders = async () => {\n // Not implemented yet\n };\n\n const deleteSSOProvider = async (args: { providerId: string }) => {\n // Not implemented yet\n };\n\n return {\n getAuthClient: () => client,\n signInEmail,\n signUpEmail,\n signOut,\n signInSocial,\n linkSocial,\n changePasswordSession,\n requestPasswordResetSession,\n resetPassword,\n verifyEmailSession,\n getSession,\n forgetPassword,\n sendVerificationEmail,\n changeEmail,\n deleteUser,\n revokeSession,\n revokeSessions,\n revokeOtherSessions,\n listAccounts,\n unlinkAccount,\n refreshToken,\n getAccessToken,\n accountInfo,\n updateUser,\n listSessions,\n enableTwoFactor,\n disableTwoFactor,\n verifyTotp,\n verifyBackupCode,\n addPasskey,\n signInPasskey,\n deletePasskey,\n listPasskeys,\n signInMagicLink,\n signInSSO,\n registerSSO,\n listSSOProviders,\n deleteSSOProvider,\n };\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"auth.mjs","names":[],"sources":["../../../src/libs/auth.ts"],"sourcesContent":["import { passkeyClient } from '@better-auth/passkey/client';\nimport { ssoClient } from '@better-auth/sso/client';\nimport configuration from '@intlayer/config/built';\nimport type { IntlayerConfig } from '@intlayer/types';\nimport { createAuthClient } from 'better-auth/client';\nimport { magicLinkClient, twoFactorClient } from 'better-auth/client/plugins';\n\nconst getAuthClient = (backendURL: string) =>\n createAuthClient({\n baseURL: backendURL,\n withCredentials: true, // makes fetch forward cookies\n plugins: [\n twoFactorClient({\n onTwoFactorRedirect: () => {\n // Preserve redirect_url when redirecting to 2FA\n const searchParams = new URLSearchParams(window.location.search);\n const redirectUrl = searchParams.get('redirect_url');\n const twoFaUrl = redirectUrl\n ? `/auth/2fa?redirect_url=${encodeURIComponent(redirectUrl)}`\n : '/auth/2fa';\n window.location.href = twoFaUrl;\n },\n }),\n passkeyClient(),\n magicLinkClient() as never,\n ssoClient(),\n ],\n });\n\ntype AuthClient = ReturnType<typeof getAuthClient>;\n\nexport interface AuthAPI {\n getAuthClient: () => AuthClient;\n signInEmail: AuthClient['signIn']['email'];\n signUpEmail: AuthClient['signUp']['email'];\n signOut: AuthClient['signOut'];\n signInSocial: AuthClient['signIn']['social'];\n linkSocial: AuthClient['linkSocial'];\n changePasswordSession: AuthClient['changePassword'];\n requestPasswordResetSession: AuthClient['requestPasswordReset'];\n resetPassword: AuthClient['resetPassword'];\n verifyEmailSession: AuthClient['verifyEmail'];\n getSession: AuthClient['getSession'];\n forgetPassword: AuthClient['requestPasswordReset'];\n sendVerificationEmail: AuthClient['sendVerificationEmail'];\n changeEmail: AuthClient['changeEmail'];\n deleteUser: AuthClient['deleteUser'];\n revokeSession: AuthClient['revokeSession'];\n revokeSessions: AuthClient['revokeSessions'];\n revokeOtherSessions: AuthClient['revokeOtherSessions'];\n listAccounts: AuthClient['listAccounts'];\n unlinkAccount: AuthClient['unlinkAccount'];\n refreshToken: AuthClient['refreshToken'];\n getAccessToken: AuthClient['getAccessToken'];\n accountInfo: AuthClient['accountInfo'];\n updateUser: AuthClient['updateUser'];\n listSessions: AuthClient['listSessions'];\n enableTwoFactor: AuthClient['twoFactor']['enable'];\n disableTwoFactor: AuthClient['twoFactor']['disable'];\n verifyTotp: AuthClient['twoFactor']['verifyTotp'];\n verifyBackupCode: AuthClient['twoFactor']['verifyBackupCode'];\n addPasskey: AuthClient['passkey']['addPasskey'];\n signInPasskey: AuthClient['signIn']['passkey'];\n deletePasskey: AuthClient['passkey']['deletePasskey'];\n listPasskeys: () => Promise<any>;\n signInMagicLink: (\n // Redeclare it because of type inference issues\n input: { email: string; callbackURL: string }\n ) => any;\n registerSSO: AuthClient['sso']['register'];\n listSSOProviders: () => Promise<any>;\n deleteSSOProvider: (args: { providerId: string }) => Promise<any>;\n signInSSO: AuthClient['signIn']['sso'];\n}\n\nexport const getAuthAPI = (intlayerConfig?: IntlayerConfig): AuthAPI => {\n const backendURL =\n intlayerConfig?.editor?.backendURL ?? configuration?.editor?.backendURL;\n\n if (!backendURL) {\n throw new Error(\n 'Backend URL is not defined in the Intlayer configuration.'\n );\n }\n\n const client = getAuthClient(backendURL);\n\n const signInEmail: AuthClient['signIn']['email'] = async (...args) => {\n return client.signIn.email(...args);\n };\n\n const signInSocial: AuthClient['signIn']['social'] = async (...args) => {\n return client.signIn.social(...args);\n };\n\n const signUpEmail: AuthClient['signUp']['email'] = async (...args) => {\n return client.signUp.email(...args);\n };\n\n const signOut: AuthClient['signOut'] = async (...args) => {\n return client.signOut(...args);\n };\n\n const changePasswordSession: AuthClient['changePassword'] = async (\n ...args\n ) => {\n return client.changePassword(...args);\n };\n\n const requestPasswordResetSession: AuthClient['requestPasswordReset'] =\n async (...args) => {\n return client.requestPasswordReset(...args);\n };\n\n // @ts-ignore - resetPassword is not typed\n const resetPassword: AuthClient['resetPassword'] = async (...args) => {\n return client.resetPassword(...args);\n };\n\n const verifyEmailSession: AuthClient['verifyEmail'] = async (...args) => {\n return client.verifyEmail(...args);\n };\n\n const getSession: AuthClient['getSession'] = async (...args) => {\n return client.getSession(...args);\n };\n\n const forgetPassword: AuthClient['requestPasswordReset'] = async (\n ...args\n ) => {\n return client.requestPasswordReset(...args);\n };\n\n const sendVerificationEmail: AuthClient['sendVerificationEmail'] = async (\n ...args\n ) => {\n return client.sendVerificationEmail(...args);\n };\n\n const changeEmail: AuthClient['changeEmail'] = async (...args) => {\n return client.changeEmail(...args);\n };\n\n // @ts-ignore - deleteUser is not typed\n const deleteUser: AuthClient['deleteUser'] = async (...args) => {\n return client.deleteUser(...args);\n };\n\n const revokeSession: AuthClient['revokeSession'] = async (...args) => {\n return client.revokeSession(...args);\n };\n\n const revokeSessions: AuthClient['revokeSessions'] = async (...args) => {\n return client.revokeSessions(...args);\n };\n\n const revokeOtherSessions: AuthClient['revokeOtherSessions'] = async (\n ...args\n ) => {\n return client.revokeOtherSessions(...args);\n };\n\n const linkSocial: AuthClient['linkSocial'] = async (...args) => {\n return client.linkSocial(...args);\n };\n\n const listAccounts: AuthClient['listAccounts'] = async (...args) => {\n return client.listAccounts(...args);\n };\n\n const unlinkAccount: AuthClient['unlinkAccount'] = async (...args) => {\n return client.unlinkAccount(...args);\n };\n\n const refreshToken: AuthClient['refreshToken'] = async (...args) => {\n return client.refreshToken(...args);\n };\n\n const getAccessToken: AuthClient['getAccessToken'] = async (...args) => {\n return client.getAccessToken(...args);\n };\n\n const accountInfo: AuthClient['accountInfo'] = async (...args) => {\n return client.accountInfo(...args);\n };\n\n const updateUser: AuthClient['updateUser'] = async (...args) => {\n return client.updateUser(...args);\n };\n\n const listSessions: AuthClient['listSessions'] = async (...args) => {\n return client.listSessions(...args);\n };\n\n const enableTwoFactor: AuthClient['twoFactor']['enable'] = async (\n ...args\n ) => {\n return client.twoFactor.enable(...args) as ReturnType<\n AuthClient['twoFactor']['enable']\n >;\n };\n\n const disableTwoFactor: AuthClient['twoFactor']['disable'] = async (\n ...args\n ) => {\n return client.twoFactor.disable(...args) as ReturnType<\n AuthClient['twoFactor']['disable']\n >;\n };\n\n const verifyTotp: AuthClient['twoFactor']['verifyTotp'] = async (...args) => {\n return client.twoFactor.verifyTotp(...args) as ReturnType<\n AuthClient['twoFactor']['verifyTotp']\n >;\n };\n\n const verifyBackupCode: AuthClient['twoFactor']['verifyBackupCode'] = async (\n ...args\n ) => {\n return client.twoFactor.verifyBackupCode(...args) as ReturnType<\n AuthClient['twoFactor']['verifyBackupCode']\n >;\n };\n\n const addPasskey: AuthClient['passkey']['addPasskey'] = async (...args) => {\n return client.passkey.addPasskey(...args);\n };\n\n const signInPasskey: AuthClient['signIn']['passkey'] = async (...args) => {\n return client.signIn.passkey(...args);\n };\n\n const deletePasskey: AuthClient['passkey']['deletePasskey'] = async (\n ...args\n ) => {\n return client.passkey.deletePasskey(...args);\n };\n\n const listPasskeys = async () => {\n // @ts-ignore - listPasskeys may not be typed yet\n return client.$fetch('/passkey/list-user-passkeys', {\n method: 'GET',\n });\n };\n\n const signInMagicLink: any = async (...args: any[]) => {\n return (client.signIn as any).magicLink(...args);\n };\n\n const signInSSO: AuthClient['signIn']['sso'] = async (...args) => {\n return client.signIn.sso(...args);\n };\n\n const registerSSO: AuthClient['sso']['register'] = async (...args) => {\n return client.sso.register(...args);\n };\n\n const listSSOProviders = async () => {\n // Not implemented yet\n };\n\n const deleteSSOProvider = async (args: { providerId: string }) => {\n // Not implemented yet\n };\n\n return {\n getAuthClient: () => client,\n signInEmail,\n signUpEmail,\n signOut,\n signInSocial,\n linkSocial,\n changePasswordSession,\n requestPasswordResetSession,\n resetPassword,\n verifyEmailSession,\n getSession,\n forgetPassword,\n sendVerificationEmail,\n changeEmail,\n deleteUser,\n revokeSession,\n revokeSessions,\n revokeOtherSessions,\n listAccounts,\n unlinkAccount,\n refreshToken,\n getAccessToken,\n accountInfo,\n updateUser,\n listSessions,\n enableTwoFactor,\n disableTwoFactor,\n verifyTotp,\n verifyBackupCode,\n addPasskey,\n signInPasskey,\n deletePasskey,\n listPasskeys,\n signInMagicLink,\n signInSSO,\n registerSSO,\n listSSOProviders,\n deleteSSOProvider,\n };\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ReactQueryProvider.mjs","names":["defaultQueryOptions: DefaultOptions","onError: MutationCache['config']['onError']","onSuccess: MutationCache['config']['onSuccess']","ReactQueryProvider: FC<PropsWithChildren>"],"sources":["../../../src/providers/ReactQueryProvider.tsx"],"sourcesContent":["'use client';\n\nimport {\n type DefaultOptions,\n MutationCache,\n QueryClient,\n QueryClientProvider,\n type QueryKey,\n type UseMutationOptions,\n} from '@tanstack/react-query';\nimport { type FC, type PropsWithChildren, useRef } from 'react';\nimport { useToast } from '../components/Toaster';\n\nconst defaultQueryOptions: DefaultOptions = {\n queries: {\n retry: 1,\n // Keep data fresh for 30 seconds to avoid unnecessary refetches during navigation\n staleTime: 30 * 1000,\n // Give the cache a little breathing room across route transitions:\n gcTime: 5 * 60 * 1000, // e.g. 5 minutes\n // Only refetch on mount if data is stale (not every single mount)\n refetchOnMount: true,\n refetchOnWindowFocus: false,\n refetchOnReconnect: false,\n },\n mutations: {\n retry: 0,\n },\n};\n\ndeclare module '@tanstack/react-query' {\n interface Register {\n mutationMeta: {\n onSuccess?: UseMutationOptions['onSuccess'];\n onError?: UseMutationOptions['onError'];\n invalidateQueries?: QueryKey[];\n resetQueries?: QueryKey[];\n };\n }\n}\n\nconst formatErrorCode = (errorCode: string) => errorCode.split('_').join(' ');\n\n/**\n * Hook to handle error logging and toast notifications\n */\nconst useToastEvents = () => {\n const { toast } = useToast();\n\n const onError: MutationCache['config']['onError'] = (error: any) => {\n const parsed = (() => {\n try {\n if (typeof error === 'string') return JSON.parse(error);\n } catch (_) {}\n return error;\n })();\n\n [parsed].flat().forEach((err: any) => {\n // Check for nested error object (standard in your API responses: { statusCode, error: { ... } })\n const apiError = err?.error ?? err;\n\n toast({\n title: formatErrorCode(\n (process.env.NODE_ENV === 'production'\n ? (apiError?.title ?? err?.title)\n : (apiError?.code ?? err?.code)) ?? 'Error'\n ),\n description:\n apiError?.message ??\n err?.message ??\n String(apiError ?? 'An error occurred'),\n variant: 'error',\n });\n });\n };\n\n const onSuccess: MutationCache['config']['onSuccess'] = (data: any) => {\n if (data?.error) {\n toast({\n title: formatErrorCode(data.error.title ?? data.error.code ?? 'Error'),\n description:\n data.error.message ?? data.error.code ?? 'An error occurred',\n variant: 'error',\n });\n }\n\n if (data?.message) {\n toast({\n title: data.message,\n description: data.description,\n variant: 'success',\n });\n }\n };\n\n return {\n onError,\n onSuccess,\n };\n};\n\nexport const ReactQueryProvider: FC<PropsWithChildren> = ({ children }) => {\n const { onError, onSuccess } = useToastEvents();\n const clientRef = useRef<QueryClient>(null);\n\n if (!clientRef.current) {\n const mutationCache = new MutationCache({\n onSuccess,\n onError,\n onSettled: (_data, _error, _variables, _context, mutation) => {\n if (mutation.meta?.invalidateQueries) {\n mutation.meta.invalidateQueries.forEach((queryKey) => {\n queryClient.invalidateQueries({\n queryKey,\n });\n });\n }\n\n if (mutation.meta?.resetQueries) {\n mutation.meta.resetQueries.forEach((queryKey) => {\n queryClient.resetQueries({\n queryKey,\n });\n });\n }\n },\n });\n\n const queryClient = new QueryClient({\n defaultOptions: defaultQueryOptions,\n mutationCache,\n });\n clientRef.current = queryClient;\n }\n\n return (\n <QueryClientProvider client={clientRef.current}>\n {children}\n </QueryClientProvider>\n );\n};\n"],"mappings":";;;;;;;;AAaA,MAAMA,sBAAsC;CAC1C,SAAS;EACP,OAAO;EAEP,WAAW,KAAK;EAEhB,QAAQ,MAAS;EAEjB,gBAAgB;EAChB,sBAAsB;EACtB,oBAAoB;EACrB;CACD,WAAW,EACT,OAAO,GACR;CACF;AAaD,MAAM,mBAAmB,cAAsB,UAAU,MAAM,IAAI,CAAC,KAAK,IAAI;;;;AAK7E,MAAM,uBAAuB;CAC3B,MAAM,EAAE,UAAU,UAAU;CAE5B,MAAMC,WAA+C,UAAe;AAQlE,UAPsB;AACpB,OAAI;AACF,QAAI,OAAO,UAAU,SAAU,QAAO,KAAK,MAAM,MAAM;YAChD,GAAG;AACZ,UAAO;MACL,CAEI,CAAC,MAAM,CAAC,SAAS,QAAa;GAEpC,MAAM,WAAW,KAAK,SAAS;AAE/B,SAAM;IACJ,OAAO,iBACJ,QAAQ,IAAI,aAAa,eACrB,UAAU,SAAS,KAAK,QACxB,UAAU,QAAQ,KAAK,SAAU,QACvC;IACD,aACE,UAAU,WACV,KAAK,WACL,OAAO,YAAY,oBAAoB;IACzC,SAAS;IACV,CAAC;IACF;;CAGJ,MAAMC,aAAmD,SAAc;AACrE,MAAI,MAAM,MACR,OAAM;GACJ,OAAO,gBAAgB,KAAK,MAAM,SAAS,KAAK,MAAM,QAAQ,QAAQ;GACtE,aACE,KAAK,MAAM,WAAW,KAAK,MAAM,QAAQ;GAC3C,SAAS;GACV,CAAC;AAGJ,MAAI,MAAM,QACR,OAAM;GACJ,OAAO,KAAK;GACZ,aAAa,KAAK;GAClB,SAAS;GACV,CAAC;;AAIN,QAAO;EACL;EACA;EACD;;AAGH,MAAaC,sBAA6C,EAAE,eAAe;CACzE,MAAM,EAAE,SAAS,cAAc,gBAAgB;CAC/C,MAAM,YAAY,OAAoB,KAAK;AAE3C,KAAI,CAAC,UAAU,SAAS;EAuBtB,MAAM,cAAc,IAAI,YAAY;GAClC,gBAAgB;GAChB,eAxBoB,IAAI,cAAc;IACtC;IACA;IACA,YAAY,OAAO,QAAQ,YAAY,UAAU,aAAa;AAC5D,SAAI,SAAS,MAAM,kBACjB,UAAS,KAAK,kBAAkB,SAAS,aAAa;AACpD,kBAAY,kBAAkB,EAC5B,UACD,CAAC;OACF;AAGJ,SAAI,SAAS,MAAM,aACjB,UAAS,KAAK,aAAa,SAAS,aAAa;AAC/C,kBAAY,aAAa,EACvB,UACD,CAAC;OACF;;IAGP,CAAC;GAKD,CAAC;AACF,YAAU,UAAU;;AAGtB,QACE,oBAAC;EAAoB,QAAQ,UAAU;EACpC;GACmB"}
1
+ {"version":3,"file":"ReactQueryProvider.mjs","names":[],"sources":["../../../src/providers/ReactQueryProvider.tsx"],"sourcesContent":["'use client';\n\nimport {\n type DefaultOptions,\n MutationCache,\n QueryClient,\n QueryClientProvider,\n type QueryKey,\n type UseMutationOptions,\n} from '@tanstack/react-query';\nimport { type FC, type PropsWithChildren, useRef } from 'react';\nimport { useToast } from '../components/Toaster';\n\nconst defaultQueryOptions: DefaultOptions = {\n queries: {\n retry: 1,\n // Keep data fresh for 30 seconds to avoid unnecessary refetches during navigation\n staleTime: 30 * 1000,\n // Give the cache a little breathing room across route transitions:\n gcTime: 5 * 60 * 1000, // e.g. 5 minutes\n // Only refetch on mount if data is stale (not every single mount)\n refetchOnMount: true,\n refetchOnWindowFocus: false,\n refetchOnReconnect: false,\n },\n mutations: {\n retry: 0,\n },\n};\n\ndeclare module '@tanstack/react-query' {\n interface Register {\n mutationMeta: {\n onSuccess?: UseMutationOptions['onSuccess'];\n onError?: UseMutationOptions['onError'];\n invalidateQueries?: QueryKey[];\n resetQueries?: QueryKey[];\n };\n }\n}\n\nconst formatErrorCode = (errorCode: string) => errorCode.split('_').join(' ');\n\n/**\n * Hook to handle error logging and toast notifications\n */\nconst useToastEvents = () => {\n const { toast } = useToast();\n\n const onError: MutationCache['config']['onError'] = (error: any) => {\n const parsed = (() => {\n try {\n if (typeof error === 'string') return JSON.parse(error);\n } catch (_) {}\n return error;\n })();\n\n [parsed].flat().forEach((err: any) => {\n // Check for nested error object (standard in your API responses: { statusCode, error: { ... } })\n const apiError = err?.error ?? err;\n\n toast({\n title: formatErrorCode(\n (process.env.NODE_ENV === 'production'\n ? (apiError?.title ?? err?.title)\n : (apiError?.code ?? err?.code)) ?? 'Error'\n ),\n description:\n apiError?.message ??\n err?.message ??\n String(apiError ?? 'An error occurred'),\n variant: 'error',\n });\n });\n };\n\n const onSuccess: MutationCache['config']['onSuccess'] = (data: any) => {\n if (data?.error) {\n toast({\n title: formatErrorCode(data.error.title ?? data.error.code ?? 'Error'),\n description:\n data.error.message ?? data.error.code ?? 'An error occurred',\n variant: 'error',\n });\n }\n\n if (data?.message) {\n toast({\n title: data.message,\n description: data.description,\n variant: 'success',\n });\n }\n };\n\n return {\n onError,\n onSuccess,\n };\n};\n\nexport const ReactQueryProvider: FC<PropsWithChildren> = ({ children }) => {\n const { onError, onSuccess } = useToastEvents();\n const clientRef = useRef<QueryClient>(null);\n\n if (!clientRef.current) {\n const mutationCache = new MutationCache({\n onSuccess,\n onError,\n onSettled: (_data, _error, _variables, _context, mutation) => {\n if (mutation.meta?.invalidateQueries) {\n mutation.meta.invalidateQueries.forEach((queryKey) => {\n queryClient.invalidateQueries({\n queryKey,\n });\n });\n }\n\n if (mutation.meta?.resetQueries) {\n mutation.meta.resetQueries.forEach((queryKey) => {\n queryClient.resetQueries({\n queryKey,\n });\n });\n }\n },\n });\n\n const queryClient = new QueryClient({\n defaultOptions: defaultQueryOptions,\n mutationCache,\n });\n clientRef.current = queryClient;\n }\n\n return (\n <QueryClientProvider client={clientRef.current}>\n {children}\n </QueryClientProvider>\n );\n};\n"],"mappings":";;;;;;;;AAaA,MAAM,sBAAsC;CAC1C,SAAS;EACP,OAAO;EAEP,WAAW,KAAK;EAEhB,QAAQ,MAAS;EAEjB,gBAAgB;EAChB,sBAAsB;EACtB,oBAAoB;EACrB;CACD,WAAW,EACT,OAAO,GACR;CACF;AAaD,MAAM,mBAAmB,cAAsB,UAAU,MAAM,IAAI,CAAC,KAAK,IAAI;;;;AAK7E,MAAM,uBAAuB;CAC3B,MAAM,EAAE,UAAU,UAAU;CAE5B,MAAM,WAA+C,UAAe;AAQlE,UAPsB;AACpB,OAAI;AACF,QAAI,OAAO,UAAU,SAAU,QAAO,KAAK,MAAM,MAAM;YAChD,GAAG;AACZ,UAAO;MACL,CAEI,CAAC,MAAM,CAAC,SAAS,QAAa;GAEpC,MAAM,WAAW,KAAK,SAAS;AAE/B,SAAM;IACJ,OAAO,iBACJ,QAAQ,IAAI,aAAa,eACrB,UAAU,SAAS,KAAK,QACxB,UAAU,QAAQ,KAAK,SAAU,QACvC;IACD,aACE,UAAU,WACV,KAAK,WACL,OAAO,YAAY,oBAAoB;IACzC,SAAS;IACV,CAAC;IACF;;CAGJ,MAAM,aAAmD,SAAc;AACrE,MAAI,MAAM,MACR,OAAM;GACJ,OAAO,gBAAgB,KAAK,MAAM,SAAS,KAAK,MAAM,QAAQ,QAAQ;GACtE,aACE,KAAK,MAAM,WAAW,KAAK,MAAM,QAAQ;GAC3C,SAAS;GACV,CAAC;AAGJ,MAAI,MAAM,QACR,OAAM;GACJ,OAAO,KAAK;GACZ,aAAa,KAAK;GAClB,SAAS;GACV,CAAC;;AAIN,QAAO;EACL;EACA;EACD;;AAGH,MAAa,sBAA6C,EAAE,eAAe;CACzE,MAAM,EAAE,SAAS,cAAc,gBAAgB;CAC/C,MAAM,YAAY,OAAoB,KAAK;AAE3C,KAAI,CAAC,UAAU,SAAS;EAuBtB,MAAM,cAAc,IAAI,YAAY;GAClC,gBAAgB;GAChB,eAxBoB,IAAI,cAAc;IACtC;IACA;IACA,YAAY,OAAO,QAAQ,YAAY,UAAU,aAAa;AAC5D,SAAI,SAAS,MAAM,kBACjB,UAAS,KAAK,kBAAkB,SAAS,aAAa;AACpD,kBAAY,kBAAkB,EAC5B,UACD,CAAC;OACF;AAGJ,SAAI,SAAS,MAAM,aACjB,UAAS,KAAK,aAAa,SAAS,aAAa;AAC/C,kBAAY,aAAa,EACvB,UACD,CAAC;OACF;;IAGP,CAAC;GAKD,CAAC;AACF,YAAU,UAAU;;AAGtB,QACE,oBAAC;EAAoB,QAAQ,UAAU;EACpC;GACmB"}
@@ -1 +1 @@
1
- {"version":3,"file":"object.mjs","names":["newObj: T"],"sources":["../../../src/utils/object.ts"],"sourcesContent":["/**\n * Rename a key in an object by keeping the element order\n *\n * @param obj The original object\n * @param oldKey The key in the object that needs to be renamed\n * @param newKey The new key name to replace the old key\n * @returns A new object with the renamed key\n */\nexport const renameKey = <T extends object>(\n obj: T,\n oldKey: keyof T,\n newKey: string\n): T => {\n // Create a shallow copy of the original object to avoid mutating it\n const newObj: T = { ...obj };\n\n // Iterate over all keys of the original object\n for (const key of Object.keys(obj)) {\n // Check if the current key is the one that needs to be renamed\n if (key === (oldKey as string)) {\n // Assign the value of the old key to the new key in newObj\n newObj[newKey as keyof T] = obj[oldKey];\n // Optionally, delete the old key from newObj if you don't want both keys\n delete newObj[oldKey];\n } else {\n // For all other keys, ensure they are copied over correctly\n newObj[key as keyof T] = obj[key as keyof T];\n }\n }\n // Return the new object with the renamed key\n return newObj;\n};\n\n/**\n * Remove a key from an object\n *\n * @param obj The original object\n * @param key The key in the object that needs to be removed\n * @returns A new object without the specified key\n */\nexport const removeKey = <T extends object>(obj: T, key: keyof T): T => {\n // Create a shallow copy of the original object to avoid mutating it\n const newObj: T = { ...obj };\n\n // Delete the key from the object\n delete newObj[key];\n\n return newObj;\n};\n"],"mappings":";;;;;;;;;AAQA,MAAa,aACX,KACA,QACA,WACM;CAEN,MAAMA,SAAY,EAAE,GAAG,KAAK;AAG5B,MAAK,MAAM,OAAO,OAAO,KAAK,IAAI,CAEhC,KAAI,QAAS,QAAmB;AAE9B,SAAO,UAAqB,IAAI;AAEhC,SAAO,OAAO;OAGd,QAAO,OAAkB,IAAI;AAIjC,QAAO;;;;;;;;;AAUT,MAAa,aAA+B,KAAQ,QAAoB;CAEtE,MAAMA,SAAY,EAAE,GAAG,KAAK;AAG5B,QAAO,OAAO;AAEd,QAAO"}
1
+ {"version":3,"file":"object.mjs","names":[],"sources":["../../../src/utils/object.ts"],"sourcesContent":["/**\n * Rename a key in an object by keeping the element order\n *\n * @param obj The original object\n * @param oldKey The key in the object that needs to be renamed\n * @param newKey The new key name to replace the old key\n * @returns A new object with the renamed key\n */\nexport const renameKey = <T extends object>(\n obj: T,\n oldKey: keyof T,\n newKey: string\n): T => {\n // Create a shallow copy of the original object to avoid mutating it\n const newObj: T = { ...obj };\n\n // Iterate over all keys of the original object\n for (const key of Object.keys(obj)) {\n // Check if the current key is the one that needs to be renamed\n if (key === (oldKey as string)) {\n // Assign the value of the old key to the new key in newObj\n newObj[newKey as keyof T] = obj[oldKey];\n // Optionally, delete the old key from newObj if you don't want both keys\n delete newObj[oldKey];\n } else {\n // For all other keys, ensure they are copied over correctly\n newObj[key as keyof T] = obj[key as keyof T];\n }\n }\n // Return the new object with the renamed key\n return newObj;\n};\n\n/**\n * Remove a key from an object\n *\n * @param obj The original object\n * @param key The key in the object that needs to be removed\n * @returns A new object without the specified key\n */\nexport const removeKey = <T extends object>(obj: T, key: keyof T): T => {\n // Create a shallow copy of the original object to avoid mutating it\n const newObj: T = { ...obj };\n\n // Delete the key from the object\n delete newObj[key];\n\n return newObj;\n};\n"],"mappings":";;;;;;;;;AAQA,MAAa,aACX,KACA,QACA,WACM;CAEN,MAAM,SAAY,EAAE,GAAG,KAAK;AAG5B,MAAK,MAAM,OAAO,OAAO,KAAK,IAAI,CAEhC,KAAI,QAAS,QAAmB;AAE9B,SAAO,UAAqB,IAAI;AAEhC,SAAO,OAAO;OAGd,QAAO,OAAkB,IAAI;AAIjC,QAAO;;;;;;;;;AAUT,MAAa,aAA+B,KAAQ,QAAoB;CAEtE,MAAM,SAAY,EAAE,GAAG,KAAK;AAG5B,QAAO,OAAO;AAEd,QAAO"}
@@ -1,10 +1,10 @@
1
- import * as _intlayer_types8 from "@intlayer/types";
1
+ import * as _intlayer_types0 from "@intlayer/types";
2
2
 
3
3
  //#region src/components/Breadcrumb/breadcrumb.content.d.ts
4
4
  declare const breadCrumbContent: {
5
5
  key: string;
6
6
  content: {
7
- linkLabel: _intlayer_types8.TypedNodeModel<_intlayer_types8.NodeType.Translation, {
7
+ linkLabel: _intlayer_types0.TypedNodeModel<_intlayer_types0.NodeType.Translation, {
8
8
  en: string;
9
9
  fr: string;
10
10
  es: string;
@@ -24,7 +24,7 @@ declare const breadCrumbContent: {
24
24
  vi: string;
25
25
  uk: string;
26
26
  }, {
27
- nodeType: _intlayer_types8.NodeType.Translation | "translation";
27
+ nodeType: _intlayer_types0.NodeType.Translation | "translation";
28
28
  } & {
29
29
  translation: {
30
30
  en: string;
@@ -1,7 +1,7 @@
1
1
  import { LinkColor } from "../Link/Link.js";
2
2
  import "../Link/index.js";
3
3
  import { FC, HTMLAttributes, ReactNode } from "react";
4
- import * as class_variance_authority_types4 from "class-variance-authority/types";
4
+ import * as class_variance_authority_types11 from "class-variance-authority/types";
5
5
  import { VariantProps } from "class-variance-authority";
6
6
  import { LocalesValues } from "@intlayer/types";
7
7
 
@@ -12,7 +12,7 @@ import { LocalesValues } from "@intlayer/types";
12
12
  declare const breadcrumbVariants: (props?: {
13
13
  size?: "small" | "medium" | "large";
14
14
  spacing?: "compact" | "normal" | "loose";
15
- } & class_variance_authority_types4.ClassProp) => string;
15
+ } & class_variance_authority_types11.ClassProp) => string;
16
16
  /**
17
17
  * Detailed breadcrumb link configuration with optional href or onClick
18
18
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../../../../src/components/Breadcrumb/index.tsx"],"sourcesContent":[],"mappings":";;;;;;;;;;;cA2EM,0BAgKgC;EAhKhC,IAAA,CAAA,EAAA,OAAA,GAAA,QAiBJ,GAAA,OAAA;EA2HG,OAAA,CAAA,EAAA,SAAA,GAAA,QAAsB,GAAA,OAAA;AAoB3B,CAAA,GA/IE,+BAAA,CAAA,SA+IoC,EAAA,GAAsB,MAAA;AAE5D;;;KAtBK,sBAAA,GA+BoB;EAId;;;EAyBP,IAAA,CAAA,EAAA,MAAA;EACa;;;EA4BJ,IAAA,EAAA,MAAA;;;;;;;;;;;KArED,cAAA,YAA0B;KAE1B,eAAA;;;;SAIH;;;;;UAKC,eAAe;;;;WAId;;;;;;;;;;cAUG;;;;;;;;;;;;;;;IAeV,oBAAoB,sBACtB,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;cA4BJ,YAAY,GAAG"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../../../src/components/Breadcrumb/index.tsx"],"sourcesContent":[],"mappings":";;;;;;;;;;;cA2EM,0BAgKgC;EAhKhC,IAAA,CAAA,EAAA,OAAA,GAAA,QAiBJ,GAAA,OAAA;EA2HG,OAAA,CAAA,EAAA,SAAA,GAAA,QAAsB,GAAA,OAAA;AAoB3B,CAAA,GA/IE,gCAAA,CAAA,SA+IoC,EAAA,GAAsB,MAAA;AAE5D;;;KAtBK,sBAAA,GA+BoB;EAId;;;EAyBP,IAAA,CAAA,EAAA,MAAA;EACa;;;EA4BJ,IAAA,EAAA,MAAA;;;;;;;;;;;KArED,cAAA,YAA0B;KAE1B,eAAA;;;;SAIH;;;;;UAKC,eAAe;;;;WAId;;;;;;;;;;cAUG;;;;;;;;;;;;;;;IAeV,oBAAoB,sBACtB,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;cA4BJ,YAAY,GAAG"}
@@ -1,10 +1,10 @@
1
- import * as _intlayer_types11 from "@intlayer/types";
1
+ import * as _intlayer_types2 from "@intlayer/types";
2
2
 
3
3
  //#region src/components/Browser/browser.content.d.ts
4
4
  declare const browserContent: {
5
5
  key: string;
6
6
  content: {
7
- ariaLabel: _intlayer_types11.TypedNodeModel<_intlayer_types11.NodeType.Translation, {
7
+ ariaLabel: _intlayer_types2.TypedNodeModel<_intlayer_types2.NodeType.Translation, {
8
8
  en: string;
9
9
  'en-GB': string;
10
10
  fr: string;
@@ -24,7 +24,7 @@ declare const browserContent: {
24
24
  vi: string;
25
25
  uk: string;
26
26
  }, {
27
- nodeType: _intlayer_types11.NodeType.Translation | "translation";
27
+ nodeType: _intlayer_types2.NodeType.Translation | "translation";
28
28
  } & {
29
29
  translation: {
30
30
  en: string;
@@ -47,7 +47,7 @@ declare const browserContent: {
47
47
  uk: string;
48
48
  };
49
49
  }>;
50
- urlLabel: _intlayer_types11.TypedNodeModel<_intlayer_types11.NodeType.Translation, {
50
+ urlLabel: _intlayer_types2.TypedNodeModel<_intlayer_types2.NodeType.Translation, {
51
51
  en: string;
52
52
  'en-GB': string;
53
53
  fr: string;
@@ -67,7 +67,7 @@ declare const browserContent: {
67
67
  vi: string;
68
68
  uk: string;
69
69
  }, {
70
- nodeType: _intlayer_types11.NodeType.Translation | "translation";
70
+ nodeType: _intlayer_types2.NodeType.Translation | "translation";
71
71
  } & {
72
72
  translation: {
73
73
  en: string;
@@ -91,7 +91,7 @@ declare const browserContent: {
91
91
  };
92
92
  }>;
93
93
  urlPlaceholder: string;
94
- errorMessage: _intlayer_types11.TypedNodeModel<_intlayer_types11.NodeType.Translation, {
94
+ errorMessage: _intlayer_types2.TypedNodeModel<_intlayer_types2.NodeType.Translation, {
95
95
  en: string;
96
96
  'en-GB': string;
97
97
  fr: string;
@@ -111,7 +111,7 @@ declare const browserContent: {
111
111
  vi: string;
112
112
  uk: string;
113
113
  }, {
114
- nodeType: _intlayer_types11.NodeType.Translation | "translation";
114
+ nodeType: _intlayer_types2.NodeType.Translation | "translation";
115
115
  } & {
116
116
  translation: {
117
117
  en: string;
@@ -134,7 +134,7 @@ declare const browserContent: {
134
134
  uk: string;
135
135
  };
136
136
  }>;
137
- domainRestrictionError: _intlayer_types11.TypedNodeModel<_intlayer_types11.NodeType.Translation, {
137
+ domainRestrictionError: _intlayer_types2.TypedNodeModel<_intlayer_types2.NodeType.Translation, {
138
138
  en: string;
139
139
  'en-GB': string;
140
140
  fr: string;
@@ -154,7 +154,7 @@ declare const browserContent: {
154
154
  vi: string;
155
155
  uk: string;
156
156
  }, {
157
- nodeType: _intlayer_types11.NodeType.Translation | "translation";
157
+ nodeType: _intlayer_types2.NodeType.Translation | "translation";
158
158
  } & {
159
159
  translation: {
160
160
  en: string;
@@ -177,7 +177,7 @@ declare const browserContent: {
177
177
  uk: string;
178
178
  };
179
179
  }>;
180
- backButtonLabel: _intlayer_types11.TypedNodeModel<_intlayer_types11.NodeType.Translation, {
180
+ backButtonLabel: _intlayer_types2.TypedNodeModel<_intlayer_types2.NodeType.Translation, {
181
181
  en: string;
182
182
  'en-GB': string;
183
183
  fr: string;
@@ -197,7 +197,7 @@ declare const browserContent: {
197
197
  vi: string;
198
198
  uk: string;
199
199
  }, {
200
- nodeType: _intlayer_types11.NodeType.Translation | "translation";
200
+ nodeType: _intlayer_types2.NodeType.Translation | "translation";
201
201
  } & {
202
202
  translation: {
203
203
  en: string;
@@ -220,7 +220,7 @@ declare const browserContent: {
220
220
  uk: string;
221
221
  };
222
222
  }>;
223
- forwardButtonLabel: _intlayer_types11.TypedNodeModel<_intlayer_types11.NodeType.Translation, {
223
+ forwardButtonLabel: _intlayer_types2.TypedNodeModel<_intlayer_types2.NodeType.Translation, {
224
224
  en: string;
225
225
  'en-GB': string;
226
226
  fr: string;
@@ -240,7 +240,7 @@ declare const browserContent: {
240
240
  vi: string;
241
241
  uk: string;
242
242
  }, {
243
- nodeType: _intlayer_types11.NodeType.Translation | "translation";
243
+ nodeType: _intlayer_types2.NodeType.Translation | "translation";
244
244
  } & {
245
245
  translation: {
246
246
  en: string;
@@ -263,7 +263,7 @@ declare const browserContent: {
263
263
  uk: string;
264
264
  };
265
265
  }>;
266
- reloadButtonTitle: _intlayer_types11.TypedNodeModel<_intlayer_types11.NodeType.Translation, {
266
+ reloadButtonTitle: _intlayer_types2.TypedNodeModel<_intlayer_types2.NodeType.Translation, {
267
267
  en: string;
268
268
  'en-GB': string;
269
269
  fr: string;
@@ -283,7 +283,7 @@ declare const browserContent: {
283
283
  vi: string;
284
284
  uk: string;
285
285
  }, {
286
- nodeType: _intlayer_types11.NodeType.Translation | "translation";
286
+ nodeType: _intlayer_types2.NodeType.Translation | "translation";
287
287
  } & {
288
288
  translation: {
289
289
  en: string;
@@ -306,7 +306,7 @@ declare const browserContent: {
306
306
  uk: string;
307
307
  };
308
308
  }>;
309
- iframeTitle: _intlayer_types11.TypedNodeModel<_intlayer_types11.NodeType.Translation, {
309
+ iframeTitle: _intlayer_types2.TypedNodeModel<_intlayer_types2.NodeType.Translation, {
310
310
  en: string;
311
311
  'en-GB': string;
312
312
  fr: string;
@@ -326,7 +326,7 @@ declare const browserContent: {
326
326
  vi: string;
327
327
  uk: string;
328
328
  }, {
329
- nodeType: _intlayer_types11.NodeType.Translation | "translation";
329
+ nodeType: _intlayer_types2.NodeType.Translation | "translation";
330
330
  } & {
331
331
  translation: {
332
332
  en: string;
@@ -1 +1 @@
1
- {"version":3,"file":"browser.content.d.ts","names":[],"sources":["../../../../src/components/Browser/browser.content.ts"],"sourcesContent":[],"mappings":";;;cAEa;;;IAAA,SAAA,kCAyKS,yCAAA"}
1
+ {"version":3,"file":"browser.content.d.ts","names":[],"sources":["../../../../src/components/Browser/browser.content.ts"],"sourcesContent":[],"mappings":";;;cAEa;;;IAAA,SAAA,iCAyKS,wCAAA"}
@@ -1,5 +1,5 @@
1
1
  import { ButtonHTMLAttributes, DetailedHTMLProps, FC } from "react";
2
- import * as class_variance_authority_types0 from "class-variance-authority/types";
2
+ import * as class_variance_authority_types1 from "class-variance-authority/types";
3
3
  import { VariantProps } from "class-variance-authority";
4
4
  import { LucideIcon } from "lucide-react";
5
5
 
@@ -60,13 +60,13 @@ declare enum ButtonTextAlign {
60
60
  * Enhanced button variants with improved accessibility and focus states
61
61
  */
62
62
  declare const buttonVariants: (props?: {
63
- size?: "md" | "sm" | "lg" | "xl" | "icon-sm" | "icon-md" | "icon-lg" | "icon-xl";
63
+ size?: "sm" | "md" | "lg" | "xl" | "icon-sm" | "icon-md" | "icon-lg" | "icon-xl";
64
64
  color?: "primary" | "secondary" | "destructive" | "neutral" | "card" | "light" | "dark" | "text" | "current" | "text-inverse" | "error" | "success" | "custom";
65
- roundedSize?: "md" | "sm" | "lg" | "xl" | "2xl" | "none" | "3xl" | "4xl" | "5xl" | "full";
66
- variant?: "default" | "input" | "none" | "outline" | "link" | "invisible-link" | "hoverable" | "fade";
65
+ roundedSize?: "sm" | "md" | "lg" | "xl" | "2xl" | "none" | "3xl" | "4xl" | "5xl" | "full";
66
+ variant?: "default" | "none" | "outline" | "link" | "invisible-link" | "hoverable" | "fade" | "input";
67
67
  textAlign?: "left" | "center" | "right";
68
68
  isFullWidth?: boolean;
69
- } & class_variance_authority_types0.ClassProp) => string;
69
+ } & class_variance_authority_types1.ClassProp) => string;
70
70
  /**
71
71
  * Enhanced Button component props with comprehensive type safety and accessibility features
72
72
  */
@@ -1,11 +1,11 @@
1
- import * as _intlayer_types0 from "@intlayer/types";
1
+ import * as _intlayer_types26 from "@intlayer/types";
2
2
  import * as _intlayer_core0 from "@intlayer/core";
3
3
 
4
4
  //#region src/components/Carousel/index.content.d.ts
5
5
  declare const carouselContent: {
6
6
  key: string;
7
7
  content: {
8
- goToSlide: _intlayer_core0.InsertionContent<_intlayer_types0.TypedNodeModel<_intlayer_types0.NodeType.Translation, {
8
+ goToSlide: _intlayer_core0.InsertionContent<_intlayer_types26.TypedNodeModel<_intlayer_types26.NodeType.Translation, {
9
9
  ar: string;
10
10
  de: string;
11
11
  en: string;
@@ -25,7 +25,7 @@ declare const carouselContent: {
25
25
  vi: string;
26
26
  zh: string;
27
27
  }, {
28
- nodeType: _intlayer_types0.NodeType.Translation | "translation";
28
+ nodeType: _intlayer_types26.NodeType.Translation | "translation";
29
29
  } & {
30
30
  translation: {
31
31
  ar: string;
@@ -48,7 +48,7 @@ declare const carouselContent: {
48
48
  zh: string;
49
49
  };
50
50
  }>>;
51
- previousSlide: _intlayer_types0.TypedNodeModel<_intlayer_types0.NodeType.Translation, {
51
+ previousSlide: _intlayer_types26.TypedNodeModel<_intlayer_types26.NodeType.Translation, {
52
52
  en: string;
53
53
  'en-GB': string;
54
54
  ru: string;
@@ -68,7 +68,7 @@ declare const carouselContent: {
68
68
  vi: string;
69
69
  uk: string;
70
70
  }, {
71
- nodeType: _intlayer_types0.NodeType.Translation | "translation";
71
+ nodeType: _intlayer_types26.NodeType.Translation | "translation";
72
72
  } & {
73
73
  translation: {
74
74
  en: string;
@@ -91,7 +91,7 @@ declare const carouselContent: {
91
91
  uk: string;
92
92
  };
93
93
  }>;
94
- nextSlide: _intlayer_types0.TypedNodeModel<_intlayer_types0.NodeType.Translation, {
94
+ nextSlide: _intlayer_types26.TypedNodeModel<_intlayer_types26.NodeType.Translation, {
95
95
  en: string;
96
96
  'en-GB': string;
97
97
  ru: string;
@@ -111,7 +111,7 @@ declare const carouselContent: {
111
111
  vi: string;
112
112
  uk: string;
113
113
  }, {
114
- nodeType: _intlayer_types0.NodeType.Translation | "translation";
114
+ nodeType: _intlayer_types26.NodeType.Translation | "translation";
115
115
  } & {
116
116
  translation: {
117
117
  en: string;
@@ -1,5 +1,5 @@
1
1
  import { FC, HTMLAttributes, ReactNode } from "react";
2
- import * as class_variance_authority_types5 from "class-variance-authority/types";
2
+ import * as class_variance_authority_types0 from "class-variance-authority/types";
3
3
  import { VariantProps } from "class-variance-authority";
4
4
 
5
5
  //#region src/components/CollapsibleTable/CollapsibleTable.d.ts
@@ -7,7 +7,7 @@ declare const collapsibleTableVariants: (props?: {
7
7
  size?: "sm" | "md" | "lg" | "xl" | "full";
8
8
  variant?: "default" | "dark" | "ghost" | "outlined";
9
9
  spacing?: "sm" | "md" | "lg" | "none" | "auto";
10
- } & class_variance_authority_types5.ClassProp) => string;
10
+ } & class_variance_authority_types0.ClassProp) => string;
11
11
  interface CollapsibleTableProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title'>, VariantProps<typeof collapsibleTableVariants> {
12
12
  /** Table title displayed in the header */
13
13
  title: string;
@@ -1,6 +1,6 @@
1
- import * as react1 from "react";
1
+ import * as react0 from "react";
2
2
  import { ComponentProps, FC, HTMLAttributes } from "react";
3
- import * as react_jsx_runtime5 from "react/jsx-runtime";
3
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
4
4
  import { DialogProps } from "@radix-ui/react-dialog";
5
5
  import { Command as Command$1 } from "cmdk";
6
6
 
@@ -25,33 +25,33 @@ declare const CommandRoot: FC<ComponentProps<typeof Command$1>>;
25
25
  */
26
26
  declare const Command: {
27
27
  Dialog: FC<DialogProps>;
28
- Input: FC<Omit<Pick<Pick<react1.DetailedHTMLProps<react1.InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, "key" | keyof react1.InputHTMLAttributes<HTMLInputElement>> & {
28
+ Input: FC<Omit<Pick<Pick<react0.DetailedHTMLProps<react0.InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, "key" | keyof react0.InputHTMLAttributes<HTMLInputElement>> & {
29
29
  ref?: React.Ref<HTMLInputElement>;
30
30
  } & {
31
31
  asChild?: boolean;
32
- }, "key" | keyof react1.InputHTMLAttributes<HTMLInputElement> | "asChild">, "type" | "value" | "onChange"> & {
32
+ }, "key" | "asChild" | keyof react0.InputHTMLAttributes<HTMLInputElement>>, "onChange" | "type" | "value"> & {
33
33
  value?: string;
34
34
  onValueChange?: (search: string) => void;
35
- } & react1.RefAttributes<HTMLInputElement>>;
35
+ } & react0.RefAttributes<HTMLInputElement>>;
36
36
  List: FC<{
37
37
  children?: React.ReactNode;
38
- } & Pick<Pick<react1.DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof HTMLAttributes<HTMLDivElement>> & {
38
+ } & Pick<Pick<react0.DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof HTMLAttributes<HTMLDivElement>> & {
39
39
  ref?: React.Ref<HTMLDivElement>;
40
40
  } & {
41
41
  asChild?: boolean;
42
42
  }, "key" | keyof HTMLAttributes<HTMLDivElement> | "asChild"> & {
43
43
  label?: string;
44
- } & react1.RefAttributes<HTMLDivElement>>;
44
+ } & react0.RefAttributes<HTMLDivElement>>;
45
45
  Empty: FC<{
46
46
  children?: React.ReactNode;
47
- } & Pick<Pick<react1.DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof HTMLAttributes<HTMLDivElement>> & {
47
+ } & Pick<Pick<react0.DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof HTMLAttributes<HTMLDivElement>> & {
48
48
  ref?: React.Ref<HTMLDivElement>;
49
49
  } & {
50
50
  asChild?: boolean;
51
- }, "key" | keyof HTMLAttributes<HTMLDivElement> | "asChild"> & react1.RefAttributes<HTMLDivElement>>;
51
+ }, "key" | keyof HTMLAttributes<HTMLDivElement> | "asChild"> & react0.RefAttributes<HTMLDivElement>>;
52
52
  Group: FC<{
53
53
  children?: React.ReactNode;
54
- } & Omit<Pick<Pick<react1.DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof HTMLAttributes<HTMLDivElement>> & {
54
+ } & Omit<Pick<Pick<react0.DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof HTMLAttributes<HTMLDivElement>> & {
55
55
  ref?: React.Ref<HTMLDivElement>;
56
56
  } & {
57
57
  asChild?: boolean;
@@ -59,31 +59,31 @@ declare const Command: {
59
59
  heading?: React.ReactNode;
60
60
  value?: string;
61
61
  forceMount?: boolean;
62
- } & react1.RefAttributes<HTMLDivElement>>;
63
- Separator: FC<Pick<Pick<react1.DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof HTMLAttributes<HTMLDivElement>> & {
62
+ } & react0.RefAttributes<HTMLDivElement>>;
63
+ Separator: FC<Pick<Pick<react0.DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof HTMLAttributes<HTMLDivElement>> & {
64
64
  ref?: React.Ref<HTMLDivElement>;
65
65
  } & {
66
66
  asChild?: boolean;
67
67
  }, "key" | keyof HTMLAttributes<HTMLDivElement> | "asChild"> & {
68
68
  alwaysRender?: boolean;
69
- } & react1.RefAttributes<HTMLDivElement>>;
69
+ } & react0.RefAttributes<HTMLDivElement>>;
70
70
  Item: FC<{
71
71
  children?: React.ReactNode;
72
- } & Omit<Pick<Pick<react1.DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof HTMLAttributes<HTMLDivElement>> & {
72
+ } & Omit<Pick<Pick<react0.DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof HTMLAttributes<HTMLDivElement>> & {
73
73
  ref?: React.Ref<HTMLDivElement>;
74
74
  } & {
75
75
  asChild?: boolean;
76
- }, "key" | keyof HTMLAttributes<HTMLDivElement> | "asChild">, "disabled" | "value" | "onSelect"> & {
76
+ }, "key" | keyof HTMLAttributes<HTMLDivElement> | "asChild">, "onSelect" | "disabled" | "value"> & {
77
77
  disabled?: boolean;
78
78
  onSelect?: (value: string) => void;
79
79
  value?: string;
80
80
  keywords?: string[];
81
81
  forceMount?: boolean;
82
- } & react1.RefAttributes<HTMLDivElement>>;
82
+ } & react0.RefAttributes<HTMLDivElement>>;
83
83
  Shortcut: ({
84
84
  className,
85
85
  ...props
86
- }: HTMLAttributes<HTMLSpanElement>) => react_jsx_runtime5.JSX.Element;
86
+ }: HTMLAttributes<HTMLSpanElement>) => react_jsx_runtime0.JSX.Element;
87
87
  propTypes?: any;
88
88
  displayName?: string | undefined;
89
89
  };