@intlayer/design-system 5.0.6 → 5.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (862) hide show
  1. package/dist/.vite/manifest.json +212 -373
  2. package/dist/{Form-DlqjTz3u.js → Form-BZUDRfoN.js} +35 -35
  3. package/dist/Form-BZUDRfoN.js.map +1 -0
  4. package/dist/{Form-CSMiPnjC.cjs → Form-yi0CMK-a.cjs} +35 -35
  5. package/dist/Form-yi0CMK-a.cjs.map +1 -0
  6. package/dist/components/Accordion/Accordion.cjs +7 -7
  7. package/dist/components/Accordion/Accordion.cjs.map +1 -1
  8. package/dist/components/Accordion/Accordion.d.ts.map +1 -1
  9. package/dist/components/Accordion/Accordion.mjs +4 -4
  10. package/dist/components/Accordion/Accordion.mjs.map +1 -1
  11. package/dist/components/Auth/AuthModal/index.cjs +8 -8
  12. package/dist/components/Auth/AuthModal/index.cjs.map +1 -1
  13. package/dist/components/Auth/AuthModal/index.mjs +6 -6
  14. package/dist/components/Auth/AuthModal/index.mjs.map +1 -1
  15. package/dist/components/Auth/AuthenticationBarrier/AuthenticationBarrierClient.cjs +5 -5
  16. package/dist/components/Auth/AuthenticationBarrier/AuthenticationBarrierClient.cjs.map +1 -1
  17. package/dist/components/Auth/AuthenticationBarrier/AuthenticationBarrierClient.mjs +2 -2
  18. package/dist/components/Auth/AuthenticationBarrier/AuthenticationBarrierClient.mjs.map +1 -1
  19. package/dist/components/Auth/ChangePasswordForm/ChangePasswordForm.cjs +10 -10
  20. package/dist/components/Auth/ChangePasswordForm/ChangePasswordForm.cjs.map +1 -1
  21. package/dist/components/Auth/ChangePasswordForm/ChangePasswordForm.mjs +10 -10
  22. package/dist/components/Auth/ChangePasswordForm/ChangePasswordForm.mjs.map +1 -1
  23. package/dist/components/Auth/ChangePasswordForm/useChangePasswordSchema.cjs +10 -10
  24. package/dist/components/Auth/ChangePasswordForm/useChangePasswordSchema.cjs.map +1 -1
  25. package/dist/components/Auth/ChangePasswordForm/useChangePasswordSchema.mjs +10 -10
  26. package/dist/components/Auth/ChangePasswordForm/useChangePasswordSchema.mjs.map +1 -1
  27. package/dist/components/Auth/ExternalsLoginButtons/ExternalsLoginButtons.cjs +10 -11
  28. package/dist/components/Auth/ExternalsLoginButtons/ExternalsLoginButtons.cjs.map +1 -1
  29. package/dist/components/Auth/ExternalsLoginButtons/ExternalsLoginButtons.mjs +10 -11
  30. package/dist/components/Auth/ExternalsLoginButtons/ExternalsLoginButtons.mjs.map +1 -1
  31. package/dist/components/Auth/ExternalsLoginButtons/assets/GithubLogo.cjs +3 -3
  32. package/dist/components/Auth/ExternalsLoginButtons/assets/GithubLogo.cjs.map +1 -1
  33. package/dist/components/Auth/ExternalsLoginButtons/assets/GithubLogo.mjs +3 -3
  34. package/dist/components/Auth/ExternalsLoginButtons/assets/GithubLogo.mjs.map +1 -1
  35. package/dist/components/Auth/ExternalsLoginButtons/assets/GoogleLogo.cjs +3 -3
  36. package/dist/components/Auth/ExternalsLoginButtons/assets/GoogleLogo.cjs.map +1 -1
  37. package/dist/components/Auth/ExternalsLoginButtons/assets/GoogleLogo.mjs +3 -3
  38. package/dist/components/Auth/ExternalsLoginButtons/assets/GoogleLogo.mjs.map +1 -1
  39. package/dist/components/Auth/ResetPasswordForm/ResetPasswordForm.cjs +10 -10
  40. package/dist/components/Auth/ResetPasswordForm/ResetPasswordForm.cjs.map +1 -1
  41. package/dist/components/Auth/ResetPasswordForm/ResetPasswordForm.mjs +6 -6
  42. package/dist/components/Auth/ResetPasswordForm/ResetPasswordForm.mjs.map +1 -1
  43. package/dist/components/Auth/ResetPasswordForm/useResetPasswordSchema.cjs +4 -4
  44. package/dist/components/Auth/ResetPasswordForm/useResetPasswordSchema.cjs.map +1 -1
  45. package/dist/components/Auth/ResetPasswordForm/useResetPasswordSchema.mjs +4 -4
  46. package/dist/components/Auth/ResetPasswordForm/useResetPasswordSchema.mjs.map +1 -1
  47. package/dist/components/Auth/SignInForm/SignInForm.cjs +12 -12
  48. package/dist/components/Auth/SignInForm/SignInForm.cjs.map +1 -1
  49. package/dist/components/Auth/SignInForm/SignInForm.mjs +12 -12
  50. package/dist/components/Auth/SignInForm/SignInForm.mjs.map +1 -1
  51. package/dist/components/Auth/SignInForm/useSignInSchema.cjs +6 -6
  52. package/dist/components/Auth/SignInForm/useSignInSchema.cjs.map +1 -1
  53. package/dist/components/Auth/SignInForm/useSignInSchema.mjs +6 -6
  54. package/dist/components/Auth/SignInForm/useSignInSchema.mjs.map +1 -1
  55. package/dist/components/Auth/SignUpForm/SignUpForm.cjs +10 -10
  56. package/dist/components/Auth/SignUpForm/SignUpForm.cjs.map +1 -1
  57. package/dist/components/Auth/SignUpForm/SignUpForm.mjs +10 -10
  58. package/dist/components/Auth/SignUpForm/SignUpForm.mjs.map +1 -1
  59. package/dist/components/Auth/SignUpForm/useSignUpSchema.cjs +10 -10
  60. package/dist/components/Auth/SignUpForm/useSignUpSchema.cjs.map +1 -1
  61. package/dist/components/Auth/SignUpForm/useSignUpSchema.mjs +10 -10
  62. package/dist/components/Auth/SignUpForm/useSignUpSchema.mjs.map +1 -1
  63. package/dist/components/Auth/VerifyEmailForm/VerifyEmailForm.cjs +11 -11
  64. package/dist/components/Auth/VerifyEmailForm/VerifyEmailForm.cjs.map +1 -1
  65. package/dist/components/Auth/VerifyEmailForm/VerifyEmailForm.d.ts.map +1 -1
  66. package/dist/components/Auth/VerifyEmailForm/VerifyEmailForm.mjs +7 -7
  67. package/dist/components/Auth/VerifyEmailForm/VerifyEmailForm.mjs.map +1 -1
  68. package/dist/components/Auth/useAuth/index.cjs +2 -2
  69. package/dist/components/Auth/useAuth/index.cjs.map +1 -1
  70. package/dist/components/Auth/useAuth/useCSRF.cjs +3 -1
  71. package/dist/components/Auth/useAuth/useCSRF.cjs.map +1 -1
  72. package/dist/components/Auth/useAuth/useCSRF.d.ts +1 -1
  73. package/dist/components/Auth/useAuth/useCSRF.d.ts.map +1 -1
  74. package/dist/components/Auth/useAuth/useCSRF.mjs +3 -1
  75. package/dist/components/Auth/useAuth/useCSRF.mjs.map +1 -1
  76. package/dist/components/Auth/useAuth/useOAuth2.cjs +3 -1
  77. package/dist/components/Auth/useAuth/useOAuth2.cjs.map +1 -1
  78. package/dist/components/Auth/useAuth/useOAuth2.d.ts +1 -1
  79. package/dist/components/Auth/useAuth/useOAuth2.d.ts.map +1 -1
  80. package/dist/components/Auth/useAuth/useOAuth2.mjs +3 -1
  81. package/dist/components/Auth/useAuth/useOAuth2.mjs.map +1 -1
  82. package/dist/components/Auth/useAuth/useSession.cjs +5 -3
  83. package/dist/components/Auth/useAuth/useSession.cjs.map +1 -1
  84. package/dist/components/Auth/useAuth/useSession.d.ts.map +1 -1
  85. package/dist/components/Auth/useAuth/useSession.mjs +3 -1
  86. package/dist/components/Auth/useAuth/useSession.mjs.map +1 -1
  87. package/dist/components/Avatar/index.cjs +9 -9
  88. package/dist/components/Avatar/index.cjs.map +1 -1
  89. package/dist/components/Avatar/index.mjs +9 -9
  90. package/dist/components/Avatar/index.mjs.map +1 -1
  91. package/dist/components/Badge/index.cjs +2 -2
  92. package/dist/components/Badge/index.cjs.map +1 -1
  93. package/dist/components/Badge/index.mjs +2 -2
  94. package/dist/components/Badge/index.mjs.map +1 -1
  95. package/dist/components/Breadcrumb/index.cjs +20 -20
  96. package/dist/components/Breadcrumb/index.cjs.map +1 -1
  97. package/dist/components/Breadcrumb/index.d.ts.map +1 -1
  98. package/dist/components/Breadcrumb/index.mjs +19 -19
  99. package/dist/components/Breadcrumb/index.mjs.map +1 -1
  100. package/dist/components/Button/Button.cjs +82 -87
  101. package/dist/components/Button/Button.cjs.map +1 -1
  102. package/dist/components/Button/Button.d.ts +1 -1
  103. package/dist/components/Button/Button.d.ts.map +1 -1
  104. package/dist/components/Button/Button.mjs +82 -87
  105. package/dist/components/Button/Button.mjs.map +1 -1
  106. package/dist/components/ClickOutsideDiv/index.cjs +5 -5
  107. package/dist/components/ClickOutsideDiv/index.cjs.map +1 -1
  108. package/dist/components/ClickOutsideDiv/index.d.ts +1 -1
  109. package/dist/components/ClickOutsideDiv/index.d.ts.map +1 -1
  110. package/dist/components/ClickOutsideDiv/index.mjs +2 -2
  111. package/dist/components/ClickOutsideDiv/index.mjs.map +1 -1
  112. package/dist/components/Command/index.cjs +42 -52
  113. package/dist/components/Command/index.cjs.map +1 -1
  114. package/dist/components/Command/index.d.ts +21 -73
  115. package/dist/components/Command/index.d.ts.map +1 -1
  116. package/dist/components/Command/index.mjs +42 -52
  117. package/dist/components/Command/index.mjs.map +1 -1
  118. package/dist/components/Container/index.cjs +49 -40
  119. package/dist/components/Container/index.cjs.map +1 -1
  120. package/dist/components/Container/index.d.ts +6 -20
  121. package/dist/components/Container/index.d.ts.map +1 -1
  122. package/dist/components/Container/index.mjs +49 -40
  123. package/dist/components/Container/index.mjs.map +1 -1
  124. package/dist/components/ContentEditor/ContentEditor.cjs +9 -9
  125. package/dist/components/ContentEditor/ContentEditor.cjs.map +1 -1
  126. package/dist/components/ContentEditor/ContentEditor.mjs +6 -6
  127. package/dist/components/ContentEditor/ContentEditor.mjs.map +1 -1
  128. package/dist/components/ContentEditor/ContentEditorInput.cjs +87 -0
  129. package/dist/components/ContentEditor/ContentEditorInput.cjs.map +1 -0
  130. package/dist/components/ContentEditor/ContentEditorInput.d.ts +11 -0
  131. package/dist/components/ContentEditor/ContentEditorInput.d.ts.map +1 -0
  132. package/dist/components/ContentEditor/ContentEditorInput.mjs +87 -0
  133. package/dist/components/ContentEditor/ContentEditorInput.mjs.map +1 -0
  134. package/dist/components/ContentEditor/ContentEditorTextArea.cjs +15 -12
  135. package/dist/components/ContentEditor/ContentEditorTextArea.cjs.map +1 -1
  136. package/dist/components/ContentEditor/ContentEditorTextArea.d.ts +1 -1
  137. package/dist/components/ContentEditor/ContentEditorTextArea.d.ts.map +1 -1
  138. package/dist/components/ContentEditor/ContentEditorTextArea.mjs +11 -8
  139. package/dist/components/ContentEditor/ContentEditorTextArea.mjs.map +1 -1
  140. package/dist/components/ContentSelector/ContentSelector.cjs +2 -2
  141. package/dist/components/ContentSelector/ContentSelector.cjs.map +1 -1
  142. package/dist/components/ContentSelector/ContentSelector.mjs +2 -2
  143. package/dist/components/ContentSelector/ContentSelector.mjs.map +1 -1
  144. package/dist/components/CopyToClipboard/index.cjs +6 -6
  145. package/dist/components/CopyToClipboard/index.cjs.map +1 -1
  146. package/dist/components/CopyToClipboard/index.d.ts.map +1 -1
  147. package/dist/components/CopyToClipboard/index.mjs +4 -4
  148. package/dist/components/CopyToClipboard/index.mjs.map +1 -1
  149. package/dist/components/DictionaryEditor/DictionaryEditor.cjs +6 -6
  150. package/dist/components/DictionaryEditor/DictionaryEditor.cjs.map +1 -1
  151. package/dist/components/DictionaryEditor/DictionaryEditor.mjs +5 -5
  152. package/dist/components/DictionaryEditor/DictionaryEditor.mjs.map +1 -1
  153. package/dist/components/DictionaryEditor/ItemLayout.cjs +8 -8
  154. package/dist/components/DictionaryEditor/ItemLayout.cjs.map +1 -1
  155. package/dist/components/DictionaryEditor/ItemLayout.mjs +8 -8
  156. package/dist/components/DictionaryEditor/ItemLayout.mjs.map +1 -1
  157. package/dist/components/DictionaryEditor/NodeWrapper/ArrayWrapper.cjs +2 -4
  158. package/dist/components/DictionaryEditor/NodeWrapper/ArrayWrapper.cjs.map +1 -1
  159. package/dist/components/DictionaryEditor/NodeWrapper/ArrayWrapper.d.ts.map +1 -1
  160. package/dist/components/DictionaryEditor/NodeWrapper/ArrayWrapper.mjs +2 -4
  161. package/dist/components/DictionaryEditor/NodeWrapper/ArrayWrapper.mjs.map +1 -1
  162. package/dist/components/DictionaryEditor/NodeWrapper/ConditionWrapper.cjs +8 -0
  163. package/dist/components/DictionaryEditor/NodeWrapper/ConditionWrapper.cjs.map +1 -0
  164. package/dist/components/DictionaryEditor/NodeWrapper/ConditionWrapper.d.ts +9 -0
  165. package/dist/components/DictionaryEditor/NodeWrapper/ConditionWrapper.d.ts.map +1 -0
  166. package/dist/components/DictionaryEditor/NodeWrapper/ConditionWrapper.mjs +8 -0
  167. package/dist/components/DictionaryEditor/NodeWrapper/ConditionWrapper.mjs.map +1 -0
  168. package/dist/components/DictionaryEditor/NodeWrapper/EnumerationWrapper.cjs +2 -2
  169. package/dist/components/DictionaryEditor/NodeWrapper/EnumerationWrapper.d.ts.map +1 -1
  170. package/dist/components/DictionaryEditor/NodeWrapper/EnumerationWrapper.mjs +2 -2
  171. package/dist/components/DictionaryEditor/NodeWrapper/MarkdownWrapper.cjs +7 -0
  172. package/dist/components/DictionaryEditor/NodeWrapper/MarkdownWrapper.cjs.map +1 -0
  173. package/dist/components/DictionaryEditor/NodeWrapper/MarkdownWrapper.d.ts +9 -0
  174. package/dist/components/DictionaryEditor/NodeWrapper/MarkdownWrapper.d.ts.map +1 -0
  175. package/dist/components/DictionaryEditor/NodeWrapper/MarkdownWrapper.mjs +7 -0
  176. package/dist/components/DictionaryEditor/NodeWrapper/MarkdownWrapper.mjs.map +1 -0
  177. package/dist/components/DictionaryEditor/NodeWrapper/NestedObjectWrapper.cjs +2 -4
  178. package/dist/components/DictionaryEditor/NodeWrapper/NestedObjectWrapper.cjs.map +1 -1
  179. package/dist/components/DictionaryEditor/NodeWrapper/NestedObjectWrapper.d.ts.map +1 -1
  180. package/dist/components/DictionaryEditor/NodeWrapper/NestedObjectWrapper.mjs +2 -4
  181. package/dist/components/DictionaryEditor/NodeWrapper/NestedObjectWrapper.mjs.map +1 -1
  182. package/dist/components/DictionaryEditor/NodeWrapper/StringWrapper.cjs +13 -7
  183. package/dist/components/DictionaryEditor/NodeWrapper/StringWrapper.cjs.map +1 -1
  184. package/dist/components/DictionaryEditor/NodeWrapper/StringWrapper.d.ts.map +1 -1
  185. package/dist/components/DictionaryEditor/NodeWrapper/StringWrapper.mjs +13 -7
  186. package/dist/components/DictionaryEditor/NodeWrapper/StringWrapper.mjs.map +1 -1
  187. package/dist/components/DictionaryEditor/NodeWrapper/TranslationWrapper.cjs +2 -2
  188. package/dist/components/DictionaryEditor/NodeWrapper/TranslationWrapper.d.ts.map +1 -1
  189. package/dist/components/DictionaryEditor/NodeWrapper/TranslationWrapper.mjs +2 -2
  190. package/dist/components/DictionaryEditor/NodeWrapper/index.cjs +2 -3
  191. package/dist/components/DictionaryEditor/NodeWrapper/index.cjs.map +1 -1
  192. package/dist/components/DictionaryEditor/NodeWrapper/index.d.ts.map +1 -1
  193. package/dist/components/DictionaryEditor/NodeWrapper/index.mjs +2 -3
  194. package/dist/components/DictionaryEditor/NodeWrapper/index.mjs.map +1 -1
  195. package/dist/components/DictionaryEditor/ValidDictionaryChangeButtons.cjs +13 -21
  196. package/dist/components/DictionaryEditor/ValidDictionaryChangeButtons.cjs.map +1 -1
  197. package/dist/components/DictionaryEditor/ValidDictionaryChangeButtons.d.ts.map +1 -1
  198. package/dist/components/DictionaryEditor/ValidDictionaryChangeButtons.mjs +8 -16
  199. package/dist/components/DictionaryEditor/ValidDictionaryChangeButtons.mjs.map +1 -1
  200. package/dist/components/DictionaryFieldEditor/ContentEditor.cjs +54 -0
  201. package/dist/components/DictionaryFieldEditor/ContentEditor.cjs.map +1 -0
  202. package/dist/components/DictionaryFieldEditor/ContentEditor.d.ts +8 -0
  203. package/dist/components/DictionaryFieldEditor/ContentEditor.d.ts.map +1 -0
  204. package/dist/components/DictionaryFieldEditor/ContentEditor.mjs +54 -0
  205. package/dist/components/DictionaryFieldEditor/ContentEditor.mjs.map +1 -0
  206. package/dist/components/DictionaryFieldEditor/ContentEditorView/EditorView.cjs +44 -0
  207. package/dist/components/DictionaryFieldEditor/ContentEditorView/EditorView.cjs.map +1 -0
  208. package/dist/components/DictionaryFieldEditor/{EditorView → ContentEditorView}/EditorView.d.ts +0 -2
  209. package/dist/components/DictionaryFieldEditor/ContentEditorView/EditorView.d.ts.map +1 -0
  210. package/dist/components/DictionaryFieldEditor/ContentEditorView/EditorView.mjs +44 -0
  211. package/dist/components/DictionaryFieldEditor/ContentEditorView/EditorView.mjs.map +1 -0
  212. package/dist/components/DictionaryFieldEditor/ContentEditorView/TextEditor.cjs +549 -0
  213. package/dist/components/DictionaryFieldEditor/ContentEditorView/TextEditor.cjs.map +1 -0
  214. package/dist/components/DictionaryFieldEditor/{EditorView → ContentEditorView}/TextEditor.d.ts +1 -3
  215. package/dist/components/DictionaryFieldEditor/ContentEditorView/TextEditor.d.ts.map +1 -0
  216. package/dist/components/DictionaryFieldEditor/ContentEditorView/TextEditor.mjs +549 -0
  217. package/dist/components/DictionaryFieldEditor/ContentEditorView/TextEditor.mjs.map +1 -0
  218. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.cjs +5 -7
  219. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.cjs.map +1 -1
  220. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.d.ts +0 -2
  221. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.d.ts.map +1 -1
  222. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.mjs +3 -5
  223. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.mjs.map +1 -1
  224. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/DictionaryCreationForm.cjs +10 -10
  225. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/DictionaryCreationForm.cjs.map +1 -1
  226. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/DictionaryCreationForm.mjs +10 -10
  227. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/DictionaryCreationForm.mjs.map +1 -1
  228. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.cjs +5 -5
  229. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.cjs.map +1 -1
  230. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.mjs +5 -5
  231. package/dist/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.mjs.map +1 -1
  232. package/dist/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.cjs +189 -179
  233. package/dist/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.cjs.map +1 -1
  234. package/dist/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.d.ts.map +1 -1
  235. package/dist/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.mjs +185 -175
  236. package/dist/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.mjs.map +1 -1
  237. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.cjs +11 -11
  238. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.cjs.map +1 -1
  239. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.d.ts +2 -2
  240. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.mjs +11 -11
  241. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.mjs.map +1 -1
  242. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.cjs +98 -77
  243. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.cjs.map +1 -1
  244. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.d.ts +0 -2
  245. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.d.ts.map +1 -1
  246. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.mjs +97 -76
  247. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.mjs.map +1 -1
  248. package/dist/components/DictionaryFieldEditor/EnumKeyInput.cjs +17 -17
  249. package/dist/components/DictionaryFieldEditor/EnumKeyInput.cjs.map +1 -1
  250. package/dist/components/DictionaryFieldEditor/EnumKeyInput.mjs +12 -12
  251. package/dist/components/DictionaryFieldEditor/EnumKeyInput.mjs.map +1 -1
  252. package/dist/components/DictionaryFieldEditor/JSONEditor.cjs +23 -14
  253. package/dist/components/DictionaryFieldEditor/JSONEditor.cjs.map +1 -1
  254. package/dist/components/DictionaryFieldEditor/JSONEditor.d.ts.map +1 -1
  255. package/dist/components/DictionaryFieldEditor/JSONEditor.mjs +21 -12
  256. package/dist/components/DictionaryFieldEditor/JSONEditor.mjs.map +1 -1
  257. package/dist/components/DictionaryFieldEditor/KeyPathBreadcrumb.cjs +3 -3
  258. package/dist/components/DictionaryFieldEditor/KeyPathBreadcrumb.cjs.map +1 -1
  259. package/dist/components/DictionaryFieldEditor/KeyPathBreadcrumb.mjs +3 -3
  260. package/dist/components/DictionaryFieldEditor/KeyPathBreadcrumb.mjs.map +1 -1
  261. package/dist/components/DictionaryFieldEditor/NavigationView/NavigationViewNode.cjs +61 -81
  262. package/dist/components/DictionaryFieldEditor/NavigationView/NavigationViewNode.cjs.map +1 -1
  263. package/dist/components/DictionaryFieldEditor/NavigationView/NavigationViewNode.d.ts.map +1 -1
  264. package/dist/components/DictionaryFieldEditor/NavigationView/NavigationViewNode.mjs +60 -80
  265. package/dist/components/DictionaryFieldEditor/NavigationView/NavigationViewNode.mjs.map +1 -1
  266. package/dist/components/DictionaryFieldEditor/NavigationView/navigationViewNode.content.cjs +37 -37
  267. package/dist/components/DictionaryFieldEditor/NavigationView/navigationViewNode.content.cjs.map +1 -1
  268. package/dist/components/DictionaryFieldEditor/NavigationView/navigationViewNode.content.d.ts +12 -12
  269. package/dist/components/DictionaryFieldEditor/NavigationView/navigationViewNode.content.d.ts.map +1 -1
  270. package/dist/components/DictionaryFieldEditor/NavigationView/navigationViewNode.content.mjs +37 -37
  271. package/dist/components/DictionaryFieldEditor/NavigationView/navigationViewNode.content.mjs.map +1 -1
  272. package/dist/components/DictionaryFieldEditor/NodeTypeSelector.cjs +23 -64
  273. package/dist/components/DictionaryFieldEditor/NodeTypeSelector.cjs.map +1 -1
  274. package/dist/components/DictionaryFieldEditor/NodeTypeSelector.d.ts +2 -3
  275. package/dist/components/DictionaryFieldEditor/NodeTypeSelector.d.ts.map +1 -1
  276. package/dist/components/DictionaryFieldEditor/NodeTypeSelector.mjs +21 -62
  277. package/dist/components/DictionaryFieldEditor/NodeTypeSelector.mjs.map +1 -1
  278. package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.cjs +15 -15
  279. package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.cjs.map +1 -1
  280. package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.d.ts.map +1 -1
  281. package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.mjs +9 -9
  282. package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.mjs.map +1 -1
  283. package/dist/components/DictionaryFieldEditor/StructureEditor.cjs +31 -0
  284. package/dist/components/DictionaryFieldEditor/StructureEditor.cjs.map +1 -0
  285. package/dist/components/DictionaryFieldEditor/StructureEditor.d.ts +8 -0
  286. package/dist/components/DictionaryFieldEditor/StructureEditor.d.ts.map +1 -0
  287. package/dist/components/DictionaryFieldEditor/StructureEditor.mjs +31 -0
  288. package/dist/components/DictionaryFieldEditor/StructureEditor.mjs.map +1 -0
  289. package/dist/components/DictionaryFieldEditor/StructureView/StructureView.cjs +270 -0
  290. package/dist/components/DictionaryFieldEditor/StructureView/StructureView.cjs.map +1 -0
  291. package/dist/components/DictionaryFieldEditor/StructureView/StructureView.d.ts +16 -0
  292. package/dist/components/DictionaryFieldEditor/StructureView/StructureView.d.ts.map +1 -0
  293. package/dist/components/DictionaryFieldEditor/StructureView/StructureView.mjs +270 -0
  294. package/dist/components/DictionaryFieldEditor/StructureView/StructureView.mjs.map +1 -0
  295. package/dist/components/DictionaryFieldEditor/StructureView/structureView.content.cjs +76 -0
  296. package/dist/components/DictionaryFieldEditor/StructureView/structureView.content.cjs.map +1 -0
  297. package/dist/components/DictionaryFieldEditor/{editorView.content.d.ts → StructureView/structureView.content.d.ts} +4 -51
  298. package/dist/components/DictionaryFieldEditor/StructureView/structureView.content.d.ts.map +1 -0
  299. package/dist/components/DictionaryFieldEditor/StructureView/structureView.content.mjs +76 -0
  300. package/dist/components/DictionaryFieldEditor/StructureView/structureView.content.mjs.map +1 -0
  301. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcher.cjs +11 -11
  302. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcher.cjs.map +1 -1
  303. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcher.mjs +11 -11
  304. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcher.mjs.map +1 -1
  305. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcherContext.cjs +6 -6
  306. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcherContext.cjs.map +1 -1
  307. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcherContext.mjs +3 -3
  308. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcherContext.mjs.map +1 -1
  309. package/dist/components/DictionaryFieldEditor/dictionaryFieldEditor.content.cjs +0 -30
  310. package/dist/components/DictionaryFieldEditor/dictionaryFieldEditor.content.cjs.map +1 -1
  311. package/dist/components/DictionaryFieldEditor/dictionaryFieldEditor.content.d.ts +0 -30
  312. package/dist/components/DictionaryFieldEditor/dictionaryFieldEditor.content.d.ts.map +1 -1
  313. package/dist/components/DictionaryFieldEditor/dictionaryFieldEditor.content.mjs +0 -30
  314. package/dist/components/DictionaryFieldEditor/dictionaryFieldEditor.content.mjs.map +1 -1
  315. package/dist/components/DictionaryFieldEditor/getIsEditableSection.cjs +7 -44
  316. package/dist/components/DictionaryFieldEditor/getIsEditableSection.cjs.map +1 -1
  317. package/dist/components/DictionaryFieldEditor/getIsEditableSection.d.ts.map +1 -1
  318. package/dist/components/DictionaryFieldEditor/getIsEditableSection.mjs +8 -45
  319. package/dist/components/DictionaryFieldEditor/getIsEditableSection.mjs.map +1 -1
  320. package/dist/components/DictionaryFieldEditor/nodeTypeSelector.content.cjs +52 -21
  321. package/dist/components/DictionaryFieldEditor/nodeTypeSelector.content.cjs.map +1 -1
  322. package/dist/components/DictionaryFieldEditor/nodeTypeSelector.content.d.ts +31 -0
  323. package/dist/components/DictionaryFieldEditor/nodeTypeSelector.content.d.ts.map +1 -1
  324. package/dist/components/DictionaryFieldEditor/nodeTypeSelector.content.mjs +52 -21
  325. package/dist/components/DictionaryFieldEditor/nodeTypeSelector.content.mjs.map +1 -1
  326. package/dist/components/DropDown/index.cjs +5 -5
  327. package/dist/components/DropDown/index.cjs.map +1 -1
  328. package/dist/components/DropDown/index.mjs +5 -5
  329. package/dist/components/DropDown/index.mjs.map +1 -1
  330. package/dist/components/EditableField/EditableFieldInput.cjs +15 -12
  331. package/dist/components/EditableField/EditableFieldInput.cjs.map +1 -1
  332. package/dist/components/EditableField/EditableFieldInput.d.ts +2 -1
  333. package/dist/components/EditableField/EditableFieldInput.d.ts.map +1 -1
  334. package/dist/components/EditableField/EditableFieldInput.mjs +12 -9
  335. package/dist/components/EditableField/EditableFieldInput.mjs.map +1 -1
  336. package/dist/components/EditableField/EditableFieldLayout.cjs +13 -13
  337. package/dist/components/EditableField/EditableFieldLayout.cjs.map +1 -1
  338. package/dist/components/EditableField/EditableFieldLayout.d.ts +1 -1
  339. package/dist/components/EditableField/EditableFieldLayout.d.ts.map +1 -1
  340. package/dist/components/EditableField/EditableFieldLayout.mjs +8 -8
  341. package/dist/components/EditableField/EditableFieldLayout.mjs.map +1 -1
  342. package/dist/components/EditableField/EditableFieldTextArea.cjs +19 -15
  343. package/dist/components/EditableField/EditableFieldTextArea.cjs.map +1 -1
  344. package/dist/components/EditableField/EditableFieldTextArea.d.ts +2 -1
  345. package/dist/components/EditableField/EditableFieldTextArea.d.ts.map +1 -1
  346. package/dist/components/EditableField/EditableFieldTextArea.mjs +17 -13
  347. package/dist/components/EditableField/EditableFieldTextArea.mjs.map +1 -1
  348. package/dist/components/Flags/Flag.cjs +2 -2
  349. package/dist/components/Flags/Flag.cjs.map +1 -1
  350. package/dist/components/Flags/Flag.d.ts.map +1 -1
  351. package/dist/components/Flags/Flag.mjs +2 -2
  352. package/dist/components/Flags/Flag.mjs.map +1 -1
  353. package/dist/components/Footer/index.cjs +8 -8
  354. package/dist/components/Footer/index.cjs.map +1 -1
  355. package/dist/components/Footer/index.mjs +8 -8
  356. package/dist/components/Footer/index.mjs.map +1 -1
  357. package/dist/components/Form/Form.cjs +2 -2
  358. package/dist/components/Form/Form.d.ts.map +1 -1
  359. package/dist/components/Form/Form.mjs +2 -2
  360. package/dist/components/Form/FormBase.cjs +38 -42
  361. package/dist/components/Form/FormBase.cjs.map +1 -1
  362. package/dist/components/Form/FormBase.d.ts +11 -8
  363. package/dist/components/Form/FormBase.d.ts.map +1 -1
  364. package/dist/components/Form/FormBase.mjs +39 -43
  365. package/dist/components/Form/FormBase.mjs.map +1 -1
  366. package/dist/components/Form/FormControl.cjs +4 -7
  367. package/dist/components/Form/FormControl.cjs.map +1 -1
  368. package/dist/components/Form/FormControl.d.ts +3 -1
  369. package/dist/components/Form/FormControl.d.ts.map +1 -1
  370. package/dist/components/Form/FormControl.mjs +4 -7
  371. package/dist/components/Form/FormControl.mjs.map +1 -1
  372. package/dist/components/Form/FormDescription.cjs +4 -7
  373. package/dist/components/Form/FormDescription.cjs.map +1 -1
  374. package/dist/components/Form/FormDescription.d.ts +2 -2
  375. package/dist/components/Form/FormDescription.d.ts.map +1 -1
  376. package/dist/components/Form/FormDescription.mjs +4 -7
  377. package/dist/components/Form/FormDescription.mjs.map +1 -1
  378. package/dist/components/Form/FormField.cjs +7 -7
  379. package/dist/components/Form/FormField.cjs.map +1 -1
  380. package/dist/components/Form/FormField.mjs +4 -4
  381. package/dist/components/Form/FormField.mjs.map +1 -1
  382. package/dist/components/Form/FormItem.cjs +8 -9
  383. package/dist/components/Form/FormItem.cjs.map +1 -1
  384. package/dist/components/Form/FormItem.d.ts +2 -2
  385. package/dist/components/Form/FormItem.d.ts.map +1 -1
  386. package/dist/components/Form/FormItem.mjs +5 -6
  387. package/dist/components/Form/FormItem.mjs.map +1 -1
  388. package/dist/components/Form/FormLabel.cjs +7 -7
  389. package/dist/components/Form/FormLabel.cjs.map +1 -1
  390. package/dist/components/Form/FormLabel.d.ts +3 -1
  391. package/dist/components/Form/FormLabel.d.ts.map +1 -1
  392. package/dist/components/Form/FormLabel.mjs +7 -7
  393. package/dist/components/Form/FormLabel.mjs.map +1 -1
  394. package/dist/components/Form/FormMessage.cjs +2 -2
  395. package/dist/components/Form/FormMessage.cjs.map +1 -1
  396. package/dist/components/Form/FormMessage.mjs +2 -2
  397. package/dist/components/Form/FormMessage.mjs.map +1 -1
  398. package/dist/components/Form/elements/AutoSizeTextAreaElement.cjs +2 -2
  399. package/dist/components/Form/elements/AutoSizeTextAreaElement.mjs +2 -2
  400. package/dist/components/Form/elements/CheckboxElement.cjs +4 -4
  401. package/dist/components/Form/elements/CheckboxElement.d.ts.map +1 -1
  402. package/dist/components/Form/elements/CheckboxElement.mjs +4 -4
  403. package/dist/components/Form/elements/EditableFieldInputElement.cjs +2 -2
  404. package/dist/components/Form/elements/EditableFieldInputElement.d.ts.map +1 -1
  405. package/dist/components/Form/elements/EditableFieldInputElement.mjs +2 -2
  406. package/dist/components/Form/elements/EditableFieldTextAreaElement.cjs +2 -2
  407. package/dist/components/Form/elements/EditableFieldTextAreaElement.d.ts.map +1 -1
  408. package/dist/components/Form/elements/EditableFieldTextAreaElement.mjs +2 -2
  409. package/dist/components/Form/elements/FormElement.cjs +2 -3
  410. package/dist/components/Form/elements/FormElement.cjs.map +1 -1
  411. package/dist/components/Form/elements/FormElement.d.ts.map +1 -1
  412. package/dist/components/Form/elements/FormElement.mjs +2 -3
  413. package/dist/components/Form/elements/FormElement.mjs.map +1 -1
  414. package/dist/components/Form/elements/FormElementWrapper.cjs +2 -2
  415. package/dist/components/Form/elements/FormElementWrapper.cjs.map +1 -1
  416. package/dist/components/Form/elements/FormElementWrapper.mjs +2 -2
  417. package/dist/components/Form/elements/FormElementWrapper.mjs.map +1 -1
  418. package/dist/components/Form/elements/InputElement.cjs +4 -3
  419. package/dist/components/Form/elements/InputElement.cjs.map +1 -1
  420. package/dist/components/Form/elements/InputElement.d.ts.map +1 -1
  421. package/dist/components/Form/elements/InputElement.mjs +4 -3
  422. package/dist/components/Form/elements/InputElement.mjs.map +1 -1
  423. package/dist/components/Form/elements/InputPasswordElement.cjs +2 -2
  424. package/dist/components/Form/elements/InputPasswordElement.d.ts.map +1 -1
  425. package/dist/components/Form/elements/InputPasswordElement.mjs +2 -2
  426. package/dist/components/Form/elements/MultiselectElement.cjs +2 -2
  427. package/dist/components/Form/elements/MultiselectElement.d.ts.map +1 -1
  428. package/dist/components/Form/elements/MultiselectElement.mjs +2 -2
  429. package/dist/components/Form/elements/SelectElement.cjs +2 -2
  430. package/dist/components/Form/elements/SelectElement.mjs +2 -2
  431. package/dist/components/Form/elements/SwitchSelectorElement.cjs +2 -2
  432. package/dist/components/Form/elements/SwitchSelectorElement.d.ts.map +1 -1
  433. package/dist/components/Form/elements/SwitchSelectorElement.mjs +2 -2
  434. package/dist/components/Form/elements/TextAreaElement.cjs +2 -2
  435. package/dist/components/Form/elements/TextAreaElement.d.ts.map +1 -1
  436. package/dist/components/Form/elements/TextAreaElement.mjs +2 -2
  437. package/dist/components/Form/elements/index.cjs +1 -1
  438. package/dist/components/Form/elements/index.d.ts.map +1 -1
  439. package/dist/components/Form/elements/index.mjs +1 -1
  440. package/dist/components/Form/index.cjs +1 -1
  441. package/dist/components/Form/index.mjs +1 -1
  442. package/dist/components/Form/layout/FormItemLayout.cjs +2 -2
  443. package/dist/components/Form/layout/FormItemLayout.d.ts.map +1 -1
  444. package/dist/components/Form/layout/FormItemLayout.mjs +2 -2
  445. package/dist/components/Form/layout/FormLabelLayout.cjs +5 -5
  446. package/dist/components/Form/layout/FormLabelLayout.cjs.map +1 -1
  447. package/dist/components/Form/layout/FormLabelLayout.mjs +5 -5
  448. package/dist/components/Form/layout/FormLabelLayout.mjs.map +1 -1
  449. package/dist/components/Form/layout/RequiredStar.cjs +2 -2
  450. package/dist/components/Form/layout/RequiredStar.cjs.map +1 -1
  451. package/dist/components/Form/layout/RequiredStar.mjs +2 -2
  452. package/dist/components/Form/layout/RequiredStar.mjs.map +1 -1
  453. package/dist/components/Form/layout/index.cjs +1 -1
  454. package/dist/components/Form/layout/index.d.ts.map +1 -1
  455. package/dist/components/Form/layout/index.mjs +1 -1
  456. package/dist/components/Headers/SectionScroller.cjs +4 -4
  457. package/dist/components/Headers/SectionScroller.cjs.map +1 -1
  458. package/dist/components/Headers/index.cjs +12 -12
  459. package/dist/components/Headers/index.cjs.map +1 -1
  460. package/dist/components/Headers/index.d.ts.map +1 -1
  461. package/dist/components/Headers/index.mjs +12 -12
  462. package/dist/components/Headers/index.mjs.map +1 -1
  463. package/dist/components/IDE/Code.cjs +59 -64
  464. package/dist/components/IDE/Code.cjs.map +1 -1
  465. package/dist/components/IDE/Code.d.ts +5 -3
  466. package/dist/components/IDE/Code.d.ts.map +1 -1
  467. package/dist/components/IDE/Code.mjs +59 -64
  468. package/dist/components/IDE/Code.mjs.map +1 -1
  469. package/dist/components/IDE/CodeBlockClient.cjs +9 -9
  470. package/dist/components/IDE/CodeBlockClient.cjs.map +1 -1
  471. package/dist/components/IDE/CodeBlockClient.d.ts.map +1 -1
  472. package/dist/components/IDE/CodeBlockClient.mjs +5 -5
  473. package/dist/components/IDE/CodeBlockClient.mjs.map +1 -1
  474. package/dist/components/IDE/CodeBlockServer.cjs +5 -5
  475. package/dist/components/IDE/CodeBlockServer.cjs.map +1 -1
  476. package/dist/components/IDE/CodeBlockServer.d.ts.map +1 -1
  477. package/dist/components/IDE/CodeBlockServer.mjs +4 -4
  478. package/dist/components/IDE/CodeBlockServer.mjs.map +1 -1
  479. package/dist/components/IDE/CodeConditionalRenderer.cjs +2 -2
  480. package/dist/components/IDE/CodeConditionalRenderer.cjs.map +1 -1
  481. package/dist/components/IDE/CodeConditionalRenderer.d.ts.map +1 -1
  482. package/dist/components/IDE/CodeConditionalRenderer.mjs +2 -2
  483. package/dist/components/IDE/CodeConditionalRenderer.mjs.map +1 -1
  484. package/dist/components/IDE/CodeContext.cjs +6 -6
  485. package/dist/components/IDE/CodeContext.cjs.map +1 -1
  486. package/dist/components/IDE/CodeContext.mjs +3 -3
  487. package/dist/components/IDE/CodeContext.mjs.map +1 -1
  488. package/dist/components/IDE/CodeFormatSelector.cjs +7 -7
  489. package/dist/components/IDE/CodeFormatSelector.cjs.map +1 -1
  490. package/dist/components/IDE/CodeFormatSelector.mjs +7 -7
  491. package/dist/components/IDE/CodeFormatSelector.mjs.map +1 -1
  492. package/dist/components/IDE/ContentDeclarationFormatSelector.cjs +8 -8
  493. package/dist/components/IDE/ContentDeclarationFormatSelector.cjs.map +1 -1
  494. package/dist/components/IDE/ContentDeclarationFormatSelector.mjs +8 -8
  495. package/dist/components/IDE/ContentDeclarationFormatSelector.mjs.map +1 -1
  496. package/dist/components/IDE/CopyButton.cjs +5 -5
  497. package/dist/components/IDE/CopyButton.cjs.map +1 -1
  498. package/dist/components/IDE/CopyButton.mjs +2 -2
  499. package/dist/components/IDE/CopyButton.mjs.map +1 -1
  500. package/dist/components/IDE/FileList.cjs +7 -7
  501. package/dist/components/IDE/FileList.cjs.map +1 -1
  502. package/dist/components/IDE/FileList.mjs +7 -7
  503. package/dist/components/IDE/FileList.mjs.map +1 -1
  504. package/dist/components/IDE/FileTree.cjs +10 -10
  505. package/dist/components/IDE/FileTree.cjs.map +1 -1
  506. package/dist/components/IDE/FileTree.d.ts.map +1 -1
  507. package/dist/components/IDE/FileTree.mjs +8 -8
  508. package/dist/components/IDE/FileTree.mjs.map +1 -1
  509. package/dist/components/IDE/IDE.cjs +15 -15
  510. package/dist/components/IDE/IDE.cjs.map +1 -1
  511. package/dist/components/IDE/IDE.mjs +12 -12
  512. package/dist/components/IDE/IDE.mjs.map +1 -1
  513. package/dist/components/IDE/MarkDownRender.cjs +4 -4
  514. package/dist/components/IDE/MarkDownRender.cjs.map +1 -1
  515. package/dist/components/IDE/MarkDownRender.mjs +4 -4
  516. package/dist/components/IDE/MarkDownRender.mjs.map +1 -1
  517. package/dist/components/IDE/MonacoCode.cjs +18 -12
  518. package/dist/components/IDE/MonacoCode.cjs.map +1 -1
  519. package/dist/components/IDE/MonacoCode.d.ts.map +1 -1
  520. package/dist/components/IDE/MonacoCode.mjs +13 -7
  521. package/dist/components/IDE/MonacoCode.mjs.map +1 -1
  522. package/dist/components/IDE/PackageManagerSelector.cjs +7 -7
  523. package/dist/components/IDE/PackageManagerSelector.cjs.map +1 -1
  524. package/dist/components/IDE/PackageManagerSelector.mjs +7 -7
  525. package/dist/components/IDE/PackageManagerSelector.mjs.map +1 -1
  526. package/dist/components/IDE/createFileTree.cjs +1 -1
  527. package/dist/components/IDE/createFileTree.cjs.map +1 -1
  528. package/dist/components/IDE/createFileTree.mjs +1 -1
  529. package/dist/components/IDE/createFileTree.mjs.map +1 -1
  530. package/dist/components/InformationTag/index.cjs +2 -2
  531. package/dist/components/InformationTag/index.cjs.map +1 -1
  532. package/dist/components/InformationTag/index.mjs +2 -2
  533. package/dist/components/InformationTag/index.mjs.map +1 -1
  534. package/dist/components/Input/Checkbox.cjs +31 -34
  535. package/dist/components/Input/Checkbox.cjs.map +1 -1
  536. package/dist/components/Input/Checkbox.d.ts +2 -2
  537. package/dist/components/Input/Checkbox.d.ts.map +1 -1
  538. package/dist/components/Input/Checkbox.mjs +31 -34
  539. package/dist/components/Input/Checkbox.mjs.map +1 -1
  540. package/dist/components/Input/Input.cjs +18 -17
  541. package/dist/components/Input/Input.cjs.map +1 -1
  542. package/dist/components/Input/Input.d.ts +2 -2
  543. package/dist/components/Input/Input.d.ts.map +1 -1
  544. package/dist/components/Input/Input.mjs +18 -17
  545. package/dist/components/Input/Input.mjs.map +1 -1
  546. package/dist/components/Input/InputPassword.cjs +30 -40
  547. package/dist/components/Input/InputPassword.cjs.map +1 -1
  548. package/dist/components/Input/InputPassword.d.ts +2 -1
  549. package/dist/components/Input/InputPassword.d.ts.map +1 -1
  550. package/dist/components/Input/InputPassword.mjs +30 -40
  551. package/dist/components/Input/InputPassword.mjs.map +1 -1
  552. package/dist/components/Label/index.cjs +6 -6
  553. package/dist/components/Label/index.cjs.map +1 -1
  554. package/dist/components/Label/index.d.ts +2 -2
  555. package/dist/components/Label/index.d.ts.map +1 -1
  556. package/dist/components/Label/index.mjs +6 -6
  557. package/dist/components/Label/index.mjs.map +1 -1
  558. package/dist/components/Link/Link.cjs +5 -8
  559. package/dist/components/Link/Link.cjs.map +1 -1
  560. package/dist/components/Link/Link.d.ts +4 -4
  561. package/dist/components/Link/Link.d.ts.map +1 -1
  562. package/dist/components/Link/Link.mjs +5 -8
  563. package/dist/components/Link/Link.mjs.map +1 -1
  564. package/dist/components/Loader/index.cjs +4 -4
  565. package/dist/components/Loader/index.cjs.map +1 -1
  566. package/dist/components/Loader/index.d.ts.map +1 -1
  567. package/dist/components/Loader/index.mjs +4 -4
  568. package/dist/components/Loader/index.mjs.map +1 -1
  569. package/dist/components/Loader/spinner.cjs +9 -9
  570. package/dist/components/Loader/spinner.cjs.map +1 -1
  571. package/dist/components/Loader/spinner.mjs +9 -9
  572. package/dist/components/Loader/spinner.mjs.map +1 -1
  573. package/dist/components/LocaleSwitcherContentDropDown/LocaleSwitcherContent.cjs +26 -27
  574. package/dist/components/LocaleSwitcherContentDropDown/LocaleSwitcherContent.cjs.map +1 -1
  575. package/dist/components/LocaleSwitcherContentDropDown/LocaleSwitcherContent.mjs +20 -21
  576. package/dist/components/LocaleSwitcherContentDropDown/LocaleSwitcherContent.mjs.map +1 -1
  577. package/dist/components/LocaleSwitcherContentDropDown/LocaleSwitcherContentContext.cjs +6 -6
  578. package/dist/components/LocaleSwitcherContentDropDown/LocaleSwitcherContentContext.cjs.map +1 -1
  579. package/dist/components/LocaleSwitcherContentDropDown/LocaleSwitcherContentContext.mjs +3 -3
  580. package/dist/components/LocaleSwitcherContentDropDown/LocaleSwitcherContentContext.mjs.map +1 -1
  581. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.cjs +22 -23
  582. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.cjs.map +1 -1
  583. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.mjs +16 -17
  584. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.mjs.map +1 -1
  585. package/dist/components/Logo/LogoCircle.cjs +4 -4
  586. package/dist/components/Logo/LogoCircle.cjs.map +1 -1
  587. package/dist/components/Logo/LogoCircle.mjs +4 -4
  588. package/dist/components/Logo/LogoCircle.mjs.map +1 -1
  589. package/dist/components/Logo/LogoNoFrame.cjs +17 -17
  590. package/dist/components/Logo/LogoNoFrame.cjs.map +1 -1
  591. package/dist/components/Logo/LogoNoFrame.mjs +17 -17
  592. package/dist/components/Logo/LogoNoFrame.mjs.map +1 -1
  593. package/dist/components/Logo/LogoSquare.cjs +4 -4
  594. package/dist/components/Logo/LogoSquare.cjs.map +1 -1
  595. package/dist/components/Logo/LogoSquare.mjs +4 -4
  596. package/dist/components/Logo/LogoSquare.mjs.map +1 -1
  597. package/dist/components/Logo/LogoSquircle.cjs +8 -8
  598. package/dist/components/Logo/LogoSquircle.cjs.map +1 -1
  599. package/dist/components/Logo/LogoSquircle.mjs +8 -8
  600. package/dist/components/Logo/LogoSquircle.mjs.map +1 -1
  601. package/dist/components/Logo/LogoTextOnly.cjs +17 -17
  602. package/dist/components/Logo/LogoTextOnly.cjs.map +1 -1
  603. package/dist/components/Logo/LogoTextOnly.mjs +17 -17
  604. package/dist/components/Logo/LogoTextOnly.mjs.map +1 -1
  605. package/dist/components/Logo/LogoWithTextBelowCircle.cjs +19 -19
  606. package/dist/components/Logo/LogoWithTextBelowCircle.cjs.map +1 -1
  607. package/dist/components/Logo/LogoWithTextBelowCircle.mjs +19 -19
  608. package/dist/components/Logo/LogoWithTextBelowCircle.mjs.map +1 -1
  609. package/dist/components/Logo/LogoWithTextBelowNoFrame.cjs +17 -17
  610. package/dist/components/Logo/LogoWithTextBelowNoFrame.cjs.map +1 -1
  611. package/dist/components/Logo/LogoWithTextBelowNoFrame.mjs +17 -17
  612. package/dist/components/Logo/LogoWithTextBelowNoFrame.mjs.map +1 -1
  613. package/dist/components/Logo/LogoWithTextBelowSquircle.cjs +8 -8
  614. package/dist/components/Logo/LogoWithTextBelowSquircle.cjs.map +1 -1
  615. package/dist/components/Logo/LogoWithTextBelowSquircle.mjs +8 -8
  616. package/dist/components/Logo/LogoWithTextBelowSquircle.mjs.map +1 -1
  617. package/dist/components/Logo/LogoWithTextCircle.cjs +35 -35
  618. package/dist/components/Logo/LogoWithTextCircle.cjs.map +1 -1
  619. package/dist/components/Logo/LogoWithTextCircle.mjs +35 -35
  620. package/dist/components/Logo/LogoWithTextCircle.mjs.map +1 -1
  621. package/dist/components/Logo/LogoWithTextNoFrame.cjs +17 -17
  622. package/dist/components/Logo/LogoWithTextNoFrame.cjs.map +1 -1
  623. package/dist/components/Logo/LogoWithTextNoFrame.mjs +17 -17
  624. package/dist/components/Logo/LogoWithTextNoFrame.mjs.map +1 -1
  625. package/dist/components/Logo/LogoWithTextSquircle.cjs +8 -8
  626. package/dist/components/Logo/LogoWithTextSquircle.cjs.map +1 -1
  627. package/dist/components/Logo/LogoWithTextSquircle.mjs +8 -8
  628. package/dist/components/Logo/LogoWithTextSquircle.mjs.map +1 -1
  629. package/dist/components/Logo/index.cjs +12 -12
  630. package/dist/components/Logo/index.cjs.map +1 -1
  631. package/dist/components/Logo/index.mjs +12 -12
  632. package/dist/components/Logo/index.mjs.map +1 -1
  633. package/dist/components/MarkDownRender/index.cjs +21 -21
  634. package/dist/components/MarkDownRender/index.cjs.map +1 -1
  635. package/dist/components/MarkDownRender/index.d.ts.map +1 -1
  636. package/dist/components/MarkDownRender/index.mjs +22 -22
  637. package/dist/components/MarkDownRender/index.mjs.map +1 -1
  638. package/dist/components/MaxHeightSmoother/index.cjs +3 -3
  639. package/dist/components/MaxHeightSmoother/index.cjs.map +1 -1
  640. package/dist/components/MaxHeightSmoother/index.mjs +3 -3
  641. package/dist/components/MaxHeightSmoother/index.mjs.map +1 -1
  642. package/dist/components/MaxWidthSmoother/index.cjs +3 -3
  643. package/dist/components/MaxWidthSmoother/index.cjs.map +1 -1
  644. package/dist/components/MaxWidthSmoother/index.mjs +3 -3
  645. package/dist/components/MaxWidthSmoother/index.mjs.map +1 -1
  646. package/dist/components/Modal/Modal.cjs +9 -9
  647. package/dist/components/Modal/Modal.cjs.map +1 -1
  648. package/dist/components/Modal/Modal.mjs +9 -9
  649. package/dist/components/Modal/Modal.mjs.map +1 -1
  650. package/dist/components/Navbar/Burger.cjs +9 -9
  651. package/dist/components/Navbar/Burger.cjs.map +1 -1
  652. package/dist/components/Navbar/Burger.mjs +9 -9
  653. package/dist/components/Navbar/Burger.mjs.map +1 -1
  654. package/dist/components/Navbar/DesktopNavbar.cjs +4 -4
  655. package/dist/components/Navbar/DesktopNavbar.cjs.map +1 -1
  656. package/dist/components/Navbar/DesktopNavbar.d.ts.map +1 -1
  657. package/dist/components/Navbar/DesktopNavbar.mjs +4 -4
  658. package/dist/components/Navbar/DesktopNavbar.mjs.map +1 -1
  659. package/dist/components/Navbar/MobileNavbar.cjs +15 -15
  660. package/dist/components/Navbar/MobileNavbar.cjs.map +1 -1
  661. package/dist/components/Navbar/MobileNavbar.d.ts.map +1 -1
  662. package/dist/components/Navbar/MobileNavbar.mjs +11 -11
  663. package/dist/components/Navbar/MobileNavbar.mjs.map +1 -1
  664. package/dist/components/Navbar/index.cjs +4 -4
  665. package/dist/components/Navbar/index.cjs.map +1 -1
  666. package/dist/components/Navbar/index.d.ts.map +1 -1
  667. package/dist/components/Navbar/index.mjs +4 -4
  668. package/dist/components/Navbar/index.mjs.map +1 -1
  669. package/dist/components/Navbar/useNavigation.cjs +3 -3
  670. package/dist/components/Navbar/useNavigation.cjs.map +1 -1
  671. package/dist/components/Pattern/DotPattern.cjs +7 -7
  672. package/dist/components/Pattern/DotPattern.cjs.map +1 -1
  673. package/dist/components/Pattern/DotPattern.mjs +5 -5
  674. package/dist/components/Pattern/DotPattern.mjs.map +1 -1
  675. package/dist/components/Pattern/GridPattern.cjs +8 -8
  676. package/dist/components/Pattern/GridPattern.cjs.map +1 -1
  677. package/dist/components/Pattern/GridPattern.mjs +6 -6
  678. package/dist/components/Pattern/GridPattern.mjs.map +1 -1
  679. package/dist/components/Pattern/SpotLight.cjs +7 -7
  680. package/dist/components/Pattern/SpotLight.cjs.map +1 -1
  681. package/dist/components/Pattern/SpotLight.mjs +7 -7
  682. package/dist/components/Pattern/SpotLight.mjs.map +1 -1
  683. package/dist/components/Popover/index.cjs +3 -3
  684. package/dist/components/Popover/index.cjs.map +1 -1
  685. package/dist/components/Popover/index.mjs +3 -3
  686. package/dist/components/Popover/index.mjs.map +1 -1
  687. package/dist/components/PressableSpan/PressableSpan.cjs +8 -8
  688. package/dist/components/PressableSpan/PressableSpan.cjs.map +1 -1
  689. package/dist/components/PressableSpan/PressableSpan.mjs +2 -2
  690. package/dist/components/PressableSpan/PressableSpan.mjs.map +1 -1
  691. package/dist/components/ProfileDropDown/index.cjs +5 -5
  692. package/dist/components/ProfileDropDown/index.cjs.map +1 -1
  693. package/dist/components/ProfileDropDown/index.mjs +5 -5
  694. package/dist/components/ProfileDropDown/index.mjs.map +1 -1
  695. package/dist/components/RightDrawer/RightDrawer.cjs +14 -14
  696. package/dist/components/RightDrawer/RightDrawer.cjs.map +1 -1
  697. package/dist/components/RightDrawer/RightDrawer.d.ts.map +1 -1
  698. package/dist/components/RightDrawer/RightDrawer.mjs +9 -9
  699. package/dist/components/RightDrawer/RightDrawer.mjs.map +1 -1
  700. package/dist/components/Select/Multiselect.cjs +94 -100
  701. package/dist/components/Select/Multiselect.cjs.map +1 -1
  702. package/dist/components/Select/Multiselect.d.ts +9 -29
  703. package/dist/components/Select/Multiselect.d.ts.map +1 -1
  704. package/dist/components/Select/Multiselect.mjs +81 -87
  705. package/dist/components/Select/Multiselect.mjs.map +1 -1
  706. package/dist/components/Select/Select.cjs +30 -37
  707. package/dist/components/Select/Select.cjs.map +1 -1
  708. package/dist/components/Select/Select.d.ts +10 -9
  709. package/dist/components/Select/Select.d.ts.map +1 -1
  710. package/dist/components/Select/Select.mjs +30 -37
  711. package/dist/components/Select/Select.mjs.map +1 -1
  712. package/dist/components/SwitchSelector/index.cjs +11 -11
  713. package/dist/components/SwitchSelector/index.cjs.map +1 -1
  714. package/dist/components/SwitchSelector/index.d.ts +1 -1
  715. package/dist/components/SwitchSelector/index.d.ts.map +1 -1
  716. package/dist/components/SwitchSelector/index.mjs +5 -5
  717. package/dist/components/SwitchSelector/index.mjs.map +1 -1
  718. package/dist/components/TabSelector/TabSelector.cjs +7 -7
  719. package/dist/components/TabSelector/TabSelector.cjs.map +1 -1
  720. package/dist/components/TabSelector/TabSelector.mjs +3 -3
  721. package/dist/components/TabSelector/TabSelector.mjs.map +1 -1
  722. package/dist/components/Tag/index.cjs +27 -32
  723. package/dist/components/Tag/index.cjs.map +1 -1
  724. package/dist/components/Tag/index.d.ts +6 -5
  725. package/dist/components/Tag/index.d.ts.map +1 -1
  726. package/dist/components/Tag/index.mjs +27 -32
  727. package/dist/components/Tag/index.mjs.map +1 -1
  728. package/dist/components/TextArea/AutoSizeTextArea.cjs +17 -11
  729. package/dist/components/TextArea/AutoSizeTextArea.cjs.map +1 -1
  730. package/dist/components/TextArea/AutoSizeTextArea.d.ts +2 -1
  731. package/dist/components/TextArea/AutoSizeTextArea.d.ts.map +1 -1
  732. package/dist/components/TextArea/AutoSizeTextArea.mjs +12 -6
  733. package/dist/components/TextArea/AutoSizeTextArea.mjs.map +1 -1
  734. package/dist/components/TextArea/TextArea.cjs +21 -20
  735. package/dist/components/TextArea/TextArea.cjs.map +1 -1
  736. package/dist/components/TextArea/TextArea.d.ts +2 -2
  737. package/dist/components/TextArea/TextArea.d.ts.map +1 -1
  738. package/dist/components/TextArea/TextArea.mjs +21 -20
  739. package/dist/components/TextArea/TextArea.mjs.map +1 -1
  740. package/dist/components/ThemeSwitcherDropDown/DesktopThemeSwitcher.cjs +13 -13
  741. package/dist/components/ThemeSwitcherDropDown/DesktopThemeSwitcher.cjs.map +1 -1
  742. package/dist/components/ThemeSwitcherDropDown/DesktopThemeSwitcher.mjs +11 -11
  743. package/dist/components/ThemeSwitcherDropDown/DesktopThemeSwitcher.mjs.map +1 -1
  744. package/dist/components/ThemeSwitcherDropDown/MobileThemeSwitcher.cjs +7 -7
  745. package/dist/components/ThemeSwitcherDropDown/MobileThemeSwitcher.cjs.map +1 -1
  746. package/dist/components/ThemeSwitcherDropDown/MobileThemeSwitcher.d.ts.map +1 -1
  747. package/dist/components/ThemeSwitcherDropDown/MobileThemeSwitcher.mjs +5 -5
  748. package/dist/components/ThemeSwitcherDropDown/MobileThemeSwitcher.mjs.map +1 -1
  749. package/dist/components/Toaster/Toast.cjs +28 -29
  750. package/dist/components/Toaster/Toast.cjs.map +1 -1
  751. package/dist/components/Toaster/Toast.d.ts +11 -10
  752. package/dist/components/Toaster/Toast.d.ts.map +1 -1
  753. package/dist/components/Toaster/Toast.mjs +28 -29
  754. package/dist/components/Toaster/Toast.mjs.map +1 -1
  755. package/dist/components/Toaster/Toaster.cjs +8 -8
  756. package/dist/components/Toaster/Toaster.cjs.map +1 -1
  757. package/dist/components/Toaster/Toaster.mjs +8 -8
  758. package/dist/components/Toaster/Toaster.mjs.map +1 -1
  759. package/dist/components/Toaster/useToast.cjs +3 -3
  760. package/dist/components/Toaster/useToast.cjs.map +1 -1
  761. package/dist/components/WithResizer/index.cjs +11 -11
  762. package/dist/components/WithResizer/index.cjs.map +1 -1
  763. package/dist/components/WithResizer/index.mjs +3 -3
  764. package/dist/components/WithResizer/index.mjs.map +1 -1
  765. package/dist/components/index.cjs +1 -1
  766. package/dist/components/index.mjs +1 -1
  767. package/dist/hooks/index.cjs +1 -1
  768. package/dist/hooks/index.mjs +1 -1
  769. package/dist/hooks/intlayerAPIHooks.cjs +1 -1
  770. package/dist/hooks/intlayerAPIHooks.cjs.map +1 -1
  771. package/dist/hooks/intlayerAPIHooks.d.ts +48 -48
  772. package/dist/hooks/intlayerAPIHooks.d.ts.map +1 -1
  773. package/dist/hooks/intlayerAPIHooks.mjs +1 -1
  774. package/dist/hooks/intlayerAPIHooks.mjs.map +1 -1
  775. package/dist/hooks/useAsync/useAsync.cjs +14 -14
  776. package/dist/hooks/useAsync/useAsync.cjs.map +1 -1
  777. package/dist/hooks/useAsync/useAsync.d.ts.map +1 -1
  778. package/dist/hooks/useAsync/useAsync.mjs.map +1 -1
  779. package/dist/hooks/useAsync/useAsyncStateStore.cjs +6 -6
  780. package/dist/hooks/useAsync/useAsyncStateStore.cjs.map +1 -1
  781. package/dist/hooks/useAsync/useAsyncStateStore.d.ts.map +1 -1
  782. package/dist/hooks/useAsync/useAsyncStateStore.mjs +2 -2
  783. package/dist/hooks/useAsync/useAsyncStateStore.mjs.map +1 -1
  784. package/dist/hooks/useAsync/useAsyncWrapper.cjs.map +1 -1
  785. package/dist/hooks/useAsync/useAsyncWrapper.d.ts.map +1 -1
  786. package/dist/hooks/useAsync/useAsyncWrapper.mjs.map +1 -1
  787. package/dist/hooks/useDevice.cjs +3 -3
  788. package/dist/hooks/useDevice.cjs.map +1 -1
  789. package/dist/hooks/useDevice.d.ts.map +1 -1
  790. package/dist/hooks/useDevice.mjs.map +1 -1
  791. package/dist/hooks/useGetAllDictionaries.cjs +3 -3
  792. package/dist/hooks/useGetAllDictionaries.cjs.map +1 -1
  793. package/dist/hooks/useGetAllDictionaries.d.ts +1 -1
  794. package/dist/hooks/useGetAllDictionaries.d.ts.map +1 -1
  795. package/dist/hooks/useGetAllDictionaries.mjs.map +1 -1
  796. package/dist/hooks/useGetElementOrWindow.cjs +3 -3
  797. package/dist/hooks/useGetElementOrWindow.cjs.map +1 -1
  798. package/dist/hooks/useIntlayerAPI.cjs +7 -5
  799. package/dist/hooks/useIntlayerAPI.cjs.map +1 -1
  800. package/dist/hooks/useIntlayerAPI.d.ts +59 -59
  801. package/dist/hooks/useIntlayerAPI.d.ts.map +1 -1
  802. package/dist/hooks/useIntlayerAPI.mjs +3 -1
  803. package/dist/hooks/useIntlayerAPI.mjs.map +1 -1
  804. package/dist/hooks/useIsDarkMode.cjs +3 -3
  805. package/dist/hooks/useIsDarkMode.cjs.map +1 -1
  806. package/dist/hooks/useIsMounted.cjs +3 -3
  807. package/dist/hooks/useIsMounted.cjs.map +1 -1
  808. package/dist/hooks/useItemSelector.cjs +4 -4
  809. package/dist/hooks/useItemSelector.cjs.map +1 -1
  810. package/dist/hooks/usePersistedStore.cjs +5 -5
  811. package/dist/hooks/usePersistedStore.cjs.map +1 -1
  812. package/dist/hooks/useScrollBlockage/index.cjs +1 -1
  813. package/dist/hooks/useScrollBlockage/index.mjs +1 -1
  814. package/dist/hooks/useScrollDetection.cjs +8 -8
  815. package/dist/hooks/useScrollDetection.cjs.map +1 -1
  816. package/dist/hooks/useScrollDetection.mjs +1 -1
  817. package/dist/index-2Yc9SLPe.cjs +184 -0
  818. package/dist/index-2Yc9SLPe.cjs.map +1 -0
  819. package/dist/index-B4mYwsto.js +185 -0
  820. package/dist/index-B4mYwsto.js.map +1 -0
  821. package/dist/{index-O_7rYrbW.js → index-BCuMWKyy.js} +3 -3
  822. package/dist/index-BCuMWKyy.js.map +1 -0
  823. package/dist/{index-Cg-S9ry9.cjs → index-BYzBot7l.cjs} +4 -4
  824. package/dist/{index-O_7rYrbW.js.map → index-BYzBot7l.cjs.map} +1 -1
  825. package/dist/tailwind.config.cjs.map +1 -1
  826. package/dist/tailwind.config.mjs.map +1 -1
  827. package/dist/tailwind.css +1 -1
  828. package/dist/zod-BV4nCGJE.js.map +1 -1
  829. package/dist/zod-DSrtTSD_.cjs.map +1 -1
  830. package/package.json +26 -26
  831. package/dist/Form-CSMiPnjC.cjs.map +0 -1
  832. package/dist/Form-DlqjTz3u.js.map +0 -1
  833. package/dist/components/DictionaryFieldEditor/EditorView/EditorView.cjs +0 -143
  834. package/dist/components/DictionaryFieldEditor/EditorView/EditorView.cjs.map +0 -1
  835. package/dist/components/DictionaryFieldEditor/EditorView/EditorView.d.ts.map +0 -1
  836. package/dist/components/DictionaryFieldEditor/EditorView/EditorView.mjs +0 -143
  837. package/dist/components/DictionaryFieldEditor/EditorView/EditorView.mjs.map +0 -1
  838. package/dist/components/DictionaryFieldEditor/EditorView/TextEditor.cjs +0 -361
  839. package/dist/components/DictionaryFieldEditor/EditorView/TextEditor.cjs.map +0 -1
  840. package/dist/components/DictionaryFieldEditor/EditorView/TextEditor.d.ts.map +0 -1
  841. package/dist/components/DictionaryFieldEditor/EditorView/TextEditor.mjs +0 -361
  842. package/dist/components/DictionaryFieldEditor/EditorView/TextEditor.mjs.map +0 -1
  843. package/dist/components/DictionaryFieldEditor/NodeEditor.cjs +0 -70
  844. package/dist/components/DictionaryFieldEditor/NodeEditor.cjs.map +0 -1
  845. package/dist/components/DictionaryFieldEditor/NodeEditor.d.ts +0 -10
  846. package/dist/components/DictionaryFieldEditor/NodeEditor.d.ts.map +0 -1
  847. package/dist/components/DictionaryFieldEditor/NodeEditor.mjs +0 -70
  848. package/dist/components/DictionaryFieldEditor/NodeEditor.mjs.map +0 -1
  849. package/dist/components/DictionaryFieldEditor/editorView.content.cjs +0 -123
  850. package/dist/components/DictionaryFieldEditor/editorView.content.cjs.map +0 -1
  851. package/dist/components/DictionaryFieldEditor/editorView.content.d.ts.map +0 -1
  852. package/dist/components/DictionaryFieldEditor/editorView.content.mjs +0 -123
  853. package/dist/components/DictionaryFieldEditor/editorView.content.mjs.map +0 -1
  854. package/dist/index-B-adg6xa.js +0 -206
  855. package/dist/index-B-adg6xa.js.map +0 -1
  856. package/dist/index-Cg-S9ry9.cjs.map +0 -1
  857. package/dist/index-DAsui9u9.cjs +0 -205
  858. package/dist/index-DAsui9u9.cjs.map +0 -1
  859. package/dist/jsx-runtime-CgFM7lM3.cjs +0 -934
  860. package/dist/jsx-runtime-CgFM7lM3.cjs.map +0 -1
  861. package/dist/jsx-runtime-DQkoUcjV.js +0 -935
  862. package/dist/jsx-runtime-DQkoUcjV.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"intlayerAPIHooks.d.ts","sourceRoot":"","sources":["../../src/hooks/intlayerAPIHooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"intlayerAPIHooks.d.ts","sourceRoot":"","sources":["../../src/hooks/intlayerAPIHooks.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAIjD,OAAO,EAAE,KAAK,eAAe,EAAY,MAAM,qBAAqB,CAAC;AAyIrE;;GAEG;AAEH,eAAO,MAAM,QAAQ,UACZ,eAAe,CAAC,OAAO,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,yDAbrD,SAAU,oEAEM,WAAW,EAgBzB,CAAC;AACL,eAAO,MAAM,WAAW,UACf,eAAe,CAAC,OAAO,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,4DAVzD,YAEQ,UAAS,aACZ,oEAA4C,cAE/C,EAUC,CAAC;AACL,eAAO,MAAM,SAAS,UACb,eAAe,CAAC,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,4HAKpD,CAAC;AACL,eAAO,MAAM,iBAAiB,UACrB,eAAe,CAAC,OAAO,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,kEA0RzC,kBAAmB,oEAEjC,oBACK,EA5RiE,CAAC;AAChF,eAAO,MAAM,mBAAmB,UACvB,eAAe,CAAC,OAAO,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC,qEAsQf,oBAAqB,oEAEpE,sBAEF,EApQC,CAAC;AACJ,eAAO,MAAM,gBAAgB,UACpB,eAAe,CAAC,OAAO,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,mEA4PzD,mBAAoB,oEACxB,mBACa,EA7P8D,CAAC;AAC9E,eAAO,MAAM,yBAAyB,UAC7B,eAAe,CAAC,OAAO,WAAW,CAAC,IAAI,CAAC,sBAAsB,CAAC,sIAgQ7B,4BAC1C,EAxPE,CAAC;AACJ,eAAO,MAAM,cAAc,UAClB,eAAe,CAAC,OAAO,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,6EAuPrB,gBAAiB,oEACpC,gBAAgB,EAvPoC,CAAC;AAE1E,eAAO,MAAM,mBAAmB,UACvB,eAAe,CAAC,OAAO,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC,iFA8MZ,sBAEjD,YAAW,sBAAuB,oEAC9B,sBAAsB,EA3M5B,CAAC;AAEJ;;GAEG;AAEH,eAAO,MAAM,WAAW,UACf,eAAe,CAAC,OAAO,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,gEA7G5C,cACd,oEAGa,cACF,EAwHR,CAAC;AACJ,eAAO,MAAM,aAAa,UACjB,eAAe,CAAC,OAAO,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,8DArIjB,cAEhC,oEAEC,gBACL,EAqIH,CAAC;AACL,eAAO,MAAM,aAAa,UACjB,eAAe,CAAC,OAAO,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,8DA/G1B,cAAe,oEACX,gBAAgB,EAmHlD,CAAC;AACL,eAAO,MAAM,aAAa,UACjB,eAAe,CAAC,OAAO,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,0IAhHtC,gBAAgB,EAqHlC,CAAC;AAEL;;GAEG;AAEH,eAAO,MAAM,mBAAmB,UACvB,eAAe,CAAC,OAAO,WAAW,CAAC,YAAY,CAAC,gBAAgB,CAAC,wEAzP9B,sBAAuB,oEAC1B,sBAGnC,EAsQH,CAAC;AAEJ,eAAO,MAAM,kBAAkB,UACtB,eAAe,CAAC,OAAO,WAAW,CAAC,YAAY,CAAC,eAAe,CAAC,2EApQnE,mBACS,oEAEL,qBAEG,EAwQV,CAAC;AACJ,eAAO,MAAM,qBAAqB,UACzB,eAAe,CAAC,OAAO,WAAW,CAAC,YAAY,CAAC,kBAAkB,CAAC,8EArQjB,sBAElD,oEAGK,wBAAwB,EAyQnC,CAAC;AACJ,eAAO,MAAM,4BAA4B,UAChC,eAAe,CACpB,OAAO,WAAW,CAAC,YAAY,CAAC,yBAAyB,CAC1D,6EA5QgB,6BAA8B,oEAE7B,+BACJ,EAkRb,CAAC;AACJ,eAAO,MAAM,wBAAwB,UAC5B,eAAe,CAAC,OAAO,WAAW,CAAC,YAAY,CAAC,qBAAqB,CAAC,yEAhSvE,yBAAuB,oEAElB,2BACC,EAsSX,CAAC;AACJ,eAAO,MAAM,qBAAqB,UACzB,eAAe,CAAC,OAAO,WAAW,CAAC,YAAY,CAAC,kBAAkB,CAAC,kIA5RnD,wBAAwB,EAqS9C,CAAC;AACJ,eAAO,MAAM,qBAAqB,UACzB,eAAe,CAAC,OAAO,WAAW,CAAC,YAAY,CAAC,kBAAkB,CAAC,gFArS5D,uBAAqB,oEACE,wBAAwB,EA6S5D,CAAC;AACJ,eAAO,MAAM,uBAAuB,UAC3B,eAAe,CAAC,OAAO,WAAW,CAAC,YAAY,CAAC,oBAAoB,CAAC,oIA3SxE,0BAA0B,EAoT7B,CAAC;AAEJ;;GAEG;AAEH,eAAO,MAAM,cAAc,UAClB,eAAe,CAAC,OAAO,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,mEAxTjD,iBACN,oEAEC,iBAAa,EAuUpB,CAAC;AACJ,eAAO,MAAM,aAAa,UACjB,eAAe,CAAC,OAAO,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,iEAxUjD,cAAe,oEAEE,gBAG7B,EAwUE,CAAC;AACL,eAAO,MAAM,gBAAgB,UACpB,eAAe,CAAC,OAAO,WAAW,CAAC,OAAO,CAAC,aAAa,CAAC,oEAvU5D,iBAAkB,oEAET,mBACd,EAyUG,CAAC;AACL,eAAO,MAAM,uBAAuB,UAC3B,eAAe,CAAC,OAAO,WAAW,CAAC,OAAO,CAAC,oBAAoB,CAAC,wEAvUxE,wBACmB,oEACZ,0BACY,EA6UjB,CAAC;AACJ,eAAO,MAAM,gBAAgB,UACpB,eAAe,CAAC,OAAO,WAAW,CAAC,OAAO,CAAC,aAAa,CAAC,6HAxU1D,mBAAkB,EA6UtB,CAAC;AACL,eAAO,MAAM,gBAAgB,UACpB,eAAe,CAAC,OAAO,WAAW,CAAC,OAAO,CAAC,aAAa,CAAC,sEA9UrD,kBAAkB,oEAEtB,mBAAmB,EAiVxB,CAAC;AACL,eAAO,MAAM,kBAAkB,UACtB,eAAe,CAAC,OAAO,WAAW,CAAC,OAAO,CAAC,eAAe,CAAC,+HA/UlE,qBAAoB,EAoVlB,CAAC;AACL,eAAO,MAAM,kBAAkB,UACtB,eAAe,CAAC,OAAO,WAAW,CAAC,OAAO,CAAC,eAAe,CAAC,wEAtVP,mBAEvD,oEAA4C,uBAEtC,EAuVR,CAAC;AACL,eAAO,MAAM,kBAAkB,UACtB,eAAe,CAAC,OAAO,WAAW,CAAC,OAAO,CAAC,eAAe,CAAC,uEAzVlB,mBAElD,oEAA4C,uBAC7B,EA2VX,CAAC;AACL,eAAO,MAAM,mBAAmB,UACvB,eAAe,CAAC,OAAO,WAAW,CAAC,OAAO,CAAC,gBAAgB,CAAC,wEA1VxD,oBACH,oEACkB,wBAAwB,EA6VhD,CAAC;AAEL;;GAEG;AAEH,eAAO,MAAM,kBAAkB,UACtB,eAAe,CAAC,OAAO,WAAW,CAAC,UAAU,CAAC,eAAe,CAAC,uEA1QrE,qBACO,oEACc,qBAAqB,EA2RzC,CAAC;AAEJ,eAAO,MAAM,sBAAsB,UAC1B,eAAe,CAAC,OAAO,WAAW,CAAC,UAAU,CAAC,mBAAmB,CAAC,mIAxR3D,yBACP,EA0SN,CAAC;AAEJ,eAAO,MAAM,gBAAgB,UACpB,eAAe,CAAC,OAAO,WAAW,CAAC,UAAU,CAAC,aAAa,CAAC,0EA7SnB,mBAC1C,YAAW,kBAAmB,oEAE/B,mBAAkB,EA4TtB,CAAC;AACJ,eAAO,MAAM,gBAAgB,UACpB,eAAe,CAAC,OAAO,WAAW,CAAC,UAAU,CAAC,aAAa,CAAC,uEAxTjE,iBAGD,oEAKD,mBAAkB,EAqThB,CAAC;AAEL,eAAO,MAAM,mBAAmB,UACvB,eAAe,CAAC,OAAO,WAAW,CAAC,UAAU,CAAC,gBAAgB,CAAC,4EArUxC,oBAAoB,oEAG3C,sBACF,EA8UJ,CAAC;AACJ,eAAO,MAAM,mBAAmB,UACvB,eAAe,CAAC,OAAO,WAAW,CAAC,UAAU,CAAC,gBAAgB,CAAC,4EArUtE,qBACI,cACF,oBAAoB,oEAGlB,sBACG,EAwUN,CAAC;AACJ,eAAO,MAAM,mBAAmB,UACvB,eAAe,CAAC,OAAO,WAAW,CAAC,UAAU,CAAC,gBAAgB,CAAC,kEAzUnD,qBACD,oEAEhB,sBAEI,EAiVL,CAAC;AAEJ;;GAEG;AAEH,eAAO,MAAM,UAAU,UACd,eAAe,CAAC,OAAO,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,+DAjT3C,aACT,oEACkB,aAAa,EAiUhC,CAAC;AACJ,eAAO,MAAM,SAAS,UACb,eAAe,CAAC,OAAO,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,yDAlU9C,UACJ,oEAML,YAAW,EAgUP,CAAC;AACL,eAAO,MAAM,YAAY,UAChB,eAAe,CAAC,OAAO,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,8DAjUtD,eAAgB,OAAM,aAAc,oEAEnC,eACA,EAmUD,CAAC;AACL,eAAO,MAAM,YAAY,UAChB,eAAe,CAAC,OAAO,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,8DApU/C,eAAgB,oEAEd,eAAe,EAuUxB,CAAC;AAEL;;GAEG;AAEH,eAAO,MAAM,kBAAkB,UACtB,eAAe,CAAC,OAAO,WAAW,CAAC,MAAM,CAAC,eAAe,CAAC,oEAlGjE,sBAAuB,oEAA4C,wBACrD,EA2Gb,CAAC;AAEJ,eAAO,MAAM,qBAAqB,UACzB,eAAe,CAAC,OAAO,WAAW,CAAC,MAAM,CAAC,kBAAkB,CAAC,kIA5YvC,wBAE1B,EAoZF,CAAC;AAEJ;;GAEG;AAEH,eAAO,MAAM,0BAA0B,UAC9B,eAAe,CAAC,OAAO,WAAW,CAAC,EAAE,CAAC,uBAAuB,CAAC,4EA1HrB,2BAElD,oEAEK,6BAA6B,EAiI/B,CAAC;AAEJ,eAAO,MAAM,kCAAkC,UACtC,eAAe,CAAC,OAAO,WAAW,CAAC,EAAE,CAAC,+BAA+B,CAAC,4EAzH1E,mCAAoC,oEAElC,qCAEF,EAgIF,CAAC;AAEJ,eAAO,MAAM,+BAA+B,UACnC,eAAe,CAAC,OAAO,WAAW,CAAC,EAAE,CAAC,4BAA4B,CAAC,iFAhJnD,gCAErB,oEACmB,kCAGrB,EAqJC,CAAC;AAEJ,eAAO,MAAM,WAAW,UACf,eAAe,CAAC,OAAO,WAAW,CAAC,EAAE,CAAC,QAAQ,CAAC,6DAjJvB,YAAa,oEAEb,cAAc,EAqJ3C,CAAC;AAEL,eAAO,MAAM,iBAAiB,UACrB,eAAe,CAAC,OAAO,WAAW,CAAC,EAAE,CAAC,cAAc,CAAC,mEAtJ1D,kBAEO,oEACO,oBAAoB,EAoJuC,CAAC;AAE9E;;GAEG;AAEH,eAAO,MAAM,kBAAkB,UACtB,eAAe,CAAC,OAAO,WAAW,CAAC,MAAM,CAAC,eAAe,CAAC,yEA5HzC,2BACtB,0EAiID,CAAC"}
@@ -3,7 +3,7 @@ import { useConfiguration } from "@intlayer/editor-react";
3
3
  import { useAuth } from "../components/Auth/useAuth/index.mjs";
4
4
  import "../components/Toaster/Toast.mjs";
5
5
  import { useToast } from "../components/Toaster/useToast.mjs";
6
- import "../jsx-runtime-DQkoUcjV.js";
6
+ import "react/jsx-runtime";
7
7
  import { useAsync } from "./useAsync/useAsync.mjs";
8
8
  import { useIntlayerAuth } from "./useIntlayerAPI.mjs";
9
9
  var define_process_env_default = {};
@@ -1 +1 @@
1
- {"version":3,"file":"intlayerAPIHooks.mjs","sources":["../../src/hooks/intlayerAPIHooks.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n'use client';\n\nimport { intlayerAPI } from '@intlayer/api';\nimport { useConfiguration } from '@intlayer/editor-react';\nimport { useAuth } from '../components/Auth/useAuth/index';\nimport { useToast } from '../components/Toaster';\nimport { useAsync, UseAsyncOptions } from './useAsync/useAsync';\nimport { useIntlayerAuth } from './useIntlayerAPI';\n\n/**\n * Hook to handle error logging and toast notifications\n */\nconst useErrorHandling = <T extends UseAsyncOptions<any>>(options: T): T => {\n const { toast } = useToast();\n\n return {\n ...options,\n onError: (errorMessage) => {\n let error;\n\n // If json is valid, parse it\n try {\n error = JSON.parse(errorMessage);\n } catch (e) {\n console.error(e);\n // If json is not valid, set error to the original errorMessage\n\n error = errorMessage;\n }\n\n // render toast for each error if there is more than one\n // otherwise render the toast with the error message\n [error]\n .flatMap((error) => error)\n .forEach((error) =>\n toast({\n title:\n (process.env.NODE_ENV === 'production'\n ? error.title\n : error.code) ?? 'Error',\n description: error.message ?? errorMessage ?? 'An error occurred',\n variant: 'error',\n })\n );\n options.onError?.(errorMessage);\n },\n onSuccess: (data) => {\n if (data.message)\n toast({\n title: data.message,\n description: data.description,\n variant: 'success',\n });\n options.onSuccess?.(data);\n },\n };\n};\n\ntype AuthEnableOptions = {\n requireUser?: boolean;\n requireProject?: boolean;\n requireOrganization?: boolean;\n};\n\n/**\n * Hook to enable authentication\n */\nconst useAuthEnable = <T extends UseAsyncOptions<any>>(\n options: T,\n { requireUser, requireProject, requireOrganization }: AuthEnableOptions = {}\n): T => {\n const configuration = useConfiguration();\n const { csrfToken, oAuth2AccessToken, session } = useAuth({\n intlayerConfiguration: configuration,\n });\n\n const isEnabledOption = options?.enable ?? true;\n const user = session ? session.user : oAuth2AccessToken?.user;\n\n const organization = session\n ? session.organization\n : oAuth2AccessToken?.organization;\n\n const project = session ? session.project : oAuth2AccessToken?.project;\n\n const isUserEnabled = requireUser ? Boolean(user) : true;\n\n const isProjectEnabled = requireProject ? Boolean(project) : true;\n\n const isOrganizationEnabled = requireOrganization\n ? Boolean(organization)\n : true;\n\n const isCSRFEnabled =\n Boolean(csrfToken) ||\n // If auth using session, csrf token is not required\n (!session && Boolean(oAuth2AccessToken));\n\n const isEnabled =\n isEnabledOption &&\n isUserEnabled &&\n isProjectEnabled &&\n isOrganizationEnabled &&\n isCSRFEnabled;\n\n return {\n ...options,\n enable: isEnabled,\n };\n};\n\nconst useAppAsync = <\n U extends string,\n T extends (...args: any[]) => Promise<any>,\n>(\n key: U,\n asyncFunction: T,\n options?: UseAsyncOptions<T>,\n authOptions?: AuthEnableOptions\n) => {\n // Enhance options using custom hooks\n const optionsWithAuth = useAuthEnable(options ?? {}, authOptions);\n\n const optionsWithErrorHandling = useErrorHandling(optionsWithAuth);\n\n // Call the main useAsync hook with enhanced options\n return useAsync(key, asyncFunction, optionsWithErrorHandling);\n};\n\nconst useEditorAsync = <\n U extends string,\n T extends (...args: any[]) => Promise<any>,\n>(\n key: U,\n asyncFunction: T,\n options?: UseAsyncOptions<T>\n) => {\n const optionsWithErrorHandling = useErrorHandling(options ?? {});\n\n // Call the main useAsync hook with enhanced options\n return useAsync(key, asyncFunction, optionsWithErrorHandling);\n};\n\n/**\n * Auth\n */\n\nexport const useLogin = (\n args?: UseAsyncOptions<typeof intlayerAPI.auth.login>\n) =>\n useAppAsync('login', useIntlayerAuth().auth.login, {\n invalidateQueries: ['getSession'],\n ...args,\n });\nexport const useRegister = (\n args?: UseAsyncOptions<typeof intlayerAPI.auth.register>\n) =>\n useAppAsync('register', useIntlayerAuth().auth.register, {\n invalidateQueries: ['getSession'],\n ...args,\n });\nexport const useLogout = (\n args?: UseAsyncOptions<typeof intlayerAPI.auth.logout>\n) =>\n useAppAsync('logout', useIntlayerAuth().auth.logout, {\n invalidateQueries: ['getSession'],\n ...args,\n });\nexport const useChangePassword = (\n args?: UseAsyncOptions<typeof intlayerAPI.auth.changePassword>\n) => useAppAsync('changePassword', useIntlayerAuth().auth.changePassword, args);\nexport const useAskResetPassword = (\n args?: UseAsyncOptions<typeof intlayerAPI.auth.askResetPassword>\n) =>\n useAppAsync(\n 'askResetPassword',\n useIntlayerAuth().auth.askResetPassword,\n args\n );\nexport const useResetPassword = (\n args?: UseAsyncOptions<typeof intlayerAPI.auth.resetPassword>\n) => useAppAsync('resetPassword', useIntlayerAuth().auth.resetPassword, args);\nexport const useCheckIfUserHasPassword = (\n args?: UseAsyncOptions<typeof intlayerAPI.auth.checkIfUserHasPassword>\n) =>\n useAppAsync(\n 'checkIfUserHasPassword',\n useIntlayerAuth().auth.checkIfUserHasPassword,\n args,\n {\n requireUser: true,\n }\n );\nexport const useVerifyEmail = (\n args?: UseAsyncOptions<typeof intlayerAPI.auth.verifyEmail>\n) => useAppAsync('verifyEmail', useIntlayerAuth().auth.verifyEmail, args);\n\nexport const useGetUserByAccount = (\n args?: UseAsyncOptions<typeof intlayerAPI.user.getUserByAccount>\n) =>\n useAppAsync(\n 'getUserByAccount',\n useIntlayerAuth().user.getUserByAccount,\n args\n );\n\n/**\n * User\n */\n\nexport const useGetUsers = (\n args?: UseAsyncOptions<typeof intlayerAPI.user.getUsers>\n) =>\n useAppAsync(\n 'getUsers',\n useIntlayerAuth().user.getUsers,\n {\n cache: true,\n store: true,\n retryLimit: 3,\n autoFetch: true,\n revalidateTime: 5 * 60 * 1000, // 5 minutes\n ...args,\n },\n {\n requireUser: true,\n }\n );\nexport const useCreateUser = (\n args?: UseAsyncOptions<typeof intlayerAPI.user.createUser>\n) =>\n useAppAsync('createUser', useIntlayerAuth().user.createUser, {\n invalidateQueries: ['getUsers'],\n ...args,\n });\nexport const useUpdateUser = (\n args?: UseAsyncOptions<typeof intlayerAPI.user.updateUser>\n) =>\n useAppAsync('updateUser', useIntlayerAuth().user.updateUser, {\n invalidateQueries: ['getSession'],\n ...args,\n });\nexport const useDeleteUser = (\n args?: UseAsyncOptions<typeof intlayerAPI.user.deleteUser>\n) =>\n useAppAsync('deleteUser', useIntlayerAuth().user.deleteUser, {\n invalidateQueries: ['getUsers'],\n ...args,\n });\n\n/**\n * Organization\n */\n\nexport const useGetOrganizations = (\n args?: UseAsyncOptions<typeof intlayerAPI.organization.getOrganizations>\n) =>\n useAppAsync(\n 'getOrganizations',\n useIntlayerAuth().organization.getOrganizations,\n {\n cache: true,\n store: true,\n retryLimit: 3,\n autoFetch: true,\n revalidation: true,\n revalidateTime: 5 * 60 * 1000, // 5 minutes\n ...args,\n },\n {\n requireUser: true,\n }\n );\n\nexport const useAddOrganization = (\n args?: UseAsyncOptions<typeof intlayerAPI.organization.addOrganization>\n) =>\n useAppAsync(\n 'addOrganization',\n useIntlayerAuth().organization.addOrganization,\n {\n invalidateQueries: ['getOrganizations'],\n ...args,\n }\n );\nexport const useUpdateOrganization = (\n args?: UseAsyncOptions<typeof intlayerAPI.organization.updateOrganization>\n) =>\n useAppAsync(\n 'updateOrganization',\n useIntlayerAuth().organization.updateOrganization,\n {\n invalidateQueries: ['getSession'],\n ...args,\n }\n );\nexport const useUpdateOrganizationMembers = (\n args?: UseAsyncOptions<\n typeof intlayerAPI.organization.updateOrganizationMembers\n >\n) =>\n useAppAsync(\n 'updateOrganizationMembers',\n useIntlayerAuth().organization.updateOrganizationMembers,\n {\n invalidateQueries: ['getOrganizations'],\n ...args,\n }\n );\nexport const useAddOrganizationMember = (\n args?: UseAsyncOptions<typeof intlayerAPI.organization.addOrganizationMember>\n) =>\n useAppAsync(\n 'addOrganizationMember',\n useIntlayerAuth().organization.addOrganizationMember,\n {\n invalidateQueries: ['getOrganizations'],\n ...args,\n }\n );\nexport const useDeleteOrganization = (\n args?: UseAsyncOptions<typeof intlayerAPI.organization.deleteOrganization>\n) =>\n useAppAsync(\n 'deleteOrganization',\n useIntlayerAuth().organization.deleteOrganization,\n {\n invalidateQueries: ['getOrganizations'],\n ...args,\n }\n );\nexport const useSelectOrganization = (\n args?: UseAsyncOptions<typeof intlayerAPI.organization.selectOrganization>\n) =>\n useAppAsync(\n 'selectOrganization',\n useIntlayerAuth().organization.selectOrganization,\n {\n invalidateQueries: ['getSession'],\n ...args,\n }\n );\nexport const useUnselectOrganization = (\n args?: UseAsyncOptions<typeof intlayerAPI.organization.unselectOrganization>\n) =>\n useAppAsync(\n 'unselectOrganization',\n useIntlayerAuth().organization.unselectOrganization,\n {\n invalidateQueries: ['getSession'],\n ...args,\n }\n );\n\n/**\n * Project\n */\n\nexport const useGetProjects = (\n args?: UseAsyncOptions<typeof intlayerAPI.project.getProjects>\n) =>\n useAppAsync(\n 'getProjects',\n useIntlayerAuth().project.getProjects,\n {\n cache: true,\n store: true,\n retryLimit: 3,\n autoFetch: true,\n revalidation: true,\n revalidateTime: 5 * 60 * 1000, // 5 minutes\n ...args,\n },\n {\n requireUser: true,\n requireOrganization: true,\n }\n );\nexport const useAddProject = (\n args?: UseAsyncOptions<typeof intlayerAPI.project.addProject>\n) =>\n useAppAsync('addProject', useIntlayerAuth().project.addProject, {\n invalidateQueries: ['getProjects'],\n ...args,\n });\nexport const useUpdateProject = (\n args?: UseAsyncOptions<typeof intlayerAPI.project.updateProject>\n) =>\n useAppAsync('updateProject', useIntlayerAuth().project.updateProject, {\n invalidateQueries: ['getSession'],\n ...args,\n });\nexport const useUpdateProjectMembers = (\n args?: UseAsyncOptions<typeof intlayerAPI.project.updateProjectMembers>\n) =>\n useAppAsync(\n 'updateProjectMembers',\n useIntlayerAuth().project.updateProjectMembers,\n {\n invalidateQueries: ['getSession'],\n ...args,\n }\n );\nexport const useDeleteProject = (\n args?: UseAsyncOptions<typeof intlayerAPI.project.deleteProject>\n) =>\n useAppAsync('deleteProject', useIntlayerAuth().project.deleteProject, {\n invalidateQueries: ['getProjects'],\n ...args,\n });\nexport const useSelectProject = (\n args?: UseAsyncOptions<typeof intlayerAPI.project.selectProject>\n) =>\n useAppAsync('selectProject', useIntlayerAuth().project.selectProject, {\n invalidateQueries: ['getSession'],\n ...args,\n });\nexport const useUnselectProject = (\n args?: UseAsyncOptions<typeof intlayerAPI.project.unselectProject>\n) =>\n useAppAsync('unselectProject', useIntlayerAuth().project.unselectProject, {\n invalidateQueries: ['getSession'],\n ...args,\n });\nexport const useAddNewAccessKey = (\n args?: UseAsyncOptions<typeof intlayerAPI.project.addNewAccessKey>\n) =>\n useAppAsync('addNewAccessKey', useIntlayerAuth().project.addNewAccessKey, {\n invalidateQueries: ['getSession'],\n ...args,\n });\nexport const useDeleteAccessKey = (\n args?: UseAsyncOptions<typeof intlayerAPI.project.deleteAccessKey>\n) =>\n useAppAsync('deleteAccessKey', useIntlayerAuth().project.deleteAccessKey, {\n invalidateQueries: ['getSession'],\n ...args,\n });\nexport const useRefreshAccessKey = (\n args?: UseAsyncOptions<typeof intlayerAPI.project.refreshAccessKey>\n) =>\n useAppAsync('refreshAccessKey', useIntlayerAuth().project.refreshAccessKey, {\n invalidateQueries: ['getSession'],\n ...args,\n });\n\n/**\n * Dictionary\n */\n\nexport const useGetDictionaries = (\n args?: UseAsyncOptions<typeof intlayerAPI.dictionary.getDictionaries>\n) =>\n useAppAsync(\n 'getDictionaries',\n useIntlayerAuth().dictionary.getDictionaries,\n {\n cache: true,\n store: true,\n retryLimit: 3,\n autoFetch: true,\n revalidation: true,\n revalidateTime: 5 * 60 * 1000, // 5 minutes\n ...args,\n },\n {\n requireUser: true,\n requireOrganization: true,\n requireProject: true,\n }\n );\n\nexport const useGetDictionariesKeys = (\n args?: UseAsyncOptions<typeof intlayerAPI.dictionary.getDictionariesKeys>\n) =>\n useAppAsync(\n 'getDictionariesKeys',\n useIntlayerAuth().dictionary.getDictionariesKeys,\n {\n cache: true,\n store: true,\n retryLimit: 3,\n autoFetch: true,\n revalidation: true,\n revalidateTime: 5 * 60 * 1000, // 5 minutes\n ...args,\n },\n {\n requireUser: true,\n requireOrganization: true,\n requireProject: true,\n }\n );\n\nexport const useGetDictionary = (\n args?: UseAsyncOptions<typeof intlayerAPI.dictionary.getDictionary>\n) =>\n useAppAsync(\n 'getDictionary',\n useIntlayerAuth().dictionary.getDictionary,\n {\n cache: true,\n store: true,\n retryLimit: 3,\n revalidation: true,\n revalidateTime: 5 * 60 * 1000, // 5 minutes\n ...args,\n },\n {\n requireUser: true,\n requireOrganization: true,\n requireProject: true,\n }\n );\nexport const useAddDictionary = (\n args?: UseAsyncOptions<typeof intlayerAPI.dictionary.addDictionary>\n) =>\n useAppAsync('addDictionary', useIntlayerAuth().dictionary.addDictionary, {\n invalidateQueries: ['getDictionaries', 'getDictionariesKeys'],\n ...args,\n });\n\nexport const usePushDictionaries = (\n args?: UseAsyncOptions<typeof intlayerAPI.dictionary.pushDictionaries>\n) =>\n useAppAsync(\n 'pushDictionaries',\n useIntlayerAuth().dictionary.pushDictionaries,\n {\n invalidateQueries: [\n 'getDictionaries',\n 'getDictionary',\n 'getDictionariesKeys',\n ],\n ...args,\n }\n );\nexport const useUpdateDictionary = (\n args?: UseAsyncOptions<typeof intlayerAPI.dictionary.updateDictionary>\n) =>\n useAppAsync(\n 'updateDictionary',\n useIntlayerAuth().dictionary.updateDictionary,\n {\n invalidateQueries: ['getDictionaries', 'getDictionary'],\n ...args,\n }\n );\nexport const useDeleteDictionary = (\n args?: UseAsyncOptions<typeof intlayerAPI.dictionary.deleteDictionary>\n) =>\n useAppAsync(\n 'deleteDictionary',\n useIntlayerAuth().dictionary.deleteDictionary,\n {\n invalidateQueries: [\n 'getDictionaries',\n 'getDictionary',\n 'getDictionariesKeys',\n ],\n ...args,\n }\n );\n\n/**\n * Tag\n */\n\nexport const useGetTags = (\n args?: UseAsyncOptions<typeof intlayerAPI.tag.getTags>\n) =>\n useAppAsync(\n 'getTags',\n useIntlayerAuth().tag.getTags,\n {\n cache: true,\n store: true,\n retryLimit: 3,\n autoFetch: true,\n revalidation: true,\n revalidateTime: 5 * 60 * 1000, // 5 minutes\n ...args,\n },\n {\n requireUser: true,\n requireOrganization: true,\n }\n );\nexport const useAddTag = (\n args?: UseAsyncOptions<typeof intlayerAPI.tag.addTag>\n) =>\n useAppAsync('addTag', useIntlayerAuth().tag.addTag, {\n invalidateQueries: ['getTags'],\n ...args,\n });\nexport const useUpdateTag = (\n args?: UseAsyncOptions<typeof intlayerAPI.tag.updateTag>\n) =>\n useAppAsync('updateTag', useIntlayerAuth().tag.updateTag, {\n invalidateQueries: ['getTags'],\n ...args,\n });\nexport const useDeleteTag = (\n args?: UseAsyncOptions<typeof intlayerAPI.tag.deleteTag>\n) =>\n useAppAsync('deleteTag', useIntlayerAuth().tag.deleteTag, {\n invalidateQueries: ['getTags'],\n ...args,\n });\n\n/**\n * Stripe\n */\n\nexport const useGetSubscription = (\n args?: UseAsyncOptions<typeof intlayerAPI.stripe.getSubscription>\n) =>\n useAppAsync(\n 'getSubscription',\n useIntlayerAuth().stripe.getSubscription,\n args,\n {\n requireUser: true,\n requireOrganization: true,\n }\n );\n\nexport const useCancelSubscription = (\n args?: UseAsyncOptions<typeof intlayerAPI.stripe.cancelSubscription>\n) =>\n useAppAsync(\n 'cancelSubscription',\n useIntlayerAuth().stripe.cancelSubscription,\n { invalidateQueries: ['getSession'], ...args },\n {\n requireUser: true,\n requireOrganization: true,\n }\n );\n\n/**\n * AI\n */\n\nexport const useAuditContentDeclaration = (\n args?: UseAsyncOptions<typeof intlayerAPI.ai.auditContentDeclaration>\n) =>\n useAppAsync(\n 'auditContentDeclaration',\n useIntlayerAuth().ai.auditContentDeclaration,\n args,\n {\n requireUser: true,\n requireOrganization: true,\n requireProject: true,\n }\n );\n\nexport const useAuditContentDeclarationMetadata = (\n args?: UseAsyncOptions<typeof intlayerAPI.ai.auditContentDeclarationMetadata>\n) =>\n useAppAsync(\n 'auditContentDeclaration',\n useIntlayerAuth().ai.auditContentDeclarationMetadata,\n args,\n {\n requireUser: true,\n requireOrganization: true,\n requireProject: true,\n }\n );\n\nexport const useAuditContentDeclarationField = (\n args?: UseAsyncOptions<typeof intlayerAPI.ai.auditContentDeclarationField>\n) =>\n useAppAsync(\n 'auditContentDeclarationField',\n useIntlayerAuth().ai.auditContentDeclarationField,\n args,\n {\n requireUser: true,\n requireOrganization: true,\n requireProject: true,\n }\n );\n\nexport const useAuditTag = (\n args?: UseAsyncOptions<typeof intlayerAPI.ai.auditTag>\n) =>\n useAppAsync('auditTag', useIntlayerAuth().ai.auditTag, args, {\n requireUser: true,\n requireOrganization: true,\n requireProject: true,\n });\n\nexport const useAskDocQuestion = (\n args?: UseAsyncOptions<typeof intlayerAPI.ai.askDocQuestion>\n) => useAppAsync('askDocQuestion', useIntlayerAuth().ai.askDocQuestion, args);\n\n/**\n * Editor\n */\n\nexport const useWriteDictionary = (\n args?: UseAsyncOptions<typeof intlayerAPI.editor.writeDictionary>\n) =>\n useEditorAsync(\n 'writeDictionary',\n useIntlayerAuth().editor.writeDictionary,\n args\n );\n"],"names":["error"],"mappings":"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"}
1
+ {"version":3,"file":"intlayerAPIHooks.mjs","sources":["../../src/hooks/intlayerAPIHooks.ts"],"sourcesContent":["'use client';\n\nimport type { intlayerAPI } from '@intlayer/api';\nimport { useConfiguration } from '@intlayer/editor-react';\nimport { useAuth } from '../components/Auth/useAuth/index';\nimport { useToast } from '../components/Toaster';\nimport { type UseAsyncOptions, useAsync } from './useAsync/useAsync';\nimport { useIntlayerAuth } from './useIntlayerAPI';\n\n/**\n * Hook to handle error logging and toast notifications\n */\nconst useErrorHandling = <T extends UseAsyncOptions<any>>(options: T): T => {\n const { toast } = useToast();\n\n return {\n ...options,\n onError: (errorMessage) => {\n let error;\n\n // If json is valid, parse it\n try {\n error = JSON.parse(errorMessage);\n } catch (e) {\n console.error(e);\n // If json is not valid, set error to the original errorMessage\n\n error = errorMessage;\n }\n\n // render toast for each error if there is more than one\n // otherwise render the toast with the error message\n [error]\n .flatMap((error) => error)\n .forEach((error) =>\n toast({\n title:\n (process.env.NODE_ENV === 'production'\n ? error.title\n : error.code) ?? 'Error',\n description: error.message ?? errorMessage ?? 'An error occurred',\n variant: 'error',\n })\n );\n options.onError?.(errorMessage);\n },\n onSuccess: (data) => {\n if (data.message)\n toast({\n title: data.message,\n description: data.description,\n variant: 'success',\n });\n options.onSuccess?.(data);\n },\n };\n};\n\ntype AuthEnableOptions = {\n requireUser?: boolean;\n requireProject?: boolean;\n requireOrganization?: boolean;\n};\n\n/**\n * Hook to enable authentication\n */\nconst useAuthEnable = <T extends UseAsyncOptions<any>>(\n options: T,\n { requireUser, requireProject, requireOrganization }: AuthEnableOptions = {}\n): T => {\n const configuration = useConfiguration();\n const { csrfToken, oAuth2AccessToken, session } = useAuth({\n intlayerConfiguration: configuration,\n });\n\n const isEnabledOption = options?.enable ?? true;\n const user = session ? session.user : oAuth2AccessToken?.user;\n\n const organization = session\n ? session.organization\n : oAuth2AccessToken?.organization;\n\n const project = session ? session.project : oAuth2AccessToken?.project;\n\n const isUserEnabled = requireUser ? Boolean(user) : true;\n\n const isProjectEnabled = requireProject ? Boolean(project) : true;\n\n const isOrganizationEnabled = requireOrganization\n ? Boolean(organization)\n : true;\n\n const isCSRFEnabled =\n Boolean(csrfToken) ||\n // If auth using session, csrf token is not required\n (!session && Boolean(oAuth2AccessToken));\n\n const isEnabled =\n isEnabledOption &&\n isUserEnabled &&\n isProjectEnabled &&\n isOrganizationEnabled &&\n isCSRFEnabled;\n\n return {\n ...options,\n enable: isEnabled,\n };\n};\n\nconst useAppAsync = <\n U extends string,\n T extends (...args: any[]) => Promise<any>,\n>(\n key: U,\n asyncFunction: T,\n options?: UseAsyncOptions<T>,\n authOptions?: AuthEnableOptions\n) => {\n // Enhance options using custom hooks\n const optionsWithAuth = useAuthEnable(options ?? {}, authOptions);\n\n const optionsWithErrorHandling = useErrorHandling(optionsWithAuth);\n\n // Call the main useAsync hook with enhanced options\n return useAsync(key, asyncFunction, optionsWithErrorHandling);\n};\n\nconst useEditorAsync = <\n U extends string,\n T extends (...args: any[]) => Promise<any>,\n>(\n key: U,\n asyncFunction: T,\n options?: UseAsyncOptions<T>\n) => {\n const optionsWithErrorHandling = useErrorHandling(options ?? {});\n\n // Call the main useAsync hook with enhanced options\n return useAsync(key, asyncFunction, optionsWithErrorHandling);\n};\n\n/**\n * Auth\n */\n\nexport const useLogin = (\n args?: UseAsyncOptions<typeof intlayerAPI.auth.login>\n) =>\n useAppAsync('login', useIntlayerAuth().auth.login, {\n invalidateQueries: ['getSession'],\n ...args,\n });\nexport const useRegister = (\n args?: UseAsyncOptions<typeof intlayerAPI.auth.register>\n) =>\n useAppAsync('register', useIntlayerAuth().auth.register, {\n invalidateQueries: ['getSession'],\n ...args,\n });\nexport const useLogout = (\n args?: UseAsyncOptions<typeof intlayerAPI.auth.logout>\n) =>\n useAppAsync('logout', useIntlayerAuth().auth.logout, {\n invalidateQueries: ['getSession'],\n ...args,\n });\nexport const useChangePassword = (\n args?: UseAsyncOptions<typeof intlayerAPI.auth.changePassword>\n) => useAppAsync('changePassword', useIntlayerAuth().auth.changePassword, args);\nexport const useAskResetPassword = (\n args?: UseAsyncOptions<typeof intlayerAPI.auth.askResetPassword>\n) =>\n useAppAsync(\n 'askResetPassword',\n useIntlayerAuth().auth.askResetPassword,\n args\n );\nexport const useResetPassword = (\n args?: UseAsyncOptions<typeof intlayerAPI.auth.resetPassword>\n) => useAppAsync('resetPassword', useIntlayerAuth().auth.resetPassword, args);\nexport const useCheckIfUserHasPassword = (\n args?: UseAsyncOptions<typeof intlayerAPI.auth.checkIfUserHasPassword>\n) =>\n useAppAsync(\n 'checkIfUserHasPassword',\n useIntlayerAuth().auth.checkIfUserHasPassword,\n args,\n {\n requireUser: true,\n }\n );\nexport const useVerifyEmail = (\n args?: UseAsyncOptions<typeof intlayerAPI.auth.verifyEmail>\n) => useAppAsync('verifyEmail', useIntlayerAuth().auth.verifyEmail, args);\n\nexport const useGetUserByAccount = (\n args?: UseAsyncOptions<typeof intlayerAPI.user.getUserByAccount>\n) =>\n useAppAsync(\n 'getUserByAccount',\n useIntlayerAuth().user.getUserByAccount,\n args\n );\n\n/**\n * User\n */\n\nexport const useGetUsers = (\n args?: UseAsyncOptions<typeof intlayerAPI.user.getUsers>\n) =>\n useAppAsync(\n 'getUsers',\n useIntlayerAuth().user.getUsers,\n {\n cache: true,\n store: true,\n retryLimit: 3,\n autoFetch: true,\n revalidateTime: 5 * 60 * 1000, // 5 minutes\n ...args,\n },\n {\n requireUser: true,\n }\n );\nexport const useCreateUser = (\n args?: UseAsyncOptions<typeof intlayerAPI.user.createUser>\n) =>\n useAppAsync('createUser', useIntlayerAuth().user.createUser, {\n invalidateQueries: ['getUsers'],\n ...args,\n });\nexport const useUpdateUser = (\n args?: UseAsyncOptions<typeof intlayerAPI.user.updateUser>\n) =>\n useAppAsync('updateUser', useIntlayerAuth().user.updateUser, {\n invalidateQueries: ['getSession'],\n ...args,\n });\nexport const useDeleteUser = (\n args?: UseAsyncOptions<typeof intlayerAPI.user.deleteUser>\n) =>\n useAppAsync('deleteUser', useIntlayerAuth().user.deleteUser, {\n invalidateQueries: ['getUsers'],\n ...args,\n });\n\n/**\n * Organization\n */\n\nexport const useGetOrganizations = (\n args?: UseAsyncOptions<typeof intlayerAPI.organization.getOrganizations>\n) =>\n useAppAsync(\n 'getOrganizations',\n useIntlayerAuth().organization.getOrganizations,\n {\n cache: true,\n store: true,\n retryLimit: 3,\n autoFetch: true,\n revalidation: true,\n revalidateTime: 5 * 60 * 1000, // 5 minutes\n ...args,\n },\n {\n requireUser: true,\n }\n );\n\nexport const useAddOrganization = (\n args?: UseAsyncOptions<typeof intlayerAPI.organization.addOrganization>\n) =>\n useAppAsync(\n 'addOrganization',\n useIntlayerAuth().organization.addOrganization,\n {\n invalidateQueries: ['getOrganizations'],\n ...args,\n }\n );\nexport const useUpdateOrganization = (\n args?: UseAsyncOptions<typeof intlayerAPI.organization.updateOrganization>\n) =>\n useAppAsync(\n 'updateOrganization',\n useIntlayerAuth().organization.updateOrganization,\n {\n invalidateQueries: ['getSession'],\n ...args,\n }\n );\nexport const useUpdateOrganizationMembers = (\n args?: UseAsyncOptions<\n typeof intlayerAPI.organization.updateOrganizationMembers\n >\n) =>\n useAppAsync(\n 'updateOrganizationMembers',\n useIntlayerAuth().organization.updateOrganizationMembers,\n {\n invalidateQueries: ['getOrganizations'],\n ...args,\n }\n );\nexport const useAddOrganizationMember = (\n args?: UseAsyncOptions<typeof intlayerAPI.organization.addOrganizationMember>\n) =>\n useAppAsync(\n 'addOrganizationMember',\n useIntlayerAuth().organization.addOrganizationMember,\n {\n invalidateQueries: ['getOrganizations'],\n ...args,\n }\n );\nexport const useDeleteOrganization = (\n args?: UseAsyncOptions<typeof intlayerAPI.organization.deleteOrganization>\n) =>\n useAppAsync(\n 'deleteOrganization',\n useIntlayerAuth().organization.deleteOrganization,\n {\n invalidateQueries: ['getOrganizations'],\n ...args,\n }\n );\nexport const useSelectOrganization = (\n args?: UseAsyncOptions<typeof intlayerAPI.organization.selectOrganization>\n) =>\n useAppAsync(\n 'selectOrganization',\n useIntlayerAuth().organization.selectOrganization,\n {\n invalidateQueries: ['getSession'],\n ...args,\n }\n );\nexport const useUnselectOrganization = (\n args?: UseAsyncOptions<typeof intlayerAPI.organization.unselectOrganization>\n) =>\n useAppAsync(\n 'unselectOrganization',\n useIntlayerAuth().organization.unselectOrganization,\n {\n invalidateQueries: ['getSession'],\n ...args,\n }\n );\n\n/**\n * Project\n */\n\nexport const useGetProjects = (\n args?: UseAsyncOptions<typeof intlayerAPI.project.getProjects>\n) =>\n useAppAsync(\n 'getProjects',\n useIntlayerAuth().project.getProjects,\n {\n cache: true,\n store: true,\n retryLimit: 3,\n autoFetch: true,\n revalidation: true,\n revalidateTime: 5 * 60 * 1000, // 5 minutes\n ...args,\n },\n {\n requireUser: true,\n requireOrganization: true,\n }\n );\nexport const useAddProject = (\n args?: UseAsyncOptions<typeof intlayerAPI.project.addProject>\n) =>\n useAppAsync('addProject', useIntlayerAuth().project.addProject, {\n invalidateQueries: ['getProjects'],\n ...args,\n });\nexport const useUpdateProject = (\n args?: UseAsyncOptions<typeof intlayerAPI.project.updateProject>\n) =>\n useAppAsync('updateProject', useIntlayerAuth().project.updateProject, {\n invalidateQueries: ['getSession'],\n ...args,\n });\nexport const useUpdateProjectMembers = (\n args?: UseAsyncOptions<typeof intlayerAPI.project.updateProjectMembers>\n) =>\n useAppAsync(\n 'updateProjectMembers',\n useIntlayerAuth().project.updateProjectMembers,\n {\n invalidateQueries: ['getSession'],\n ...args,\n }\n );\nexport const useDeleteProject = (\n args?: UseAsyncOptions<typeof intlayerAPI.project.deleteProject>\n) =>\n useAppAsync('deleteProject', useIntlayerAuth().project.deleteProject, {\n invalidateQueries: ['getProjects'],\n ...args,\n });\nexport const useSelectProject = (\n args?: UseAsyncOptions<typeof intlayerAPI.project.selectProject>\n) =>\n useAppAsync('selectProject', useIntlayerAuth().project.selectProject, {\n invalidateQueries: ['getSession'],\n ...args,\n });\nexport const useUnselectProject = (\n args?: UseAsyncOptions<typeof intlayerAPI.project.unselectProject>\n) =>\n useAppAsync('unselectProject', useIntlayerAuth().project.unselectProject, {\n invalidateQueries: ['getSession'],\n ...args,\n });\nexport const useAddNewAccessKey = (\n args?: UseAsyncOptions<typeof intlayerAPI.project.addNewAccessKey>\n) =>\n useAppAsync('addNewAccessKey', useIntlayerAuth().project.addNewAccessKey, {\n invalidateQueries: ['getSession'],\n ...args,\n });\nexport const useDeleteAccessKey = (\n args?: UseAsyncOptions<typeof intlayerAPI.project.deleteAccessKey>\n) =>\n useAppAsync('deleteAccessKey', useIntlayerAuth().project.deleteAccessKey, {\n invalidateQueries: ['getSession'],\n ...args,\n });\nexport const useRefreshAccessKey = (\n args?: UseAsyncOptions<typeof intlayerAPI.project.refreshAccessKey>\n) =>\n useAppAsync('refreshAccessKey', useIntlayerAuth().project.refreshAccessKey, {\n invalidateQueries: ['getSession'],\n ...args,\n });\n\n/**\n * Dictionary\n */\n\nexport const useGetDictionaries = (\n args?: UseAsyncOptions<typeof intlayerAPI.dictionary.getDictionaries>\n) =>\n useAppAsync(\n 'getDictionaries',\n useIntlayerAuth().dictionary.getDictionaries,\n {\n cache: true,\n store: true,\n retryLimit: 3,\n autoFetch: true,\n revalidation: true,\n revalidateTime: 5 * 60 * 1000, // 5 minutes\n ...args,\n },\n {\n requireUser: true,\n requireOrganization: true,\n requireProject: true,\n }\n );\n\nexport const useGetDictionariesKeys = (\n args?: UseAsyncOptions<typeof intlayerAPI.dictionary.getDictionariesKeys>\n) =>\n useAppAsync(\n 'getDictionariesKeys',\n useIntlayerAuth().dictionary.getDictionariesKeys,\n {\n cache: true,\n store: true,\n retryLimit: 3,\n autoFetch: true,\n revalidation: true,\n revalidateTime: 5 * 60 * 1000, // 5 minutes\n ...args,\n },\n {\n requireUser: true,\n requireOrganization: true,\n requireProject: true,\n }\n );\n\nexport const useGetDictionary = (\n args?: UseAsyncOptions<typeof intlayerAPI.dictionary.getDictionary>\n) =>\n useAppAsync(\n 'getDictionary',\n useIntlayerAuth().dictionary.getDictionary,\n {\n cache: true,\n store: true,\n retryLimit: 3,\n revalidation: true,\n revalidateTime: 5 * 60 * 1000, // 5 minutes\n ...args,\n },\n {\n requireUser: true,\n requireOrganization: true,\n requireProject: true,\n }\n );\nexport const useAddDictionary = (\n args?: UseAsyncOptions<typeof intlayerAPI.dictionary.addDictionary>\n) =>\n useAppAsync('addDictionary', useIntlayerAuth().dictionary.addDictionary, {\n invalidateQueries: ['getDictionaries', 'getDictionariesKeys'],\n ...args,\n });\n\nexport const usePushDictionaries = (\n args?: UseAsyncOptions<typeof intlayerAPI.dictionary.pushDictionaries>\n) =>\n useAppAsync(\n 'pushDictionaries',\n useIntlayerAuth().dictionary.pushDictionaries,\n {\n invalidateQueries: [\n 'getDictionaries',\n 'getDictionary',\n 'getDictionariesKeys',\n ],\n ...args,\n }\n );\nexport const useUpdateDictionary = (\n args?: UseAsyncOptions<typeof intlayerAPI.dictionary.updateDictionary>\n) =>\n useAppAsync(\n 'updateDictionary',\n useIntlayerAuth().dictionary.updateDictionary,\n {\n invalidateQueries: ['getDictionaries', 'getDictionary'],\n ...args,\n }\n );\nexport const useDeleteDictionary = (\n args?: UseAsyncOptions<typeof intlayerAPI.dictionary.deleteDictionary>\n) =>\n useAppAsync(\n 'deleteDictionary',\n useIntlayerAuth().dictionary.deleteDictionary,\n {\n invalidateQueries: [\n 'getDictionaries',\n 'getDictionary',\n 'getDictionariesKeys',\n ],\n ...args,\n }\n );\n\n/**\n * Tag\n */\n\nexport const useGetTags = (\n args?: UseAsyncOptions<typeof intlayerAPI.tag.getTags>\n) =>\n useAppAsync(\n 'getTags',\n useIntlayerAuth().tag.getTags,\n {\n cache: true,\n store: true,\n retryLimit: 3,\n autoFetch: true,\n revalidation: true,\n revalidateTime: 5 * 60 * 1000, // 5 minutes\n ...args,\n },\n {\n requireUser: true,\n requireOrganization: true,\n }\n );\nexport const useAddTag = (\n args?: UseAsyncOptions<typeof intlayerAPI.tag.addTag>\n) =>\n useAppAsync('addTag', useIntlayerAuth().tag.addTag, {\n invalidateQueries: ['getTags'],\n ...args,\n });\nexport const useUpdateTag = (\n args?: UseAsyncOptions<typeof intlayerAPI.tag.updateTag>\n) =>\n useAppAsync('updateTag', useIntlayerAuth().tag.updateTag, {\n invalidateQueries: ['getTags'],\n ...args,\n });\nexport const useDeleteTag = (\n args?: UseAsyncOptions<typeof intlayerAPI.tag.deleteTag>\n) =>\n useAppAsync('deleteTag', useIntlayerAuth().tag.deleteTag, {\n invalidateQueries: ['getTags'],\n ...args,\n });\n\n/**\n * Stripe\n */\n\nexport const useGetSubscription = (\n args?: UseAsyncOptions<typeof intlayerAPI.stripe.getSubscription>\n) =>\n useAppAsync(\n 'getSubscription',\n useIntlayerAuth().stripe.getSubscription,\n args,\n {\n requireUser: true,\n requireOrganization: true,\n }\n );\n\nexport const useCancelSubscription = (\n args?: UseAsyncOptions<typeof intlayerAPI.stripe.cancelSubscription>\n) =>\n useAppAsync(\n 'cancelSubscription',\n useIntlayerAuth().stripe.cancelSubscription,\n { invalidateQueries: ['getSession'], ...args },\n {\n requireUser: true,\n requireOrganization: true,\n }\n );\n\n/**\n * AI\n */\n\nexport const useAuditContentDeclaration = (\n args?: UseAsyncOptions<typeof intlayerAPI.ai.auditContentDeclaration>\n) =>\n useAppAsync(\n 'auditContentDeclaration',\n useIntlayerAuth().ai.auditContentDeclaration,\n args,\n {\n requireUser: true,\n requireOrganization: true,\n requireProject: true,\n }\n );\n\nexport const useAuditContentDeclarationMetadata = (\n args?: UseAsyncOptions<typeof intlayerAPI.ai.auditContentDeclarationMetadata>\n) =>\n useAppAsync(\n 'auditContentDeclaration',\n useIntlayerAuth().ai.auditContentDeclarationMetadata,\n args,\n {\n requireUser: true,\n requireOrganization: true,\n requireProject: true,\n }\n );\n\nexport const useAuditContentDeclarationField = (\n args?: UseAsyncOptions<typeof intlayerAPI.ai.auditContentDeclarationField>\n) =>\n useAppAsync(\n 'auditContentDeclarationField',\n useIntlayerAuth().ai.auditContentDeclarationField,\n args,\n {\n requireUser: true,\n requireOrganization: true,\n requireProject: true,\n }\n );\n\nexport const useAuditTag = (\n args?: UseAsyncOptions<typeof intlayerAPI.ai.auditTag>\n) =>\n useAppAsync('auditTag', useIntlayerAuth().ai.auditTag, args, {\n requireUser: true,\n requireOrganization: true,\n requireProject: true,\n });\n\nexport const useAskDocQuestion = (\n args?: UseAsyncOptions<typeof intlayerAPI.ai.askDocQuestion>\n) => useAppAsync('askDocQuestion', useIntlayerAuth().ai.askDocQuestion, args);\n\n/**\n * Editor\n */\n\nexport const useWriteDictionary = (\n args?: UseAsyncOptions<typeof intlayerAPI.editor.writeDictionary>\n) =>\n useEditorAsync(\n 'writeDictionary',\n useIntlayerAuth().editor.writeDictionary,\n args\n );\n"],"names":["error"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  "use strict";
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
4
- const require$$0 = require("react");
4
+ const ReactExports = require("react");
5
5
  const hooks_useAsync_useAsyncStateStore = require("./useAsyncStateStore.cjs");
6
6
  const pendingPromises = /* @__PURE__ */ new Map();
7
7
  const DEFAULT_CACHE_ENABLED = false;
@@ -29,8 +29,8 @@ const useAsync = (key, asyncFunction, options) => {
29
29
  const onError = options?.onError;
30
30
  const args = getArgs(options?.args ?? []);
31
31
  const { getStates, setQueryState, setQueriesState, makeQueryInError } = hooks_useAsync_useAsyncStateStore.useAsyncState();
32
- const storedArgsRef = require$$0.useRef(args);
33
- const controllerRef = require$$0.useRef(null);
32
+ const storedArgsRef = ReactExports.useRef(args);
33
+ const controllerRef = ReactExports.useRef(null);
34
34
  const keyWithArgs = getKeyWithArgs(key, storedArgsRef.current);
35
35
  const {
36
36
  isFetched,
@@ -43,7 +43,7 @@ const useAsync = (key, asyncFunction, options) => {
43
43
  data,
44
44
  errorCount
45
45
  } = getStates(keyWithArgs);
46
- const fetch = require$$0.useCallback(
46
+ const fetch = ReactExports.useCallback(
47
47
  async (...args2) => {
48
48
  const keyWithArgs2 = getKeyWithArgs(key, args2);
49
49
  if (controllerRef.current) {
@@ -97,7 +97,7 @@ const useAsync = (key, asyncFunction, options) => {
97
97
  },
98
98
  [asyncFunction, keyWithArgs, storeEnabled, cacheEnabled, onSuccess, onError]
99
99
  );
100
- const revalidate = require$$0.useCallback(
100
+ const revalidate = ReactExports.useCallback(
101
101
  async (...args2) => {
102
102
  if (!isEnabled || !enabled) return;
103
103
  if (args2) {
@@ -107,7 +107,7 @@ const useAsync = (key, asyncFunction, options) => {
107
107
  },
108
108
  [isEnabled, enabled, storedArgsRef, fetch]
109
109
  );
110
- const execute = require$$0.useCallback(
110
+ const execute = ReactExports.useCallback(
111
111
  async (...args2) => {
112
112
  if (!isEnabled || !enabled) return;
113
113
  if (isLoading) return;
@@ -127,14 +127,14 @@ const useAsync = (key, asyncFunction, options) => {
127
127
  revalidate
128
128
  ]
129
129
  );
130
- require$$0.useEffect(() => {
130
+ ReactExports.useEffect(() => {
131
131
  if (enabled !== isEnabled) {
132
132
  setQueryState(keyWithArgs, {
133
133
  isEnabled
134
134
  });
135
135
  }
136
136
  }, [enabled, isEnabled, keyWithArgs]);
137
- require$$0.useEffect(() => {
137
+ ReactExports.useEffect(() => {
138
138
  if (!isEnabled || !enabled) return;
139
139
  if (!storeEnabled) return;
140
140
  if (isInvalidated || isFetched || data) return;
@@ -157,7 +157,7 @@ const useAsync = (key, asyncFunction, options) => {
157
157
  enabled,
158
158
  data
159
159
  ]);
160
- require$$0.useEffect(() => {
160
+ ReactExports.useEffect(() => {
161
161
  if (!autoFetch) return;
162
162
  if (!isEnabled || !enabled) return;
163
163
  if (isFetched && !isInvalidated) return;
@@ -172,7 +172,7 @@ const useAsync = (key, asyncFunction, options) => {
172
172
  isLoading,
173
173
  fetch
174
174
  ]);
175
- require$$0.useEffect(() => {
175
+ ReactExports.useEffect(() => {
176
176
  const isRetryEnabled = errorCount > 0 && retryLimit > 0;
177
177
  const isRetryLimitReached = errorCount > retryLimit;
178
178
  if (!isEnabled || !enabled) return;
@@ -197,7 +197,7 @@ const useAsync = (key, asyncFunction, options) => {
197
197
  isLoading,
198
198
  fetch
199
199
  ]);
200
- require$$0.useEffect(() => {
200
+ ReactExports.useEffect(() => {
201
201
  if (!revalidationEnabled || revalidateTime <= 0) return;
202
202
  if (!isEnabled || !enabled) return;
203
203
  if (isLoading) return;
@@ -219,7 +219,7 @@ const useAsync = (key, asyncFunction, options) => {
219
219
  enabled,
220
220
  fetch
221
221
  ]);
222
- const setDataMemo = require$$0.useCallback(
222
+ const setDataMemo = ReactExports.useCallback(
223
223
  (data2) => {
224
224
  setQueryState(keyWithArgs, {
225
225
  data: data2
@@ -227,7 +227,7 @@ const useAsync = (key, asyncFunction, options) => {
227
227
  },
228
228
  [keyWithArgs]
229
229
  );
230
- const memoResult = require$$0.useMemo(
230
+ const memoResult = ReactExports.useMemo(
231
231
  () => ({
232
232
  isFetched,
233
233
  isInvalidated,
@@ -262,7 +262,7 @@ const useAsync = (key, asyncFunction, options) => {
262
262
  setDataMemo
263
263
  ]
264
264
  );
265
- require$$0.useEffect(
265
+ ReactExports.useEffect(
266
266
  () => () => {
267
267
  if (controllerRef.current) {
268
268
  controllerRef.current.abort();
@@ -1 +1 @@
1
- {"version":3,"file":"useAsync.cjs","sources":["../../../src/hooks/useAsync/useAsync.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n\n'use client';\n\nimport { useCallback, useEffect, useMemo, useRef } from 'react';\nimport { useAsyncState } from './useAsyncStateStore';\n\n// Pending promises cache to prevent parallel requests when multiple components use the hook\nconst pendingPromises = new Map();\n\n// Defines the base structure for the result of the custom hook.\ntype UseAsyncResultBase<T extends (...args: any[]) => Promise<any>> = {\n isFetched: boolean;\n isLoading: boolean;\n isInvalidated: boolean;\n isSuccess: boolean;\n isDisabled: boolean;\n isWaitingData: boolean;\n isRevalidating: boolean;\n error: string | null;\n data: Awaited<ReturnType<T>> | null;\n errorCount: number;\n revalidate: T;\n setData: (data: Awaited<ReturnType<T> | null>) => void;\n};\n\n// Options type for the hook, allowing customization of behavior.\nexport type UseAsyncOptions<T extends (...args: any[]) => Promise<any>> = {\n retryLimit?: number; // The number of times the hook should retry the function on failure before giving up\n retryTime?: number; // Time in milliseconds for retrying the data\n cache?: boolean; // Cache the result of the function\n store?: boolean; // Store the result of the function in local storage\n enable?: boolean; // Enable the hook\n autoFetch?: boolean; // Automatically fetch the data when the hook is mounted\n revalidation?: boolean; // Enable revalidation\n revalidateTime?: number; // Time in milliseconds for revalidating the data\n invalidateQueries?: string[]; // Invalidate other queries when the data is updated\n updateQueries?: string[]; // Update other queries when the data is updated\n onSuccess?: (data: Awaited<ReturnType<T>>) => void; // Callback function that is called when the asynchronous function resolves successfully\n onError?: (error: string) => void; // Callback function that is called when the asynchronous function rejects or encounters an error\n args?: Parameters<T>; // Arguments to pass to the asynchronous function\n};\n\n// Default values for the hook's options\nconst DEFAULT_CACHE_ENABLED = false;\nconst DEFAULT_STORE_ENABLED = false;\nconst DEFAULT_ENABLED = true;\nconst DEFAULT_AUTO_FETCH = false;\nconst DEFAULT_RETRY_LIMIT = 1;\nconst DEFAULT_REVALIDATION_ENABLED = false;\nconst DEFAULT_REVALIDATE_TIME = 5 * 60 * 1000; // 5 minutes\nconst DEFAULT_RETRY_TIME = 5 * 60 * 1000; // 5 minutes\n\n// The main hook type that includes the async function along with its additional properties.\nexport type UseAsyncResult<\n U extends string,\n T extends (...args: any[]) => Promise<any>,\n> = UseAsyncResultBase<T> & Record<U, T>;\n\nconst getArgs = (args?: any[]): any[] =>\n args ? (Array.isArray(args) ? args : [args]) : [];\n\nconst getKeyWithArgs = (key: string, args: any[]) =>\n getArgs(args).length > 0 ? `${key}/${JSON.stringify(args)}` : key;\n\n/**\n * A custom React hook that manages asynchronous operations, providing easy-to-use states and controls over fetching, caching, and retry mechanisms.\n * This hook abstracts away the complexity of handling loading, error, and success states for any asynchronous function.\n *\n *\n * ```tsx\n * // Example of using useAsync to manage fetching user data from an API.\n * const fetchUserData = async (userId) => {\n * const response = await fetch(`/api/users/${userId}`);\n * if (!response.ok) throw new Error('Failed to fetch');\n * return await response.json();\n * };\n *\n * const UserDetails = ({ userId }) => {\n * const {\n * isLoading,\n * data,\n * error,\n * revalidate,\n * } = useAsync('userDetails', fetchUserData, {\n * cache: true,\n * revalidateTime: 60000, // 1 minute\n * autoFetch: true,\n * onSuccess: (data) => console.log('User data fetched successfully:', data),\n * onError: (error) => console.error('Error fetching user data:', error),\n * });\n *\n * if (isLoading) return <div>Loading...</div>;\n * if (error) return <div>Error: {error}</div>;\n * return (\n * <div>\n * <h1>{data.name}</h1>\n * <button onClick={() => revalidate()}>Refresh</button>\n * </div>\n * );\n * };\n * ```\n */\nexport const useAsync = <\n U extends string,\n T extends (...args: any[]) => Promise<any>,\n>(\n key: U,\n asyncFunction: T,\n options?: UseAsyncOptions<T>\n): UseAsyncResult<U, T> => {\n // Resolving optional parameters with default values\n const retryLimit = options?.retryLimit ?? DEFAULT_RETRY_LIMIT;\n const autoFetch = options?.autoFetch ?? DEFAULT_AUTO_FETCH;\n const retryTime = options?.retryTime ?? DEFAULT_RETRY_TIME;\n const cacheEnabled = options?.cache ?? DEFAULT_CACHE_ENABLED;\n const storeEnabled = options?.store ?? DEFAULT_STORE_ENABLED;\n const enabled = options?.enable ?? DEFAULT_ENABLED;\n const revalidationEnabled =\n options?.revalidation ?? DEFAULT_REVALIDATION_ENABLED;\n const revalidateTime = options?.revalidateTime ?? DEFAULT_REVALIDATE_TIME;\n const updateQueries = options?.updateQueries ?? [];\n const invalidateQueries = options?.invalidateQueries ?? [];\n const onSuccess = options?.onSuccess;\n const onError = options?.onError;\n const args = getArgs(options?.args ?? []);\n\n // Using a custom hook to manage state specific to asynchronous operations\n const { getStates, setQueryState, setQueriesState, makeQueryInError } =\n useAsyncState();\n\n // Storing the last arguments used to call the async function\n const storedArgsRef = useRef<any[]>(args);\n\n const controllerRef = useRef<AbortController | null>(null);\n\n // Apply different key for different requests\n const keyWithArgs = getKeyWithArgs(key, storedArgsRef.current);\n\n // Retrieving the current state of async operations using the same custom hook\n const {\n isFetched,\n fetchedDateTime,\n isLoading,\n isEnabled,\n error,\n isSuccess,\n isInvalidated,\n data,\n errorCount,\n } = getStates(keyWithArgs);\n\n /**\n * FETCH FUNCTION\n *\n * Manage parallel fetching across multiple instances of the hook\n * Manage state updates on success and error\n * Manage eventual invalidation of other queries\n */\n const fetch: T = useCallback<T>(\n (async (...args) => {\n const keyWithArgs = getKeyWithArgs(key, args);\n\n /**\n * ABORT CONTROLLER\n *\n * cancel an unnecessary request.\n * For example, if a user navigates away from a page or triggers a new request that makes the previous one obsolete, you can abort the previous fetch\n */\n if (controllerRef.current) {\n // Abort the previous request\n controllerRef.current.abort();\n }\n\n // Create a new AbortController\n const controller = new AbortController();\n controllerRef.current = controller;\n\n /**\n * PENDING PROMISES\n *\n * This logic ensures that if two parts of your application trigger the same request simultaneously,\n * only one network call is made, and both receive the same result.\n */\n if (pendingPromises.has(keyWithArgs)) {\n // Return the existing pending promise\n return pendingPromises.get(keyWithArgs);\n }\n\n const promise = (async () => {\n setQueryState(keyWithArgs, { isLoading: true });\n let response = null;\n\n await asyncFunction(...args)\n .then((result) => {\n response = result;\n\n setQueryState(keyWithArgs, {\n data: result,\n errorCount: 0,\n isLoading: false,\n isFetched: true,\n fetchedDateTime: new Date(),\n isSuccess: true,\n isInvalidated: false,\n error: null,\n });\n\n onSuccess?.(result);\n\n // Invalidate other queries if necessary\n if (invalidateQueries.length > 0) {\n setQueriesState(invalidateQueries, {\n isInvalidated: true,\n });\n }\n\n // Update other queries if necessary\n if (updateQueries.length > 0) {\n setQueriesState(updateQueries, {\n data: result,\n });\n }\n\n // Store the result in local storage\n if (storeEnabled) {\n localStorage.setItem(keyWithArgs, JSON.stringify(result));\n }\n })\n .catch((error) => {\n const msg = error instanceof Error ? error.message : String(error);\n\n makeQueryInError(keyWithArgs, msg);\n onError?.(error.message);\n })\n .finally(() => {\n // Remove the pending promise from the cache\n pendingPromises.delete(keyWithArgs);\n });\n\n return response;\n })();\n\n // Store the pending promise in the cache\n pendingPromises.set(keyWithArgs, promise);\n\n return await promise;\n }) as T,\n [asyncFunction, keyWithArgs, storeEnabled, cacheEnabled, onSuccess, onError]\n );\n\n /**\n * REVALIDATE FUNCTION\n *\n * Wrap core function to handle revalidation\n * Handle arguments caching\n *\n */\n const revalidate: T = useCallback<T>(\n (async (...args) => {\n if (!isEnabled || !enabled) return; // Hook is disabled\n\n if (args) {\n // Revalidation arguments can be different from the initial fetch arguments\n // If arguments are provided, store/update them for future periodic revalidation\n\n storedArgsRef.current = getArgs(args);\n }\n\n return await fetch(...storedArgsRef.current);\n }) as T,\n [isEnabled, enabled, storedArgsRef, fetch]\n );\n\n /**\n * EXECUTION FUNCTION\n *\n * Wrap revalidation function\n * If data is valid return it directly to avoid fetching again\n */\n const execute: T = useCallback<T>(\n (async (...args) => {\n if (!isEnabled || !enabled) return; // Hook is disabled\n if (isLoading) return; // Fetch is already in progress\n\n const shouldReturnData =\n !isInvalidated && // If data are invalidated, we should refetch to revalidate the data\n isSuccess &&\n cacheEnabled &&\n data;\n\n if (shouldReturnData) return data; // Data are already fetched and should be returned directly. Avoid fetching again.\n\n return await revalidate(...args);\n }) as T,\n [\n isEnabled,\n enabled,\n isInvalidated,\n cacheEnabled,\n isSuccess,\n data,\n isLoading,\n revalidate,\n ]\n );\n\n /**\n * HANDLE SYNCHRONIZATION HOOKS DISACTIVATION\n *\n * If one instance of the hook is disabled, the other instances should be disabled too.\n * This is to prevent inconsistencies in the state of the hook.\n */\n useEffect(() => {\n if (enabled !== isEnabled) {\n setQueryState(keyWithArgs, {\n isEnabled,\n });\n }\n }, [enabled, isEnabled, keyWithArgs]);\n\n /**\n * HANDLE LOCAL STORAGE LOADING\n *\n * If store is enabled, load data from local storage\n */\n useEffect(() => {\n if (!isEnabled || !enabled) return; // Hook is disabled\n if (!storeEnabled) return; // Hook should not use local storage\n if (isInvalidated || isFetched || data) return; // Hook have been already mounted and fetched or invalidated\n\n const storedData = localStorage.getItem(keyWithArgs);\n\n // Wrap parsing in a try-catch block to handle invalid JSON data\n try {\n if (storedData) {\n setQueryState(keyWithArgs, {\n data: JSON.parse(storedData),\n });\n }\n } catch (error) {\n console.error(error);\n }\n }, [\n storeEnabled,\n keyWithArgs,\n isFetched,\n isInvalidated,\n isEnabled,\n enabled,\n data,\n ]);\n\n /**\n * HANDLE AUTO-FETCH ON HOOK MOUNT\n *\n * If autoFetch is enabled, fetch the data when the hook is mounted\n */\n useEffect(() => {\n if (!autoFetch) return; // Auto-fetch is disabled\n if (!isEnabled || !enabled) return; // Hook is disabled\n if (isFetched && !isInvalidated) return; // Hook have already fetched or invalidated\n if (isLoading) return; // Fetch is already in progress\n\n fetch(...storedArgsRef.current);\n }, [\n autoFetch,\n isEnabled,\n enabled,\n isFetched,\n isInvalidated,\n isLoading,\n fetch,\n ]);\n\n /**\n * HANDLE RETRY\n *\n * If fetching fails, retry the fetch after a certain time\n */\n useEffect(() => {\n const isRetryEnabled = errorCount > 0 && retryLimit > 0;\n const isRetryLimitReached = errorCount > retryLimit;\n\n if (!isEnabled || !enabled) return; // Hook is disabled\n if (!isRetryEnabled) return; // Retry is disabled\n if (isRetryLimitReached) return; // Retry limit has been reached\n if (!(cacheEnabled || storeEnabled)) return; // Useless to retry if caching is disabled\n if (isLoading) return; // Fetch is already in progress\n if (isSuccess) return; // Hook has already fetched successfully\n\n const timeout = setTimeout(() => {\n fetch(...storedArgsRef.current);\n }, retryTime);\n\n return () => clearTimeout(timeout);\n }, [\n isEnabled,\n errorCount,\n retryLimit,\n enabled,\n retryTime,\n cacheEnabled,\n storeEnabled,\n isSuccess,\n isLoading,\n fetch,\n ]);\n\n /**\n * HANDLE PERIODIC REVALIDATION\n *\n * If revalidation is enabled, revalidate the data periodically\n */\n useEffect(() => {\n if (!revalidationEnabled || revalidateTime <= 0) return; // Revalidation is disabled\n if (!isEnabled || !enabled) return; // Hook is disabled\n if (isLoading) return; // Fetch is already in progress\n if (!isSuccess || !fetchedDateTime) return; // Should retry either of revalidate\n if (!(cacheEnabled || storeEnabled)) return; // Useless to revalidate if caching is disabled\n\n const timeout = setTimeout(() => {\n fetch(...storedArgsRef.current);\n }, revalidateTime);\n\n return () => clearTimeout(timeout);\n }, [\n revalidationEnabled,\n revalidateTime,\n cacheEnabled,\n storeEnabled,\n isSuccess,\n fetchedDateTime,\n isLoading,\n isEnabled,\n enabled,\n fetch,\n ]);\n\n // Memoization of the setData function to prevent unnecessary re-renders\n const setDataMemo = useCallback(\n (data: Awaited<ReturnType<T> | null>) => {\n setQueryState(keyWithArgs, {\n data,\n });\n },\n [keyWithArgs]\n );\n\n // Memoization to prevent unnecessary re-renders\n const memoResult = useMemo(\n () => ({\n isFetched,\n isInvalidated,\n error,\n data,\n errorCount,\n isSuccess,\n isEnabled,\n isDisabled: !isEnabled,\n isLoading,\n isWaitingData: isLoading && !isFetched && !data, // Check if the data is still being fetched. Stay at true during revalidation or if data are stored in local storage\n isRevalidating: isLoading && isFetched, // Check if the data is valid and is being revalidated\n [key]: execute, // Name the execute function as the given key to avoid conflicts with other hooks (e.g. `const { fetchUser } = useAsync('fetchUser', () => fetchUserFunction());`)\n revalidate,\n setData: setDataMemo,\n }),\n [\n isFetched,\n isLoading,\n isInvalidated,\n error,\n isSuccess,\n data,\n errorCount,\n isEnabled,\n key,\n execute,\n revalidate,\n setDataMemo,\n ]\n );\n\n useEffect(\n () => () => {\n // Clean up the controller on unmount\n if (controllerRef.current) {\n controllerRef.current.abort();\n }\n },\n []\n );\n\n // Return the hook's result, including all state and control functions\n return memoResult as UseAsyncResultBase<T> & Record<U, T>;\n};\n"],"names":["useAsyncState","useRef","useCallback","args","keyWithArgs","error","useEffect","data","useMemo"],"mappings":"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"}
1
+ {"version":3,"file":"useAsync.cjs","sources":["../../../src/hooks/useAsync/useAsync.ts"],"sourcesContent":["'use client';\n\nimport { useCallback, useEffect, useMemo, useRef } from 'react';\nimport { useAsyncState } from './useAsyncStateStore';\n\n// Pending promises cache to prevent parallel requests when multiple components use the hook\nconst pendingPromises = new Map();\n\n// Defines the base structure for the result of the custom hook.\ntype UseAsyncResultBase<T extends (...args: any[]) => Promise<any>> = {\n isFetched: boolean;\n isLoading: boolean;\n isInvalidated: boolean;\n isSuccess: boolean;\n isDisabled: boolean;\n isWaitingData: boolean;\n isRevalidating: boolean;\n error: string | null;\n data: Awaited<ReturnType<T>> | null;\n errorCount: number;\n revalidate: T;\n setData: (data: Awaited<ReturnType<T> | null>) => void;\n};\n\n// Options type for the hook, allowing customization of behavior.\nexport type UseAsyncOptions<T extends (...args: any[]) => Promise<any>> = {\n retryLimit?: number; // The number of times the hook should retry the function on failure before giving up\n retryTime?: number; // Time in milliseconds for retrying the data\n cache?: boolean; // Cache the result of the function\n store?: boolean; // Store the result of the function in local storage\n enable?: boolean; // Enable the hook\n autoFetch?: boolean; // Automatically fetch the data when the hook is mounted\n revalidation?: boolean; // Enable revalidation\n revalidateTime?: number; // Time in milliseconds for revalidating the data\n invalidateQueries?: string[]; // Invalidate other queries when the data is updated\n updateQueries?: string[]; // Update other queries when the data is updated\n onSuccess?: (data: Awaited<ReturnType<T>>) => void; // Callback function that is called when the asynchronous function resolves successfully\n onError?: (error: string) => void; // Callback function that is called when the asynchronous function rejects or encounters an error\n args?: Parameters<T>; // Arguments to pass to the asynchronous function\n};\n\n// Default values for the hook's options\nconst DEFAULT_CACHE_ENABLED = false;\nconst DEFAULT_STORE_ENABLED = false;\nconst DEFAULT_ENABLED = true;\nconst DEFAULT_AUTO_FETCH = false;\nconst DEFAULT_RETRY_LIMIT = 1;\nconst DEFAULT_REVALIDATION_ENABLED = false;\nconst DEFAULT_REVALIDATE_TIME = 5 * 60 * 1000; // 5 minutes\nconst DEFAULT_RETRY_TIME = 5 * 60 * 1000; // 5 minutes\n\n// The main hook type that includes the async function along with its additional properties.\nexport type UseAsyncResult<\n U extends string,\n T extends (...args: any[]) => Promise<any>,\n> = UseAsyncResultBase<T> & Record<U, T>;\n\nconst getArgs = (args?: any[]): any[] =>\n args ? (Array.isArray(args) ? args : [args]) : [];\n\nconst getKeyWithArgs = (key: string, args: any[]) =>\n getArgs(args).length > 0 ? `${key}/${JSON.stringify(args)}` : key;\n\n/**\n * A custom React hook that manages asynchronous operations, providing easy-to-use states and controls over fetching, caching, and retry mechanisms.\n * This hook abstracts away the complexity of handling loading, error, and success states for any asynchronous function.\n *\n *\n * ```tsx\n * // Example of using useAsync to manage fetching user data from an API.\n * const fetchUserData = async (userId) => {\n * const response = await fetch(`/api/users/${userId}`);\n * if (!response.ok) throw new Error('Failed to fetch');\n * return await response.json();\n * };\n *\n * const UserDetails = ({ userId }) => {\n * const {\n * isLoading,\n * data,\n * error,\n * revalidate,\n * } = useAsync('userDetails', fetchUserData, {\n * cache: true,\n * revalidateTime: 60000, // 1 minute\n * autoFetch: true,\n * onSuccess: (data) => console.log('User data fetched successfully:', data),\n * onError: (error) => console.error('Error fetching user data:', error),\n * });\n *\n * if (isLoading) return <div>Loading...</div>;\n * if (error) return <div>Error: {error}</div>;\n * return (\n * <div>\n * <h1>{data.name}</h1>\n * <button onClick={() => revalidate()}>Refresh</button>\n * </div>\n * );\n * };\n * ```\n */\nexport const useAsync = <\n U extends string,\n T extends (...args: any[]) => Promise<any>,\n>(\n key: U,\n asyncFunction: T,\n options?: UseAsyncOptions<T>\n): UseAsyncResult<U, T> => {\n // Resolving optional parameters with default values\n const retryLimit = options?.retryLimit ?? DEFAULT_RETRY_LIMIT;\n const autoFetch = options?.autoFetch ?? DEFAULT_AUTO_FETCH;\n const retryTime = options?.retryTime ?? DEFAULT_RETRY_TIME;\n const cacheEnabled = options?.cache ?? DEFAULT_CACHE_ENABLED;\n const storeEnabled = options?.store ?? DEFAULT_STORE_ENABLED;\n const enabled = options?.enable ?? DEFAULT_ENABLED;\n const revalidationEnabled =\n options?.revalidation ?? DEFAULT_REVALIDATION_ENABLED;\n const revalidateTime = options?.revalidateTime ?? DEFAULT_REVALIDATE_TIME;\n const updateQueries = options?.updateQueries ?? [];\n const invalidateQueries = options?.invalidateQueries ?? [];\n const onSuccess = options?.onSuccess;\n const onError = options?.onError;\n const args = getArgs(options?.args ?? []);\n\n // Using a custom hook to manage state specific to asynchronous operations\n const { getStates, setQueryState, setQueriesState, makeQueryInError } =\n useAsyncState();\n\n // Storing the last arguments used to call the async function\n const storedArgsRef = useRef<any[]>(args);\n\n const controllerRef = useRef<AbortController | null>(null);\n\n // Apply different key for different requests\n const keyWithArgs = getKeyWithArgs(key, storedArgsRef.current);\n\n // Retrieving the current state of async operations using the same custom hook\n const {\n isFetched,\n fetchedDateTime,\n isLoading,\n isEnabled,\n error,\n isSuccess,\n isInvalidated,\n data,\n errorCount,\n } = getStates(keyWithArgs);\n\n /**\n * FETCH FUNCTION\n *\n * Manage parallel fetching across multiple instances of the hook\n * Manage state updates on success and error\n * Manage eventual invalidation of other queries\n */\n const fetch: T = useCallback<T>(\n (async (...args) => {\n const keyWithArgs = getKeyWithArgs(key, args);\n\n /**\n * ABORT CONTROLLER\n *\n * cancel an unnecessary request.\n * For example, if a user navigates away from a page or triggers a new request that makes the previous one obsolete, you can abort the previous fetch\n */\n if (controllerRef.current) {\n // Abort the previous request\n controllerRef.current.abort();\n }\n\n // Create a new AbortController\n const controller = new AbortController();\n controllerRef.current = controller;\n\n /**\n * PENDING PROMISES\n *\n * This logic ensures that if two parts of your application trigger the same request simultaneously,\n * only one network call is made, and both receive the same result.\n */\n if (pendingPromises.has(keyWithArgs)) {\n // Return the existing pending promise\n return pendingPromises.get(keyWithArgs);\n }\n\n const promise = (async () => {\n setQueryState(keyWithArgs, { isLoading: true });\n let response = null;\n\n await asyncFunction(...args)\n .then((result) => {\n response = result;\n\n setQueryState(keyWithArgs, {\n data: result,\n errorCount: 0,\n isLoading: false,\n isFetched: true,\n fetchedDateTime: new Date(),\n isSuccess: true,\n isInvalidated: false,\n error: null,\n });\n\n onSuccess?.(result);\n\n // Invalidate other queries if necessary\n if (invalidateQueries.length > 0) {\n setQueriesState(invalidateQueries, {\n isInvalidated: true,\n });\n }\n\n // Update other queries if necessary\n if (updateQueries.length > 0) {\n setQueriesState(updateQueries, {\n data: result,\n });\n }\n\n // Store the result in local storage\n if (storeEnabled) {\n localStorage.setItem(keyWithArgs, JSON.stringify(result));\n }\n })\n .catch((error) => {\n const msg = error instanceof Error ? error.message : String(error);\n\n makeQueryInError(keyWithArgs, msg);\n onError?.(error.message);\n })\n .finally(() => {\n // Remove the pending promise from the cache\n pendingPromises.delete(keyWithArgs);\n });\n\n return response;\n })();\n\n // Store the pending promise in the cache\n pendingPromises.set(keyWithArgs, promise);\n\n return await promise;\n }) as T,\n [asyncFunction, keyWithArgs, storeEnabled, cacheEnabled, onSuccess, onError]\n );\n\n /**\n * REVALIDATE FUNCTION\n *\n * Wrap core function to handle revalidation\n * Handle arguments caching\n *\n */\n const revalidate: T = useCallback<T>(\n (async (...args) => {\n if (!isEnabled || !enabled) return; // Hook is disabled\n\n if (args) {\n // Revalidation arguments can be different from the initial fetch arguments\n // If arguments are provided, store/update them for future periodic revalidation\n\n storedArgsRef.current = getArgs(args);\n }\n\n return await fetch(...storedArgsRef.current);\n }) as T,\n [isEnabled, enabled, storedArgsRef, fetch]\n );\n\n /**\n * EXECUTION FUNCTION\n *\n * Wrap revalidation function\n * If data is valid return it directly to avoid fetching again\n */\n const execute: T = useCallback<T>(\n (async (...args) => {\n if (!isEnabled || !enabled) return; // Hook is disabled\n if (isLoading) return; // Fetch is already in progress\n\n const shouldReturnData =\n !isInvalidated && // If data are invalidated, we should refetch to revalidate the data\n isSuccess &&\n cacheEnabled &&\n data;\n\n if (shouldReturnData) return data; // Data are already fetched and should be returned directly. Avoid fetching again.\n\n return await revalidate(...args);\n }) as T,\n [\n isEnabled,\n enabled,\n isInvalidated,\n cacheEnabled,\n isSuccess,\n data,\n isLoading,\n revalidate,\n ]\n );\n\n /**\n * HANDLE SYNCHRONIZATION HOOKS DISACTIVATION\n *\n * If one instance of the hook is disabled, the other instances should be disabled too.\n * This is to prevent inconsistencies in the state of the hook.\n */\n useEffect(() => {\n if (enabled !== isEnabled) {\n setQueryState(keyWithArgs, {\n isEnabled,\n });\n }\n }, [enabled, isEnabled, keyWithArgs]);\n\n /**\n * HANDLE LOCAL STORAGE LOADING\n *\n * If store is enabled, load data from local storage\n */\n useEffect(() => {\n if (!isEnabled || !enabled) return; // Hook is disabled\n if (!storeEnabled) return; // Hook should not use local storage\n if (isInvalidated || isFetched || data) return; // Hook have been already mounted and fetched or invalidated\n\n const storedData = localStorage.getItem(keyWithArgs);\n\n // Wrap parsing in a try-catch block to handle invalid JSON data\n try {\n if (storedData) {\n setQueryState(keyWithArgs, {\n data: JSON.parse(storedData),\n });\n }\n } catch (error) {\n console.error(error);\n }\n }, [\n storeEnabled,\n keyWithArgs,\n isFetched,\n isInvalidated,\n isEnabled,\n enabled,\n data,\n ]);\n\n /**\n * HANDLE AUTO-FETCH ON HOOK MOUNT\n *\n * If autoFetch is enabled, fetch the data when the hook is mounted\n */\n useEffect(() => {\n if (!autoFetch) return; // Auto-fetch is disabled\n if (!isEnabled || !enabled) return; // Hook is disabled\n if (isFetched && !isInvalidated) return; // Hook have already fetched or invalidated\n if (isLoading) return; // Fetch is already in progress\n\n fetch(...storedArgsRef.current);\n }, [\n autoFetch,\n isEnabled,\n enabled,\n isFetched,\n isInvalidated,\n isLoading,\n fetch,\n ]);\n\n /**\n * HANDLE RETRY\n *\n * If fetching fails, retry the fetch after a certain time\n */\n useEffect(() => {\n const isRetryEnabled = errorCount > 0 && retryLimit > 0;\n const isRetryLimitReached = errorCount > retryLimit;\n\n if (!isEnabled || !enabled) return; // Hook is disabled\n if (!isRetryEnabled) return; // Retry is disabled\n if (isRetryLimitReached) return; // Retry limit has been reached\n if (!(cacheEnabled || storeEnabled)) return; // Useless to retry if caching is disabled\n if (isLoading) return; // Fetch is already in progress\n if (isSuccess) return; // Hook has already fetched successfully\n\n const timeout = setTimeout(() => {\n fetch(...storedArgsRef.current);\n }, retryTime);\n\n return () => clearTimeout(timeout);\n }, [\n isEnabled,\n errorCount,\n retryLimit,\n enabled,\n retryTime,\n cacheEnabled,\n storeEnabled,\n isSuccess,\n isLoading,\n fetch,\n ]);\n\n /**\n * HANDLE PERIODIC REVALIDATION\n *\n * If revalidation is enabled, revalidate the data periodically\n */\n useEffect(() => {\n if (!revalidationEnabled || revalidateTime <= 0) return; // Revalidation is disabled\n if (!isEnabled || !enabled) return; // Hook is disabled\n if (isLoading) return; // Fetch is already in progress\n if (!isSuccess || !fetchedDateTime) return; // Should retry either of revalidate\n if (!(cacheEnabled || storeEnabled)) return; // Useless to revalidate if caching is disabled\n\n const timeout = setTimeout(() => {\n fetch(...storedArgsRef.current);\n }, revalidateTime);\n\n return () => clearTimeout(timeout);\n }, [\n revalidationEnabled,\n revalidateTime,\n cacheEnabled,\n storeEnabled,\n isSuccess,\n fetchedDateTime,\n isLoading,\n isEnabled,\n enabled,\n fetch,\n ]);\n\n // Memoization of the setData function to prevent unnecessary re-renders\n const setDataMemo = useCallback(\n (data: Awaited<ReturnType<T> | null>) => {\n setQueryState(keyWithArgs, {\n data,\n });\n },\n [keyWithArgs]\n );\n\n // Memoization to prevent unnecessary re-renders\n const memoResult = useMemo(\n () => ({\n isFetched,\n isInvalidated,\n error,\n data,\n errorCount,\n isSuccess,\n isEnabled,\n isDisabled: !isEnabled,\n isLoading,\n isWaitingData: isLoading && !isFetched && !data, // Check if the data is still being fetched. Stay at true during revalidation or if data are stored in local storage\n isRevalidating: isLoading && isFetched, // Check if the data is valid and is being revalidated\n [key]: execute, // Name the execute function as the given key to avoid conflicts with other hooks (e.g. `const { fetchUser } = useAsync('fetchUser', () => fetchUserFunction());`)\n revalidate,\n setData: setDataMemo,\n }),\n [\n isFetched,\n isLoading,\n isInvalidated,\n error,\n isSuccess,\n data,\n errorCount,\n isEnabled,\n key,\n execute,\n revalidate,\n setDataMemo,\n ]\n );\n\n useEffect(\n () => () => {\n // Clean up the controller on unmount\n if (controllerRef.current) {\n controllerRef.current.abort();\n }\n },\n []\n );\n\n // Return the hook's result, including all state and control functions\n return memoResult as UseAsyncResultBase<T> & Record<U, T>;\n};\n"],"names":["useAsyncState","useRef","useCallback","args","keyWithArgs","error","useEffect","data","useMemo"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useAsync.d.ts","sourceRoot":"","sources":["../../../src/hooks/useAsync/useAsync.ts"],"names":[],"mappings":"AAWA,KAAK,kBAAkB,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,IAAI;IACpE,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,cAAc,EAAE,OAAO,CAAC;IACxB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,CAAC,CAAC;IACd,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC;CACxD,CAAC;AAGF,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,IAAI;IACxE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IACnD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,IAAI,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;CACtB,CAAC;AAaF,MAAM,MAAM,cAAc,CACxB,CAAC,SAAS,MAAM,EAChB,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,IACxC,kBAAkB,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAQzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,eAAO,MAAM,QAAQ,GACnB,CAAC,SAAS,MAAM,EAChB,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,OAErC,CAAC,iBACS,CAAC,YACN,eAAe,CAAC,CAAC,CAAC,KAC3B,cAAc,CAAC,CAAC,EAAE,CAAC,CAiYrB,CAAC"}
1
+ {"version":3,"file":"useAsync.d.ts","sourceRoot":"","sources":["../../../src/hooks/useAsync/useAsync.ts"],"names":[],"mappings":"AASA,KAAK,kBAAkB,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,IAAI;IACpE,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,cAAc,EAAE,OAAO,CAAC;IACxB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,CAAC,CAAC;IACd,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC;CACxD,CAAC;AAGF,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,IAAI;IACxE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IACnD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,IAAI,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;CACtB,CAAC;AAaF,MAAM,MAAM,cAAc,CACxB,CAAC,SAAS,MAAM,EAChB,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,IACxC,kBAAkB,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAQzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,eAAO,MAAM,QAAQ,GACnB,CAAC,SAAS,MAAM,EAChB,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,OAErC,CAAC,iBACS,CAAC,YACN,eAAe,CAAC,CAAC,CAAC,KAC3B,cAAc,CAAC,CAAC,EAAE,CAAC,CAiYrB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useAsync.mjs","sources":["../../../src/hooks/useAsync/useAsync.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n\n'use client';\n\nimport { useCallback, useEffect, useMemo, useRef } from 'react';\nimport { useAsyncState } from './useAsyncStateStore';\n\n// Pending promises cache to prevent parallel requests when multiple components use the hook\nconst pendingPromises = new Map();\n\n// Defines the base structure for the result of the custom hook.\ntype UseAsyncResultBase<T extends (...args: any[]) => Promise<any>> = {\n isFetched: boolean;\n isLoading: boolean;\n isInvalidated: boolean;\n isSuccess: boolean;\n isDisabled: boolean;\n isWaitingData: boolean;\n isRevalidating: boolean;\n error: string | null;\n data: Awaited<ReturnType<T>> | null;\n errorCount: number;\n revalidate: T;\n setData: (data: Awaited<ReturnType<T> | null>) => void;\n};\n\n// Options type for the hook, allowing customization of behavior.\nexport type UseAsyncOptions<T extends (...args: any[]) => Promise<any>> = {\n retryLimit?: number; // The number of times the hook should retry the function on failure before giving up\n retryTime?: number; // Time in milliseconds for retrying the data\n cache?: boolean; // Cache the result of the function\n store?: boolean; // Store the result of the function in local storage\n enable?: boolean; // Enable the hook\n autoFetch?: boolean; // Automatically fetch the data when the hook is mounted\n revalidation?: boolean; // Enable revalidation\n revalidateTime?: number; // Time in milliseconds for revalidating the data\n invalidateQueries?: string[]; // Invalidate other queries when the data is updated\n updateQueries?: string[]; // Update other queries when the data is updated\n onSuccess?: (data: Awaited<ReturnType<T>>) => void; // Callback function that is called when the asynchronous function resolves successfully\n onError?: (error: string) => void; // Callback function that is called when the asynchronous function rejects or encounters an error\n args?: Parameters<T>; // Arguments to pass to the asynchronous function\n};\n\n// Default values for the hook's options\nconst DEFAULT_CACHE_ENABLED = false;\nconst DEFAULT_STORE_ENABLED = false;\nconst DEFAULT_ENABLED = true;\nconst DEFAULT_AUTO_FETCH = false;\nconst DEFAULT_RETRY_LIMIT = 1;\nconst DEFAULT_REVALIDATION_ENABLED = false;\nconst DEFAULT_REVALIDATE_TIME = 5 * 60 * 1000; // 5 minutes\nconst DEFAULT_RETRY_TIME = 5 * 60 * 1000; // 5 minutes\n\n// The main hook type that includes the async function along with its additional properties.\nexport type UseAsyncResult<\n U extends string,\n T extends (...args: any[]) => Promise<any>,\n> = UseAsyncResultBase<T> & Record<U, T>;\n\nconst getArgs = (args?: any[]): any[] =>\n args ? (Array.isArray(args) ? args : [args]) : [];\n\nconst getKeyWithArgs = (key: string, args: any[]) =>\n getArgs(args).length > 0 ? `${key}/${JSON.stringify(args)}` : key;\n\n/**\n * A custom React hook that manages asynchronous operations, providing easy-to-use states and controls over fetching, caching, and retry mechanisms.\n * This hook abstracts away the complexity of handling loading, error, and success states for any asynchronous function.\n *\n *\n * ```tsx\n * // Example of using useAsync to manage fetching user data from an API.\n * const fetchUserData = async (userId) => {\n * const response = await fetch(`/api/users/${userId}`);\n * if (!response.ok) throw new Error('Failed to fetch');\n * return await response.json();\n * };\n *\n * const UserDetails = ({ userId }) => {\n * const {\n * isLoading,\n * data,\n * error,\n * revalidate,\n * } = useAsync('userDetails', fetchUserData, {\n * cache: true,\n * revalidateTime: 60000, // 1 minute\n * autoFetch: true,\n * onSuccess: (data) => console.log('User data fetched successfully:', data),\n * onError: (error) => console.error('Error fetching user data:', error),\n * });\n *\n * if (isLoading) return <div>Loading...</div>;\n * if (error) return <div>Error: {error}</div>;\n * return (\n * <div>\n * <h1>{data.name}</h1>\n * <button onClick={() => revalidate()}>Refresh</button>\n * </div>\n * );\n * };\n * ```\n */\nexport const useAsync = <\n U extends string,\n T extends (...args: any[]) => Promise<any>,\n>(\n key: U,\n asyncFunction: T,\n options?: UseAsyncOptions<T>\n): UseAsyncResult<U, T> => {\n // Resolving optional parameters with default values\n const retryLimit = options?.retryLimit ?? DEFAULT_RETRY_LIMIT;\n const autoFetch = options?.autoFetch ?? DEFAULT_AUTO_FETCH;\n const retryTime = options?.retryTime ?? DEFAULT_RETRY_TIME;\n const cacheEnabled = options?.cache ?? DEFAULT_CACHE_ENABLED;\n const storeEnabled = options?.store ?? DEFAULT_STORE_ENABLED;\n const enabled = options?.enable ?? DEFAULT_ENABLED;\n const revalidationEnabled =\n options?.revalidation ?? DEFAULT_REVALIDATION_ENABLED;\n const revalidateTime = options?.revalidateTime ?? DEFAULT_REVALIDATE_TIME;\n const updateQueries = options?.updateQueries ?? [];\n const invalidateQueries = options?.invalidateQueries ?? [];\n const onSuccess = options?.onSuccess;\n const onError = options?.onError;\n const args = getArgs(options?.args ?? []);\n\n // Using a custom hook to manage state specific to asynchronous operations\n const { getStates, setQueryState, setQueriesState, makeQueryInError } =\n useAsyncState();\n\n // Storing the last arguments used to call the async function\n const storedArgsRef = useRef<any[]>(args);\n\n const controllerRef = useRef<AbortController | null>(null);\n\n // Apply different key for different requests\n const keyWithArgs = getKeyWithArgs(key, storedArgsRef.current);\n\n // Retrieving the current state of async operations using the same custom hook\n const {\n isFetched,\n fetchedDateTime,\n isLoading,\n isEnabled,\n error,\n isSuccess,\n isInvalidated,\n data,\n errorCount,\n } = getStates(keyWithArgs);\n\n /**\n * FETCH FUNCTION\n *\n * Manage parallel fetching across multiple instances of the hook\n * Manage state updates on success and error\n * Manage eventual invalidation of other queries\n */\n const fetch: T = useCallback<T>(\n (async (...args) => {\n const keyWithArgs = getKeyWithArgs(key, args);\n\n /**\n * ABORT CONTROLLER\n *\n * cancel an unnecessary request.\n * For example, if a user navigates away from a page or triggers a new request that makes the previous one obsolete, you can abort the previous fetch\n */\n if (controllerRef.current) {\n // Abort the previous request\n controllerRef.current.abort();\n }\n\n // Create a new AbortController\n const controller = new AbortController();\n controllerRef.current = controller;\n\n /**\n * PENDING PROMISES\n *\n * This logic ensures that if two parts of your application trigger the same request simultaneously,\n * only one network call is made, and both receive the same result.\n */\n if (pendingPromises.has(keyWithArgs)) {\n // Return the existing pending promise\n return pendingPromises.get(keyWithArgs);\n }\n\n const promise = (async () => {\n setQueryState(keyWithArgs, { isLoading: true });\n let response = null;\n\n await asyncFunction(...args)\n .then((result) => {\n response = result;\n\n setQueryState(keyWithArgs, {\n data: result,\n errorCount: 0,\n isLoading: false,\n isFetched: true,\n fetchedDateTime: new Date(),\n isSuccess: true,\n isInvalidated: false,\n error: null,\n });\n\n onSuccess?.(result);\n\n // Invalidate other queries if necessary\n if (invalidateQueries.length > 0) {\n setQueriesState(invalidateQueries, {\n isInvalidated: true,\n });\n }\n\n // Update other queries if necessary\n if (updateQueries.length > 0) {\n setQueriesState(updateQueries, {\n data: result,\n });\n }\n\n // Store the result in local storage\n if (storeEnabled) {\n localStorage.setItem(keyWithArgs, JSON.stringify(result));\n }\n })\n .catch((error) => {\n const msg = error instanceof Error ? error.message : String(error);\n\n makeQueryInError(keyWithArgs, msg);\n onError?.(error.message);\n })\n .finally(() => {\n // Remove the pending promise from the cache\n pendingPromises.delete(keyWithArgs);\n });\n\n return response;\n })();\n\n // Store the pending promise in the cache\n pendingPromises.set(keyWithArgs, promise);\n\n return await promise;\n }) as T,\n [asyncFunction, keyWithArgs, storeEnabled, cacheEnabled, onSuccess, onError]\n );\n\n /**\n * REVALIDATE FUNCTION\n *\n * Wrap core function to handle revalidation\n * Handle arguments caching\n *\n */\n const revalidate: T = useCallback<T>(\n (async (...args) => {\n if (!isEnabled || !enabled) return; // Hook is disabled\n\n if (args) {\n // Revalidation arguments can be different from the initial fetch arguments\n // If arguments are provided, store/update them for future periodic revalidation\n\n storedArgsRef.current = getArgs(args);\n }\n\n return await fetch(...storedArgsRef.current);\n }) as T,\n [isEnabled, enabled, storedArgsRef, fetch]\n );\n\n /**\n * EXECUTION FUNCTION\n *\n * Wrap revalidation function\n * If data is valid return it directly to avoid fetching again\n */\n const execute: T = useCallback<T>(\n (async (...args) => {\n if (!isEnabled || !enabled) return; // Hook is disabled\n if (isLoading) return; // Fetch is already in progress\n\n const shouldReturnData =\n !isInvalidated && // If data are invalidated, we should refetch to revalidate the data\n isSuccess &&\n cacheEnabled &&\n data;\n\n if (shouldReturnData) return data; // Data are already fetched and should be returned directly. Avoid fetching again.\n\n return await revalidate(...args);\n }) as T,\n [\n isEnabled,\n enabled,\n isInvalidated,\n cacheEnabled,\n isSuccess,\n data,\n isLoading,\n revalidate,\n ]\n );\n\n /**\n * HANDLE SYNCHRONIZATION HOOKS DISACTIVATION\n *\n * If one instance of the hook is disabled, the other instances should be disabled too.\n * This is to prevent inconsistencies in the state of the hook.\n */\n useEffect(() => {\n if (enabled !== isEnabled) {\n setQueryState(keyWithArgs, {\n isEnabled,\n });\n }\n }, [enabled, isEnabled, keyWithArgs]);\n\n /**\n * HANDLE LOCAL STORAGE LOADING\n *\n * If store is enabled, load data from local storage\n */\n useEffect(() => {\n if (!isEnabled || !enabled) return; // Hook is disabled\n if (!storeEnabled) return; // Hook should not use local storage\n if (isInvalidated || isFetched || data) return; // Hook have been already mounted and fetched or invalidated\n\n const storedData = localStorage.getItem(keyWithArgs);\n\n // Wrap parsing in a try-catch block to handle invalid JSON data\n try {\n if (storedData) {\n setQueryState(keyWithArgs, {\n data: JSON.parse(storedData),\n });\n }\n } catch (error) {\n console.error(error);\n }\n }, [\n storeEnabled,\n keyWithArgs,\n isFetched,\n isInvalidated,\n isEnabled,\n enabled,\n data,\n ]);\n\n /**\n * HANDLE AUTO-FETCH ON HOOK MOUNT\n *\n * If autoFetch is enabled, fetch the data when the hook is mounted\n */\n useEffect(() => {\n if (!autoFetch) return; // Auto-fetch is disabled\n if (!isEnabled || !enabled) return; // Hook is disabled\n if (isFetched && !isInvalidated) return; // Hook have already fetched or invalidated\n if (isLoading) return; // Fetch is already in progress\n\n fetch(...storedArgsRef.current);\n }, [\n autoFetch,\n isEnabled,\n enabled,\n isFetched,\n isInvalidated,\n isLoading,\n fetch,\n ]);\n\n /**\n * HANDLE RETRY\n *\n * If fetching fails, retry the fetch after a certain time\n */\n useEffect(() => {\n const isRetryEnabled = errorCount > 0 && retryLimit > 0;\n const isRetryLimitReached = errorCount > retryLimit;\n\n if (!isEnabled || !enabled) return; // Hook is disabled\n if (!isRetryEnabled) return; // Retry is disabled\n if (isRetryLimitReached) return; // Retry limit has been reached\n if (!(cacheEnabled || storeEnabled)) return; // Useless to retry if caching is disabled\n if (isLoading) return; // Fetch is already in progress\n if (isSuccess) return; // Hook has already fetched successfully\n\n const timeout = setTimeout(() => {\n fetch(...storedArgsRef.current);\n }, retryTime);\n\n return () => clearTimeout(timeout);\n }, [\n isEnabled,\n errorCount,\n retryLimit,\n enabled,\n retryTime,\n cacheEnabled,\n storeEnabled,\n isSuccess,\n isLoading,\n fetch,\n ]);\n\n /**\n * HANDLE PERIODIC REVALIDATION\n *\n * If revalidation is enabled, revalidate the data periodically\n */\n useEffect(() => {\n if (!revalidationEnabled || revalidateTime <= 0) return; // Revalidation is disabled\n if (!isEnabled || !enabled) return; // Hook is disabled\n if (isLoading) return; // Fetch is already in progress\n if (!isSuccess || !fetchedDateTime) return; // Should retry either of revalidate\n if (!(cacheEnabled || storeEnabled)) return; // Useless to revalidate if caching is disabled\n\n const timeout = setTimeout(() => {\n fetch(...storedArgsRef.current);\n }, revalidateTime);\n\n return () => clearTimeout(timeout);\n }, [\n revalidationEnabled,\n revalidateTime,\n cacheEnabled,\n storeEnabled,\n isSuccess,\n fetchedDateTime,\n isLoading,\n isEnabled,\n enabled,\n fetch,\n ]);\n\n // Memoization of the setData function to prevent unnecessary re-renders\n const setDataMemo = useCallback(\n (data: Awaited<ReturnType<T> | null>) => {\n setQueryState(keyWithArgs, {\n data,\n });\n },\n [keyWithArgs]\n );\n\n // Memoization to prevent unnecessary re-renders\n const memoResult = useMemo(\n () => ({\n isFetched,\n isInvalidated,\n error,\n data,\n errorCount,\n isSuccess,\n isEnabled,\n isDisabled: !isEnabled,\n isLoading,\n isWaitingData: isLoading && !isFetched && !data, // Check if the data is still being fetched. Stay at true during revalidation or if data are stored in local storage\n isRevalidating: isLoading && isFetched, // Check if the data is valid and is being revalidated\n [key]: execute, // Name the execute function as the given key to avoid conflicts with other hooks (e.g. `const { fetchUser } = useAsync('fetchUser', () => fetchUserFunction());`)\n revalidate,\n setData: setDataMemo,\n }),\n [\n isFetched,\n isLoading,\n isInvalidated,\n error,\n isSuccess,\n data,\n errorCount,\n isEnabled,\n key,\n execute,\n revalidate,\n setDataMemo,\n ]\n );\n\n useEffect(\n () => () => {\n // Clean up the controller on unmount\n if (controllerRef.current) {\n controllerRef.current.abort();\n }\n },\n []\n );\n\n // Return the hook's result, including all state and control functions\n return memoResult as UseAsyncResultBase<T> & Record<U, T>;\n};\n"],"names":["args","keyWithArgs","error","data"],"mappings":"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"}
1
+ {"version":3,"file":"useAsync.mjs","sources":["../../../src/hooks/useAsync/useAsync.ts"],"sourcesContent":["'use client';\n\nimport { useCallback, useEffect, useMemo, useRef } from 'react';\nimport { useAsyncState } from './useAsyncStateStore';\n\n// Pending promises cache to prevent parallel requests when multiple components use the hook\nconst pendingPromises = new Map();\n\n// Defines the base structure for the result of the custom hook.\ntype UseAsyncResultBase<T extends (...args: any[]) => Promise<any>> = {\n isFetched: boolean;\n isLoading: boolean;\n isInvalidated: boolean;\n isSuccess: boolean;\n isDisabled: boolean;\n isWaitingData: boolean;\n isRevalidating: boolean;\n error: string | null;\n data: Awaited<ReturnType<T>> | null;\n errorCount: number;\n revalidate: T;\n setData: (data: Awaited<ReturnType<T> | null>) => void;\n};\n\n// Options type for the hook, allowing customization of behavior.\nexport type UseAsyncOptions<T extends (...args: any[]) => Promise<any>> = {\n retryLimit?: number; // The number of times the hook should retry the function on failure before giving up\n retryTime?: number; // Time in milliseconds for retrying the data\n cache?: boolean; // Cache the result of the function\n store?: boolean; // Store the result of the function in local storage\n enable?: boolean; // Enable the hook\n autoFetch?: boolean; // Automatically fetch the data when the hook is mounted\n revalidation?: boolean; // Enable revalidation\n revalidateTime?: number; // Time in milliseconds for revalidating the data\n invalidateQueries?: string[]; // Invalidate other queries when the data is updated\n updateQueries?: string[]; // Update other queries when the data is updated\n onSuccess?: (data: Awaited<ReturnType<T>>) => void; // Callback function that is called when the asynchronous function resolves successfully\n onError?: (error: string) => void; // Callback function that is called when the asynchronous function rejects or encounters an error\n args?: Parameters<T>; // Arguments to pass to the asynchronous function\n};\n\n// Default values for the hook's options\nconst DEFAULT_CACHE_ENABLED = false;\nconst DEFAULT_STORE_ENABLED = false;\nconst DEFAULT_ENABLED = true;\nconst DEFAULT_AUTO_FETCH = false;\nconst DEFAULT_RETRY_LIMIT = 1;\nconst DEFAULT_REVALIDATION_ENABLED = false;\nconst DEFAULT_REVALIDATE_TIME = 5 * 60 * 1000; // 5 minutes\nconst DEFAULT_RETRY_TIME = 5 * 60 * 1000; // 5 minutes\n\n// The main hook type that includes the async function along with its additional properties.\nexport type UseAsyncResult<\n U extends string,\n T extends (...args: any[]) => Promise<any>,\n> = UseAsyncResultBase<T> & Record<U, T>;\n\nconst getArgs = (args?: any[]): any[] =>\n args ? (Array.isArray(args) ? args : [args]) : [];\n\nconst getKeyWithArgs = (key: string, args: any[]) =>\n getArgs(args).length > 0 ? `${key}/${JSON.stringify(args)}` : key;\n\n/**\n * A custom React hook that manages asynchronous operations, providing easy-to-use states and controls over fetching, caching, and retry mechanisms.\n * This hook abstracts away the complexity of handling loading, error, and success states for any asynchronous function.\n *\n *\n * ```tsx\n * // Example of using useAsync to manage fetching user data from an API.\n * const fetchUserData = async (userId) => {\n * const response = await fetch(`/api/users/${userId}`);\n * if (!response.ok) throw new Error('Failed to fetch');\n * return await response.json();\n * };\n *\n * const UserDetails = ({ userId }) => {\n * const {\n * isLoading,\n * data,\n * error,\n * revalidate,\n * } = useAsync('userDetails', fetchUserData, {\n * cache: true,\n * revalidateTime: 60000, // 1 minute\n * autoFetch: true,\n * onSuccess: (data) => console.log('User data fetched successfully:', data),\n * onError: (error) => console.error('Error fetching user data:', error),\n * });\n *\n * if (isLoading) return <div>Loading...</div>;\n * if (error) return <div>Error: {error}</div>;\n * return (\n * <div>\n * <h1>{data.name}</h1>\n * <button onClick={() => revalidate()}>Refresh</button>\n * </div>\n * );\n * };\n * ```\n */\nexport const useAsync = <\n U extends string,\n T extends (...args: any[]) => Promise<any>,\n>(\n key: U,\n asyncFunction: T,\n options?: UseAsyncOptions<T>\n): UseAsyncResult<U, T> => {\n // Resolving optional parameters with default values\n const retryLimit = options?.retryLimit ?? DEFAULT_RETRY_LIMIT;\n const autoFetch = options?.autoFetch ?? DEFAULT_AUTO_FETCH;\n const retryTime = options?.retryTime ?? DEFAULT_RETRY_TIME;\n const cacheEnabled = options?.cache ?? DEFAULT_CACHE_ENABLED;\n const storeEnabled = options?.store ?? DEFAULT_STORE_ENABLED;\n const enabled = options?.enable ?? DEFAULT_ENABLED;\n const revalidationEnabled =\n options?.revalidation ?? DEFAULT_REVALIDATION_ENABLED;\n const revalidateTime = options?.revalidateTime ?? DEFAULT_REVALIDATE_TIME;\n const updateQueries = options?.updateQueries ?? [];\n const invalidateQueries = options?.invalidateQueries ?? [];\n const onSuccess = options?.onSuccess;\n const onError = options?.onError;\n const args = getArgs(options?.args ?? []);\n\n // Using a custom hook to manage state specific to asynchronous operations\n const { getStates, setQueryState, setQueriesState, makeQueryInError } =\n useAsyncState();\n\n // Storing the last arguments used to call the async function\n const storedArgsRef = useRef<any[]>(args);\n\n const controllerRef = useRef<AbortController | null>(null);\n\n // Apply different key for different requests\n const keyWithArgs = getKeyWithArgs(key, storedArgsRef.current);\n\n // Retrieving the current state of async operations using the same custom hook\n const {\n isFetched,\n fetchedDateTime,\n isLoading,\n isEnabled,\n error,\n isSuccess,\n isInvalidated,\n data,\n errorCount,\n } = getStates(keyWithArgs);\n\n /**\n * FETCH FUNCTION\n *\n * Manage parallel fetching across multiple instances of the hook\n * Manage state updates on success and error\n * Manage eventual invalidation of other queries\n */\n const fetch: T = useCallback<T>(\n (async (...args) => {\n const keyWithArgs = getKeyWithArgs(key, args);\n\n /**\n * ABORT CONTROLLER\n *\n * cancel an unnecessary request.\n * For example, if a user navigates away from a page or triggers a new request that makes the previous one obsolete, you can abort the previous fetch\n */\n if (controllerRef.current) {\n // Abort the previous request\n controllerRef.current.abort();\n }\n\n // Create a new AbortController\n const controller = new AbortController();\n controllerRef.current = controller;\n\n /**\n * PENDING PROMISES\n *\n * This logic ensures that if two parts of your application trigger the same request simultaneously,\n * only one network call is made, and both receive the same result.\n */\n if (pendingPromises.has(keyWithArgs)) {\n // Return the existing pending promise\n return pendingPromises.get(keyWithArgs);\n }\n\n const promise = (async () => {\n setQueryState(keyWithArgs, { isLoading: true });\n let response = null;\n\n await asyncFunction(...args)\n .then((result) => {\n response = result;\n\n setQueryState(keyWithArgs, {\n data: result,\n errorCount: 0,\n isLoading: false,\n isFetched: true,\n fetchedDateTime: new Date(),\n isSuccess: true,\n isInvalidated: false,\n error: null,\n });\n\n onSuccess?.(result);\n\n // Invalidate other queries if necessary\n if (invalidateQueries.length > 0) {\n setQueriesState(invalidateQueries, {\n isInvalidated: true,\n });\n }\n\n // Update other queries if necessary\n if (updateQueries.length > 0) {\n setQueriesState(updateQueries, {\n data: result,\n });\n }\n\n // Store the result in local storage\n if (storeEnabled) {\n localStorage.setItem(keyWithArgs, JSON.stringify(result));\n }\n })\n .catch((error) => {\n const msg = error instanceof Error ? error.message : String(error);\n\n makeQueryInError(keyWithArgs, msg);\n onError?.(error.message);\n })\n .finally(() => {\n // Remove the pending promise from the cache\n pendingPromises.delete(keyWithArgs);\n });\n\n return response;\n })();\n\n // Store the pending promise in the cache\n pendingPromises.set(keyWithArgs, promise);\n\n return await promise;\n }) as T,\n [asyncFunction, keyWithArgs, storeEnabled, cacheEnabled, onSuccess, onError]\n );\n\n /**\n * REVALIDATE FUNCTION\n *\n * Wrap core function to handle revalidation\n * Handle arguments caching\n *\n */\n const revalidate: T = useCallback<T>(\n (async (...args) => {\n if (!isEnabled || !enabled) return; // Hook is disabled\n\n if (args) {\n // Revalidation arguments can be different from the initial fetch arguments\n // If arguments are provided, store/update them for future periodic revalidation\n\n storedArgsRef.current = getArgs(args);\n }\n\n return await fetch(...storedArgsRef.current);\n }) as T,\n [isEnabled, enabled, storedArgsRef, fetch]\n );\n\n /**\n * EXECUTION FUNCTION\n *\n * Wrap revalidation function\n * If data is valid return it directly to avoid fetching again\n */\n const execute: T = useCallback<T>(\n (async (...args) => {\n if (!isEnabled || !enabled) return; // Hook is disabled\n if (isLoading) return; // Fetch is already in progress\n\n const shouldReturnData =\n !isInvalidated && // If data are invalidated, we should refetch to revalidate the data\n isSuccess &&\n cacheEnabled &&\n data;\n\n if (shouldReturnData) return data; // Data are already fetched and should be returned directly. Avoid fetching again.\n\n return await revalidate(...args);\n }) as T,\n [\n isEnabled,\n enabled,\n isInvalidated,\n cacheEnabled,\n isSuccess,\n data,\n isLoading,\n revalidate,\n ]\n );\n\n /**\n * HANDLE SYNCHRONIZATION HOOKS DISACTIVATION\n *\n * If one instance of the hook is disabled, the other instances should be disabled too.\n * This is to prevent inconsistencies in the state of the hook.\n */\n useEffect(() => {\n if (enabled !== isEnabled) {\n setQueryState(keyWithArgs, {\n isEnabled,\n });\n }\n }, [enabled, isEnabled, keyWithArgs]);\n\n /**\n * HANDLE LOCAL STORAGE LOADING\n *\n * If store is enabled, load data from local storage\n */\n useEffect(() => {\n if (!isEnabled || !enabled) return; // Hook is disabled\n if (!storeEnabled) return; // Hook should not use local storage\n if (isInvalidated || isFetched || data) return; // Hook have been already mounted and fetched or invalidated\n\n const storedData = localStorage.getItem(keyWithArgs);\n\n // Wrap parsing in a try-catch block to handle invalid JSON data\n try {\n if (storedData) {\n setQueryState(keyWithArgs, {\n data: JSON.parse(storedData),\n });\n }\n } catch (error) {\n console.error(error);\n }\n }, [\n storeEnabled,\n keyWithArgs,\n isFetched,\n isInvalidated,\n isEnabled,\n enabled,\n data,\n ]);\n\n /**\n * HANDLE AUTO-FETCH ON HOOK MOUNT\n *\n * If autoFetch is enabled, fetch the data when the hook is mounted\n */\n useEffect(() => {\n if (!autoFetch) return; // Auto-fetch is disabled\n if (!isEnabled || !enabled) return; // Hook is disabled\n if (isFetched && !isInvalidated) return; // Hook have already fetched or invalidated\n if (isLoading) return; // Fetch is already in progress\n\n fetch(...storedArgsRef.current);\n }, [\n autoFetch,\n isEnabled,\n enabled,\n isFetched,\n isInvalidated,\n isLoading,\n fetch,\n ]);\n\n /**\n * HANDLE RETRY\n *\n * If fetching fails, retry the fetch after a certain time\n */\n useEffect(() => {\n const isRetryEnabled = errorCount > 0 && retryLimit > 0;\n const isRetryLimitReached = errorCount > retryLimit;\n\n if (!isEnabled || !enabled) return; // Hook is disabled\n if (!isRetryEnabled) return; // Retry is disabled\n if (isRetryLimitReached) return; // Retry limit has been reached\n if (!(cacheEnabled || storeEnabled)) return; // Useless to retry if caching is disabled\n if (isLoading) return; // Fetch is already in progress\n if (isSuccess) return; // Hook has already fetched successfully\n\n const timeout = setTimeout(() => {\n fetch(...storedArgsRef.current);\n }, retryTime);\n\n return () => clearTimeout(timeout);\n }, [\n isEnabled,\n errorCount,\n retryLimit,\n enabled,\n retryTime,\n cacheEnabled,\n storeEnabled,\n isSuccess,\n isLoading,\n fetch,\n ]);\n\n /**\n * HANDLE PERIODIC REVALIDATION\n *\n * If revalidation is enabled, revalidate the data periodically\n */\n useEffect(() => {\n if (!revalidationEnabled || revalidateTime <= 0) return; // Revalidation is disabled\n if (!isEnabled || !enabled) return; // Hook is disabled\n if (isLoading) return; // Fetch is already in progress\n if (!isSuccess || !fetchedDateTime) return; // Should retry either of revalidate\n if (!(cacheEnabled || storeEnabled)) return; // Useless to revalidate if caching is disabled\n\n const timeout = setTimeout(() => {\n fetch(...storedArgsRef.current);\n }, revalidateTime);\n\n return () => clearTimeout(timeout);\n }, [\n revalidationEnabled,\n revalidateTime,\n cacheEnabled,\n storeEnabled,\n isSuccess,\n fetchedDateTime,\n isLoading,\n isEnabled,\n enabled,\n fetch,\n ]);\n\n // Memoization of the setData function to prevent unnecessary re-renders\n const setDataMemo = useCallback(\n (data: Awaited<ReturnType<T> | null>) => {\n setQueryState(keyWithArgs, {\n data,\n });\n },\n [keyWithArgs]\n );\n\n // Memoization to prevent unnecessary re-renders\n const memoResult = useMemo(\n () => ({\n isFetched,\n isInvalidated,\n error,\n data,\n errorCount,\n isSuccess,\n isEnabled,\n isDisabled: !isEnabled,\n isLoading,\n isWaitingData: isLoading && !isFetched && !data, // Check if the data is still being fetched. Stay at true during revalidation or if data are stored in local storage\n isRevalidating: isLoading && isFetched, // Check if the data is valid and is being revalidated\n [key]: execute, // Name the execute function as the given key to avoid conflicts with other hooks (e.g. `const { fetchUser } = useAsync('fetchUser', () => fetchUserFunction());`)\n revalidate,\n setData: setDataMemo,\n }),\n [\n isFetched,\n isLoading,\n isInvalidated,\n error,\n isSuccess,\n data,\n errorCount,\n isEnabled,\n key,\n execute,\n revalidate,\n setDataMemo,\n ]\n );\n\n useEffect(\n () => () => {\n // Clean up the controller on unmount\n if (controllerRef.current) {\n controllerRef.current.abort();\n }\n },\n []\n );\n\n // Return the hook's result, including all state and control functions\n return memoResult as UseAsyncResultBase<T> & Record<U, T>;\n};\n"],"names":["args","keyWithArgs","error","data"],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  "use client";
2
2
  "use strict";
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
4
- const jsxRuntime = require("../../jsx-runtime-CgFM7lM3.cjs");
5
- const require$$0 = require("react");
4
+ const jsxRuntime = require("react/jsx-runtime");
5
+ const ReactExports = require("react");
6
6
  const createDefaultStates = () => ({
7
7
  isFetched: false,
8
8
  fetchedDateTime: null,
@@ -108,11 +108,11 @@ const reducer = (state, action) => {
108
108
  return state;
109
109
  }
110
110
  };
111
- const AsyncStateContext = require$$0.createContext(
111
+ const AsyncStateContext = ReactExports.createContext(
112
112
  null
113
113
  );
114
114
  const AsyncStateProvider = ({ children }) => {
115
- const [asyncState, dispatch] = require$$0.useReducer(reducer, { states: {} });
115
+ const [asyncState, dispatch] = ReactExports.useReducer(reducer, { states: {} });
116
116
  const getStates = (key) => asyncState.states[key] ?? createDefaultStates();
117
117
  const setQueryState = (key, value) => {
118
118
  dispatch({ type: "SET_QUERY_STATE", key, value });
@@ -129,7 +129,7 @@ const AsyncStateProvider = ({ children }) => {
129
129
  const resetState = (excludedKeys) => {
130
130
  dispatch({ type: "RESET_STATE", excludeKeys: excludedKeys });
131
131
  };
132
- return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(
132
+ return /* @__PURE__ */ jsxRuntime.jsx(
133
133
  AsyncStateContext.Provider,
134
134
  {
135
135
  value: {
@@ -145,7 +145,7 @@ const AsyncStateProvider = ({ children }) => {
145
145
  );
146
146
  };
147
147
  const useAsyncState = () => {
148
- const context = require$$0.useContext(AsyncStateContext);
148
+ const context = ReactExports.useContext(AsyncStateContext);
149
149
  if (!context) {
150
150
  throw new Error("useAsyncState must be used within an AsyncStateProvider");
151
151
  }