@intlayer/design-system 9.0.0-canary.2 → 9.0.0-canary.21

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 (1336) hide show
  1. package/dist/esm/api/hooks/ai.mjs.map +1 -1
  2. package/dist/esm/api/hooks/analytics.mjs +71 -0
  3. package/dist/esm/api/hooks/analytics.mjs.map +1 -0
  4. package/dist/esm/api/hooks/asset.mjs.map +1 -1
  5. package/dist/esm/api/hooks/audit.mjs.map +1 -1
  6. package/dist/esm/api/hooks/auth.mjs.map +1 -1
  7. package/dist/esm/api/hooks/bitbucket.mjs.map +1 -1
  8. package/dist/esm/api/hooks/dictionary.mjs +15 -3
  9. package/dist/esm/api/hooks/dictionary.mjs.map +1 -1
  10. package/dist/esm/api/hooks/discussions.mjs.map +1 -1
  11. package/dist/esm/api/hooks/editor.mjs.map +1 -1
  12. package/dist/esm/api/hooks/environment.mjs.map +1 -1
  13. package/dist/esm/api/hooks/github.mjs.map +1 -1
  14. package/dist/esm/api/hooks/gitlab.mjs.map +1 -1
  15. package/dist/esm/api/hooks/newsletter.mjs.map +1 -1
  16. package/dist/esm/api/hooks/organization.mjs +35 -3
  17. package/dist/esm/api/hooks/organization.mjs.map +1 -1
  18. package/dist/esm/api/hooks/project.mjs +13 -1
  19. package/dist/esm/api/hooks/project.mjs.map +1 -1
  20. package/dist/esm/api/hooks/reviewer.mjs.map +1 -1
  21. package/dist/esm/api/hooks/search.mjs.map +1 -1
  22. package/dist/esm/api/hooks/showcaseProject.mjs.map +1 -1
  23. package/dist/esm/api/hooks/stripe.mjs.map +1 -1
  24. package/dist/esm/api/hooks/tag.mjs.map +1 -1
  25. package/dist/esm/api/hooks/translate.mjs.map +1 -1
  26. package/dist/esm/api/hooks/user.mjs.map +1 -1
  27. package/dist/esm/api/hooks/utils.mjs.map +1 -1
  28. package/dist/esm/api/index.mjs +6 -5
  29. package/dist/esm/api/useAuth/useAuth.mjs.map +1 -1
  30. package/dist/esm/api/useAuth/useOAuth2.mjs +1 -1
  31. package/dist/esm/api/useAuth/useOAuth2.mjs.map +1 -1
  32. package/dist/esm/api/useAuth/useSession.mjs +1 -1
  33. package/dist/esm/api/useAuth/useSession.mjs.map +1 -1
  34. package/dist/esm/api/useIntlayerAPI.mjs +6 -1
  35. package/dist/esm/api/useIntlayerAPI.mjs.map +1 -1
  36. package/dist/esm/api/useUser/index.mjs.map +1 -1
  37. package/dist/esm/components/Accordion/Accordion.mjs.map +1 -1
  38. package/dist/esm/components/Avatar/image.mjs.map +1 -1
  39. package/dist/esm/components/Avatar/index.mjs.map +1 -1
  40. package/dist/esm/components/Badge/index.mjs.map +1 -1
  41. package/dist/esm/components/Breadcrumb/breadcrumb.content.mjs.map +1 -1
  42. package/dist/esm/components/Breadcrumb/index.mjs.map +1 -1
  43. package/dist/esm/components/Browser/Browser.content.mjs.map +1 -1
  44. package/dist/esm/components/Browser/Browser.mjs.map +1 -1
  45. package/dist/esm/components/Browser/extractUrlFromSitemap.mjs.map +1 -1
  46. package/dist/esm/components/Button/Button.mjs.map +1 -1
  47. package/dist/esm/components/Carousel/index.content.mjs.map +1 -1
  48. package/dist/esm/components/Carousel/index.mjs +2 -1
  49. package/dist/esm/components/Carousel/index.mjs.map +1 -1
  50. package/dist/esm/components/ClickOutsideDiv/index.mjs.map +1 -1
  51. package/dist/esm/components/CollapsibleTable/CollapsibleTable.mjs.map +1 -1
  52. package/dist/esm/components/Command/index.mjs.map +1 -1
  53. package/dist/esm/components/Container/index.mjs.map +1 -1
  54. package/dist/esm/components/ContentEditor/ContentEditor.mjs.map +1 -1
  55. package/dist/esm/components/ContentEditor/ContentEditorInput.mjs.map +1 -1
  56. package/dist/esm/components/ContentEditor/ContentEditorTextArea.mjs +1 -1
  57. package/dist/esm/components/ContentEditor/ContentEditorTextArea.mjs.map +1 -1
  58. package/dist/esm/components/ContentSelector/ContentSelector.mjs.map +1 -1
  59. package/dist/esm/components/CopyButton/CopyButton.content.mjs.map +1 -1
  60. package/dist/esm/components/CopyButton/index.mjs.map +1 -1
  61. package/dist/esm/components/CopyToClipboard/index.mjs.map +1 -1
  62. package/dist/esm/components/DictionaryEditor/DictionaryEditor.mjs.map +1 -1
  63. package/dist/esm/components/DictionaryEditor/ItemLayout.mjs.map +1 -1
  64. package/dist/esm/components/DictionaryEditor/NodeWrapper/ArrayWrapper.mjs.map +1 -1
  65. package/dist/esm/components/DictionaryEditor/NodeWrapper/BooleanWrapper.mjs.map +1 -1
  66. package/dist/esm/components/DictionaryEditor/NodeWrapper/ConditionWrapper.mjs.map +1 -1
  67. package/dist/esm/components/DictionaryEditor/NodeWrapper/EnumerationWrapper.mjs.map +1 -1
  68. package/dist/esm/components/DictionaryEditor/NodeWrapper/FileWrapper.mjs.map +1 -1
  69. package/dist/esm/components/DictionaryEditor/NodeWrapper/HtmlWrapper.mjs.map +1 -1
  70. package/dist/esm/components/DictionaryEditor/NodeWrapper/InsertionWrapper.mjs.map +1 -1
  71. package/dist/esm/components/DictionaryEditor/NodeWrapper/MarkdownWrapper.mjs.map +1 -1
  72. package/dist/esm/components/DictionaryEditor/NodeWrapper/NestedObjectWrapper.mjs.map +1 -1
  73. package/dist/esm/components/DictionaryEditor/NodeWrapper/NumberWrapper.mjs.map +1 -1
  74. package/dist/esm/components/DictionaryEditor/NodeWrapper/PluralWrapper.mjs.map +1 -1
  75. package/dist/esm/components/DictionaryEditor/NodeWrapper/StringWrapper.mjs.map +1 -1
  76. package/dist/esm/components/DictionaryEditor/NodeWrapper/TranslationWrapper.mjs.map +1 -1
  77. package/dist/esm/components/DictionaryEditor/NodeWrapper/index.mjs.map +1 -1
  78. package/dist/esm/components/DictionaryFieldEditor/ContentEditor.mjs +42 -70
  79. package/dist/esm/components/DictionaryFieldEditor/ContentEditor.mjs.map +1 -1
  80. package/dist/esm/components/DictionaryFieldEditor/ContentEditorView/SafeHtmlRenderer.mjs.map +1 -1
  81. package/dist/esm/components/DictionaryFieldEditor/ContentEditorView/TextEditor.mjs +26 -24
  82. package/dist/esm/components/DictionaryFieldEditor/ContentEditorView/TextEditor.mjs.map +1 -1
  83. package/dist/esm/components/DictionaryFieldEditor/ContentEditorView/object.mjs.map +1 -1
  84. package/dist/esm/components/DictionaryFieldEditor/DictionaryCreationForm/DictionaryCreationForm.mjs +47 -73
  85. package/dist/esm/components/DictionaryFieldEditor/DictionaryCreationForm/DictionaryCreationForm.mjs.map +1 -1
  86. package/dist/esm/components/DictionaryFieldEditor/DictionaryCreationForm/dictionaryCreationForm.content.mjs +0 -62
  87. package/dist/esm/components/DictionaryFieldEditor/DictionaryCreationForm/dictionaryCreationForm.content.mjs.map +1 -1
  88. package/dist/esm/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.content.mjs.map +1 -1
  89. package/dist/esm/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.mjs +2 -4
  90. package/dist/esm/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.mjs.map +1 -1
  91. package/dist/esm/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.mjs +70 -151
  92. package/dist/esm/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.mjs.map +1 -1
  93. package/dist/esm/components/DictionaryFieldEditor/DictionaryDetails/dictionaryDetails.content.mjs +1 -1
  94. package/dist/esm/components/DictionaryFieldEditor/DictionaryDetails/dictionaryDetails.content.mjs.map +1 -1
  95. package/dist/esm/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.content.mjs.map +1 -1
  96. package/dist/esm/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.mjs.map +1 -1
  97. package/dist/esm/components/DictionaryFieldEditor/DictionaryFieldEditor.mjs +1 -1
  98. package/dist/esm/components/DictionaryFieldEditor/DictionaryFieldEditor.mjs.map +1 -1
  99. package/dist/esm/components/DictionaryFieldEditor/EnumKeyInput.mjs.map +1 -1
  100. package/dist/esm/components/DictionaryFieldEditor/JSONEditor.mjs.map +1 -1
  101. package/dist/esm/components/DictionaryFieldEditor/KeyPathBreadcrumb.mjs.map +1 -1
  102. package/dist/esm/components/DictionaryFieldEditor/NavigationView/NavigationViewNode.mjs +19 -14
  103. package/dist/esm/components/DictionaryFieldEditor/NavigationView/NavigationViewNode.mjs.map +1 -1
  104. package/dist/esm/components/DictionaryFieldEditor/NavigationView/navigationViewNode.content.mjs.map +1 -1
  105. package/dist/esm/components/DictionaryFieldEditor/NodeTypeSelector.mjs.map +1 -1
  106. package/dist/esm/components/DictionaryFieldEditor/SaveForm/SaveForm.mjs +5 -4
  107. package/dist/esm/components/DictionaryFieldEditor/SaveForm/SaveForm.mjs.map +1 -1
  108. package/dist/esm/components/DictionaryFieldEditor/SaveForm/saveForm.content.mjs.map +1 -1
  109. package/dist/esm/components/DictionaryFieldEditor/StructureEditor.mjs.map +1 -1
  110. package/dist/esm/components/DictionaryFieldEditor/StructureView/StructureView.mjs +6 -4
  111. package/dist/esm/components/DictionaryFieldEditor/StructureView/StructureView.mjs.map +1 -1
  112. package/dist/esm/components/DictionaryFieldEditor/StructureView/structureView.content.mjs.map +1 -1
  113. package/dist/esm/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcher.mjs.map +1 -1
  114. package/dist/esm/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcherContext.mjs.map +1 -1
  115. package/dist/esm/components/DictionaryFieldEditor/VersionSwitcherDropDown/versionSwitcherDropDown.content.mjs.map +1 -1
  116. package/dist/esm/components/DictionaryFieldEditor/contentEditor.content.mjs.map +1 -1
  117. package/dist/esm/components/DictionaryFieldEditor/dictionaryFieldEditor.content.mjs.map +1 -1
  118. package/dist/esm/components/DictionaryFieldEditor/getIsEditableSection.mjs.map +1 -1
  119. package/dist/esm/components/DictionaryFieldEditor/nodeTypeSelector.content.mjs.map +1 -1
  120. package/dist/esm/components/DropDown/index.mjs.map +1 -1
  121. package/dist/esm/components/EditableField/EditableFieldInput.mjs.map +1 -1
  122. package/dist/esm/components/EditableField/EditableFieldLayout.mjs.map +1 -1
  123. package/dist/esm/components/EditableField/EditableFieldTextArea.mjs.map +1 -1
  124. package/dist/esm/components/ExpandCollapse/ExpandCollapse.mjs.map +1 -1
  125. package/dist/esm/components/ExpandCollapse/expandCollapse.content.mjs.map +1 -1
  126. package/dist/esm/components/Flags/Flag.mjs.map +1 -1
  127. package/dist/esm/components/Flags/ae.mjs +9 -6
  128. package/dist/esm/components/Flags/ae.mjs.map +1 -1
  129. package/dist/esm/components/Flags/af.mjs +26 -23
  130. package/dist/esm/components/Flags/af.mjs.map +1 -1
  131. package/dist/esm/components/Flags/al.mjs +7 -5
  132. package/dist/esm/components/Flags/al.mjs.map +1 -1
  133. package/dist/esm/components/Flags/am.mjs +7 -5
  134. package/dist/esm/components/Flags/am.mjs.map +1 -1
  135. package/dist/esm/components/Flags/ar.mjs +51 -31
  136. package/dist/esm/components/Flags/ar.mjs.map +1 -1
  137. package/dist/esm/components/Flags/at.mjs +5 -4
  138. package/dist/esm/components/Flags/at.mjs.map +1 -1
  139. package/dist/esm/components/Flags/au.mjs +13 -8
  140. package/dist/esm/components/Flags/au.mjs.map +1 -1
  141. package/dist/esm/components/Flags/az.mjs +13 -8
  142. package/dist/esm/components/Flags/az.mjs.map +1 -1
  143. package/dist/esm/components/Flags/ba.mjs +8 -7
  144. package/dist/esm/components/Flags/ba.mjs.map +1 -1
  145. package/dist/esm/components/Flags/bd.mjs +5 -4
  146. package/dist/esm/components/Flags/bd.mjs.map +1 -1
  147. package/dist/esm/components/Flags/be.mjs +5 -5
  148. package/dist/esm/components/Flags/be.mjs.map +1 -1
  149. package/dist/esm/components/Flags/bg.mjs +7 -5
  150. package/dist/esm/components/Flags/bg.mjs.map +1 -1
  151. package/dist/esm/components/Flags/bh.mjs +5 -4
  152. package/dist/esm/components/Flags/bh.mjs.map +1 -1
  153. package/dist/esm/components/Flags/bn.mjs +12 -8
  154. package/dist/esm/components/Flags/bn.mjs.map +1 -1
  155. package/dist/esm/components/Flags/bo.mjs +1306 -656
  156. package/dist/esm/components/Flags/bo.mjs.map +1 -1
  157. package/dist/esm/components/Flags/br.mjs +26 -26
  158. package/dist/esm/components/Flags/br.mjs.map +1 -1
  159. package/dist/esm/components/Flags/bw.mjs +4 -4
  160. package/dist/esm/components/Flags/bw.mjs.map +1 -1
  161. package/dist/esm/components/Flags/by.mjs +11 -8
  162. package/dist/esm/components/Flags/by.mjs.map +1 -1
  163. package/dist/esm/components/Flags/bz.mjs +111 -81
  164. package/dist/esm/components/Flags/bz.mjs.map +1 -1
  165. package/dist/esm/components/Flags/ca.mjs +5 -4
  166. package/dist/esm/components/Flags/ca.mjs.map +1 -1
  167. package/dist/esm/components/Flags/ch.mjs +4 -4
  168. package/dist/esm/components/Flags/ch.mjs.map +1 -1
  169. package/dist/esm/components/Flags/cl.mjs +9 -8
  170. package/dist/esm/components/Flags/cl.mjs.map +1 -1
  171. package/dist/esm/components/Flags/cn.mjs +15 -9
  172. package/dist/esm/components/Flags/cn.mjs.map +1 -1
  173. package/dist/esm/components/Flags/co.mjs +5 -5
  174. package/dist/esm/components/Flags/co.mjs.map +1 -1
  175. package/dist/esm/components/Flags/cr.mjs +5 -5
  176. package/dist/esm/components/Flags/cr.mjs.map +1 -1
  177. package/dist/esm/components/Flags/cu.mjs +9 -8
  178. package/dist/esm/components/Flags/cu.mjs.map +1 -1
  179. package/dist/esm/components/Flags/cv.mjs +9 -8
  180. package/dist/esm/components/Flags/cv.mjs.map +1 -1
  181. package/dist/esm/components/Flags/cz.mjs +7 -5
  182. package/dist/esm/components/Flags/cz.mjs.map +1 -1
  183. package/dist/esm/components/Flags/de.mjs +7 -5
  184. package/dist/esm/components/Flags/de.mjs.map +1 -1
  185. package/dist/esm/components/Flags/dj.mjs +9 -8
  186. package/dist/esm/components/Flags/dj.mjs.map +1 -1
  187. package/dist/esm/components/Flags/dk.mjs +7 -5
  188. package/dist/esm/components/Flags/dk.mjs.map +1 -1
  189. package/dist/esm/components/Flags/do.mjs +71 -53
  190. package/dist/esm/components/Flags/do.mjs.map +1 -1
  191. package/dist/esm/components/Flags/dz.mjs +7 -5
  192. package/dist/esm/components/Flags/dz.mjs.map +1 -1
  193. package/dist/esm/components/Flags/ec.mjs +165 -122
  194. package/dist/esm/components/Flags/ec.mjs.map +1 -1
  195. package/dist/esm/components/Flags/ee.mjs +7 -5
  196. package/dist/esm/components/Flags/ee.mjs.map +1 -1
  197. package/dist/esm/components/Flags/eg.mjs +28 -25
  198. package/dist/esm/components/Flags/eg.mjs.map +1 -1
  199. package/dist/esm/components/Flags/es-ct.mjs +5 -4
  200. package/dist/esm/components/Flags/es-ct.mjs.map +1 -1
  201. package/dist/esm/components/Flags/es-ga.mjs +184 -183
  202. package/dist/esm/components/Flags/es-ga.mjs.map +1 -1
  203. package/dist/esm/components/Flags/es-pv.mjs +7 -5
  204. package/dist/esm/components/Flags/es-pv.mjs.map +1 -1
  205. package/dist/esm/components/Flags/es.mjs +1072 -531
  206. package/dist/esm/components/Flags/es.mjs.map +1 -1
  207. package/dist/esm/components/Flags/et.mjs +10 -9
  208. package/dist/esm/components/Flags/et.mjs.map +1 -1
  209. package/dist/esm/components/Flags/fi.mjs +7 -5
  210. package/dist/esm/components/Flags/fi.mjs.map +1 -1
  211. package/dist/esm/components/Flags/flags.mjs.map +1 -1
  212. package/dist/esm/components/Flags/fo.mjs +8 -7
  213. package/dist/esm/components/Flags/fo.mjs.map +1 -1
  214. package/dist/esm/components/Flags/fr.mjs +7 -5
  215. package/dist/esm/components/Flags/fr.mjs.map +1 -1
  216. package/dist/esm/components/Flags/gb-wls.mjs +10 -8
  217. package/dist/esm/components/Flags/gb-wls.mjs.map +1 -1
  218. package/dist/esm/components/Flags/gb.mjs +11 -7
  219. package/dist/esm/components/Flags/gb.mjs.map +1 -1
  220. package/dist/esm/components/Flags/ge.mjs +9 -6
  221. package/dist/esm/components/Flags/ge.mjs.map +1 -1
  222. package/dist/esm/components/Flags/gh.mjs +9 -6
  223. package/dist/esm/components/Flags/gh.mjs.map +1 -1
  224. package/dist/esm/components/Flags/gr.mjs +23 -13
  225. package/dist/esm/components/Flags/gr.mjs.map +1 -1
  226. package/dist/esm/components/Flags/gt.mjs +116 -113
  227. package/dist/esm/components/Flags/gt.mjs.map +1 -1
  228. package/dist/esm/components/Flags/gw.mjs +19 -12
  229. package/dist/esm/components/Flags/gw.mjs.map +1 -1
  230. package/dist/esm/components/Flags/hk.mjs +13 -8
  231. package/dist/esm/components/Flags/hk.mjs.map +1 -1
  232. package/dist/esm/components/Flags/hn.mjs +21 -15
  233. package/dist/esm/components/Flags/hn.mjs.map +1 -1
  234. package/dist/esm/components/Flags/hr.mjs +49 -23
  235. package/dist/esm/components/Flags/hr.mjs.map +1 -1
  236. package/dist/esm/components/Flags/hu.mjs +4 -4
  237. package/dist/esm/components/Flags/hu.mjs.map +1 -1
  238. package/dist/esm/components/Flags/id.mjs +5 -4
  239. package/dist/esm/components/Flags/id.mjs.map +1 -1
  240. package/dist/esm/components/Flags/ie.mjs +5 -5
  241. package/dist/esm/components/Flags/ie.mjs.map +1 -1
  242. package/dist/esm/components/Flags/il.mjs +10 -9
  243. package/dist/esm/components/Flags/il.mjs.map +1 -1
  244. package/dist/esm/components/Flags/in.mjs +18 -15
  245. package/dist/esm/components/Flags/in.mjs.map +1 -1
  246. package/dist/esm/components/Flags/iq.mjs +11 -8
  247. package/dist/esm/components/Flags/iq.mjs.map +1 -1
  248. package/dist/esm/components/Flags/ir.mjs +33 -32
  249. package/dist/esm/components/Flags/ir.mjs.map +1 -1
  250. package/dist/esm/components/Flags/is.mjs +8 -7
  251. package/dist/esm/components/Flags/is.mjs.map +1 -1
  252. package/dist/esm/components/Flags/it.mjs +5 -5
  253. package/dist/esm/components/Flags/it.mjs.map +1 -1
  254. package/dist/esm/components/Flags/jm.mjs +5 -5
  255. package/dist/esm/components/Flags/jm.mjs.map +1 -1
  256. package/dist/esm/components/Flags/jo.mjs +11 -10
  257. package/dist/esm/components/Flags/jo.mjs.map +1 -1
  258. package/dist/esm/components/Flags/jp.mjs +7 -6
  259. package/dist/esm/components/Flags/jp.mjs.map +1 -1
  260. package/dist/esm/components/Flags/ke.mjs +28 -19
  261. package/dist/esm/components/Flags/ke.mjs.map +1 -1
  262. package/dist/esm/components/Flags/kg.mjs +11 -10
  263. package/dist/esm/components/Flags/kg.mjs.map +1 -1
  264. package/dist/esm/components/Flags/kh.mjs +20 -18
  265. package/dist/esm/components/Flags/kh.mjs.map +1 -1
  266. package/dist/esm/components/Flags/km.mjs +12 -11
  267. package/dist/esm/components/Flags/km.mjs.map +1 -1
  268. package/dist/esm/components/Flags/kr.mjs +14 -13
  269. package/dist/esm/components/Flags/kr.mjs.map +1 -1
  270. package/dist/esm/components/Flags/kw.mjs +9 -8
  271. package/dist/esm/components/Flags/kw.mjs.map +1 -1
  272. package/dist/esm/components/Flags/kz.mjs +18 -17
  273. package/dist/esm/components/Flags/kz.mjs.map +1 -1
  274. package/dist/esm/components/Flags/la.mjs +8 -7
  275. package/dist/esm/components/Flags/la.mjs.map +1 -1
  276. package/dist/esm/components/Flags/lb.mjs +10 -9
  277. package/dist/esm/components/Flags/lb.mjs.map +1 -1
  278. package/dist/esm/components/Flags/li.mjs +33 -31
  279. package/dist/esm/components/Flags/li.mjs.map +1 -1
  280. package/dist/esm/components/Flags/lk.mjs +22 -14
  281. package/dist/esm/components/Flags/lk.mjs.map +1 -1
  282. package/dist/esm/components/Flags/lt.mjs +5 -5
  283. package/dist/esm/components/Flags/lt.mjs.map +1 -1
  284. package/dist/esm/components/Flags/lu.mjs +7 -5
  285. package/dist/esm/components/Flags/lu.mjs.map +1 -1
  286. package/dist/esm/components/Flags/lv.mjs +3 -3
  287. package/dist/esm/components/Flags/lv.mjs.map +1 -1
  288. package/dist/esm/components/Flags/ly.mjs +8 -7
  289. package/dist/esm/components/Flags/ly.mjs.map +1 -1
  290. package/dist/esm/components/Flags/ma.mjs +5 -4
  291. package/dist/esm/components/Flags/ma.mjs.map +1 -1
  292. package/dist/esm/components/Flags/mc.mjs +4 -4
  293. package/dist/esm/components/Flags/mc.mjs.map +1 -1
  294. package/dist/esm/components/Flags/md.mjs +93 -61
  295. package/dist/esm/components/Flags/md.mjs.map +1 -1
  296. package/dist/esm/components/Flags/mk.mjs +7 -5
  297. package/dist/esm/components/Flags/mk.mjs.map +1 -1
  298. package/dist/esm/components/Flags/mm.mjs +13 -10
  299. package/dist/esm/components/Flags/mm.mjs.map +1 -1
  300. package/dist/esm/components/Flags/mn.mjs +19 -12
  301. package/dist/esm/components/Flags/mn.mjs.map +1 -1
  302. package/dist/esm/components/Flags/mo.mjs +10 -7
  303. package/dist/esm/components/Flags/mo.mjs.map +1 -1
  304. package/dist/esm/components/Flags/mr.mjs +9 -6
  305. package/dist/esm/components/Flags/mr.mjs.map +1 -1
  306. package/dist/esm/components/Flags/mt.mjs +44 -39
  307. package/dist/esm/components/Flags/mt.mjs.map +1 -1
  308. package/dist/esm/components/Flags/mv.mjs +9 -6
  309. package/dist/esm/components/Flags/mv.mjs.map +1 -1
  310. package/dist/esm/components/Flags/mx.mjs +748 -377
  311. package/dist/esm/components/Flags/mx.mjs.map +1 -1
  312. package/dist/esm/components/Flags/my.mjs +21 -20
  313. package/dist/esm/components/Flags/my.mjs.map +1 -1
  314. package/dist/esm/components/Flags/mz.mjs +17 -16
  315. package/dist/esm/components/Flags/mz.mjs.map +1 -1
  316. package/dist/esm/components/Flags/ng.mjs +4 -4
  317. package/dist/esm/components/Flags/ng.mjs.map +1 -1
  318. package/dist/esm/components/Flags/ni.mjs +103 -98
  319. package/dist/esm/components/Flags/ni.mjs.map +1 -1
  320. package/dist/esm/components/Flags/nl.mjs +7 -5
  321. package/dist/esm/components/Flags/nl.mjs.map +1 -1
  322. package/dist/esm/components/Flags/no.mjs +11 -7
  323. package/dist/esm/components/Flags/no.mjs.map +1 -1
  324. package/dist/esm/components/Flags/np.mjs +7 -6
  325. package/dist/esm/components/Flags/np.mjs.map +1 -1
  326. package/dist/esm/components/Flags/nz.mjs +30 -20
  327. package/dist/esm/components/Flags/nz.mjs.map +1 -1
  328. package/dist/esm/components/Flags/om.mjs +102 -101
  329. package/dist/esm/components/Flags/om.mjs.map +1 -1
  330. package/dist/esm/components/Flags/pa.mjs +9 -8
  331. package/dist/esm/components/Flags/pa.mjs.map +1 -1
  332. package/dist/esm/components/Flags/pe.mjs +5 -4
  333. package/dist/esm/components/Flags/pe.mjs.map +1 -1
  334. package/dist/esm/components/Flags/ph.mjs +9 -6
  335. package/dist/esm/components/Flags/ph.mjs.map +1 -1
  336. package/dist/esm/components/Flags/pk.mjs +8 -7
  337. package/dist/esm/components/Flags/pk.mjs.map +1 -1
  338. package/dist/esm/components/Flags/pl.mjs +3 -3
  339. package/dist/esm/components/Flags/pl.mjs.map +1 -1
  340. package/dist/esm/components/Flags/pr.mjs +9 -8
  341. package/dist/esm/components/Flags/pr.mjs.map +1 -1
  342. package/dist/esm/components/Flags/ps.mjs +10 -9
  343. package/dist/esm/components/Flags/ps.mjs.map +1 -1
  344. package/dist/esm/components/Flags/pt.mjs +34 -31
  345. package/dist/esm/components/Flags/pt.mjs.map +1 -1
  346. package/dist/esm/components/Flags/py.mjs +17 -11
  347. package/dist/esm/components/Flags/py.mjs.map +1 -1
  348. package/dist/esm/components/Flags/qa.mjs +5 -4
  349. package/dist/esm/components/Flags/qa.mjs.map +1 -1
  350. package/dist/esm/components/Flags/ro.mjs +5 -5
  351. package/dist/esm/components/Flags/ro.mjs.map +1 -1
  352. package/dist/esm/components/Flags/rs.mjs +259 -258
  353. package/dist/esm/components/Flags/rs.mjs.map +1 -1
  354. package/dist/esm/components/Flags/ru.mjs +7 -5
  355. package/dist/esm/components/Flags/ru.mjs.map +1 -1
  356. package/dist/esm/components/Flags/sa.mjs +21 -20
  357. package/dist/esm/components/Flags/sa.mjs.map +1 -1
  358. package/dist/esm/components/Flags/sd.mjs +9 -8
  359. package/dist/esm/components/Flags/sd.mjs.map +1 -1
  360. package/dist/esm/components/Flags/se.mjs +5 -4
  361. package/dist/esm/components/Flags/se.mjs.map +1 -1
  362. package/dist/esm/components/Flags/sg.mjs +9 -8
  363. package/dist/esm/components/Flags/sg.mjs.map +1 -1
  364. package/dist/esm/components/Flags/si.mjs +14 -13
  365. package/dist/esm/components/Flags/si.mjs.map +1 -1
  366. package/dist/esm/components/Flags/sk.mjs +15 -9
  367. package/dist/esm/components/Flags/sk.mjs.map +1 -1
  368. package/dist/esm/components/Flags/so.mjs +7 -6
  369. package/dist/esm/components/Flags/so.mjs.map +1 -1
  370. package/dist/esm/components/Flags/st.mjs +17 -13
  371. package/dist/esm/components/Flags/st.mjs.map +1 -1
  372. package/dist/esm/components/Flags/sv.mjs +538 -522
  373. package/dist/esm/components/Flags/sv.mjs.map +1 -1
  374. package/dist/esm/components/Flags/sy.mjs +9 -6
  375. package/dist/esm/components/Flags/sy.mjs.map +1 -1
  376. package/dist/esm/components/Flags/td.mjs +4 -4
  377. package/dist/esm/components/Flags/td.mjs.map +1 -1
  378. package/dist/esm/components/Flags/th.mjs +4 -4
  379. package/dist/esm/components/Flags/th.mjs.map +1 -1
  380. package/dist/esm/components/Flags/tl.mjs +9 -8
  381. package/dist/esm/components/Flags/tl.mjs.map +1 -1
  382. package/dist/esm/components/Flags/tn.mjs +5 -4
  383. package/dist/esm/components/Flags/tn.mjs.map +1 -1
  384. package/dist/esm/components/Flags/tr.mjs +5 -5
  385. package/dist/esm/components/Flags/tr.mjs.map +1 -1
  386. package/dist/esm/components/Flags/tt.mjs +7 -5
  387. package/dist/esm/components/Flags/tt.mjs.map +1 -1
  388. package/dist/esm/components/Flags/tw.mjs +7 -6
  389. package/dist/esm/components/Flags/tw.mjs.map +1 -1
  390. package/dist/esm/components/Flags/tz.mjs +9 -8
  391. package/dist/esm/components/Flags/tz.mjs.map +1 -1
  392. package/dist/esm/components/Flags/ua.mjs +4 -4
  393. package/dist/esm/components/Flags/ua.mjs.map +1 -1
  394. package/dist/esm/components/Flags/ug.mjs +26 -25
  395. package/dist/esm/components/Flags/ug.mjs.map +1 -1
  396. package/dist/esm/components/Flags/us.mjs +12 -8
  397. package/dist/esm/components/Flags/us.mjs.map +1 -1
  398. package/dist/esm/components/Flags/uy.mjs +15 -12
  399. package/dist/esm/components/Flags/uy.mjs.map +1 -1
  400. package/dist/esm/components/Flags/uz.mjs +27 -21
  401. package/dist/esm/components/Flags/uz.mjs.map +1 -1
  402. package/dist/esm/components/Flags/ve.mjs +21 -16
  403. package/dist/esm/components/Flags/ve.mjs.map +1 -1
  404. package/dist/esm/components/Flags/vn.mjs +7 -6
  405. package/dist/esm/components/Flags/vn.mjs.map +1 -1
  406. package/dist/esm/components/Flags/xx.mjs +5 -4
  407. package/dist/esm/components/Flags/xx.mjs.map +1 -1
  408. package/dist/esm/components/Flags/ye.mjs +5 -5
  409. package/dist/esm/components/Flags/ye.mjs.map +1 -1
  410. package/dist/esm/components/Flags/za.mjs +12 -11
  411. package/dist/esm/components/Flags/za.mjs.map +1 -1
  412. package/dist/esm/components/Flags/zw.mjs +16 -15
  413. package/dist/esm/components/Flags/zw.mjs.map +1 -1
  414. package/dist/esm/components/Footer/index.mjs.map +1 -1
  415. package/dist/esm/components/Form/FormBase.mjs.map +1 -1
  416. package/dist/esm/components/Form/FormControl.mjs.map +1 -1
  417. package/dist/esm/components/Form/FormDescription.mjs.map +1 -1
  418. package/dist/esm/components/Form/FormField.mjs +2 -1
  419. package/dist/esm/components/Form/FormField.mjs.map +1 -1
  420. package/dist/esm/components/Form/FormItem.mjs.map +1 -1
  421. package/dist/esm/components/Form/FormLabel.mjs.map +1 -1
  422. package/dist/esm/components/Form/FormMessage.mjs.map +1 -1
  423. package/dist/esm/components/Form/elements/AutoSizeTextAreaElement.mjs.map +1 -1
  424. package/dist/esm/components/Form/elements/CheckboxElement.mjs.map +1 -1
  425. package/dist/esm/components/Form/elements/EditableFieldInputElement.mjs.map +1 -1
  426. package/dist/esm/components/Form/elements/EditableFieldTextAreaElement.mjs.map +1 -1
  427. package/dist/esm/components/Form/elements/FormElement.mjs.map +1 -1
  428. package/dist/esm/components/Form/elements/FormElementWrapper.mjs.map +1 -1
  429. package/dist/esm/components/Form/elements/InputElement.mjs.map +1 -1
  430. package/dist/esm/components/Form/elements/InputPasswordElement.mjs.map +1 -1
  431. package/dist/esm/components/Form/elements/MultiselectElement.mjs.map +1 -1
  432. package/dist/esm/components/Form/elements/OTPElement.mjs.map +1 -1
  433. package/dist/esm/components/Form/elements/SearchInputElement.mjs.map +1 -1
  434. package/dist/esm/components/Form/elements/SelectElement.mjs.map +1 -1
  435. package/dist/esm/components/Form/elements/SwitchSelectorElement.mjs.map +1 -1
  436. package/dist/esm/components/Form/elements/TextAreaElement.mjs.map +1 -1
  437. package/dist/esm/components/Form/layout/FormItemLayout.mjs.map +1 -1
  438. package/dist/esm/components/Form/layout/FormLabelLayout.mjs.map +1 -1
  439. package/dist/esm/components/Form/layout/RequiredStar.mjs.map +1 -1
  440. package/dist/esm/components/HTMLRender/HTMLRender.mjs.map +1 -1
  441. package/dist/esm/components/Headers/index.mjs.map +1 -1
  442. package/dist/esm/components/HeightResizer/index.mjs.map +1 -1
  443. package/dist/esm/components/HideShow/index.mjs.map +1 -1
  444. package/dist/esm/components/IDE/Code.mjs +1 -1
  445. package/dist/esm/components/IDE/Code.mjs.map +1 -1
  446. package/dist/esm/components/IDE/CodeBlockClient.mjs.map +1 -1
  447. package/dist/esm/components/IDE/CodeBlockHighlight.mjs.map +1 -1
  448. package/dist/esm/components/IDE/CodeBlockServer.mjs.map +1 -1
  449. package/dist/esm/components/IDE/CodeBlockShiki.mjs.map +1 -1
  450. package/dist/esm/components/IDE/CodeConditionalRenderer.mjs.map +1 -1
  451. package/dist/esm/components/IDE/CodeContext.mjs.map +1 -1
  452. package/dist/esm/components/IDE/CodeFormatSelector.mjs.map +1 -1
  453. package/dist/esm/components/IDE/ContentDeclarationFormatSelector.mjs.map +1 -1
  454. package/dist/esm/components/IDE/CopyCode.mjs.map +1 -1
  455. package/dist/esm/components/IDE/FileList.mjs.map +1 -1
  456. package/dist/esm/components/IDE/FileTree.mjs.map +1 -1
  457. package/dist/esm/components/IDE/IDE.mjs +2 -1
  458. package/dist/esm/components/IDE/IDE.mjs.map +1 -1
  459. package/dist/esm/components/IDE/MarkDownRender.mjs.map +1 -1
  460. package/dist/esm/components/IDE/MonacoCode.mjs.map +1 -1
  461. package/dist/esm/components/IDE/PackageManagerSelector.mjs.map +1 -1
  462. package/dist/esm/components/IDE/code.content.mjs.map +1 -1
  463. package/dist/esm/components/IDE/codeTransformer.mjs +7 -4
  464. package/dist/esm/components/IDE/codeTransformer.mjs.map +1 -1
  465. package/dist/esm/components/IDE/copyCode.content.mjs.map +1 -1
  466. package/dist/esm/components/IDE/createFileTree.mjs.map +1 -1
  467. package/dist/esm/components/IDE/selectors.content.mjs.map +1 -1
  468. package/dist/esm/components/InformationTag/index.mjs.map +1 -1
  469. package/dist/esm/components/Input/Checkbox.mjs.map +1 -1
  470. package/dist/esm/components/Input/Input.mjs.map +1 -1
  471. package/dist/esm/components/Input/InputPassword.mjs.map +1 -1
  472. package/dist/esm/components/Input/OTPInput.mjs +2 -1
  473. package/dist/esm/components/Input/OTPInput.mjs.map +1 -1
  474. package/dist/esm/components/Input/Radio.mjs.map +1 -1
  475. package/dist/esm/components/Input/SearchInput.mjs.map +1 -1
  476. package/dist/esm/components/KeyboardScreenAdapter/index.mjs.map +1 -1
  477. package/dist/esm/components/KeyboardShortcut/KeyboardShortcut.mjs +2 -1
  478. package/dist/esm/components/KeyboardShortcut/KeyboardShortcut.mjs.map +1 -1
  479. package/dist/esm/components/Label/index.mjs.map +1 -1
  480. package/dist/esm/components/LanguageBackground/LanguageBackground.mjs.map +1 -1
  481. package/dist/esm/components/LanguageBackground/LanguageSection.mjs.map +1 -1
  482. package/dist/esm/components/Link/Link.mjs.map +1 -1
  483. package/dist/esm/components/Loader/index.content.mjs.map +1 -1
  484. package/dist/esm/components/Loader/index.mjs.map +1 -1
  485. package/dist/esm/components/Loader/spinner.mjs.map +1 -1
  486. package/dist/esm/components/LocaleSwitcherContentDropDown/LocaleSwitcherContent.mjs.map +1 -1
  487. package/dist/esm/components/LocaleSwitcherContentDropDown/LocaleSwitcherContentContext.mjs.map +1 -1
  488. package/dist/esm/components/LocaleSwitcherContentDropDown/localeSwitcher.content.mjs.map +1 -1
  489. package/dist/esm/components/LocaleSwitcherDropDown/LocaleSwitcher.mjs +4 -2
  490. package/dist/esm/components/LocaleSwitcherDropDown/LocaleSwitcher.mjs.map +1 -1
  491. package/dist/esm/components/LocaleSwitcherDropDown/localeSwitcher.content.mjs.map +1 -1
  492. package/dist/esm/components/Logo/Logo.mjs.map +1 -1
  493. package/dist/esm/components/Logo/LogoTextOnly.mjs.map +1 -1
  494. package/dist/esm/components/Logo/LogoWithText.mjs.map +1 -1
  495. package/dist/esm/components/Logo/LogoWithTextBelow.mjs.map +1 -1
  496. package/dist/esm/components/MarkDownRender/MarkDownIframe.mjs.map +1 -1
  497. package/dist/esm/components/MarkDownRender/MarkDownRender.mjs +1 -1
  498. package/dist/esm/components/MarkDownRender/MarkDownRender.mjs.map +1 -1
  499. package/dist/esm/components/MarkdownEditor/MarkdownEditor.mjs +2 -3
  500. package/dist/esm/components/MarkdownEditor/MarkdownEditor.mjs.map +1 -1
  501. package/dist/esm/components/MarkdownEditor/extensions.mjs.map +1 -1
  502. package/dist/esm/components/MarkdownEditor/generative/AICompletionCommands.mjs.map +1 -1
  503. package/dist/esm/components/MarkdownEditor/generative/AISelector.mjs +2 -1
  504. package/dist/esm/components/MarkdownEditor/generative/AISelector.mjs.map +1 -1
  505. package/dist/esm/components/MarkdownEditor/generative/AISelectorCommands.mjs.map +1 -1
  506. package/dist/esm/components/MarkdownEditor/generative/GenerativeMenuSwitch.mjs.map +1 -1
  507. package/dist/esm/components/MarkdownEditor/generative/useAICompletion.mjs.map +1 -1
  508. package/dist/esm/components/MarkdownEditor/imageUpload.mjs +2 -1
  509. package/dist/esm/components/MarkdownEditor/imageUpload.mjs.map +1 -1
  510. package/dist/esm/components/MarkdownEditor/markdownEditor.content.mjs +118 -59
  511. package/dist/esm/components/MarkdownEditor/markdownEditor.content.mjs.map +1 -1
  512. package/dist/esm/components/MarkdownEditor/novel/components/editor-bubble-item.mjs.map +1 -1
  513. package/dist/esm/components/MarkdownEditor/novel/components/editor-bubble.mjs.map +1 -1
  514. package/dist/esm/components/MarkdownEditor/novel/components/editor-command-item.mjs.map +1 -1
  515. package/dist/esm/components/MarkdownEditor/novel/components/editor-command.mjs.map +1 -1
  516. package/dist/esm/components/MarkdownEditor/novel/components/editor.mjs.map +1 -1
  517. package/dist/esm/components/MarkdownEditor/novel/extensions/ai-highlight.mjs.map +1 -1
  518. package/dist/esm/components/MarkdownEditor/novel/extensions/custom-keymap.mjs.map +1 -1
  519. package/dist/esm/components/MarkdownEditor/novel/extensions/image-resizer.mjs +91 -37
  520. package/dist/esm/components/MarkdownEditor/novel/extensions/image-resizer.mjs.map +1 -1
  521. package/dist/esm/components/MarkdownEditor/novel/extensions/index.mjs.map +1 -1
  522. package/dist/esm/components/MarkdownEditor/novel/extensions/slash-command.mjs +49 -13
  523. package/dist/esm/components/MarkdownEditor/novel/extensions/slash-command.mjs.map +1 -1
  524. package/dist/esm/components/MarkdownEditor/novel/extensions/updated-image.mjs.map +1 -1
  525. package/dist/esm/components/MarkdownEditor/novel/plugins/upload-images.mjs.map +1 -1
  526. package/dist/esm/components/MarkdownEditor/novel/utils/atoms.mjs.map +1 -1
  527. package/dist/esm/components/MarkdownEditor/novel/utils/index.mjs.map +1 -1
  528. package/dist/esm/components/MarkdownEditor/selectors/ColorSelector.mjs.map +1 -1
  529. package/dist/esm/components/MarkdownEditor/selectors/LinkSelector.mjs.map +1 -1
  530. package/dist/esm/components/MarkdownEditor/selectors/NodeSelector.mjs.map +1 -1
  531. package/dist/esm/components/MarkdownEditor/selectors/TextButtons.mjs.map +1 -1
  532. package/dist/esm/components/MarkdownEditor/slashCommand.mjs.map +1 -1
  533. package/dist/esm/components/MaxHeightSmoother/index.mjs.map +1 -1
  534. package/dist/esm/components/MaxWidthSmoother/index.mjs.map +1 -1
  535. package/dist/esm/components/Modal/Modal.mjs.map +1 -1
  536. package/dist/esm/components/Navbar/Burger.mjs.map +1 -1
  537. package/dist/esm/components/Navbar/DesktopNavbar.mjs.map +1 -1
  538. package/dist/esm/components/Navbar/MobileNavbar.mjs.map +1 -1
  539. package/dist/esm/components/Navbar/index.mjs.map +1 -1
  540. package/dist/esm/components/Navbar/useNavigation.mjs.map +1 -1
  541. package/dist/esm/components/Pagination/NumberItemsSelector.mjs.map +1 -1
  542. package/dist/esm/components/Pagination/Pagination.mjs.map +1 -1
  543. package/dist/esm/components/Pagination/ShowingResultsNumberItems.mjs.map +1 -1
  544. package/dist/esm/components/Pagination/pagination.content.mjs.map +1 -1
  545. package/dist/esm/components/Pattern/DotPattern.mjs.map +1 -1
  546. package/dist/esm/components/Pattern/GridDistortionPattern.mjs +2 -1
  547. package/dist/esm/components/Pattern/GridDistortionPattern.mjs.map +1 -1
  548. package/dist/esm/components/Pattern/GridPattern.mjs.map +1 -1
  549. package/dist/esm/components/Pattern/SpotLight.mjs.map +1 -1
  550. package/dist/esm/components/Popover/dynamic.mjs.map +1 -1
  551. package/dist/esm/components/Popover/static.mjs.map +1 -1
  552. package/dist/esm/components/PressableSpan/PressableSpan.mjs.map +1 -1
  553. package/dist/esm/components/RightDrawer/RightDrawer.mjs.map +1 -1
  554. package/dist/esm/components/RightDrawer/isElementAtTopAndNotCovered.mjs.map +1 -1
  555. package/dist/esm/components/RightDrawer/rightDrawer.content.mjs.map +1 -1
  556. package/dist/esm/components/RightDrawer/useRightDrawer.mjs.map +1 -1
  557. package/dist/esm/components/Select/Multiselect.mjs +26 -24
  558. package/dist/esm/components/Select/Multiselect.mjs.map +1 -1
  559. package/dist/esm/components/Select/Select.mjs.map +1 -1
  560. package/dist/esm/components/SocialNetworks/DiscordLogo.mjs.map +1 -1
  561. package/dist/esm/components/SocialNetworks/FacebookLogo.mjs.map +1 -1
  562. package/dist/esm/components/SocialNetworks/InstagramLogo.mjs.map +1 -1
  563. package/dist/esm/components/SocialNetworks/ProductHuntLogo.mjs.map +1 -1
  564. package/dist/esm/components/SocialNetworks/TiktokLogo.mjs.map +1 -1
  565. package/dist/esm/components/SocialNetworks/XLogo.mjs.map +1 -1
  566. package/dist/esm/components/SocialNetworks/YoutubeLogo.mjs.map +1 -1
  567. package/dist/esm/components/SocialNetworks/index.mjs.map +1 -1
  568. package/dist/esm/components/Steps/index.mjs.map +1 -1
  569. package/dist/esm/components/Steps/steps.content.mjs.map +1 -1
  570. package/dist/esm/components/SwitchSelector/SwitchSelector.mjs.map +1 -1
  571. package/dist/esm/components/SwitchSelector/VerticalSwitchSelector.mjs.map +1 -1
  572. package/dist/esm/components/SwitchSelector/useSwitchSelector.mjs +0 -1
  573. package/dist/esm/components/SwitchSelector/useSwitchSelector.mjs.map +1 -1
  574. package/dist/esm/components/Tab/Tab.mjs +4 -2
  575. package/dist/esm/components/Tab/Tab.mjs.map +1 -1
  576. package/dist/esm/components/Tab/TabContext.mjs.map +1 -1
  577. package/dist/esm/components/TabSelector/TabSelector.mjs.map +1 -1
  578. package/dist/esm/components/Table/ExpandButton.mjs.map +1 -1
  579. package/dist/esm/components/Table/SmartTable.mjs.map +1 -1
  580. package/dist/esm/components/Table/Table.mjs.map +1 -1
  581. package/dist/esm/components/Table/TableElements.mjs.map +1 -1
  582. package/dist/esm/components/Table/table.content.mjs.map +1 -1
  583. package/dist/esm/components/Table/useTableWidths.mjs.map +1 -1
  584. package/dist/esm/components/Tag/index.mjs.map +1 -1
  585. package/dist/esm/components/TechLogo/TechLogo.mjs.map +1 -1
  586. package/dist/esm/components/TechLogo/logos/Adonis.mjs.map +1 -1
  587. package/dist/esm/components/TechLogo/logos/Angular.mjs.map +1 -1
  588. package/dist/esm/components/TechLogo/logos/Anthropic.mjs.map +1 -1
  589. package/dist/esm/components/TechLogo/logos/Astro.mjs.map +1 -1
  590. package/dist/esm/components/TechLogo/logos/Atlassian.mjs.map +1 -1
  591. package/dist/esm/components/TechLogo/logos/Bitbucket.mjs.map +1 -1
  592. package/dist/esm/components/TechLogo/logos/ChatGPT.mjs.map +1 -1
  593. package/dist/esm/components/TechLogo/logos/Claude.mjs.map +1 -1
  594. package/dist/esm/components/TechLogo/logos/DeepSeek.mjs.map +1 -1
  595. package/dist/esm/components/TechLogo/logos/Express.mjs.map +1 -1
  596. package/dist/esm/components/TechLogo/logos/Fastify.mjs.map +1 -1
  597. package/dist/esm/components/TechLogo/logos/Gemini.mjs.map +1 -1
  598. package/dist/esm/components/TechLogo/logos/GitHub.mjs.map +1 -1
  599. package/dist/esm/components/TechLogo/logos/GitLab.mjs.map +1 -1
  600. package/dist/esm/components/TechLogo/logos/Google.mjs.map +1 -1
  601. package/dist/esm/components/TechLogo/logos/GoogleAI.mjs.map +1 -1
  602. package/dist/esm/components/TechLogo/logos/Grok.mjs.map +1 -1
  603. package/dist/esm/components/TechLogo/logos/Hono.mjs.map +1 -1
  604. package/dist/esm/components/TechLogo/logos/LinkedIn.mjs.map +1 -1
  605. package/dist/esm/components/TechLogo/logos/Lit.mjs.map +1 -1
  606. package/dist/esm/components/TechLogo/logos/Lynx.mjs.map +1 -1
  607. package/dist/esm/components/TechLogo/logos/Microsoft.mjs.map +1 -1
  608. package/dist/esm/components/TechLogo/logos/Mistral.mjs.map +1 -1
  609. package/dist/esm/components/TechLogo/logos/NestJS.mjs.map +1 -1
  610. package/dist/esm/components/TechLogo/logos/Nextjs.mjs.map +1 -1
  611. package/dist/esm/components/TechLogo/logos/Node.mjs.map +1 -1
  612. package/dist/esm/components/TechLogo/logos/Nuxt.mjs.map +1 -1
  613. package/dist/esm/components/TechLogo/logos/Ollama.mjs.map +1 -1
  614. package/dist/esm/components/TechLogo/logos/OpenAI.mjs.map +1 -1
  615. package/dist/esm/components/TechLogo/logos/Perplexity.mjs.map +1 -1
  616. package/dist/esm/components/TechLogo/logos/Preact.mjs.map +1 -1
  617. package/dist/esm/components/TechLogo/logos/Reactjs.mjs.map +1 -1
  618. package/dist/esm/components/TechLogo/logos/Solid.mjs.map +1 -1
  619. package/dist/esm/components/TechLogo/logos/Svelte.mjs.map +1 -1
  620. package/dist/esm/components/TechLogo/logos/Tanstack.mjs.map +1 -1
  621. package/dist/esm/components/TechLogo/logos/Vanilla.mjs.map +1 -1
  622. package/dist/esm/components/TechLogo/logos/Vitejs.mjs.map +1 -1
  623. package/dist/esm/components/TechLogo/logos/Vuejs.mjs.map +1 -1
  624. package/dist/esm/components/Terminal/Terminal.mjs.map +1 -1
  625. package/dist/esm/components/Terminal/terminal.content.mjs.map +1 -1
  626. package/dist/esm/components/TextArea/AutoSizeTextArea.mjs +1 -2
  627. package/dist/esm/components/TextArea/AutoSizeTextArea.mjs.map +1 -1
  628. package/dist/esm/components/TextArea/AutocompleteTextArea.mjs +2 -1
  629. package/dist/esm/components/TextArea/AutocompleteTextArea.mjs.map +1 -1
  630. package/dist/esm/components/TextArea/ContentEditableTextArea.mjs +30 -15
  631. package/dist/esm/components/TextArea/ContentEditableTextArea.mjs.map +1 -1
  632. package/dist/esm/components/TextArea/TextArea.mjs.map +1 -1
  633. package/dist/esm/components/ThemeSwitcherDropDown/DesktopThemeSwitcher.mjs.map +1 -1
  634. package/dist/esm/components/ThemeSwitcherDropDown/MobileThemeSwitcher.mjs.map +1 -1
  635. package/dist/esm/components/Toaster/Toast.mjs.map +1 -1
  636. package/dist/esm/components/Toaster/Toaster.mjs.map +1 -1
  637. package/dist/esm/components/Toaster/useToast.mjs.map +1 -1
  638. package/dist/esm/components/WithResizer/index.mjs +3 -2
  639. package/dist/esm/components/WithResizer/index.mjs.map +1 -1
  640. package/dist/esm/hooks/useDevice.mjs.map +1 -1
  641. package/dist/esm/hooks/useGetElementById.mjs.map +1 -1
  642. package/dist/esm/hooks/useGetElementOrWindow.mjs.map +1 -1
  643. package/dist/esm/hooks/useHorizontalSwipe.mjs +2 -1
  644. package/dist/esm/hooks/useHorizontalSwipe.mjs.map +1 -1
  645. package/dist/esm/hooks/useIsDarkMode.mjs +2 -1
  646. package/dist/esm/hooks/useIsDarkMode.mjs.map +1 -1
  647. package/dist/esm/hooks/useIsMounted.mjs.map +1 -1
  648. package/dist/esm/hooks/useItemSelector.mjs.map +1 -1
  649. package/dist/esm/hooks/useKeyboardDetector.mjs.map +1 -1
  650. package/dist/esm/hooks/usePersistedStore.mjs.map +1 -1
  651. package/dist/esm/hooks/useScreenWidth.mjs.map +1 -1
  652. package/dist/esm/hooks/useScrollBlockage/index.mjs.map +1 -1
  653. package/dist/esm/hooks/useScrollBlockage/useScrollBlockageStore.mjs.map +1 -1
  654. package/dist/esm/hooks/useScrollDetection.mjs +5 -2
  655. package/dist/esm/hooks/useScrollDetection.mjs.map +1 -1
  656. package/dist/esm/hooks/useScrollY.mjs.map +1 -1
  657. package/dist/esm/hooks/useSearch.mjs.map +1 -1
  658. package/dist/esm/libs/auth.mjs.map +1 -1
  659. package/dist/esm/providers/ReactQueryProvider.mjs.map +1 -1
  660. package/dist/esm/routes.mjs +7 -1
  661. package/dist/esm/routes.mjs.map +1 -1
  662. package/dist/esm/structured-data/buildAuthorJsonLd.mjs.map +1 -1
  663. package/dist/esm/structured-data/buildBreadcrumbsJsonLd.mjs.map +1 -1
  664. package/dist/esm/structured-data/buildCreativeWorkJsonLd.mjs.map +1 -1
  665. package/dist/esm/structured-data/buildFAQPageJsonLd.mjs.map +1 -1
  666. package/dist/esm/structured-data/buildOrganizationJsonLd.mjs.map +1 -1
  667. package/dist/esm/structured-data/buildProductJsonLd.mjs.map +1 -1
  668. package/dist/esm/structured-data/buildSoftwareApplicationJsonLd.mjs +23 -4
  669. package/dist/esm/structured-data/buildSoftwareApplicationJsonLd.mjs.map +1 -1
  670. package/dist/esm/structured-data/buildWebsiteJsonLd.mjs.map +1 -1
  671. package/dist/esm/tailwind.config.mjs.map +1 -1
  672. package/dist/esm/utils/cn.mjs +2 -8
  673. package/dist/types/api/hooks/ai.d.ts +0 -1
  674. package/dist/types/api/hooks/ai.d.ts.map +1 -1
  675. package/dist/types/api/hooks/analytics.d.ts +27 -0
  676. package/dist/types/api/hooks/analytics.d.ts.map +1 -0
  677. package/dist/types/api/hooks/asset.d.ts +0 -1
  678. package/dist/types/api/hooks/asset.d.ts.map +1 -1
  679. package/dist/types/api/hooks/audit.d.ts +0 -1
  680. package/dist/types/api/hooks/audit.d.ts.map +1 -1
  681. package/dist/types/api/hooks/auth.d.ts.map +1 -1
  682. package/dist/types/api/hooks/bitbucket.d.ts.map +1 -1
  683. package/dist/types/api/hooks/dictionary.d.ts +2 -3
  684. package/dist/types/api/hooks/dictionary.d.ts.map +1 -1
  685. package/dist/types/api/hooks/discussions.d.ts +0 -1
  686. package/dist/types/api/hooks/discussions.d.ts.map +1 -1
  687. package/dist/types/api/hooks/editor.d.ts.map +1 -1
  688. package/dist/types/api/hooks/environment.d.ts.map +1 -1
  689. package/dist/types/api/hooks/github.d.ts +0 -1
  690. package/dist/types/api/hooks/github.d.ts.map +1 -1
  691. package/dist/types/api/hooks/gitlab.d.ts.map +1 -1
  692. package/dist/types/api/hooks/newsletter.d.ts.map +1 -1
  693. package/dist/types/api/hooks/organization.d.ts +2 -2
  694. package/dist/types/api/hooks/organization.d.ts.map +1 -1
  695. package/dist/types/api/hooks/project.d.ts +0 -1
  696. package/dist/types/api/hooks/project.d.ts.map +1 -1
  697. package/dist/types/api/hooks/reviewer.d.ts +2 -3
  698. package/dist/types/api/hooks/reviewer.d.ts.map +1 -1
  699. package/dist/types/api/hooks/search.d.ts +0 -1
  700. package/dist/types/api/hooks/search.d.ts.map +1 -1
  701. package/dist/types/api/hooks/showcaseProject.d.ts +1 -2
  702. package/dist/types/api/hooks/showcaseProject.d.ts.map +1 -1
  703. package/dist/types/api/hooks/stripe.d.ts +0 -1
  704. package/dist/types/api/hooks/stripe.d.ts.map +1 -1
  705. package/dist/types/api/hooks/tag.d.ts +0 -1
  706. package/dist/types/api/hooks/tag.d.ts.map +1 -1
  707. package/dist/types/api/hooks/translate.d.ts.map +1 -1
  708. package/dist/types/api/hooks/user.d.ts +0 -1
  709. package/dist/types/api/hooks/user.d.ts.map +1 -1
  710. package/dist/types/api/hooks/utils.d.ts +1 -6
  711. package/dist/types/api/hooks/utils.d.ts.map +1 -1
  712. package/dist/types/api/index.d.ts +5 -3
  713. package/dist/types/api/useAuth/useAuth.d.ts +1 -5
  714. package/dist/types/api/useAuth/useAuth.d.ts.map +1 -1
  715. package/dist/types/api/useAuth/useOAuth2.d.ts +1 -2
  716. package/dist/types/api/useAuth/useOAuth2.d.ts.map +1 -1
  717. package/dist/types/api/useAuth/useSession.d.ts +7 -4
  718. package/dist/types/api/useAuth/useSession.d.ts.map +1 -1
  719. package/dist/types/api/useIntlayerAPI.d.ts +44 -290
  720. package/dist/types/api/useIntlayerAPI.d.ts.map +1 -1
  721. package/dist/types/api/useUser/index.d.ts +1 -3
  722. package/dist/types/api/useUser/index.d.ts.map +1 -1
  723. package/dist/types/components/Accordion/Accordion.d.ts +1 -1
  724. package/dist/types/components/Accordion/Accordion.d.ts.map +1 -1
  725. package/dist/types/components/Avatar/image.d.ts.map +1 -1
  726. package/dist/types/components/Avatar/index.d.ts +0 -1
  727. package/dist/types/components/Avatar/index.d.ts.map +1 -1
  728. package/dist/types/components/Badge/index.d.ts +25 -16
  729. package/dist/types/components/Badge/index.d.ts.map +1 -1
  730. package/dist/types/components/Breadcrumb/breadcrumb.content.d.ts +1 -3
  731. package/dist/types/components/Breadcrumb/breadcrumb.content.d.ts.map +1 -1
  732. package/dist/types/components/Breadcrumb/index.d.ts +4 -5
  733. package/dist/types/components/Breadcrumb/index.d.ts.map +1 -1
  734. package/dist/types/components/Browser/Browser.content.d.ts +13 -15
  735. package/dist/types/components/Browser/Browser.content.d.ts.map +1 -1
  736. package/dist/types/components/Browser/Browser.d.ts +1 -14
  737. package/dist/types/components/Browser/Browser.d.ts.map +1 -1
  738. package/dist/types/components/Browser/extractUrlFromSitemap.d.ts.map +1 -1
  739. package/dist/types/components/Button/Button.d.ts +6 -8
  740. package/dist/types/components/Button/Button.d.ts.map +1 -1
  741. package/dist/types/components/Carousel/index.content.d.ts +3 -5
  742. package/dist/types/components/Carousel/index.content.d.ts.map +1 -1
  743. package/dist/types/components/Carousel/index.d.ts +0 -1
  744. package/dist/types/components/Carousel/index.d.ts.map +1 -1
  745. package/dist/types/components/ClickOutsideDiv/index.d.ts +0 -1
  746. package/dist/types/components/ClickOutsideDiv/index.d.ts.map +1 -1
  747. package/dist/types/components/CollapsibleTable/CollapsibleTable.d.ts +4 -6
  748. package/dist/types/components/CollapsibleTable/CollapsibleTable.d.ts.map +1 -1
  749. package/dist/types/components/Command/index.d.ts +21 -25
  750. package/dist/types/components/Command/index.d.ts.map +1 -1
  751. package/dist/types/components/Container/index.d.ts +10 -11
  752. package/dist/types/components/Container/index.d.ts.map +1 -1
  753. package/dist/types/components/ContentEditor/ContentEditor.d.ts +5 -3
  754. package/dist/types/components/ContentEditor/ContentEditor.d.ts.map +1 -1
  755. package/dist/types/components/ContentEditor/ContentEditorInput.d.ts +10 -5
  756. package/dist/types/components/ContentEditor/ContentEditorInput.d.ts.map +1 -1
  757. package/dist/types/components/ContentEditor/ContentEditorTextArea.d.ts +10 -5
  758. package/dist/types/components/ContentEditor/ContentEditorTextArea.d.ts.map +1 -1
  759. package/dist/types/components/ContentSelector/ContentSelector.d.ts +0 -1
  760. package/dist/types/components/ContentSelector/ContentSelector.d.ts.map +1 -1
  761. package/dist/types/components/CopyButton/CopyButton.content.d.ts +1 -3
  762. package/dist/types/components/CopyButton/CopyButton.content.d.ts.map +1 -1
  763. package/dist/types/components/CopyButton/index.d.ts +1 -1
  764. package/dist/types/components/CopyButton/index.d.ts.map +1 -1
  765. package/dist/types/components/CopyToClipboard/index.d.ts +0 -1
  766. package/dist/types/components/CopyToClipboard/index.d.ts.map +1 -1
  767. package/dist/types/components/DictionaryEditor/DictionaryEditor.d.ts +0 -1
  768. package/dist/types/components/DictionaryEditor/DictionaryEditor.d.ts.map +1 -1
  769. package/dist/types/components/DictionaryEditor/ItemLayout.d.ts +0 -1
  770. package/dist/types/components/DictionaryEditor/ItemLayout.d.ts.map +1 -1
  771. package/dist/types/components/DictionaryEditor/NodeWrapper/ArrayWrapper.d.ts +0 -1
  772. package/dist/types/components/DictionaryEditor/NodeWrapper/ArrayWrapper.d.ts.map +1 -1
  773. package/dist/types/components/DictionaryEditor/NodeWrapper/BooleanWrapper.d.ts +0 -1
  774. package/dist/types/components/DictionaryEditor/NodeWrapper/BooleanWrapper.d.ts.map +1 -1
  775. package/dist/types/components/DictionaryEditor/NodeWrapper/ConditionWrapper.d.ts +1 -2
  776. package/dist/types/components/DictionaryEditor/NodeWrapper/ConditionWrapper.d.ts.map +1 -1
  777. package/dist/types/components/DictionaryEditor/NodeWrapper/EnumerationWrapper.d.ts +1 -2
  778. package/dist/types/components/DictionaryEditor/NodeWrapper/EnumerationWrapper.d.ts.map +1 -1
  779. package/dist/types/components/DictionaryEditor/NodeWrapper/FileWrapper.d.ts +0 -1
  780. package/dist/types/components/DictionaryEditor/NodeWrapper/FileWrapper.d.ts.map +1 -1
  781. package/dist/types/components/DictionaryEditor/NodeWrapper/HtmlWrapper.d.ts +1 -2
  782. package/dist/types/components/DictionaryEditor/NodeWrapper/HtmlWrapper.d.ts.map +1 -1
  783. package/dist/types/components/DictionaryEditor/NodeWrapper/InsertionWrapper.d.ts +1 -2
  784. package/dist/types/components/DictionaryEditor/NodeWrapper/InsertionWrapper.d.ts.map +1 -1
  785. package/dist/types/components/DictionaryEditor/NodeWrapper/MarkdownWrapper.d.ts +1 -2
  786. package/dist/types/components/DictionaryEditor/NodeWrapper/MarkdownWrapper.d.ts.map +1 -1
  787. package/dist/types/components/DictionaryEditor/NodeWrapper/NestedObjectWrapper.d.ts +0 -1
  788. package/dist/types/components/DictionaryEditor/NodeWrapper/NestedObjectWrapper.d.ts.map +1 -1
  789. package/dist/types/components/DictionaryEditor/NodeWrapper/NumberWrapper.d.ts +0 -1
  790. package/dist/types/components/DictionaryEditor/NodeWrapper/NumberWrapper.d.ts.map +1 -1
  791. package/dist/types/components/DictionaryEditor/NodeWrapper/PluralWrapper.d.ts +1 -2
  792. package/dist/types/components/DictionaryEditor/NodeWrapper/PluralWrapper.d.ts.map +1 -1
  793. package/dist/types/components/DictionaryEditor/NodeWrapper/StringWrapper.d.ts +0 -1
  794. package/dist/types/components/DictionaryEditor/NodeWrapper/StringWrapper.d.ts.map +1 -1
  795. package/dist/types/components/DictionaryEditor/NodeWrapper/TranslationWrapper.d.ts +1 -2
  796. package/dist/types/components/DictionaryEditor/NodeWrapper/TranslationWrapper.d.ts.map +1 -1
  797. package/dist/types/components/DictionaryEditor/NodeWrapper/index.d.ts +0 -1
  798. package/dist/types/components/DictionaryEditor/NodeWrapper/index.d.ts.map +1 -1
  799. package/dist/types/components/DictionaryFieldEditor/ContentEditor.d.ts +0 -1
  800. package/dist/types/components/DictionaryFieldEditor/ContentEditor.d.ts.map +1 -1
  801. package/dist/types/components/DictionaryFieldEditor/ContentEditorView/SafeHtmlRenderer.d.ts +2 -6
  802. package/dist/types/components/DictionaryFieldEditor/ContentEditorView/SafeHtmlRenderer.d.ts.map +1 -1
  803. package/dist/types/components/DictionaryFieldEditor/ContentEditorView/TextEditor.d.ts +7 -5
  804. package/dist/types/components/DictionaryFieldEditor/ContentEditorView/TextEditor.d.ts.map +1 -1
  805. package/dist/types/components/DictionaryFieldEditor/ContentEditorView/object.d.ts.map +1 -1
  806. package/dist/types/components/DictionaryFieldEditor/DictionaryCreationForm/DictionaryCreationForm.d.ts +0 -1
  807. package/dist/types/components/DictionaryFieldEditor/DictionaryCreationForm/DictionaryCreationForm.d.ts.map +1 -1
  808. package/dist/types/components/DictionaryFieldEditor/DictionaryCreationForm/dictionaryCreationForm.content.d.ts +18 -82
  809. package/dist/types/components/DictionaryFieldEditor/DictionaryCreationForm/dictionaryCreationForm.content.d.ts.map +1 -1
  810. package/dist/types/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.content.d.ts +4 -6
  811. package/dist/types/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.content.d.ts.map +1 -1
  812. package/dist/types/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.d.ts +2 -5
  813. package/dist/types/components/DictionaryFieldEditor/DictionaryCreationForm/useDictionaryFormSchema.d.ts.map +1 -1
  814. package/dist/types/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.d.ts +0 -1
  815. package/dist/types/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.d.ts.map +1 -1
  816. package/dist/types/components/DictionaryFieldEditor/DictionaryDetails/dictionaryDetails.content.d.ts +52 -54
  817. package/dist/types/components/DictionaryFieldEditor/DictionaryDetails/dictionaryDetails.content.d.ts.map +1 -1
  818. package/dist/types/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.content.d.ts +16 -18
  819. package/dist/types/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.content.d.ts.map +1 -1
  820. package/dist/types/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.d.ts +3 -4
  821. package/dist/types/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.d.ts.map +1 -1
  822. package/dist/types/components/DictionaryFieldEditor/DictionaryFieldEditor.d.ts +0 -1
  823. package/dist/types/components/DictionaryFieldEditor/DictionaryFieldEditor.d.ts.map +1 -1
  824. package/dist/types/components/DictionaryFieldEditor/EnumKeyInput.d.ts +0 -1
  825. package/dist/types/components/DictionaryFieldEditor/EnumKeyInput.d.ts.map +1 -1
  826. package/dist/types/components/DictionaryFieldEditor/JSONEditor.d.ts +0 -1
  827. package/dist/types/components/DictionaryFieldEditor/JSONEditor.d.ts.map +1 -1
  828. package/dist/types/components/DictionaryFieldEditor/KeyPathBreadcrumb.d.ts +1 -1
  829. package/dist/types/components/DictionaryFieldEditor/KeyPathBreadcrumb.d.ts.map +1 -1
  830. package/dist/types/components/DictionaryFieldEditor/NavigationView/NavigationViewNode.d.ts +0 -1
  831. package/dist/types/components/DictionaryFieldEditor/NavigationView/NavigationViewNode.d.ts.map +1 -1
  832. package/dist/types/components/DictionaryFieldEditor/NavigationView/navigationViewNode.content.d.ts +10 -12
  833. package/dist/types/components/DictionaryFieldEditor/NavigationView/navigationViewNode.content.d.ts.map +1 -1
  834. package/dist/types/components/DictionaryFieldEditor/NodeTypeSelector.d.ts +0 -1
  835. package/dist/types/components/DictionaryFieldEditor/NodeTypeSelector.d.ts.map +1 -1
  836. package/dist/types/components/DictionaryFieldEditor/SaveForm/SaveForm.d.ts +0 -1
  837. package/dist/types/components/DictionaryFieldEditor/SaveForm/SaveForm.d.ts.map +1 -1
  838. package/dist/types/components/DictionaryFieldEditor/SaveForm/saveForm.content.d.ts +16 -18
  839. package/dist/types/components/DictionaryFieldEditor/SaveForm/saveForm.content.d.ts.map +1 -1
  840. package/dist/types/components/DictionaryFieldEditor/StructureEditor.d.ts +0 -1
  841. package/dist/types/components/DictionaryFieldEditor/StructureEditor.d.ts.map +1 -1
  842. package/dist/types/components/DictionaryFieldEditor/StructureView/StructureView.d.ts +0 -1
  843. package/dist/types/components/DictionaryFieldEditor/StructureView/StructureView.d.ts.map +1 -1
  844. package/dist/types/components/DictionaryFieldEditor/StructureView/structureView.content.d.ts +4 -6
  845. package/dist/types/components/DictionaryFieldEditor/StructureView/structureView.content.d.ts.map +1 -1
  846. package/dist/types/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcher.d.ts +1 -2
  847. package/dist/types/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcher.d.ts.map +1 -1
  848. package/dist/types/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcherContext.d.ts +0 -1
  849. package/dist/types/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcherContext.d.ts.map +1 -1
  850. package/dist/types/components/DictionaryFieldEditor/VersionSwitcherDropDown/versionSwitcherDropDown.content.d.ts +3 -5
  851. package/dist/types/components/DictionaryFieldEditor/VersionSwitcherDropDown/versionSwitcherDropDown.content.d.ts.map +1 -1
  852. package/dist/types/components/DictionaryFieldEditor/contentEditor.content.d.ts +3 -5
  853. package/dist/types/components/DictionaryFieldEditor/contentEditor.content.d.ts.map +1 -1
  854. package/dist/types/components/DictionaryFieldEditor/dictionaryFieldEditor.content.d.ts +2 -4
  855. package/dist/types/components/DictionaryFieldEditor/dictionaryFieldEditor.content.d.ts.map +1 -1
  856. package/dist/types/components/DictionaryFieldEditor/getIsEditableSection.d.ts +0 -1
  857. package/dist/types/components/DictionaryFieldEditor/getIsEditableSection.d.ts.map +1 -1
  858. package/dist/types/components/DictionaryFieldEditor/index.d.ts +1 -0
  859. package/dist/types/components/DictionaryFieldEditor/nodeTypeSelector.content.d.ts +16 -18
  860. package/dist/types/components/DictionaryFieldEditor/nodeTypeSelector.content.d.ts.map +1 -1
  861. package/dist/types/components/DropDown/index.d.ts +1 -1
  862. package/dist/types/components/DropDown/index.d.ts.map +1 -1
  863. package/dist/types/components/EditableField/EditableFieldInput.d.ts +4 -2
  864. package/dist/types/components/EditableField/EditableFieldInput.d.ts.map +1 -1
  865. package/dist/types/components/EditableField/EditableFieldLayout.d.ts +0 -1
  866. package/dist/types/components/EditableField/EditableFieldLayout.d.ts.map +1 -1
  867. package/dist/types/components/EditableField/EditableFieldTextArea.d.ts +4 -2
  868. package/dist/types/components/EditableField/EditableFieldTextArea.d.ts.map +1 -1
  869. package/dist/types/components/ExpandCollapse/ExpandCollapse.d.ts +7 -4
  870. package/dist/types/components/ExpandCollapse/ExpandCollapse.d.ts.map +1 -1
  871. package/dist/types/components/ExpandCollapse/expandCollapse.content.d.ts +1 -3
  872. package/dist/types/components/ExpandCollapse/expandCollapse.content.d.ts.map +1 -1
  873. package/dist/types/components/Flags/Flag.d.ts +0 -1
  874. package/dist/types/components/Flags/Flag.d.ts.map +1 -1
  875. package/dist/types/components/Flags/flags.d.ts +604 -604
  876. package/dist/types/components/Flags/flags.d.ts.map +1 -1
  877. package/dist/types/components/Footer/index.d.ts +13 -6
  878. package/dist/types/components/Footer/index.d.ts.map +1 -1
  879. package/dist/types/components/Form/Form.d.ts +2 -25
  880. package/dist/types/components/Form/Form.d.ts.map +1 -1
  881. package/dist/types/components/Form/FormBase.d.ts +3 -16
  882. package/dist/types/components/Form/FormBase.d.ts.map +1 -1
  883. package/dist/types/components/Form/FormControl.d.ts +0 -1
  884. package/dist/types/components/Form/FormControl.d.ts.map +1 -1
  885. package/dist/types/components/Form/FormDescription.d.ts +0 -1
  886. package/dist/types/components/Form/FormDescription.d.ts.map +1 -1
  887. package/dist/types/components/Form/FormField.d.ts +2 -7
  888. package/dist/types/components/Form/FormField.d.ts.map +1 -1
  889. package/dist/types/components/Form/FormItem.d.ts +1 -3
  890. package/dist/types/components/Form/FormItem.d.ts.map +1 -1
  891. package/dist/types/components/Form/FormLabel.d.ts +0 -1
  892. package/dist/types/components/Form/FormLabel.d.ts.map +1 -1
  893. package/dist/types/components/Form/FormMessage.d.ts +0 -1
  894. package/dist/types/components/Form/FormMessage.d.ts.map +1 -1
  895. package/dist/types/components/Form/elements/AutoSizeTextAreaElement.d.ts +1 -2
  896. package/dist/types/components/Form/elements/AutoSizeTextAreaElement.d.ts.map +1 -1
  897. package/dist/types/components/Form/elements/CheckboxElement.d.ts +2 -2
  898. package/dist/types/components/Form/elements/CheckboxElement.d.ts.map +1 -1
  899. package/dist/types/components/Form/elements/EditableFieldInputElement.d.ts +2 -4
  900. package/dist/types/components/Form/elements/EditableFieldInputElement.d.ts.map +1 -1
  901. package/dist/types/components/Form/elements/EditableFieldTextAreaElement.d.ts +2 -4
  902. package/dist/types/components/Form/elements/EditableFieldTextAreaElement.d.ts.map +1 -1
  903. package/dist/types/components/Form/elements/FormElement.d.ts +2 -3
  904. package/dist/types/components/Form/elements/FormElement.d.ts.map +1 -1
  905. package/dist/types/components/Form/elements/FormElementWrapper.d.ts +0 -1
  906. package/dist/types/components/Form/elements/FormElementWrapper.d.ts.map +1 -1
  907. package/dist/types/components/Form/elements/InputElement.d.ts +2 -2
  908. package/dist/types/components/Form/elements/InputElement.d.ts.map +1 -1
  909. package/dist/types/components/Form/elements/InputPasswordElement.d.ts +1 -2
  910. package/dist/types/components/Form/elements/InputPasswordElement.d.ts.map +1 -1
  911. package/dist/types/components/Form/elements/MultiselectElement.d.ts +2 -13
  912. package/dist/types/components/Form/elements/MultiselectElement.d.ts.map +1 -1
  913. package/dist/types/components/Form/elements/OTPElement.d.ts +4 -16
  914. package/dist/types/components/Form/elements/OTPElement.d.ts.map +1 -1
  915. package/dist/types/components/Form/elements/SearchInputElement.d.ts +2 -2
  916. package/dist/types/components/Form/elements/SearchInputElement.d.ts.map +1 -1
  917. package/dist/types/components/Form/elements/SelectElement.d.ts +2 -13
  918. package/dist/types/components/Form/elements/SelectElement.d.ts.map +1 -1
  919. package/dist/types/components/Form/elements/SwitchSelectorElement.d.ts +3 -13
  920. package/dist/types/components/Form/elements/SwitchSelectorElement.d.ts.map +1 -1
  921. package/dist/types/components/Form/elements/TextAreaElement.d.ts +1 -2
  922. package/dist/types/components/Form/elements/TextAreaElement.d.ts.map +1 -1
  923. package/dist/types/components/Form/index.d.ts +3 -1
  924. package/dist/types/components/Form/layout/FormItemLayout.d.ts +0 -1
  925. package/dist/types/components/Form/layout/FormItemLayout.d.ts.map +1 -1
  926. package/dist/types/components/Form/layout/FormLabelLayout.d.ts +0 -1
  927. package/dist/types/components/Form/layout/FormLabelLayout.d.ts.map +1 -1
  928. package/dist/types/components/Form/layout/RequiredStar.d.ts +0 -1
  929. package/dist/types/components/Form/layout/RequiredStar.d.ts.map +1 -1
  930. package/dist/types/components/HTMLRender/HTMLRender.d.ts +0 -1
  931. package/dist/types/components/HTMLRender/HTMLRender.d.ts.map +1 -1
  932. package/dist/types/components/Headers/index.d.ts +0 -1
  933. package/dist/types/components/Headers/index.d.ts.map +1 -1
  934. package/dist/types/components/HeightResizer/index.d.ts +0 -1
  935. package/dist/types/components/HeightResizer/index.d.ts.map +1 -1
  936. package/dist/types/components/HideShow/index.d.ts +0 -1
  937. package/dist/types/components/HideShow/index.d.ts.map +1 -1
  938. package/dist/types/components/IDE/Code.d.ts +2 -2
  939. package/dist/types/components/IDE/Code.d.ts.map +1 -1
  940. package/dist/types/components/IDE/CodeBlockClient.d.ts +0 -1
  941. package/dist/types/components/IDE/CodeBlockClient.d.ts.map +1 -1
  942. package/dist/types/components/IDE/CodeBlockHighlight.d.ts +6 -10
  943. package/dist/types/components/IDE/CodeBlockHighlight.d.ts.map +1 -1
  944. package/dist/types/components/IDE/CodeBlockServer.d.ts +0 -1
  945. package/dist/types/components/IDE/CodeBlockServer.d.ts.map +1 -1
  946. package/dist/types/components/IDE/CodeBlockShiki.d.ts +0 -1
  947. package/dist/types/components/IDE/CodeBlockShiki.d.ts.map +1 -1
  948. package/dist/types/components/IDE/CodeConditionalRenderer.d.ts +0 -1
  949. package/dist/types/components/IDE/CodeConditionalRenderer.d.ts.map +1 -1
  950. package/dist/types/components/IDE/CodeContext.d.ts +1 -3
  951. package/dist/types/components/IDE/CodeContext.d.ts.map +1 -1
  952. package/dist/types/components/IDE/CodeFormatSelector.d.ts +2 -2
  953. package/dist/types/components/IDE/CodeFormatSelector.d.ts.map +1 -1
  954. package/dist/types/components/IDE/ContentDeclarationFormatSelector.d.ts +0 -1
  955. package/dist/types/components/IDE/ContentDeclarationFormatSelector.d.ts.map +1 -1
  956. package/dist/types/components/IDE/CopyCode.d.ts +2 -2
  957. package/dist/types/components/IDE/CopyCode.d.ts.map +1 -1
  958. package/dist/types/components/IDE/FileList.d.ts +0 -1
  959. package/dist/types/components/IDE/FileList.d.ts.map +1 -1
  960. package/dist/types/components/IDE/FileTree.d.ts +0 -1
  961. package/dist/types/components/IDE/FileTree.d.ts.map +1 -1
  962. package/dist/types/components/IDE/IDE.d.ts +0 -1
  963. package/dist/types/components/IDE/IDE.d.ts.map +1 -1
  964. package/dist/types/components/IDE/MarkDownRender.d.ts +0 -1
  965. package/dist/types/components/IDE/MarkDownRender.d.ts.map +1 -1
  966. package/dist/types/components/IDE/MonacoCode.d.ts +0 -1
  967. package/dist/types/components/IDE/MonacoCode.d.ts.map +1 -1
  968. package/dist/types/components/IDE/PackageManagerSelector.d.ts +0 -1
  969. package/dist/types/components/IDE/PackageManagerSelector.d.ts.map +1 -1
  970. package/dist/types/components/IDE/code.content.d.ts +2 -4
  971. package/dist/types/components/IDE/code.content.d.ts.map +1 -1
  972. package/dist/types/components/IDE/codeTransformer.d.ts.map +1 -1
  973. package/dist/types/components/IDE/copyCode.content.d.ts +2 -4
  974. package/dist/types/components/IDE/copyCode.content.d.ts.map +1 -1
  975. package/dist/types/components/IDE/createFileTree.d.ts.map +1 -1
  976. package/dist/types/components/IDE/index.d.ts +1 -1
  977. package/dist/types/components/IDE/selectors.content.d.ts +6 -8
  978. package/dist/types/components/IDE/selectors.content.d.ts.map +1 -1
  979. package/dist/types/components/InformationTag/index.d.ts +0 -1
  980. package/dist/types/components/InformationTag/index.d.ts.map +1 -1
  981. package/dist/types/components/Input/Checkbox.d.ts +3 -5
  982. package/dist/types/components/Input/Checkbox.d.ts.map +1 -1
  983. package/dist/types/components/Input/Input.d.ts +2 -4
  984. package/dist/types/components/Input/Input.d.ts.map +1 -1
  985. package/dist/types/components/Input/InputPassword.d.ts +0 -1
  986. package/dist/types/components/Input/InputPassword.d.ts.map +1 -1
  987. package/dist/types/components/Input/OTPInput.d.ts +7 -17
  988. package/dist/types/components/Input/OTPInput.d.ts.map +1 -1
  989. package/dist/types/components/Input/Radio.d.ts +3 -5
  990. package/dist/types/components/Input/Radio.d.ts.map +1 -1
  991. package/dist/types/components/Input/SearchInput.d.ts +1 -6
  992. package/dist/types/components/Input/SearchInput.d.ts.map +1 -1
  993. package/dist/types/components/KeyboardScreenAdapter/index.d.ts +0 -1
  994. package/dist/types/components/KeyboardScreenAdapter/index.d.ts.map +1 -1
  995. package/dist/types/components/KeyboardShortcut/KeyboardShortcut.d.ts +11 -6
  996. package/dist/types/components/KeyboardShortcut/KeyboardShortcut.d.ts.map +1 -1
  997. package/dist/types/components/Label/index.d.ts +0 -1
  998. package/dist/types/components/Label/index.d.ts.map +1 -1
  999. package/dist/types/components/LanguageBackground/LanguageBackground.d.ts +0 -1
  1000. package/dist/types/components/LanguageBackground/LanguageBackground.d.ts.map +1 -1
  1001. package/dist/types/components/LanguageBackground/LanguageSection.d.ts +0 -1
  1002. package/dist/types/components/LanguageBackground/LanguageSection.d.ts.map +1 -1
  1003. package/dist/types/components/Link/Link.d.ts +7 -12
  1004. package/dist/types/components/Link/Link.d.ts.map +1 -1
  1005. package/dist/types/components/Loader/index.content.d.ts +1 -3
  1006. package/dist/types/components/Loader/index.content.d.ts.map +1 -1
  1007. package/dist/types/components/Loader/index.d.ts +3 -2
  1008. package/dist/types/components/Loader/index.d.ts.map +1 -1
  1009. package/dist/types/components/Loader/spinner.d.ts +3 -7
  1010. package/dist/types/components/Loader/spinner.d.ts.map +1 -1
  1011. package/dist/types/components/LocaleSwitcherContentDropDown/LocaleSwitcherContent.d.ts +0 -1
  1012. package/dist/types/components/LocaleSwitcherContentDropDown/LocaleSwitcherContent.d.ts.map +1 -1
  1013. package/dist/types/components/LocaleSwitcherContentDropDown/LocaleSwitcherContentContext.d.ts +0 -1
  1014. package/dist/types/components/LocaleSwitcherContentDropDown/LocaleSwitcherContentContext.d.ts.map +1 -1
  1015. package/dist/types/components/LocaleSwitcherContentDropDown/localeSwitcher.content.d.ts +8 -10
  1016. package/dist/types/components/LocaleSwitcherContentDropDown/localeSwitcher.content.d.ts.map +1 -1
  1017. package/dist/types/components/LocaleSwitcherDropDown/LocaleSwitcher.d.ts +0 -1
  1018. package/dist/types/components/LocaleSwitcherDropDown/LocaleSwitcher.d.ts.map +1 -1
  1019. package/dist/types/components/LocaleSwitcherDropDown/localeSwitcher.content.d.ts +6 -8
  1020. package/dist/types/components/LocaleSwitcherDropDown/localeSwitcher.content.d.ts.map +1 -1
  1021. package/dist/types/components/Logo/Logo.d.ts +0 -1
  1022. package/dist/types/components/Logo/Logo.d.ts.map +1 -1
  1023. package/dist/types/components/Logo/LogoTextOnly.d.ts +0 -1
  1024. package/dist/types/components/Logo/LogoTextOnly.d.ts.map +1 -1
  1025. package/dist/types/components/Logo/LogoWithText.d.ts +0 -1
  1026. package/dist/types/components/Logo/LogoWithText.d.ts.map +1 -1
  1027. package/dist/types/components/Logo/LogoWithTextBelow.d.ts +0 -1
  1028. package/dist/types/components/Logo/LogoWithTextBelow.d.ts.map +1 -1
  1029. package/dist/types/components/MarkDownRender/MarkDownIframe.d.ts +0 -1
  1030. package/dist/types/components/MarkDownRender/MarkDownIframe.d.ts.map +1 -1
  1031. package/dist/types/components/MarkDownRender/MarkDownRender.d.ts +65 -116
  1032. package/dist/types/components/MarkDownRender/MarkDownRender.d.ts.map +1 -1
  1033. package/dist/types/components/MarkDownRender/index.d.ts +1 -1
  1034. package/dist/types/components/MarkdownEditor/MarkdownEditor.d.ts +11 -6
  1035. package/dist/types/components/MarkdownEditor/MarkdownEditor.d.ts.map +1 -1
  1036. package/dist/types/components/MarkdownEditor/extensions.d.ts.map +1 -1
  1037. package/dist/types/components/MarkdownEditor/generative/AICompletionCommands.d.ts +1 -6
  1038. package/dist/types/components/MarkdownEditor/generative/AICompletionCommands.d.ts.map +1 -1
  1039. package/dist/types/components/MarkdownEditor/generative/AISelector.d.ts +7 -10
  1040. package/dist/types/components/MarkdownEditor/generative/AISelector.d.ts.map +1 -1
  1041. package/dist/types/components/MarkdownEditor/generative/AISelectorCommands.d.ts +1 -5
  1042. package/dist/types/components/MarkdownEditor/generative/AISelectorCommands.d.ts.map +1 -1
  1043. package/dist/types/components/MarkdownEditor/generative/GenerativeMenuSwitch.d.ts +7 -12
  1044. package/dist/types/components/MarkdownEditor/generative/GenerativeMenuSwitch.d.ts.map +1 -1
  1045. package/dist/types/components/MarkdownEditor/generative/useAICompletion.d.ts +2 -1
  1046. package/dist/types/components/MarkdownEditor/generative/useAICompletion.d.ts.map +1 -1
  1047. package/dist/types/components/MarkdownEditor/imageUpload.d.ts +6 -7
  1048. package/dist/types/components/MarkdownEditor/imageUpload.d.ts.map +1 -1
  1049. package/dist/types/components/MarkdownEditor/markdownEditor.content.d.ts +118 -61
  1050. package/dist/types/components/MarkdownEditor/markdownEditor.content.d.ts.map +1 -1
  1051. package/dist/types/components/MarkdownEditor/novel/components/editor-bubble-item.d.ts +0 -1
  1052. package/dist/types/components/MarkdownEditor/novel/components/editor-bubble-item.d.ts.map +1 -1
  1053. package/dist/types/components/MarkdownEditor/novel/components/editor-bubble.d.ts +0 -1
  1054. package/dist/types/components/MarkdownEditor/novel/components/editor-bubble.d.ts.map +1 -1
  1055. package/dist/types/components/MarkdownEditor/novel/components/editor-command-item.d.ts +4 -9
  1056. package/dist/types/components/MarkdownEditor/novel/components/editor-command-item.d.ts.map +1 -1
  1057. package/dist/types/components/MarkdownEditor/novel/components/editor-command.d.ts +6 -10
  1058. package/dist/types/components/MarkdownEditor/novel/components/editor-command.d.ts.map +1 -1
  1059. package/dist/types/components/MarkdownEditor/novel/components/editor.d.ts +5 -2
  1060. package/dist/types/components/MarkdownEditor/novel/components/editor.d.ts.map +1 -1
  1061. package/dist/types/components/MarkdownEditor/novel/extensions/ai-highlight.d.ts +0 -1
  1062. package/dist/types/components/MarkdownEditor/novel/extensions/ai-highlight.d.ts.map +1 -1
  1063. package/dist/types/components/MarkdownEditor/novel/extensions/custom-keymap.d.ts +0 -1
  1064. package/dist/types/components/MarkdownEditor/novel/extensions/custom-keymap.d.ts.map +1 -1
  1065. package/dist/types/components/MarkdownEditor/novel/extensions/image-resizer.d.ts +4 -1
  1066. package/dist/types/components/MarkdownEditor/novel/extensions/image-resizer.d.ts.map +1 -1
  1067. package/dist/types/components/MarkdownEditor/novel/extensions/index.d.ts +3 -8
  1068. package/dist/types/components/MarkdownEditor/novel/extensions/index.d.ts.map +1 -1
  1069. package/dist/types/components/MarkdownEditor/novel/extensions/slash-command.d.ts +4 -5
  1070. package/dist/types/components/MarkdownEditor/novel/extensions/slash-command.d.ts.map +1 -1
  1071. package/dist/types/components/MarkdownEditor/novel/extensions/updated-image.d.ts +1 -4
  1072. package/dist/types/components/MarkdownEditor/novel/extensions/updated-image.d.ts.map +1 -1
  1073. package/dist/types/components/MarkdownEditor/novel/index.d.ts +1 -0
  1074. package/dist/types/components/MarkdownEditor/novel/plugins/upload-images.d.ts +2 -8
  1075. package/dist/types/components/MarkdownEditor/novel/plugins/upload-images.d.ts.map +1 -1
  1076. package/dist/types/components/MarkdownEditor/novel/utils/atoms.d.ts +0 -1
  1077. package/dist/types/components/MarkdownEditor/novel/utils/atoms.d.ts.map +1 -1
  1078. package/dist/types/components/MarkdownEditor/novel/utils/index.d.ts +0 -1
  1079. package/dist/types/components/MarkdownEditor/novel/utils/index.d.ts.map +1 -1
  1080. package/dist/types/components/MarkdownEditor/selectors/ColorSelector.d.ts +0 -1
  1081. package/dist/types/components/MarkdownEditor/selectors/ColorSelector.d.ts.map +1 -1
  1082. package/dist/types/components/MarkdownEditor/selectors/LinkSelector.d.ts +0 -1
  1083. package/dist/types/components/MarkdownEditor/selectors/LinkSelector.d.ts.map +1 -1
  1084. package/dist/types/components/MarkdownEditor/selectors/NodeSelector.d.ts +1 -1
  1085. package/dist/types/components/MarkdownEditor/selectors/NodeSelector.d.ts.map +1 -1
  1086. package/dist/types/components/MarkdownEditor/selectors/TextButtons.d.ts +1 -3
  1087. package/dist/types/components/MarkdownEditor/selectors/TextButtons.d.ts.map +1 -1
  1088. package/dist/types/components/MarkdownEditor/slashCommand.d.ts +3 -5
  1089. package/dist/types/components/MarkdownEditor/slashCommand.d.ts.map +1 -1
  1090. package/dist/types/components/MaxHeightSmoother/index.d.ts +0 -1
  1091. package/dist/types/components/MaxHeightSmoother/index.d.ts.map +1 -1
  1092. package/dist/types/components/MaxWidthSmoother/index.d.ts +1 -11
  1093. package/dist/types/components/MaxWidthSmoother/index.d.ts.map +1 -1
  1094. package/dist/types/components/Modal/Modal.d.ts +0 -1
  1095. package/dist/types/components/Modal/Modal.d.ts.map +1 -1
  1096. package/dist/types/components/Navbar/Burger.d.ts +1 -7
  1097. package/dist/types/components/Navbar/Burger.d.ts.map +1 -1
  1098. package/dist/types/components/Navbar/DesktopNavbar.d.ts +9 -11
  1099. package/dist/types/components/Navbar/DesktopNavbar.d.ts.map +1 -1
  1100. package/dist/types/components/Navbar/MobileNavbar.d.ts +15 -17
  1101. package/dist/types/components/Navbar/MobileNavbar.d.ts.map +1 -1
  1102. package/dist/types/components/Navbar/index.d.ts +21 -79
  1103. package/dist/types/components/Navbar/index.d.ts.map +1 -1
  1104. package/dist/types/components/Navbar/useNavigation.d.ts +5 -2
  1105. package/dist/types/components/Navbar/useNavigation.d.ts.map +1 -1
  1106. package/dist/types/components/Pagination/NumberItemsSelector.d.ts +0 -1
  1107. package/dist/types/components/Pagination/NumberItemsSelector.d.ts.map +1 -1
  1108. package/dist/types/components/Pagination/Pagination.d.ts +4 -6
  1109. package/dist/types/components/Pagination/Pagination.d.ts.map +1 -1
  1110. package/dist/types/components/Pagination/ShowingResultsNumberItems.d.ts +0 -1
  1111. package/dist/types/components/Pagination/ShowingResultsNumberItems.d.ts.map +1 -1
  1112. package/dist/types/components/Pagination/pagination.content.d.ts +5 -7
  1113. package/dist/types/components/Pagination/pagination.content.d.ts.map +1 -1
  1114. package/dist/types/components/Pattern/DotPattern.d.ts +13 -7
  1115. package/dist/types/components/Pattern/DotPattern.d.ts.map +1 -1
  1116. package/dist/types/components/Pattern/GridDistortionPattern.d.ts +0 -1
  1117. package/dist/types/components/Pattern/GridDistortionPattern.d.ts.map +1 -1
  1118. package/dist/types/components/Pattern/GridPattern.d.ts +11 -6
  1119. package/dist/types/components/Pattern/GridPattern.d.ts.map +1 -1
  1120. package/dist/types/components/Pattern/SpotLight.d.ts +11 -6
  1121. package/dist/types/components/Pattern/SpotLight.d.ts.map +1 -1
  1122. package/dist/types/components/Popover/dynamic.d.ts +0 -1
  1123. package/dist/types/components/Popover/dynamic.d.ts.map +1 -1
  1124. package/dist/types/components/Popover/static.d.ts +15 -8
  1125. package/dist/types/components/Popover/static.d.ts.map +1 -1
  1126. package/dist/types/components/PressableSpan/PressableSpan.d.ts +0 -1
  1127. package/dist/types/components/PressableSpan/PressableSpan.d.ts.map +1 -1
  1128. package/dist/types/components/RightDrawer/RightDrawer.d.ts +5 -3
  1129. package/dist/types/components/RightDrawer/RightDrawer.d.ts.map +1 -1
  1130. package/dist/types/components/RightDrawer/isElementAtTopAndNotCovered.d.ts.map +1 -1
  1131. package/dist/types/components/RightDrawer/rightDrawer.content.d.ts +2 -4
  1132. package/dist/types/components/RightDrawer/rightDrawer.content.d.ts.map +1 -1
  1133. package/dist/types/components/RightDrawer/useRightDrawer.d.ts.map +1 -1
  1134. package/dist/types/components/Select/Multiselect.d.ts +0 -1
  1135. package/dist/types/components/Select/Multiselect.d.ts.map +1 -1
  1136. package/dist/types/components/Select/Select.d.ts +19 -12
  1137. package/dist/types/components/Select/Select.d.ts.map +1 -1
  1138. package/dist/types/components/SocialNetworks/DiscordLogo.d.ts +0 -1
  1139. package/dist/types/components/SocialNetworks/DiscordLogo.d.ts.map +1 -1
  1140. package/dist/types/components/SocialNetworks/FacebookLogo.d.ts +0 -1
  1141. package/dist/types/components/SocialNetworks/FacebookLogo.d.ts.map +1 -1
  1142. package/dist/types/components/SocialNetworks/InstagramLogo.d.ts +0 -1
  1143. package/dist/types/components/SocialNetworks/InstagramLogo.d.ts.map +1 -1
  1144. package/dist/types/components/SocialNetworks/ProductHuntLogo.d.ts +0 -1
  1145. package/dist/types/components/SocialNetworks/ProductHuntLogo.d.ts.map +1 -1
  1146. package/dist/types/components/SocialNetworks/TiktokLogo.d.ts +0 -1
  1147. package/dist/types/components/SocialNetworks/TiktokLogo.d.ts.map +1 -1
  1148. package/dist/types/components/SocialNetworks/XLogo.d.ts +0 -1
  1149. package/dist/types/components/SocialNetworks/XLogo.d.ts.map +1 -1
  1150. package/dist/types/components/SocialNetworks/YoutubeLogo.d.ts +0 -1
  1151. package/dist/types/components/SocialNetworks/YoutubeLogo.d.ts.map +1 -1
  1152. package/dist/types/components/SocialNetworks/index.d.ts +7 -7
  1153. package/dist/types/components/SocialNetworks/index.d.ts.map +1 -1
  1154. package/dist/types/components/Steps/index.d.ts +0 -1
  1155. package/dist/types/components/Steps/index.d.ts.map +1 -1
  1156. package/dist/types/components/Steps/steps.content.d.ts +2 -4
  1157. package/dist/types/components/Steps/steps.content.d.ts.map +1 -1
  1158. package/dist/types/components/SwitchSelector/SwitchSelector.d.ts +7 -10
  1159. package/dist/types/components/SwitchSelector/SwitchSelector.d.ts.map +1 -1
  1160. package/dist/types/components/SwitchSelector/VerticalSwitchSelector.d.ts +5 -8
  1161. package/dist/types/components/SwitchSelector/VerticalSwitchSelector.d.ts.map +1 -1
  1162. package/dist/types/components/SwitchSelector/useSwitchSelector.d.ts +14 -15
  1163. package/dist/types/components/SwitchSelector/useSwitchSelector.d.ts.map +1 -1
  1164. package/dist/types/components/Tab/Tab.d.ts +28 -22
  1165. package/dist/types/components/Tab/Tab.d.ts.map +1 -1
  1166. package/dist/types/components/Tab/TabContext.d.ts +1 -3
  1167. package/dist/types/components/Tab/TabContext.d.ts.map +1 -1
  1168. package/dist/types/components/TabSelector/TabSelector.d.ts +4 -15
  1169. package/dist/types/components/TabSelector/TabSelector.d.ts.map +1 -1
  1170. package/dist/types/components/Table/ExpandButton.d.ts +0 -1
  1171. package/dist/types/components/Table/ExpandButton.d.ts.map +1 -1
  1172. package/dist/types/components/Table/SmartTable.d.ts +0 -1
  1173. package/dist/types/components/Table/SmartTable.d.ts.map +1 -1
  1174. package/dist/types/components/Table/Table.d.ts +1 -3
  1175. package/dist/types/components/Table/Table.d.ts.map +1 -1
  1176. package/dist/types/components/Table/TableElements.d.ts +4 -18
  1177. package/dist/types/components/Table/TableElements.d.ts.map +1 -1
  1178. package/dist/types/components/Table/table.content.d.ts +2 -4
  1179. package/dist/types/components/Table/table.content.d.ts.map +1 -1
  1180. package/dist/types/components/Table/useTableWidths.d.ts +0 -1
  1181. package/dist/types/components/Table/useTableWidths.d.ts.map +1 -1
  1182. package/dist/types/components/Tag/index.d.ts +6 -8
  1183. package/dist/types/components/Tag/index.d.ts.map +1 -1
  1184. package/dist/types/components/TechLogo/TechLogo.d.ts +0 -1
  1185. package/dist/types/components/TechLogo/TechLogo.d.ts.map +1 -1
  1186. package/dist/types/components/TechLogo/logos/Adonis.d.ts +0 -1
  1187. package/dist/types/components/TechLogo/logos/Adonis.d.ts.map +1 -1
  1188. package/dist/types/components/TechLogo/logos/Angular.d.ts +0 -1
  1189. package/dist/types/components/TechLogo/logos/Angular.d.ts.map +1 -1
  1190. package/dist/types/components/TechLogo/logos/Anthropic.d.ts +0 -1
  1191. package/dist/types/components/TechLogo/logos/Anthropic.d.ts.map +1 -1
  1192. package/dist/types/components/TechLogo/logos/Astro.d.ts +0 -1
  1193. package/dist/types/components/TechLogo/logos/Astro.d.ts.map +1 -1
  1194. package/dist/types/components/TechLogo/logos/Atlassian.d.ts +0 -1
  1195. package/dist/types/components/TechLogo/logos/Atlassian.d.ts.map +1 -1
  1196. package/dist/types/components/TechLogo/logos/Bitbucket.d.ts +0 -1
  1197. package/dist/types/components/TechLogo/logos/Bitbucket.d.ts.map +1 -1
  1198. package/dist/types/components/TechLogo/logos/ChatGPT.d.ts +0 -1
  1199. package/dist/types/components/TechLogo/logos/ChatGPT.d.ts.map +1 -1
  1200. package/dist/types/components/TechLogo/logos/Claude.d.ts +0 -1
  1201. package/dist/types/components/TechLogo/logos/Claude.d.ts.map +1 -1
  1202. package/dist/types/components/TechLogo/logos/DeepSeek.d.ts +0 -1
  1203. package/dist/types/components/TechLogo/logos/DeepSeek.d.ts.map +1 -1
  1204. package/dist/types/components/TechLogo/logos/Express.d.ts +0 -1
  1205. package/dist/types/components/TechLogo/logos/Express.d.ts.map +1 -1
  1206. package/dist/types/components/TechLogo/logos/Fastify.d.ts +0 -1
  1207. package/dist/types/components/TechLogo/logos/Fastify.d.ts.map +1 -1
  1208. package/dist/types/components/TechLogo/logos/Gemini.d.ts +0 -1
  1209. package/dist/types/components/TechLogo/logos/Gemini.d.ts.map +1 -1
  1210. package/dist/types/components/TechLogo/logos/GitHub.d.ts +0 -1
  1211. package/dist/types/components/TechLogo/logos/GitHub.d.ts.map +1 -1
  1212. package/dist/types/components/TechLogo/logos/GitLab.d.ts +0 -1
  1213. package/dist/types/components/TechLogo/logos/GitLab.d.ts.map +1 -1
  1214. package/dist/types/components/TechLogo/logos/Google.d.ts +0 -1
  1215. package/dist/types/components/TechLogo/logos/Google.d.ts.map +1 -1
  1216. package/dist/types/components/TechLogo/logos/GoogleAI.d.ts +0 -1
  1217. package/dist/types/components/TechLogo/logos/GoogleAI.d.ts.map +1 -1
  1218. package/dist/types/components/TechLogo/logos/Grok.d.ts +0 -1
  1219. package/dist/types/components/TechLogo/logos/Grok.d.ts.map +1 -1
  1220. package/dist/types/components/TechLogo/logos/Hono.d.ts +0 -1
  1221. package/dist/types/components/TechLogo/logos/Hono.d.ts.map +1 -1
  1222. package/dist/types/components/TechLogo/logos/LinkedIn.d.ts +0 -1
  1223. package/dist/types/components/TechLogo/logos/LinkedIn.d.ts.map +1 -1
  1224. package/dist/types/components/TechLogo/logos/Lit.d.ts +1 -3
  1225. package/dist/types/components/TechLogo/logos/Lit.d.ts.map +1 -1
  1226. package/dist/types/components/TechLogo/logos/Lynx.d.ts +0 -1
  1227. package/dist/types/components/TechLogo/logos/Lynx.d.ts.map +1 -1
  1228. package/dist/types/components/TechLogo/logos/Microsoft.d.ts +0 -1
  1229. package/dist/types/components/TechLogo/logos/Microsoft.d.ts.map +1 -1
  1230. package/dist/types/components/TechLogo/logos/Mistral.d.ts +0 -1
  1231. package/dist/types/components/TechLogo/logos/Mistral.d.ts.map +1 -1
  1232. package/dist/types/components/TechLogo/logos/NestJS.d.ts +0 -1
  1233. package/dist/types/components/TechLogo/logos/NestJS.d.ts.map +1 -1
  1234. package/dist/types/components/TechLogo/logos/Nextjs.d.ts +0 -1
  1235. package/dist/types/components/TechLogo/logos/Nextjs.d.ts.map +1 -1
  1236. package/dist/types/components/TechLogo/logos/Node.d.ts +0 -1
  1237. package/dist/types/components/TechLogo/logos/Node.d.ts.map +1 -1
  1238. package/dist/types/components/TechLogo/logos/Nuxt.d.ts +0 -1
  1239. package/dist/types/components/TechLogo/logos/Nuxt.d.ts.map +1 -1
  1240. package/dist/types/components/TechLogo/logos/Ollama.d.ts +0 -1
  1241. package/dist/types/components/TechLogo/logos/Ollama.d.ts.map +1 -1
  1242. package/dist/types/components/TechLogo/logos/OpenAI.d.ts +0 -1
  1243. package/dist/types/components/TechLogo/logos/OpenAI.d.ts.map +1 -1
  1244. package/dist/types/components/TechLogo/logos/Perplexity.d.ts +0 -1
  1245. package/dist/types/components/TechLogo/logos/Perplexity.d.ts.map +1 -1
  1246. package/dist/types/components/TechLogo/logos/Preact.d.ts +0 -1
  1247. package/dist/types/components/TechLogo/logos/Preact.d.ts.map +1 -1
  1248. package/dist/types/components/TechLogo/logos/Reactjs.d.ts +0 -1
  1249. package/dist/types/components/TechLogo/logos/Reactjs.d.ts.map +1 -1
  1250. package/dist/types/components/TechLogo/logos/Solid.d.ts +0 -1
  1251. package/dist/types/components/TechLogo/logos/Solid.d.ts.map +1 -1
  1252. package/dist/types/components/TechLogo/logos/Svelte.d.ts +0 -1
  1253. package/dist/types/components/TechLogo/logos/Svelte.d.ts.map +1 -1
  1254. package/dist/types/components/TechLogo/logos/Tanstack.d.ts +0 -1
  1255. package/dist/types/components/TechLogo/logos/Tanstack.d.ts.map +1 -1
  1256. package/dist/types/components/TechLogo/logos/Vanilla.d.ts +1 -3
  1257. package/dist/types/components/TechLogo/logos/Vanilla.d.ts.map +1 -1
  1258. package/dist/types/components/TechLogo/logos/Vitejs.d.ts +0 -1
  1259. package/dist/types/components/TechLogo/logos/Vitejs.d.ts.map +1 -1
  1260. package/dist/types/components/TechLogo/logos/Vuejs.d.ts +0 -1
  1261. package/dist/types/components/TechLogo/logos/Vuejs.d.ts.map +1 -1
  1262. package/dist/types/components/TechLogo/techLogos.d.ts +0 -2
  1263. package/dist/types/components/TechLogo/types.d.ts.map +1 -1
  1264. package/dist/types/components/Terminal/Terminal.d.ts +0 -1
  1265. package/dist/types/components/Terminal/Terminal.d.ts.map +1 -1
  1266. package/dist/types/components/Terminal/terminal.content.d.ts +2 -4
  1267. package/dist/types/components/Terminal/terminal.content.d.ts.map +1 -1
  1268. package/dist/types/components/TextArea/AutoSizeTextArea.d.ts +3 -2
  1269. package/dist/types/components/TextArea/AutoSizeTextArea.d.ts.map +1 -1
  1270. package/dist/types/components/TextArea/AutocompleteTextArea.d.ts +3 -2
  1271. package/dist/types/components/TextArea/AutocompleteTextArea.d.ts.map +1 -1
  1272. package/dist/types/components/TextArea/ContentEditableTextArea.d.ts +2 -7
  1273. package/dist/types/components/TextArea/ContentEditableTextArea.d.ts.map +1 -1
  1274. package/dist/types/components/TextArea/TextArea.d.ts +5 -3
  1275. package/dist/types/components/TextArea/TextArea.d.ts.map +1 -1
  1276. package/dist/types/components/ThemeSwitcherDropDown/DesktopThemeSwitcher.d.ts +0 -1
  1277. package/dist/types/components/ThemeSwitcherDropDown/DesktopThemeSwitcher.d.ts.map +1 -1
  1278. package/dist/types/components/ThemeSwitcherDropDown/MobileThemeSwitcher.d.ts +0 -1
  1279. package/dist/types/components/ThemeSwitcherDropDown/MobileThemeSwitcher.d.ts.map +1 -1
  1280. package/dist/types/components/ThemeSwitcherDropDown/types.d.ts.map +1 -1
  1281. package/dist/types/components/Toaster/Toast.d.ts +2 -4
  1282. package/dist/types/components/Toaster/Toast.d.ts.map +1 -1
  1283. package/dist/types/components/Toaster/Toaster.d.ts +1 -3
  1284. package/dist/types/components/Toaster/Toaster.d.ts.map +1 -1
  1285. package/dist/types/components/Toaster/useToast.d.ts +10 -15
  1286. package/dist/types/components/Toaster/useToast.d.ts.map +1 -1
  1287. package/dist/types/components/WithResizer/index.d.ts +15 -8
  1288. package/dist/types/components/WithResizer/index.d.ts.map +1 -1
  1289. package/dist/types/components/index.d.ts +46 -7
  1290. package/dist/types/hooks/index.d.ts +1 -1
  1291. package/dist/types/hooks/useDevice.d.ts.map +1 -1
  1292. package/dist/types/hooks/useGetElementById.d.ts.map +1 -1
  1293. package/dist/types/hooks/useGetElementOrWindow.d.ts.map +1 -1
  1294. package/dist/types/hooks/useHorizontalSwipe.d.ts +0 -1
  1295. package/dist/types/hooks/useHorizontalSwipe.d.ts.map +1 -1
  1296. package/dist/types/hooks/useIsDarkMode.d.ts.map +1 -1
  1297. package/dist/types/hooks/useIsMounted.d.ts.map +1 -1
  1298. package/dist/types/hooks/useItemSelector.d.ts +1 -6
  1299. package/dist/types/hooks/useItemSelector.d.ts.map +1 -1
  1300. package/dist/types/hooks/useKeyboardDetector.d.ts.map +1 -1
  1301. package/dist/types/hooks/usePersistedStore.d.ts +0 -1
  1302. package/dist/types/hooks/usePersistedStore.d.ts.map +1 -1
  1303. package/dist/types/hooks/useScreenWidth.d.ts.map +1 -1
  1304. package/dist/types/hooks/useScrollBlockage/index.d.ts.map +1 -1
  1305. package/dist/types/hooks/useScrollBlockage/useScrollBlockageStore.d.ts.map +1 -1
  1306. package/dist/types/hooks/useScrollDetection.d.ts.map +1 -1
  1307. package/dist/types/hooks/useScrollY.d.ts.map +1 -1
  1308. package/dist/types/hooks/useSearch.d.ts.map +1 -1
  1309. package/dist/types/libs/auth.d.ts +1 -2
  1310. package/dist/types/libs/auth.d.ts.map +1 -1
  1311. package/dist/types/providers/ReactQueryProvider.d.ts +0 -1
  1312. package/dist/types/providers/ReactQueryProvider.d.ts.map +1 -1
  1313. package/dist/types/routes.d.ts +175 -169
  1314. package/dist/types/routes.d.ts.map +1 -1
  1315. package/dist/types/structured-data/buildAuthorJsonLd.d.ts +1 -1
  1316. package/dist/types/structured-data/buildAuthorJsonLd.d.ts.map +1 -1
  1317. package/dist/types/structured-data/buildBreadcrumbsJsonLd.d.ts +4 -7
  1318. package/dist/types/structured-data/buildBreadcrumbsJsonLd.d.ts.map +1 -1
  1319. package/dist/types/structured-data/buildCreativeWorkJsonLd.d.ts +31 -39
  1320. package/dist/types/structured-data/buildCreativeWorkJsonLd.d.ts.map +1 -1
  1321. package/dist/types/structured-data/buildFAQPageJsonLd.d.ts +5 -7
  1322. package/dist/types/structured-data/buildFAQPageJsonLd.d.ts.map +1 -1
  1323. package/dist/types/structured-data/buildOrganizationJsonLd.d.ts +16 -17
  1324. package/dist/types/structured-data/buildOrganizationJsonLd.d.ts.map +1 -1
  1325. package/dist/types/structured-data/buildProductJsonLd.d.ts +13 -15
  1326. package/dist/types/structured-data/buildProductJsonLd.d.ts.map +1 -1
  1327. package/dist/types/structured-data/buildSoftwareApplicationJsonLd.d.ts +47 -35
  1328. package/dist/types/structured-data/buildSoftwareApplicationJsonLd.d.ts.map +1 -1
  1329. package/dist/types/structured-data/buildWebsiteJsonLd.d.ts +19 -20
  1330. package/dist/types/structured-data/buildWebsiteJsonLd.d.ts.map +1 -1
  1331. package/dist/types/tailwind.config.d.ts.map +1 -1
  1332. package/dist/types/utils/cn.d.ts +2 -7
  1333. package/package.json +65 -68
  1334. package/src/components/MarkdownEditor/markdown-editor.css +2 -8
  1335. package/dist/esm/utils/cn.mjs.map +0 -1
  1336. package/dist/types/utils/cn.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"TextEditor.mjs","names":["ContentEditorTextAreaBase","ContentEditorInputBase"],"sources":["../../../../../src/components/DictionaryFieldEditor/ContentEditorView/TextEditor.tsx"],"sourcesContent":["'use client';\n\nimport { useAuditContentDeclarationField } from '@api/index';\nimport { Accordion } from '@components/Accordion';\nimport { Button } from '@components/Button';\nimport { Container } from '@components/Container';\nimport {\n ContentEditorInput as ContentEditorInputBase,\n type ContentEditorInputProps as ContentEditorInputPropsBase,\n} from '@components/ContentEditor/ContentEditorInput';\nimport {\n ContentEditorTextArea as ContentEditorTextAreaBase,\n type ContentEditorTextAreaProps as ContentEditorTextAreaPropsBase,\n} from '@components/ContentEditor/ContentEditorTextArea';\nimport { renameKey } from '@components/DictionaryFieldEditor/ContentEditorView/object';\nimport { Label } from '@components/Label';\nimport { Loader } from '@components/Loader';\nimport { useLocaleSwitcherContent } from '@components/LocaleSwitcherContentDropDown';\nimport {\n SwitchSelector,\n type SwitchSelectorChoices,\n type SwitchSelectorProps,\n} from '@components/SwitchSelector';\nimport { camelCaseToSentence } from '@intlayer/config/client';\nimport {\n getEmptyNode,\n getNodeType,\n} from '@intlayer/core/dictionaryManipulator';\nimport { getLocaleName } from '@intlayer/core/localization';\nimport type {\n ConditionContent,\n EnumerationContent,\n FileContent,\n GenderContent,\n HTMLContent,\n InsertionContent,\n MarkdownContent,\n PluralContent,\n TranslationContent,\n} from '@intlayer/core/transpiler';\nimport { useConfiguration, useEditedContent } from '@intlayer/editor-react';\nimport type { ContentNode, Dictionary } from '@intlayer/types/dictionary';\nimport type { KeyPath } from '@intlayer/types/keyPath';\nimport * as NodeTypes from '@intlayer/types/nodeType';\nimport { Plus, Trash, WandSparkles } from 'lucide-react';\nimport {\n type FC,\n Fragment,\n lazy,\n memo,\n type ReactNode,\n Suspense,\n useState,\n} from 'react';\nimport { useIntlayer, useLocale } from 'react-intlayer';\nimport { EnumKeyInput } from '../EnumKeyInput';\nimport { SafeHtmlRenderer } from './SafeHtmlRenderer';\n\nconst LazyMarkdownRenderer = lazy(() =>\n import('@components/MarkDownRender').then((m) => ({\n default: m.MarkdownRenderer,\n }))\n);\n\n// Lazy-loaded so the Tiptap/Novel editor bundle is only fetched when a markdown\n// field is actually edited.\nconst LazyMarkdownEditor = lazy(() =>\n import('@components/MarkdownEditor').then((m) => ({\n default: m.MarkdownEditor,\n }))\n);\n\n// Renders children only after the accordion is first opened (mount-once pattern).\n// Prevents deeply nested sub-trees from mounting on initial render.\ntype CollapsibleEditorProps = TextEditorProps & { label: string };\nconst CollapsibleEditor = memo<CollapsibleEditorProps>(\n function CollapsibleEditor({ label, ...editorProps }) {\n const [hasOpened, setHasOpened] = useState(false);\n return (\n <Accordion\n header={label}\n label={label}\n onToggle={(isOpen) => {\n if (isOpen && !hasOpened) setHasOpened(true);\n }}\n >\n {hasOpened ? <TextEditor {...editorProps} /> : null}\n </Accordion>\n );\n }\n);\n\nexport const traceKeys: string[] = ['filePath', 'id', 'nodeType'];\n\ntype ContentEditorTextAreaProps = Omit<\n ContentEditorTextAreaPropsBase,\n 'onContentChange'\n> & {\n keyPath: KeyPath[];\n dictionary: Dictionary;\n};\n\nconst ContentEditorTextArea: FC<ContentEditorTextAreaProps> = ({\n keyPath,\n dictionary,\n ...props\n}) => {\n const { editedContent, addEditedContent } = useEditedContent();\n const configuration = useConfiguration();\n const { mutate: auditContentDeclarationField, isPending: isAuditing } =\n useAuditContentDeclarationField();\n\n return (\n <ContentEditorTextAreaBase\n variant=\"default\"\n onContentChange={(newValue) =>\n addEditedContent(dictionary.localId!, newValue, keyPath)\n }\n additionalButtons={\n <Button\n Icon={WandSparkles}\n label=\"Audit\"\n variant=\"hoverable\"\n size=\"icon-sm\"\n color=\"text\"\n className=\"cursor-pointer hover:scale-110\"\n isLoading={isAuditing}\n onClick={() => {\n auditContentDeclarationField(\n {\n fileContent: JSON.stringify({\n ...dictionary,\n ...(editedContent?.[dictionary.localId!] ?? {}),\n }),\n keyPath,\n locales: configuration?.internationalization.locales ?? [],\n aiOptions: {\n apiKey: configuration?.ai?.apiKey,\n model: configuration?.ai?.model,\n temperature: configuration?.ai?.temperature,\n },\n },\n {\n onSuccess: (response) => {\n if (!response?.data) return;\n\n try {\n const editedContent = response.data.fileContent as string;\n\n addEditedContent(\n dictionary.localId!,\n editedContent,\n keyPath\n );\n } catch (error) {\n console.error(error);\n }\n },\n }\n );\n }}\n />\n }\n {...props}\n />\n );\n};\n\ntype ContentEditorInputProps = Omit<\n ContentEditorInputPropsBase,\n 'onContentChange'\n> & {\n keyPath: KeyPath[];\n dictionary: Dictionary;\n};\n\nconst ContentEditorInput: FC<ContentEditorInputProps> = ({\n keyPath,\n dictionary,\n ...props\n}) => {\n const { addEditedContent } = useEditedContent();\n\n return (\n <ContentEditorInputBase\n variant=\"default\"\n onContentChange={(newValue) =>\n addEditedContent(dictionary.localId!, newValue, keyPath)\n }\n {...props}\n />\n );\n};\n\nconst toggleContent = [\n {\n content: 'False',\n value: false,\n },\n {\n content: 'True',\n value: true,\n },\n] as SwitchSelectorChoices<boolean>;\n\ntype ContentEditorToggleProps = SwitchSelectorProps & {\n dictionary: Dictionary;\n keyPath: KeyPath[];\n};\n\nconst ContentEditorToggle: FC<ContentEditorToggleProps> = ({\n dictionary,\n keyPath,\n ...props\n}) => {\n const { addEditedContent } = useEditedContent();\n\n return (\n <SwitchSelector\n choices={toggleContent}\n value={true}\n onChange={(value) =>\n addEditedContent(dictionary.localId!, value, keyPath)\n }\n color=\"text\"\n size=\"sm\"\n {...props}\n />\n );\n};\n\nexport type TextEditorProps = {\n dictionary: Dictionary;\n keyPath: KeyPath[];\n section: ContentNode;\n isDarkMode?: boolean;\n renderSection?: (content: string) => ReactNode;\n onContentChange?: (newValue: string) => void;\n};\n\nconst TranslationTextEditor: FC<TextEditorProps> = ({\n section,\n keyPath,\n dictionary,\n renderSection,\n}: TextEditorProps) => {\n const { locale, defaultLocale } = useLocale();\n const { selectedLocales } = useLocaleSwitcherContent();\n\n const content: any = (section as TranslationContent<string>)[\n NodeTypes.TRANSLATION\n ];\n\n return (\n <table className=\"w-full\">\n <tbody className=\"flex w-full flex-col gap-2\">\n {selectedLocales.map((translationKey) => {\n const uniqueKey = `${JSON.stringify(keyPath)}-translation-${translationKey}`;\n return (\n <Fragment key={uniqueKey}>\n <tr className=\"mt-2 w-full p-2 text-xs\">\n <td className=\"flex w-full\">\n {getLocaleName(translationKey, locale)}\n </td>\n </tr>\n <tr className=\"flex\">\n <td className=\"flex w-full\">\n <TextEditorContainer\n section={\n content[translationKey] ??\n getEmptyNode(content[defaultLocale])\n }\n keyPath={[\n ...keyPath,\n { type: NodeTypes.TRANSLATION, key: translationKey },\n ]}\n dictionary={dictionary}\n renderSection={renderSection}\n />\n </td>\n </tr>\n </Fragment>\n );\n })}\n </tbody>\n </table>\n );\n};\n\nconst EnumerationTextEditor: FC<TextEditorProps> = ({\n section,\n keyPath,\n dictionary,\n renderSection,\n}) => {\n const { addEditedContent } = useEditedContent();\n const { addNewEnumeration, removeEnumeration } =\n useIntlayer('navigation-view');\n\n const content = (section as EnumerationContent<string>)[\n NodeTypes.ENUMERATION\n ];\n const firstKey = Object.keys(content)[0] as keyof typeof content;\n\n return (\n <div className=\"flex flex-col gap-2\">\n <table className=\"w-full\">\n <tbody className=\"flex w-full flex-col gap-2\">\n {Object.keys(\n (section as EnumerationContent<ContentNode>)[NodeTypes.ENUMERATION]\n ).map((enumKey) => {\n const childrenKeyPath = [\n ...keyPath,\n { type: NodeTypes.ENUMERATION, key: enumKey },\n ] as KeyPath[];\n const uniqueKey = `${JSON.stringify(keyPath)}-enumeration-${enumKey}`;\n\n return (\n <Fragment key={uniqueKey}>\n <tr className=\"mt-2 w-full\">\n <td className=\"flex w-full\">\n <div className=\"flex flex-1\">\n <Button\n label={removeEnumeration.label.value}\n variant=\"hoverable\"\n size=\"sm\"\n color=\"error\"\n className=\"ml-auto text-neutral hover:text-error\"\n Icon={Trash}\n onClick={() =>\n addEditedContent(\n dictionary.localId!,\n undefined,\n childrenKeyPath\n )\n }\n >\n {removeEnumeration.text}\n </Button>\n </div>\n </td>\n </tr>\n <tr className=\"w-full p-2\">\n <td className=\"flex w-full\">\n <EnumKeyInput\n value={enumKey}\n onChange={(value) => {\n const preValueContent = (\n section as EnumerationContent<string>\n )[NodeTypes.ENUMERATION];\n\n const newValueContent = renameKey(\n preValueContent,\n enumKey as keyof typeof preValueContent,\n value\n );\n const newValue = {\n ...(section as EnumerationContent<string>),\n [NodeTypes.ENUMERATION]: newValueContent,\n };\n\n console.log('newValue', newValue);\n\n addEditedContent(\n dictionary.localId!,\n newValue,\n keyPath\n );\n }}\n />\n </td>\n </tr>\n <tr className=\"block w-full\">\n <td className=\"flex w-full\">\n <TextEditor\n section={\n content[enumKey as keyof typeof content] ??\n getEmptyNode(content[firstKey])\n }\n keyPath={childrenKeyPath}\n dictionary={dictionary}\n renderSection={renderSection}\n />\n </td>\n </tr>\n </Fragment>\n );\n })}\n </tbody>\n </table>\n\n <Button\n label={addNewEnumeration.label.value}\n variant=\"hoverable\"\n color=\"neutral\"\n textAlign=\"left\"\n isFullWidth\n onClick={() =>\n addEditedContent(\n dictionary.localId!,\n getEmptyNode(content[firstKey]) ?? '',\n [...keyPath, { type: NodeTypes.ENUMERATION, key: 'unknown' }]\n )\n }\n Icon={Plus}\n className=\"m-2\"\n >\n {addNewEnumeration.text}\n </Button>\n </div>\n );\n};\n\nconst ConditionTextEditor: FC<TextEditorProps> = ({\n section,\n keyPath,\n dictionary,\n renderSection,\n}) => {\n const content = (section as ConditionContent<string>)[NodeTypes.CONDITION];\n\n return (\n <table className=\"w-full\">\n <tbody className=\"flex w-full flex-col gap-2\">\n {['true', 'false', 'fallback'].map((condKey) => {\n const uniqueKey = `${JSON.stringify(keyPath)}-condition-${condKey}`;\n return (\n <Fragment key={uniqueKey}>\n <tr className=\"mt-2 block w-full p-2 text-xs\">\n <td className=\"flex w-full\">{String(condKey)}</td>\n </tr>\n <tr className=\"block w-full\">\n <td className=\"flex w-full\">\n <TextEditorContainer\n section={\n content[condKey as keyof typeof content] ??\n getEmptyNode(content.true)\n }\n keyPath={[\n ...keyPath,\n {\n type: NodeTypes.CONDITION,\n key: condKey,\n } as KeyPath,\n ]}\n dictionary={dictionary}\n renderSection={renderSection}\n />\n </td>\n </tr>\n </Fragment>\n );\n })}\n </tbody>\n </table>\n );\n};\n\nconst GenderTextEditor: FC<TextEditorProps> = ({\n section,\n keyPath,\n dictionary,\n renderSection,\n}) => {\n const content = (section as GenderContent<string>)[NodeTypes.GENDER];\n\n return (\n <table className=\"w-full\">\n <tbody className=\"flex w-full flex-col gap-2\">\n {['male', 'female', 'fallback'].map((condKey) => {\n const uniqueKey = `${JSON.stringify(keyPath)}-gender-${condKey}`;\n return (\n <Fragment key={uniqueKey}>\n <tr className=\"mt-2 block w-full p-2 text-xs\">\n <td className=\"flex w-full\">{String(condKey)}</td>\n </tr>\n <tr className=\"block w-full\">\n <td className=\"flex w-full\">\n <TextEditorContainer\n section={\n content[condKey as keyof typeof content] ??\n getEmptyNode(content.male)\n }\n keyPath={[\n ...keyPath,\n {\n type: NodeTypes.GENDER,\n key: condKey,\n } as KeyPath,\n ]}\n dictionary={dictionary}\n renderSection={renderSection}\n />\n </td>\n </tr>\n </Fragment>\n );\n })}\n </tbody>\n </table>\n );\n};\n\nconst PLURAL_CATEGORIES = ['zero', 'one', 'two', 'few', 'many', 'other'];\n\nconst PluralTextEditor: FC<TextEditorProps> = ({\n section,\n keyPath,\n dictionary,\n renderSection,\n}) => {\n const content = (section as PluralContent<string>)[NodeTypes.PLURAL];\n\n return (\n <table className=\"w-full\">\n <tbody className=\"flex w-full flex-col gap-2\">\n {PLURAL_CATEGORIES.map((pluralKey) => {\n const uniqueKey = `${JSON.stringify(keyPath)}-plural-${pluralKey}`;\n return (\n <Fragment key={uniqueKey}>\n <tr className=\"mt-2 block w-full p-2 text-xs\">\n <td className=\"flex w-full\">{pluralKey}</td>\n </tr>\n <tr className=\"block w-full\">\n <td className=\"flex w-full\">\n <TextEditorContainer\n section={\n content[pluralKey as keyof typeof content] ??\n getEmptyNode(content.other)\n }\n keyPath={[\n ...keyPath,\n {\n type: NodeTypes.PLURAL,\n key: pluralKey,\n } as KeyPath,\n ]}\n dictionary={dictionary}\n renderSection={renderSection}\n />\n </td>\n </tr>\n </Fragment>\n );\n })}\n </tbody>\n </table>\n );\n};\n\nconst ArrayTextEditor: FC<TextEditorProps> = ({\n section,\n keyPath,\n dictionary,\n renderSection,\n}) => {\n const { addEditedContent } = useEditedContent();\n const { addNewElement, removeElement } = useIntlayer('navigation-view');\n\n return (\n <div className=\"flex flex-col gap-2\">\n <table className=\"w-full\">\n <tbody className=\"flex w-full flex-col gap-2\">\n {(section as unknown as ContentNode[]).map((subSection, index) => {\n const uniqueKey = `${JSON.stringify(keyPath)}-array-${index}`;\n return (\n <Fragment key={uniqueKey}>\n <tr className=\"mt-2 w-full p-2\">\n <td className=\"flex w-full\">\n <div className=\"flex w-full items-center justify-between gap-2\">\n <span className=\"text-xs\">{String(index)}</span>\n <Button\n label={removeElement.label.value}\n variant=\"hoverable\"\n size=\"sm\"\n color=\"error\"\n className=\"ml-auto text-neutral hover:text-error\"\n onClick={() => {\n const newKeyPath: KeyPath[] = [\n ...keyPath,\n {\n type: NodeTypes.ARRAY,\n key: index, // Fixed: Use index instead of length\n },\n ];\n addEditedContent(\n dictionary.localId!,\n undefined,\n newKeyPath\n );\n }}\n Icon={Trash}\n >\n {removeElement.text}\n </Button>\n </div>\n </td>\n </tr>\n\n <tr className=\"block w-full\">\n <td className=\"flex w-full\">\n <TextEditorContainer\n section={\n subSection ??\n getEmptyNode((section as unknown as ContentNode[])[0])\n }\n keyPath={[\n ...keyPath,\n {\n type: NodeTypes.ARRAY,\n key: index,\n },\n ]}\n dictionary={dictionary}\n renderSection={renderSection}\n />\n </td>\n </tr>\n </Fragment>\n );\n })}\n </tbody>\n </table>\n <Button\n label={addNewElement.label.value}\n variant=\"hoverable\"\n color=\"neutral\"\n textAlign=\"left\"\n isFullWidth\n onClick={() => {\n const newKeyPath: KeyPath[] = [\n ...keyPath,\n {\n type: NodeTypes.ARRAY,\n key: (section as unknown as ContentNode[]).length, // Keeps length for adding new items\n },\n ];\n addEditedContent(\n dictionary.localId!,\n getEmptyNode((section as unknown as ContentNode[])[0]) ?? '',\n newKeyPath,\n false\n );\n }}\n Icon={Plus}\n >\n {addNewElement.text}\n </Button>\n </div>\n );\n};\n\nconst ObjectTextEditor: FC<TextEditorProps> = ({\n section,\n keyPath,\n dictionary,\n renderSection,\n}) => {\n const typedSection = section as unknown as Record<string, ContentNode>;\n const firstKey = Object.keys(typedSection)[0] as keyof typeof section;\n\n return (\n <table className=\"w-full\">\n <tbody className=\"flex flex-col gap-2\">\n {Object.keys(typedSection).map((key) => {\n const childKeyPath: KeyPath[] = [\n ...keyPath,\n { type: NodeTypes.OBJECT, key },\n ];\n const subSection =\n typedSection[key as keyof typeof section] ??\n getEmptyNode(typedSection[firstKey]);\n const uniqueKey = `${JSON.stringify(keyPath)}-object-${key}`;\n // Collapse any object/array (typed or plain) — only true primitives render inline.\n // getIsEditableSection can't be used here: it inspects getNodeChildren(), which for\n // translation nodes returns the first locale value (a string), causing translation\n // subtrees to be mistakenly treated as leaves and mounted all at once.\n const isLeaf = subSection === null || typeof subSection !== 'object';\n\n if (isLeaf) {\n return (\n <Fragment key={uniqueKey}>\n <tr className=\"mt-2 p-2 text-xs\">\n <td className=\"flex w-full\">{String(key)}</td>\n </tr>\n <tr className=\"block w-full\">\n <td className=\"flex w-full\">\n <TextEditor\n section={subSection}\n keyPath={childKeyPath}\n dictionary={dictionary}\n renderSection={renderSection}\n />\n </td>\n </tr>\n </Fragment>\n );\n }\n\n return (\n <tr\n key={uniqueKey}\n className=\"block w-full border-neutral/10 border-t py-1\"\n >\n <td className=\"flex w-full\">\n <CollapsibleEditor\n label={camelCaseToSentence(key)}\n section={subSection}\n keyPath={childKeyPath}\n dictionary={dictionary}\n renderSection={renderSection}\n />\n </td>\n </tr>\n );\n })}\n </tbody>\n </table>\n );\n};\n\nenum MarkdownViewMode {\n Edit,\n Raw,\n Preview,\n}\n\nenum HtmlViewMode {\n Edit,\n Preview,\n}\n\nconst HtmlTextEditor: FC<TextEditorProps> = ({\n section,\n keyPath,\n dictionary,\n}) => {\n const [mode, setMode] = useState(HtmlViewMode.Edit);\n const toggleContent = [\n {\n content: 'Edit',\n value: HtmlViewMode.Edit,\n },\n {\n content: 'Preview',\n value: HtmlViewMode.Preview,\n },\n ] as SwitchSelectorChoices<HtmlViewMode>;\n const childKeyPath: KeyPath[] = [...keyPath, { type: NodeTypes.HTML }];\n\n const content = (section as HTMLContent<ContentNode>)[\n NodeTypes.HTML\n ] as ContentNode;\n\n return (\n <div className=\"flex w-full flex-col justify-center gap-6 p-2\">\n <SwitchSelector\n choices={toggleContent}\n value={mode}\n onChange={setMode}\n color=\"text\"\n size=\"sm\"\n className=\"ml-auto\"\n />\n\n <TextEditorContainer\n section={content}\n keyPath={childKeyPath}\n dictionary={dictionary}\n renderSection={\n mode === HtmlViewMode.Preview\n ? (rawContent) => <SafeHtmlRenderer rawContent={rawContent} />\n : undefined\n }\n />\n </div>\n );\n};\n\nconst MarkdownTextEditor: FC<TextEditorProps> = ({\n section,\n keyPath,\n dictionary,\n isDarkMode,\n}) => {\n const [mode, setMode] = useState(MarkdownViewMode.Edit);\n const { addEditedContent } = useEditedContent();\n const toggleContent = [\n {\n content: 'Edit',\n value: MarkdownViewMode.Edit,\n },\n {\n content: 'Raw',\n value: MarkdownViewMode.Raw,\n },\n {\n content: 'Preview',\n value: MarkdownViewMode.Preview,\n },\n ] as SwitchSelectorChoices<MarkdownViewMode>;\n const childKeyPath: KeyPath[] = [...keyPath, { type: NodeTypes.MARKDOWN }];\n\n const content = ((section as MarkdownContent<ContentNode>)[\n NodeTypes.MARKDOWN\n ] ?? '') as ContentNode;\n\n // The WYSIWYG editor only handles a plain markdown string. When the markdown\n // node wraps another node (e.g. `md(t({ ... }))`), fall back to the recursive\n // editor so the inner translation/nested structure stays editable.\n const isStringLeaf = typeof content === 'string';\n\n return (\n <div className=\"flex w-full flex-col justify-center gap-6 p-2\">\n <SwitchSelector\n choices={toggleContent}\n value={mode}\n onChange={setMode}\n color=\"text\"\n size=\"sm\"\n className=\"ml-auto\"\n />\n\n {mode === MarkdownViewMode.Edit && isStringLeaf ? (\n <Container\n border\n background=\"none\"\n roundedSize=\"2xl\"\n padding=\"lg\"\n className=\"w-full\"\n >\n <Suspense fallback={<Loader />}>\n <LazyMarkdownEditor\n key={JSON.stringify(childKeyPath)}\n defaultValue={content}\n onChange={(markdown) =>\n addEditedContent(dictionary.localId!, markdown, childKeyPath)\n }\n />\n </Suspense>\n </Container>\n ) : (\n <TextEditorContainer\n section={content}\n keyPath={childKeyPath}\n dictionary={dictionary}\n renderSection={\n mode === MarkdownViewMode.Preview\n ? (content) => (\n <Suspense fallback={<Loader />}>\n <LazyMarkdownRenderer isDarkMode={isDarkMode}>\n {content}\n </LazyMarkdownRenderer>\n </Suspense>\n )\n : undefined\n }\n />\n )}\n </div>\n );\n};\n\nconst InsertionTextEditor: FC<TextEditorProps> = ({\n section,\n keyPath,\n ...props\n}) => {\n const childKeyPath: KeyPath[] = [...keyPath, { type: NodeTypes.INSERTION }];\n\n const content = (section as InsertionContent<ContentNode>)[\n NodeTypes.INSERTION\n ];\n\n return (\n <div className=\"flex w-full flex-col justify-center gap-6 p-2\">\n <TextEditorContainer\n section={content}\n keyPath={childKeyPath}\n {...props}\n />\n </div>\n );\n};\n\nconst FileTextEditor: FC<TextEditorProps> = ({\n section,\n keyPath,\n ...props\n}) => {\n const childKeyPath: KeyPath[] = [...keyPath, { type: NodeTypes.FILE }];\n\n const fileUrl = (section as FileContent)[NodeTypes.FILE];\n const { content } = section as FileContent;\n\n return (\n <div className=\"flex w-full flex-col justify-center gap-6 p-2\">\n <span className=\"text-neutral text-sm\">{fileUrl} </span>\n <TextEditorContainer\n section={content}\n keyPath={childKeyPath}\n {...props}\n />\n </div>\n );\n};\n\nconst NestedTextEditor: FC<TextEditorProps> = ({\n keyPath,\n dictionary,\n renderSection,\n section,\n ...props\n}) => {\n const { addEditedContent } = useEditedContent();\n\n const content = (section as any)[NodeTypes.NESTED];\n const childrenKeyPath = [...keyPath, { type: NodeTypes.NESTED }] as KeyPath[];\n\n return (\n <div className=\"flex w-full flex-col gap-4 p-2\">\n <Label>Dictionary key</Label>\n <ContentEditorInputBase\n aria-label=\"Edit field\"\n type=\"text\"\n variant=\"default\"\n {...props}\n onContentChange={(newValue) => {\n addEditedContent(\n dictionary.localId!,\n {\n ...content,\n dictionaryKey: String(newValue),\n },\n childrenKeyPath\n );\n }}\n >\n {content.dictionaryKey ?? ''}\n </ContentEditorInputBase>\n\n <Label>Path (optional)</Label>\n <ContentEditorInputBase\n aria-label=\"Edit field\"\n type=\"text\"\n variant=\"default\"\n {...props}\n onContentChange={(newValue) => {\n addEditedContent(\n dictionary.localId!,\n {\n ...content,\n path: newValue !== '' ? newValue : undefined,\n },\n childrenKeyPath\n );\n }}\n >\n {content.path ?? ''}\n </ContentEditorInputBase>\n </div>\n );\n};\n\nexport const TextEditor = memo<TextEditorProps>(function TextEditor({\n section,\n keyPath,\n dictionary,\n renderSection,\n isDarkMode,\n}) {\n const { tsxNotEditable } = useIntlayer('navigation-view');\n const nodeType = getNodeType(section);\n\n if (nodeType === NodeTypes.REACT_NODE) {\n return (\n <div className=\"flex w-full flex-col gap-2\">\n <span>(React Node)</span>\n <span className=\"flex text-neutral text-xs\">{tsxNotEditable}</span>\n </div>\n );\n }\n\n if (nodeType === NodeTypes.NESTED) {\n return (\n <NestedTextEditor\n dictionary={dictionary}\n renderSection={renderSection}\n keyPath={keyPath}\n section={section}\n />\n );\n }\n\n if (nodeType === NodeTypes.TRANSLATION) {\n return (\n <TranslationTextEditor\n dictionary={dictionary}\n renderSection={renderSection}\n keyPath={keyPath}\n section={section}\n />\n );\n }\n\n if (nodeType === NodeTypes.ENUMERATION) {\n return (\n <EnumerationTextEditor\n dictionary={dictionary}\n renderSection={renderSection}\n keyPath={keyPath}\n section={section}\n />\n );\n }\n\n if (nodeType === NodeTypes.CONDITION) {\n return (\n <ConditionTextEditor\n dictionary={dictionary}\n renderSection={renderSection}\n keyPath={keyPath}\n section={section}\n />\n );\n }\n\n if (nodeType === NodeTypes.GENDER) {\n return (\n <GenderTextEditor\n dictionary={dictionary}\n renderSection={renderSection}\n keyPath={keyPath}\n section={section}\n />\n );\n }\n\n if (nodeType === NodeTypes.PLURAL) {\n return (\n <PluralTextEditor\n dictionary={dictionary}\n renderSection={renderSection}\n keyPath={keyPath}\n section={section}\n />\n );\n }\n\n if (nodeType === NodeTypes.INSERTION) {\n return (\n <InsertionTextEditor\n dictionary={dictionary}\n renderSection={renderSection}\n keyPath={keyPath}\n section={section}\n />\n );\n }\n\n if (nodeType === NodeTypes.MARKDOWN) {\n return (\n <MarkdownTextEditor\n dictionary={dictionary}\n keyPath={keyPath}\n section={section}\n isDarkMode={isDarkMode}\n />\n );\n }\n\n if (nodeType === NodeTypes.HTML) {\n return (\n <HtmlTextEditor\n dictionary={dictionary}\n keyPath={keyPath}\n section={section}\n />\n );\n }\n\n if (nodeType === NodeTypes.FILE) {\n return (\n <FileTextEditor\n dictionary={dictionary}\n renderSection={renderSection}\n keyPath={keyPath}\n section={section}\n />\n );\n }\n\n if (nodeType === NodeTypes.ARRAY) {\n return (\n <ArrayTextEditor\n dictionary={dictionary}\n renderSection={renderSection}\n keyPath={keyPath}\n section={section}\n />\n );\n }\n\n if (nodeType === NodeTypes.OBJECT) {\n return (\n <ObjectTextEditor\n dictionary={dictionary}\n renderSection={renderSection}\n keyPath={keyPath}\n section={section}\n />\n );\n }\n\n if (nodeType === NodeTypes.NUMBER) {\n return (\n <div className=\"w-full p-2\">\n <ContentEditorInput\n dictionary={dictionary}\n keyPath={keyPath}\n type=\"number\"\n aria-label=\"Edit field\"\n >\n {section as number}\n </ContentEditorInput>\n </div>\n );\n }\n\n if (nodeType === NodeTypes.TEXT) {\n return (\n <div className=\"w-full p-2\">\n {typeof renderSection === 'function' ? (\n renderSection(section as string)\n ) : (\n <ContentEditorTextArea\n variant=\"default\"\n aria-label=\"Edit field\"\n keyPath={keyPath}\n dictionary={dictionary}\n >\n {section as string}\n </ContentEditorTextArea>\n )}\n </div>\n );\n }\n\n if (nodeType === NodeTypes.BOOLEAN) {\n return (\n <div className=\"w-full p-2\">\n <ContentEditorToggle\n dictionary={dictionary}\n keyPath={keyPath}\n value={section as boolean}\n />\n </div>\n );\n }\n\n return (\n <div className=\"w-full p-2\">\n Error. Format not supported.\n {JSON.stringify(section, null, 2)}\n {JSON.stringify(keyPath, null, 2)}\n NodeType : {nodeType}\n </div>\n );\n});\n\nexport const TextEditorContainer = memo<TextEditorProps>(\n function TextEditorContainer(props) {\n return (\n <Container\n border\n background=\"none\"\n className=\"top-6 flex h-full flex-1 flex-col gap-6 overflow-hidden p-2 md:sticky\"\n roundedSize=\"2xl\"\n >\n <TextEditor {...props} />\n </Container>\n );\n }\n);\n"],"mappings":"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"}
1
+ {"version":3,"file":"TextEditor.mjs","names":["ContentEditorTextAreaBase","ContentEditorInputBase"],"sources":["../../../../../src/components/DictionaryFieldEditor/ContentEditorView/TextEditor.tsx"],"sourcesContent":["'use client';\n\nimport { useAuditContentDeclarationField } from '@api/index';\nimport { Accordion } from '@components/Accordion';\nimport { Button } from '@components/Button';\nimport { Container } from '@components/Container';\nimport {\n ContentEditorInput as ContentEditorInputBase,\n type ContentEditorInputProps as ContentEditorInputPropsBase,\n} from '@components/ContentEditor/ContentEditorInput';\nimport {\n ContentEditorTextArea as ContentEditorTextAreaBase,\n type ContentEditorTextAreaProps as ContentEditorTextAreaPropsBase,\n} from '@components/ContentEditor/ContentEditorTextArea';\nimport { renameKey } from '@components/DictionaryFieldEditor/ContentEditorView/object';\nimport { Label } from '@components/Label';\nimport { Loader } from '@components/Loader';\nimport { useLocaleSwitcherContent } from '@components/LocaleSwitcherContentDropDown';\nimport {\n SwitchSelector,\n type SwitchSelectorChoices,\n type SwitchSelectorProps,\n} from '@components/SwitchSelector';\nimport { camelCaseToSentence } from '@intlayer/config/client';\nimport {\n getEmptyNode,\n getNodeType,\n} from '@intlayer/core/dictionaryManipulator';\nimport { getLocaleName } from '@intlayer/core/localization';\nimport type {\n ConditionContent,\n EnumerationContent,\n FileContent,\n GenderContent,\n HTMLContent,\n InsertionContent,\n MarkdownContent,\n PluralContent,\n TranslationContent,\n} from '@intlayer/core/transpiler';\nimport { useConfiguration, useEditedContent } from '@intlayer/editor-react';\nimport type { ContentNode, Dictionary } from '@intlayer/types/dictionary';\nimport type { KeyPath } from '@intlayer/types/keyPath';\nimport * as NodeTypes from '@intlayer/types/nodeType';\nimport { Plus, Trash, WandSparkles } from 'lucide-react';\nimport {\n type FC,\n Fragment,\n lazy,\n memo,\n type ReactNode,\n Suspense,\n useState,\n} from 'react';\nimport { useIntlayer, useLocale } from 'react-intlayer';\nimport { EnumKeyInput } from '../EnumKeyInput';\nimport { SafeHtmlRenderer } from './SafeHtmlRenderer';\n\nconst LazyMarkdownRenderer = lazy(() =>\n import('@components/MarkDownRender').then((m) => ({\n default: m.MarkdownRenderer,\n }))\n);\n\n// Lazy-loaded so the Tiptap/Novel editor bundle is only fetched when a markdown\n// field is actually edited.\nconst LazyMarkdownEditor = lazy(() =>\n import('@components/MarkdownEditor').then((m) => ({\n default: m.MarkdownEditor,\n }))\n);\n\n// Renders children only after the accordion is first opened (mount-once pattern).\n// Prevents deeply nested sub-trees from mounting on initial render.\ntype CollapsibleEditorProps = TextEditorProps & { label: string };\nconst CollapsibleEditor = memo<CollapsibleEditorProps>(\n function CollapsibleEditor({ label, ...editorProps }) {\n const [hasOpened, setHasOpened] = useState(false);\n return (\n <Accordion\n header={label}\n label={label}\n onToggle={(isOpen) => {\n if (isOpen && !hasOpened) setHasOpened(true);\n }}\n >\n {hasOpened ? <TextEditor {...editorProps} /> : null}\n </Accordion>\n );\n }\n);\n\nexport const traceKeys: string[] = ['filePath', 'id', 'nodeType'];\n\ntype ContentEditorTextAreaProps = Omit<\n ContentEditorTextAreaPropsBase,\n 'onContentChange'\n> & {\n keyPath: KeyPath[];\n dictionary: Dictionary;\n};\n\nconst ContentEditorTextArea: FC<ContentEditorTextAreaProps> = ({\n keyPath,\n dictionary,\n ...props\n}) => {\n const { editedContent, addEditedContent } = useEditedContent();\n const configuration = useConfiguration();\n const { mutate: auditContentDeclarationField, isPending: isAuditing } =\n useAuditContentDeclarationField();\n\n return (\n <ContentEditorTextAreaBase\n variant=\"default\"\n onContentChange={(newValue) =>\n addEditedContent(dictionary.localId!, newValue, keyPath)\n }\n additionalButtons={\n <Button\n Icon={WandSparkles}\n label=\"Audit\"\n variant=\"hoverable\"\n size=\"icon-sm\"\n color=\"text\"\n className=\"cursor-pointer hover:scale-110\"\n isLoading={isAuditing}\n onClick={() => {\n auditContentDeclarationField(\n {\n fileContent: JSON.stringify({\n ...dictionary,\n ...(editedContent?.[dictionary.localId!] ?? {}),\n }),\n keyPath,\n locales: configuration?.internationalization.locales ?? [],\n aiOptions: {\n apiKey: configuration?.ai?.apiKey,\n model: configuration?.ai?.model,\n temperature: configuration?.ai?.temperature,\n },\n },\n {\n onSuccess: (response) => {\n if (!response?.data) return;\n\n try {\n const editedContent = response.data.fileContent as string;\n\n addEditedContent(\n dictionary.localId!,\n editedContent,\n keyPath\n );\n } catch (error) {\n console.error(error);\n }\n },\n }\n );\n }}\n />\n }\n {...props}\n />\n );\n};\n\ntype ContentEditorInputProps = Omit<\n ContentEditorInputPropsBase,\n 'onContentChange'\n> & {\n keyPath: KeyPath[];\n dictionary: Dictionary;\n};\n\nconst ContentEditorInput: FC<ContentEditorInputProps> = ({\n keyPath,\n dictionary,\n ...props\n}) => {\n const { addEditedContent } = useEditedContent();\n\n return (\n <ContentEditorInputBase\n variant=\"default\"\n onContentChange={(newValue) =>\n addEditedContent(dictionary.localId!, newValue, keyPath)\n }\n {...props}\n />\n );\n};\n\nconst toggleContent = [\n {\n content: 'False',\n value: false,\n },\n {\n content: 'True',\n value: true,\n },\n] as SwitchSelectorChoices<boolean>;\n\ntype ContentEditorToggleProps = SwitchSelectorProps & {\n dictionary: Dictionary;\n keyPath: KeyPath[];\n};\n\nconst ContentEditorToggle: FC<ContentEditorToggleProps> = ({\n dictionary,\n keyPath,\n ...props\n}) => {\n const { addEditedContent } = useEditedContent();\n\n return (\n <SwitchSelector\n choices={toggleContent}\n value={true}\n onChange={(value) =>\n addEditedContent(dictionary.localId!, value, keyPath)\n }\n color=\"text\"\n size=\"sm\"\n {...props}\n />\n );\n};\n\nexport type TextEditorProps = {\n dictionary: Dictionary;\n keyPath: KeyPath[];\n section: ContentNode;\n isDarkMode?: boolean;\n /**\n * Custom renderer for string leaves. Receives the leaf content and its full\n * key path so the renderer can write edits back to the right location.\n */\n renderSection?: (content: string, keyPath: KeyPath[]) => ReactNode;\n onContentChange?: (newValue: string) => void;\n};\n\nconst TranslationTextEditor: FC<TextEditorProps> = ({\n section,\n keyPath,\n dictionary,\n renderSection,\n}: TextEditorProps) => {\n const { locale, defaultLocale } = useLocale();\n const { selectedLocales } = useLocaleSwitcherContent();\n\n const content: any = (section as TranslationContent<string>)[\n NodeTypes.TRANSLATION\n ];\n\n return (\n <table className=\"w-full\">\n <tbody className=\"flex w-full flex-col gap-2\">\n {selectedLocales.map((translationKey) => {\n const uniqueKey = `${JSON.stringify(keyPath)}-translation-${translationKey}`;\n return (\n <Fragment key={uniqueKey}>\n <tr className=\"mt-2 w-full p-2 text-xs\">\n <td className=\"flex w-full\">\n {getLocaleName(translationKey, locale)}\n </td>\n </tr>\n <tr className=\"flex\">\n <td className=\"flex w-full\">\n <TextEditorContainer\n section={\n content[translationKey] ??\n getEmptyNode(content[defaultLocale])\n }\n keyPath={[\n ...keyPath,\n { type: NodeTypes.TRANSLATION, key: translationKey },\n ]}\n dictionary={dictionary}\n renderSection={renderSection}\n />\n </td>\n </tr>\n </Fragment>\n );\n })}\n </tbody>\n </table>\n );\n};\n\nconst EnumerationTextEditor: FC<TextEditorProps> = ({\n section,\n keyPath,\n dictionary,\n renderSection,\n}) => {\n const { addEditedContent } = useEditedContent();\n const { addNewEnumeration, removeEnumeration } =\n useIntlayer('navigation-view');\n\n const content = (section as EnumerationContent<string>)[\n NodeTypes.ENUMERATION\n ];\n const firstKey = Object.keys(content)[0] as keyof typeof content;\n\n return (\n <div className=\"flex flex-col gap-2\">\n <table className=\"w-full\">\n <tbody className=\"flex w-full flex-col gap-2\">\n {Object.keys(\n (section as EnumerationContent<ContentNode>)[NodeTypes.ENUMERATION]\n ).map((enumKey) => {\n const childrenKeyPath = [\n ...keyPath,\n { type: NodeTypes.ENUMERATION, key: enumKey },\n ] as KeyPath[];\n const uniqueKey = `${JSON.stringify(keyPath)}-enumeration-${enumKey}`;\n\n return (\n <Fragment key={uniqueKey}>\n <tr className=\"mt-2 w-full\">\n <td className=\"flex w-full\">\n <div className=\"flex flex-1\">\n <Button\n label={removeEnumeration.label.value}\n variant=\"hoverable\"\n size=\"sm\"\n color=\"error\"\n className=\"ml-auto text-neutral hover:text-error\"\n Icon={Trash}\n onClick={() =>\n addEditedContent(\n dictionary.localId!,\n undefined,\n childrenKeyPath\n )\n }\n >\n {removeEnumeration.text}\n </Button>\n </div>\n </td>\n </tr>\n <tr className=\"w-full p-2\">\n <td className=\"flex w-full\">\n <EnumKeyInput\n value={enumKey}\n onChange={(value) => {\n const preValueContent = (\n section as EnumerationContent<string>\n )[NodeTypes.ENUMERATION];\n\n const newValueContent = renameKey(\n preValueContent,\n enumKey as keyof typeof preValueContent,\n value\n );\n const newValue = {\n ...(section as EnumerationContent<string>),\n [NodeTypes.ENUMERATION]: newValueContent,\n };\n\n console.log('newValue', newValue);\n\n addEditedContent(\n dictionary.localId!,\n newValue,\n keyPath\n );\n }}\n />\n </td>\n </tr>\n <tr className=\"block w-full\">\n <td className=\"flex w-full\">\n <TextEditor\n section={\n content[enumKey as keyof typeof content] ??\n getEmptyNode(content[firstKey])\n }\n keyPath={childrenKeyPath}\n dictionary={dictionary}\n renderSection={renderSection}\n />\n </td>\n </tr>\n </Fragment>\n );\n })}\n </tbody>\n </table>\n\n <Button\n label={addNewEnumeration.label.value}\n variant=\"hoverable\"\n color=\"neutral\"\n textAlign=\"left\"\n isFullWidth\n onClick={() =>\n addEditedContent(\n dictionary.localId!,\n getEmptyNode(content[firstKey]) ?? '',\n [...keyPath, { type: NodeTypes.ENUMERATION, key: 'unknown' }]\n )\n }\n Icon={Plus}\n className=\"m-2\"\n >\n {addNewEnumeration.text}\n </Button>\n </div>\n );\n};\n\nconst ConditionTextEditor: FC<TextEditorProps> = ({\n section,\n keyPath,\n dictionary,\n renderSection,\n}) => {\n const content = (section as ConditionContent<string>)[NodeTypes.CONDITION];\n\n return (\n <table className=\"w-full\">\n <tbody className=\"flex w-full flex-col gap-2\">\n {['true', 'false', 'fallback'].map((condKey) => {\n const uniqueKey = `${JSON.stringify(keyPath)}-condition-${condKey}`;\n return (\n <Fragment key={uniqueKey}>\n <tr className=\"mt-2 block w-full p-2 text-xs\">\n <td className=\"flex w-full\">{String(condKey)}</td>\n </tr>\n <tr className=\"block w-full\">\n <td className=\"flex w-full\">\n <TextEditorContainer\n section={\n content[condKey as keyof typeof content] ??\n getEmptyNode(content.true)\n }\n keyPath={[\n ...keyPath,\n {\n type: NodeTypes.CONDITION,\n key: condKey,\n } as KeyPath,\n ]}\n dictionary={dictionary}\n renderSection={renderSection}\n />\n </td>\n </tr>\n </Fragment>\n );\n })}\n </tbody>\n </table>\n );\n};\n\nconst GenderTextEditor: FC<TextEditorProps> = ({\n section,\n keyPath,\n dictionary,\n renderSection,\n}) => {\n const content = (section as GenderContent<string>)[NodeTypes.GENDER];\n\n return (\n <table className=\"w-full\">\n <tbody className=\"flex w-full flex-col gap-2\">\n {['male', 'female', 'fallback'].map((condKey) => {\n const uniqueKey = `${JSON.stringify(keyPath)}-gender-${condKey}`;\n return (\n <Fragment key={uniqueKey}>\n <tr className=\"mt-2 block w-full p-2 text-xs\">\n <td className=\"flex w-full\">{String(condKey)}</td>\n </tr>\n <tr className=\"block w-full\">\n <td className=\"flex w-full\">\n <TextEditorContainer\n section={\n content[condKey as keyof typeof content] ??\n getEmptyNode(content.male)\n }\n keyPath={[\n ...keyPath,\n {\n type: NodeTypes.GENDER,\n key: condKey,\n } as KeyPath,\n ]}\n dictionary={dictionary}\n renderSection={renderSection}\n />\n </td>\n </tr>\n </Fragment>\n );\n })}\n </tbody>\n </table>\n );\n};\n\nconst PLURAL_CATEGORIES = ['zero', 'one', 'two', 'few', 'many', 'other'];\n\nconst PluralTextEditor: FC<TextEditorProps> = ({\n section,\n keyPath,\n dictionary,\n renderSection,\n}) => {\n const content = (section as PluralContent<string>)[NodeTypes.PLURAL];\n\n return (\n <table className=\"w-full\">\n <tbody className=\"flex w-full flex-col gap-2\">\n {PLURAL_CATEGORIES.map((pluralKey) => {\n const uniqueKey = `${JSON.stringify(keyPath)}-plural-${pluralKey}`;\n return (\n <Fragment key={uniqueKey}>\n <tr className=\"mt-2 block w-full p-2 text-xs\">\n <td className=\"flex w-full\">{pluralKey}</td>\n </tr>\n <tr className=\"block w-full\">\n <td className=\"flex w-full\">\n <TextEditorContainer\n section={\n content[pluralKey as keyof typeof content] ??\n getEmptyNode(content.other)\n }\n keyPath={[\n ...keyPath,\n {\n type: NodeTypes.PLURAL,\n key: pluralKey,\n } as KeyPath,\n ]}\n dictionary={dictionary}\n renderSection={renderSection}\n />\n </td>\n </tr>\n </Fragment>\n );\n })}\n </tbody>\n </table>\n );\n};\n\nconst ArrayTextEditor: FC<TextEditorProps> = ({\n section,\n keyPath,\n dictionary,\n renderSection,\n}) => {\n const { addEditedContent } = useEditedContent();\n const { addNewElement, removeElement } = useIntlayer('navigation-view');\n\n return (\n <div className=\"flex flex-col gap-2\">\n <table className=\"w-full\">\n <tbody className=\"flex w-full flex-col gap-2\">\n {(section as unknown as ContentNode[]).map((subSection, index) => {\n const uniqueKey = `${JSON.stringify(keyPath)}-array-${index}`;\n return (\n <Fragment key={uniqueKey}>\n <tr className=\"mt-2 w-full p-2\">\n <td className=\"flex w-full\">\n <div className=\"flex w-full items-center justify-between gap-2\">\n <span className=\"text-xs\">{String(index)}</span>\n <Button\n label={removeElement.label.value}\n variant=\"hoverable\"\n size=\"sm\"\n color=\"error\"\n className=\"ml-auto text-neutral hover:text-error\"\n onClick={() => {\n const newKeyPath: KeyPath[] = [\n ...keyPath,\n {\n type: NodeTypes.ARRAY,\n key: index, // Fixed: Use index instead of length\n },\n ];\n addEditedContent(\n dictionary.localId!,\n undefined,\n newKeyPath\n );\n }}\n Icon={Trash}\n >\n {removeElement.text}\n </Button>\n </div>\n </td>\n </tr>\n\n <tr className=\"block w-full\">\n <td className=\"flex w-full\">\n <TextEditorContainer\n section={\n subSection ??\n getEmptyNode((section as unknown as ContentNode[])[0])\n }\n keyPath={[\n ...keyPath,\n {\n type: NodeTypes.ARRAY,\n key: index,\n },\n ]}\n dictionary={dictionary}\n renderSection={renderSection}\n />\n </td>\n </tr>\n </Fragment>\n );\n })}\n </tbody>\n </table>\n <Button\n label={addNewElement.label.value}\n variant=\"hoverable\"\n color=\"neutral\"\n textAlign=\"left\"\n isFullWidth\n onClick={() => {\n const newKeyPath: KeyPath[] = [\n ...keyPath,\n {\n type: NodeTypes.ARRAY,\n key: (section as unknown as ContentNode[]).length, // Keeps length for adding new items\n },\n ];\n addEditedContent(\n dictionary.localId!,\n getEmptyNode((section as unknown as ContentNode[])[0]) ?? '',\n newKeyPath,\n false\n );\n }}\n Icon={Plus}\n >\n {addNewElement.text}\n </Button>\n </div>\n );\n};\n\nconst ObjectTextEditor: FC<TextEditorProps> = ({\n section,\n keyPath,\n dictionary,\n renderSection,\n}) => {\n const typedSection = section as unknown as Record<string, ContentNode>;\n const firstKey = Object.keys(typedSection)[0] as keyof typeof section;\n\n return (\n <table className=\"w-full\">\n <tbody className=\"flex flex-col gap-2\">\n {Object.keys(typedSection).map((key) => {\n const childKeyPath: KeyPath[] = [\n ...keyPath,\n { type: NodeTypes.OBJECT, key },\n ];\n const subSection =\n typedSection[key as keyof typeof section] ??\n getEmptyNode(typedSection[firstKey]);\n const uniqueKey = `${JSON.stringify(keyPath)}-object-${key}`;\n // Collapse any object/array (typed or plain) — only true primitives render inline.\n // getIsEditableSection can't be used here: it inspects getNodeChildren(), which for\n // translation nodes returns the first locale value (a string), causing translation\n // subtrees to be mistakenly treated as leaves and mounted all at once.\n const isLeaf = subSection === null || typeof subSection !== 'object';\n\n if (isLeaf) {\n return (\n <Fragment key={uniqueKey}>\n <tr className=\"mt-2 p-2 text-xs\">\n <td className=\"flex w-full\">{String(key)}</td>\n </tr>\n <tr className=\"block w-full\">\n <td className=\"flex w-full\">\n <TextEditor\n section={subSection}\n keyPath={childKeyPath}\n dictionary={dictionary}\n renderSection={renderSection}\n />\n </td>\n </tr>\n </Fragment>\n );\n }\n\n return (\n <tr\n key={uniqueKey}\n className=\"block w-full border-neutral/10 border-t py-1\"\n >\n <td className=\"flex w-full\">\n <CollapsibleEditor\n label={camelCaseToSentence(key)}\n section={subSection}\n keyPath={childKeyPath}\n dictionary={dictionary}\n renderSection={renderSection}\n />\n </td>\n </tr>\n );\n })}\n </tbody>\n </table>\n );\n};\n\nenum MarkdownViewMode {\n Edit,\n Raw,\n Preview,\n}\n\nenum HtmlViewMode {\n Edit,\n Preview,\n}\n\nconst HtmlTextEditor: FC<TextEditorProps> = ({\n section,\n keyPath,\n dictionary,\n}) => {\n const [mode, setMode] = useState(HtmlViewMode.Edit);\n const toggleContent = [\n {\n content: 'Edit',\n value: HtmlViewMode.Edit,\n },\n {\n content: 'Preview',\n value: HtmlViewMode.Preview,\n },\n ] as SwitchSelectorChoices<HtmlViewMode>;\n const childKeyPath: KeyPath[] = [...keyPath, { type: NodeTypes.HTML }];\n\n const content = (section as HTMLContent<ContentNode>)[\n NodeTypes.HTML\n ] as ContentNode;\n\n return (\n <div className=\"flex w-full flex-col justify-center gap-6 p-2\">\n <SwitchSelector\n choices={toggleContent}\n value={mode}\n onChange={setMode}\n color=\"text\"\n size=\"sm\"\n className=\"ml-auto\"\n />\n\n <TextEditorContainer\n section={content}\n keyPath={childKeyPath}\n dictionary={dictionary}\n renderSection={\n mode === HtmlViewMode.Preview\n ? (rawContent) => <SafeHtmlRenderer rawContent={rawContent} />\n : undefined\n }\n />\n </div>\n );\n};\n\nconst MarkdownTextEditor: FC<TextEditorProps> = ({\n section,\n keyPath,\n dictionary,\n isDarkMode,\n}) => {\n const [mode, setMode] = useState(MarkdownViewMode.Edit);\n const { addEditedContent } = useEditedContent();\n const toggleContent = [\n {\n content: 'Edit',\n value: MarkdownViewMode.Edit,\n },\n {\n content: 'Raw',\n value: MarkdownViewMode.Raw,\n },\n {\n content: 'Preview',\n value: MarkdownViewMode.Preview,\n },\n ] as SwitchSelectorChoices<MarkdownViewMode>;\n const childKeyPath: KeyPath[] = [...keyPath, { type: NodeTypes.MARKDOWN }];\n\n const content = ((section as MarkdownContent<ContentNode>)[\n NodeTypes.MARKDOWN\n ] ?? '') as ContentNode;\n\n /**\n * WYSIWYG editor rendered on every markdown string leaf. When the markdown\n * node wraps another node (e.g. `md(t({ ... }))`), the recursive editor\n * walks the inner structure and calls this renderer once per string leaf,\n * so each locale/branch gets its own rich-text surface writing back to its\n * own key path.\n */\n const renderMarkdownEditor = (\n leafContent: string,\n leafKeyPath: KeyPath[]\n ): ReactNode => (\n <Suspense fallback={<Loader />}>\n <LazyMarkdownEditor\n key={JSON.stringify(leafKeyPath)}\n defaultValue={leafContent}\n onChange={(markdown) =>\n addEditedContent(dictionary.localId!, markdown, leafKeyPath)\n }\n />\n </Suspense>\n );\n\n const renderMarkdownPreview = (leafContent: string): ReactNode => (\n <Suspense fallback={<Loader />}>\n <LazyMarkdownRenderer isDarkMode={isDarkMode}>\n {leafContent}\n </LazyMarkdownRenderer>\n </Suspense>\n );\n\n const renderSectionByMode: TextEditorProps['renderSection'] =\n mode === MarkdownViewMode.Edit\n ? renderMarkdownEditor\n : mode === MarkdownViewMode.Preview\n ? renderMarkdownPreview\n : undefined;\n\n return (\n <div className=\"flex w-full flex-col justify-center gap-6 p-2\">\n <SwitchSelector\n choices={toggleContent}\n value={mode}\n onChange={setMode}\n color=\"text\"\n size=\"sm\"\n className=\"ml-auto\"\n />\n\n <TextEditorContainer\n section={content}\n keyPath={childKeyPath}\n dictionary={dictionary}\n renderSection={renderSectionByMode}\n />\n </div>\n );\n};\n\nconst InsertionTextEditor: FC<TextEditorProps> = ({\n section,\n keyPath,\n ...props\n}) => {\n const childKeyPath: KeyPath[] = [...keyPath, { type: NodeTypes.INSERTION }];\n\n const content = (section as InsertionContent<ContentNode>)[\n NodeTypes.INSERTION\n ];\n\n return (\n <div className=\"flex w-full flex-col justify-center gap-6 p-2\">\n <TextEditorContainer\n section={content}\n keyPath={childKeyPath}\n {...props}\n />\n </div>\n );\n};\n\nconst FileTextEditor: FC<TextEditorProps> = ({\n section,\n keyPath,\n ...props\n}) => {\n const childKeyPath: KeyPath[] = [...keyPath, { type: NodeTypes.FILE }];\n\n const fileUrl = (section as FileContent)[NodeTypes.FILE];\n const { content } = section as FileContent;\n\n return (\n <div className=\"flex w-full flex-col justify-center gap-6 p-2\">\n <span className=\"text-neutral text-sm\">{fileUrl} </span>\n <TextEditorContainer\n section={content}\n keyPath={childKeyPath}\n {...props}\n />\n </div>\n );\n};\n\nconst NestedTextEditor: FC<TextEditorProps> = ({\n keyPath,\n dictionary,\n renderSection,\n section,\n ...props\n}) => {\n const { addEditedContent } = useEditedContent();\n\n const content = (section as any)[NodeTypes.NESTED];\n const childrenKeyPath = [...keyPath, { type: NodeTypes.NESTED }] as KeyPath[];\n\n return (\n <div className=\"flex w-full flex-col gap-4 p-2\">\n <Label>Dictionary key</Label>\n <ContentEditorInputBase\n aria-label=\"Edit field\"\n type=\"text\"\n variant=\"default\"\n {...props}\n onContentChange={(newValue) => {\n addEditedContent(\n dictionary.localId!,\n {\n ...content,\n dictionaryKey: String(newValue),\n },\n childrenKeyPath\n );\n }}\n >\n {content.dictionaryKey ?? ''}\n </ContentEditorInputBase>\n\n <Label>Path (optional)</Label>\n <ContentEditorInputBase\n aria-label=\"Edit field\"\n type=\"text\"\n variant=\"default\"\n {...props}\n onContentChange={(newValue) => {\n addEditedContent(\n dictionary.localId!,\n {\n ...content,\n path: newValue !== '' ? newValue : undefined,\n },\n childrenKeyPath\n );\n }}\n >\n {content.path ?? ''}\n </ContentEditorInputBase>\n </div>\n );\n};\n\nexport const TextEditor = memo<TextEditorProps>(function TextEditor({\n section,\n keyPath,\n dictionary,\n renderSection,\n isDarkMode,\n}) {\n const { tsxNotEditable } = useIntlayer('navigation-view');\n const nodeType = getNodeType(section);\n\n if (nodeType === NodeTypes.REACT_NODE) {\n return (\n <div className=\"flex w-full flex-col gap-2\">\n <span>(React Node)</span>\n <span className=\"flex text-neutral text-xs\">{tsxNotEditable}</span>\n </div>\n );\n }\n\n if (nodeType === NodeTypes.NESTED) {\n return (\n <NestedTextEditor\n dictionary={dictionary}\n renderSection={renderSection}\n keyPath={keyPath}\n section={section}\n />\n );\n }\n\n if (nodeType === NodeTypes.TRANSLATION) {\n return (\n <TranslationTextEditor\n dictionary={dictionary}\n renderSection={renderSection}\n keyPath={keyPath}\n section={section}\n />\n );\n }\n\n if (nodeType === NodeTypes.ENUMERATION) {\n return (\n <EnumerationTextEditor\n dictionary={dictionary}\n renderSection={renderSection}\n keyPath={keyPath}\n section={section}\n />\n );\n }\n\n if (nodeType === NodeTypes.CONDITION) {\n return (\n <ConditionTextEditor\n dictionary={dictionary}\n renderSection={renderSection}\n keyPath={keyPath}\n section={section}\n />\n );\n }\n\n if (nodeType === NodeTypes.GENDER) {\n return (\n <GenderTextEditor\n dictionary={dictionary}\n renderSection={renderSection}\n keyPath={keyPath}\n section={section}\n />\n );\n }\n\n if (nodeType === NodeTypes.PLURAL) {\n return (\n <PluralTextEditor\n dictionary={dictionary}\n renderSection={renderSection}\n keyPath={keyPath}\n section={section}\n />\n );\n }\n\n if (nodeType === NodeTypes.INSERTION) {\n return (\n <InsertionTextEditor\n dictionary={dictionary}\n renderSection={renderSection}\n keyPath={keyPath}\n section={section}\n />\n );\n }\n\n if (nodeType === NodeTypes.MARKDOWN) {\n return (\n <MarkdownTextEditor\n dictionary={dictionary}\n keyPath={keyPath}\n section={section}\n isDarkMode={isDarkMode}\n />\n );\n }\n\n if (nodeType === NodeTypes.HTML) {\n return (\n <HtmlTextEditor\n dictionary={dictionary}\n keyPath={keyPath}\n section={section}\n />\n );\n }\n\n if (nodeType === NodeTypes.FILE) {\n return (\n <FileTextEditor\n dictionary={dictionary}\n renderSection={renderSection}\n keyPath={keyPath}\n section={section}\n />\n );\n }\n\n if (nodeType === NodeTypes.ARRAY) {\n return (\n <ArrayTextEditor\n dictionary={dictionary}\n renderSection={renderSection}\n keyPath={keyPath}\n section={section}\n />\n );\n }\n\n if (nodeType === NodeTypes.OBJECT) {\n return (\n <ObjectTextEditor\n dictionary={dictionary}\n renderSection={renderSection}\n keyPath={keyPath}\n section={section}\n />\n );\n }\n\n if (nodeType === NodeTypes.NUMBER) {\n return (\n <div className=\"w-full p-2\">\n <ContentEditorInput\n dictionary={dictionary}\n keyPath={keyPath}\n type=\"number\"\n aria-label=\"Edit field\"\n >\n {section as number}\n </ContentEditorInput>\n </div>\n );\n }\n\n if (nodeType === NodeTypes.TEXT) {\n return (\n <div className=\"w-full p-2\">\n {typeof renderSection === 'function' ? (\n renderSection(section as string, keyPath)\n ) : (\n <ContentEditorTextArea\n variant=\"default\"\n aria-label=\"Edit field\"\n keyPath={keyPath}\n dictionary={dictionary}\n >\n {section as string}\n </ContentEditorTextArea>\n )}\n </div>\n );\n }\n\n if (nodeType === NodeTypes.BOOLEAN) {\n return (\n <div className=\"w-full p-2\">\n <ContentEditorToggle\n dictionary={dictionary}\n keyPath={keyPath}\n value={section as boolean}\n />\n </div>\n );\n }\n\n return (\n <div className=\"w-full p-2\">\n Error. Format not supported.\n {JSON.stringify(section, null, 2)}\n {JSON.stringify(keyPath, null, 2)}\n NodeType : {nodeType}\n </div>\n );\n});\n\nexport const TextEditorContainer = memo<TextEditorProps>(\n function TextEditorContainer(props) {\n return (\n <Container\n border\n background=\"none\"\n className=\"top-6 flex h-full flex-1 flex-col gap-6 overflow-hidden p-2 md:sticky\"\n roundedSize=\"2xl\"\n >\n <TextEditor {...props} />\n </Container>\n );\n }\n);\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"object.mjs","names":[],"sources":["../../../../../src/components/DictionaryFieldEditor/ContentEditorView/object.ts"],"sourcesContent":["/**\n * Rename a key in an object by keeping the element order\n *\n * @param obj The original object\n * @param oldKey The key in the object that needs to be renamed\n * @param newKey The new key name to replace the old key\n * @returns A new object with the renamed key\n */\nexport const renameKey = <T extends object>(\n obj: T,\n oldKey: keyof T,\n newKey: string\n): T => {\n // Create a shallow copy of the original object to avoid mutating it\n const newObj: T = { ...obj };\n\n // Iterate over all keys of the original object\n for (const key of Object.keys(obj)) {\n // Check if the current key is the one that needs to be renamed\n if (key === (oldKey as string)) {\n // Assign the value of the old key to the new key in newObj\n newObj[newKey as keyof T] = obj[oldKey];\n // Optionally, delete the old key from newObj if you don't want both keys\n delete newObj[oldKey];\n } else {\n // For all other keys, ensure they are copied over correctly\n newObj[key as keyof T] = obj[key as keyof T];\n }\n }\n // Return the new object with the renamed key\n return newObj;\n};\n\n/**\n * Remove a key from an object\n *\n * @param obj The original object\n * @param key The key in the object that needs to be removed\n * @returns A new object without the specified key\n */\nexport const removeKey = <T extends object>(obj: T, key: keyof T): T => {\n // Create a shallow copy of the original object to avoid mutating it\n const newObj: T = { ...obj };\n\n // Delete the key from the object\n delete newObj[key];\n\n return newObj;\n};\n"],"mappings":";;;;;;;;;AAQA,MAAa,aACX,KACA,QACA,WACM;CAEN,MAAM,SAAY,EAAE,GAAG,KAAK;AAG5B,MAAK,MAAM,OAAO,OAAO,KAAK,IAAI,CAEhC,KAAI,QAAS,QAAmB;AAE9B,SAAO,UAAqB,IAAI;AAEhC,SAAO,OAAO;OAGd,QAAO,OAAkB,IAAI;AAIjC,QAAO;;;;;;;;;AAUT,MAAa,aAA+B,KAAQ,QAAoB;CAEtE,MAAM,SAAY,EAAE,GAAG,KAAK;AAG5B,QAAO,OAAO;AAEd,QAAO"}
1
+ {"version":3,"file":"object.mjs","names":[],"sources":["../../../../../src/components/DictionaryFieldEditor/ContentEditorView/object.ts"],"sourcesContent":["/**\n * Rename a key in an object by keeping the element order\n *\n * @param obj The original object\n * @param oldKey The key in the object that needs to be renamed\n * @param newKey The new key name to replace the old key\n * @returns A new object with the renamed key\n */\nexport const renameKey = <T extends object>(\n obj: T,\n oldKey: keyof T,\n newKey: string\n): T => {\n // Create a shallow copy of the original object to avoid mutating it\n const newObj: T = { ...obj };\n\n // Iterate over all keys of the original object\n for (const key of Object.keys(obj)) {\n // Check if the current key is the one that needs to be renamed\n if (key === (oldKey as string)) {\n // Assign the value of the old key to the new key in newObj\n newObj[newKey as keyof T] = obj[oldKey];\n // Optionally, delete the old key from newObj if you don't want both keys\n delete newObj[oldKey];\n } else {\n // For all other keys, ensure they are copied over correctly\n newObj[key as keyof T] = obj[key as keyof T];\n }\n }\n // Return the new object with the renamed key\n return newObj;\n};\n\n/**\n * Remove a key from an object\n *\n * @param obj The original object\n * @param key The key in the object that needs to be removed\n * @returns A new object without the specified key\n */\nexport const removeKey = <T extends object>(obj: T, key: keyof T): T => {\n // Create a shallow copy of the original object to avoid mutating it\n const newObj: T = { ...obj };\n\n // Delete the key from the object\n delete newObj[key];\n\n return newObj;\n};\n"],"mappings":";;;;;;;;;AAQA,MAAa,aACX,KACA,QACA,WACM;CAEN,MAAM,SAAY,EAAE,GAAG,IAAI;CAG3B,KAAK,MAAM,OAAO,OAAO,KAAK,GAAG,GAE/B,IAAI,QAAS,QAAmB;EAE9B,OAAO,UAAqB,IAAI;EAEhC,OAAO,OAAO;CAChB,OAEE,OAAO,OAAkB,IAAI;CAIjC,OAAO;AACT;;;;;;;;AASA,MAAa,aAA+B,KAAQ,QAAoB;CAEtE,MAAM,SAAY,EAAE,GAAG,IAAI;CAG3B,OAAO,OAAO;CAEd,OAAO;AACT"}
@@ -1,9 +1,9 @@
1
1
  'use client';
2
2
 
3
- import { Button } from "../../Button/Button.mjs";
4
3
  import { useSession } from "../../../api/useAuth/useSession.mjs";
5
4
  import { useAddDictionary } from "../../../api/hooks/dictionary.mjs";
6
5
  import { useGetProjects } from "../../../api/hooks/project.mjs";
6
+ import { Button } from "../../Button/Button.mjs";
7
7
  import { MultiSelect } from "../../Select/Multiselect.mjs";
8
8
  import { Select } from "../../Select/Select.mjs";
9
9
  import { InputElement } from "../../Form/elements/InputElement.mjs";
@@ -22,7 +22,7 @@ import { AnimatePresence, motion } from "framer-motion";
22
22
  * Inner component rendered inside Form's FormProvider context so useWatch works.
23
23
  */
24
24
  const DictionaryCreationFormFields = ({ isSubmitting, isPending, projectsData }) => {
25
- const { keyInput, createDictionaryButton, projectInput, qualifierTypeSelect, itemInput, variantInput, metaIdInput } = useIntlayer("dictionary-form");
25
+ const { keyInput, createDictionaryButton, projectInput, qualifierTypeSelect, itemInput, variantInput } = useIntlayer("dictionary-form");
26
26
  const qualifierType = useWatch({ name: "qualifierType" }) ?? "none";
27
27
  return /* @__PURE__ */ jsxs(Fragment, { children: [
28
28
  /* @__PURE__ */ jsx(InputElement, {
@@ -53,76 +53,51 @@ const DictionaryCreationFormFields = ({ isSubmitting, isPending, projectsData })
53
53
  }),
54
54
  /* @__PURE__ */ jsxs(AnimatePresence, {
55
55
  mode: "wait",
56
- children: [
57
- qualifierType === "item" && /* @__PURE__ */ jsx(motion.div, {
58
- initial: {
59
- opacity: 0,
60
- height: 0
61
- },
62
- animate: {
63
- opacity: 1,
64
- height: "auto"
65
- },
66
- exit: {
67
- opacity: 0,
68
- height: 0
69
- },
70
- transition: { duration: .2 },
71
- className: "overflow-hidden",
72
- children: /* @__PURE__ */ jsx(InputElement, {
73
- name: "item",
74
- type: "number",
75
- label: itemInput.label.value,
76
- placeholder: itemInput.placeholder.value,
77
- description: itemInput.description.value,
78
- min: 1
79
- })
80
- }, "item-input"),
81
- qualifierType === "variant" && /* @__PURE__ */ jsx(motion.div, {
82
- initial: {
83
- opacity: 0,
84
- height: 0
85
- },
86
- animate: {
87
- opacity: 1,
88
- height: "auto"
89
- },
90
- exit: {
91
- opacity: 0,
92
- height: 0
93
- },
94
- transition: { duration: .2 },
95
- className: "overflow-hidden",
96
- children: /* @__PURE__ */ jsx(InputElement, {
97
- name: "variant",
98
- label: variantInput.label.value,
99
- placeholder: variantInput.placeholder.value,
100
- description: variantInput.description.value
101
- })
102
- }, "variant-input"),
103
- qualifierType === "meta" && /* @__PURE__ */ jsx(motion.div, {
104
- initial: {
105
- opacity: 0,
106
- height: 0
107
- },
108
- animate: {
109
- opacity: 1,
110
- height: "auto"
111
- },
112
- exit: {
113
- opacity: 0,
114
- height: 0
115
- },
116
- transition: { duration: .2 },
117
- className: "overflow-hidden",
118
- children: /* @__PURE__ */ jsx(InputElement, {
119
- name: "metaId",
120
- label: metaIdInput.label.value,
121
- placeholder: metaIdInput.placeholder.value,
122
- description: metaIdInput.description.value
123
- })
124
- }, "meta-input")
125
- ]
56
+ children: [qualifierType === "item" && /* @__PURE__ */ jsx(motion.div, {
57
+ initial: {
58
+ opacity: 0,
59
+ height: 0
60
+ },
61
+ animate: {
62
+ opacity: 1,
63
+ height: "auto"
64
+ },
65
+ exit: {
66
+ opacity: 0,
67
+ height: 0
68
+ },
69
+ transition: { duration: .2 },
70
+ className: "overflow-hidden",
71
+ children: /* @__PURE__ */ jsx(InputElement, {
72
+ name: "item",
73
+ type: "number",
74
+ label: itemInput.label.value,
75
+ placeholder: itemInput.placeholder.value,
76
+ description: itemInput.description.value,
77
+ min: 1
78
+ })
79
+ }, "item-input"), qualifierType === "variant" && /* @__PURE__ */ jsx(motion.div, {
80
+ initial: {
81
+ opacity: 0,
82
+ height: 0
83
+ },
84
+ animate: {
85
+ opacity: 1,
86
+ height: "auto"
87
+ },
88
+ exit: {
89
+ opacity: 0,
90
+ height: 0
91
+ },
92
+ transition: { duration: .2 },
93
+ className: "overflow-hidden",
94
+ children: /* @__PURE__ */ jsx(InputElement, {
95
+ name: "variant",
96
+ label: variantInput.label.value,
97
+ placeholder: variantInput.placeholder.value,
98
+ description: variantInput.description.value
99
+ })
100
+ }, "variant-input")]
126
101
  }),
127
102
  /* @__PURE__ */ jsx(Button, {
128
103
  className: "mt-12 ml-auto",
@@ -149,7 +124,6 @@ const DictionaryCreationForm = ({ onDictionaryCreated }) => {
149
124
  const qualifiers = {};
150
125
  if (data.qualifierType === "item" && data.item !== void 0) qualifiers.item = data.item;
151
126
  else if (data.qualifierType === "variant" && data.variant) qualifiers.variant = data.variant;
152
- else if (data.qualifierType === "meta" && data.metaId) qualifiers.meta = { id: data.metaId };
153
127
  addDictionary({ dictionary: {
154
128
  key: data.key,
155
129
  projectIds: data.projectIds,
@@ -1 +1 @@
1
- {"version":3,"file":"DictionaryCreationForm.mjs","names":["FormInput","FormMultiSelect","FormSelect","FormButton","useForm"],"sources":["../../../../../src/components/DictionaryFieldEditor/DictionaryCreationForm/DictionaryCreationForm.tsx"],"sourcesContent":["'use client';\n\nimport { useAddDictionary, useGetProjects } from '@api/index';\nimport { useSession } from '@api/useAuth';\nimport {\n Form,\n FormButton,\n FormInput,\n FormMultiSelect,\n FormSelect,\n useForm,\n} from '@components/Form';\nimport { MultiSelect, Select } from '@components/Select';\nimport { AnimatePresence, motion } from 'framer-motion';\nimport type { FC } from 'react';\nimport { useWatch } from 'react-hook-form';\nimport { useIntlayer } from 'react-intlayer';\nimport {\n type DictionaryFormData,\n QUALIFIER_TYPES,\n type QualifierType,\n useDictionarySchema,\n} from './useDictionaryFormSchema';\n\ntype DictionaryCreationFormProps = {\n onDictionaryCreated?: () => void;\n};\n\n/**\n * Inner component rendered inside Form's FormProvider context so useWatch works.\n */\nconst DictionaryCreationFormFields: FC<{\n isSubmitting: boolean;\n isPending: boolean;\n projectsData: ReturnType<typeof useGetProjects>['data'];\n}> = ({ isSubmitting, isPending, projectsData }) => {\n const {\n keyInput,\n createDictionaryButton,\n projectInput,\n qualifierTypeSelect,\n itemInput,\n variantInput,\n metaIdInput,\n } = useIntlayer('dictionary-form');\n\n const qualifierType = (useWatch({ name: 'qualifierType' }) ??\n 'none') as QualifierType;\n\n return (\n <>\n <FormInput\n name=\"key\"\n label={keyInput.label.value}\n placeholder={keyInput.placeholder.value}\n isRequired\n />\n\n <FormMultiSelect name=\"projectIds\" label={projectInput.label.value}>\n <MultiSelect.Trigger\n getBadgeValue={(value) =>\n projectsData?.data?.find((project) => String(project.id) === value)\n ?.name ?? value\n }\n >\n <MultiSelect.Input placeholder={projectInput.placeholder.value} />\n </MultiSelect.Trigger>\n <MultiSelect.Content>\n <MultiSelect.List>\n {projectsData?.data?.map((project) => (\n <MultiSelect.Item\n key={String(project.id)}\n value={String(project.id)}\n >\n {project.name}\n </MultiSelect.Item>\n ))}\n </MultiSelect.List>\n </MultiSelect.Content>\n </FormMultiSelect>\n\n <FormSelect\n name=\"qualifierType\"\n label={qualifierTypeSelect.label.value}\n description={qualifierTypeSelect.description.value}\n >\n <Select.Trigger>\n <Select.Value />\n </Select.Trigger>\n <Select.Content>\n {QUALIFIER_TYPES.map((type) => (\n <Select.Item key={type} value={type}>\n {\n (\n qualifierTypeSelect as Record<\n string,\n { value: string } | string\n >\n )[type]\n }\n </Select.Item>\n ))}\n </Select.Content>\n </FormSelect>\n\n <AnimatePresence mode=\"wait\">\n {qualifierType === 'item' && (\n <motion.div\n key=\"item-input\"\n initial={{ opacity: 0, height: 0 }}\n animate={{ opacity: 1, height: 'auto' }}\n exit={{ opacity: 0, height: 0 }}\n transition={{ duration: 0.2 }}\n className=\"overflow-hidden\"\n >\n <FormInput\n name=\"item\"\n type=\"number\"\n label={itemInput.label.value}\n placeholder={itemInput.placeholder.value}\n description={itemInput.description.value}\n min={1}\n />\n </motion.div>\n )}\n\n {qualifierType === 'variant' && (\n <motion.div\n key=\"variant-input\"\n initial={{ opacity: 0, height: 0 }}\n animate={{ opacity: 1, height: 'auto' }}\n exit={{ opacity: 0, height: 0 }}\n transition={{ duration: 0.2 }}\n className=\"overflow-hidden\"\n >\n <FormInput\n name=\"variant\"\n label={variantInput.label.value}\n placeholder={variantInput.placeholder.value}\n description={variantInput.description.value}\n />\n </motion.div>\n )}\n\n {qualifierType === 'meta' && (\n <motion.div\n key=\"meta-input\"\n initial={{ opacity: 0, height: 0 }}\n animate={{ opacity: 1, height: 'auto' }}\n exit={{ opacity: 0, height: 0 }}\n transition={{ duration: 0.2 }}\n className=\"overflow-hidden\"\n >\n <FormInput\n name=\"metaId\"\n label={metaIdInput.label.value}\n placeholder={metaIdInput.placeholder.value}\n description={metaIdInput.description.value}\n />\n </motion.div>\n )}\n </AnimatePresence>\n\n <FormButton\n className=\"mt-12 ml-auto\"\n type=\"submit\"\n color=\"text\"\n isLoading={isSubmitting || isPending}\n label={createDictionaryButton.ariaLabel.value}\n isFullWidth\n >\n {createDictionaryButton.text}\n </FormButton>\n </>\n );\n};\n\nexport const DictionaryCreationForm: FC<DictionaryCreationFormProps> = ({\n onDictionaryCreated,\n}) => {\n const { session } = useSession();\n const { project } = session ?? {};\n const { mutate: addDictionary, isPending } = useAddDictionary();\n const { data: projectsData } = useGetProjects();\n const DictionarySchema = useDictionarySchema(String(project?.id));\n const { form, isSubmitting } = useForm(DictionarySchema, {\n defaultValues: {\n projectIds: [project?.id],\n qualifierType: 'none',\n },\n });\n\n const onSubmitSuccess = (data: DictionaryFormData) => {\n const qualifiers: Record<string, unknown> = {};\n if (data.qualifierType === 'item' && data.item !== undefined) {\n qualifiers.item = data.item;\n } else if (data.qualifierType === 'variant' && data.variant) {\n qualifiers.variant = data.variant;\n } else if (data.qualifierType === 'meta' && data.metaId) {\n qualifiers.meta = { id: data.metaId };\n }\n\n addDictionary(\n {\n dictionary: {\n key: data.key,\n projectIds: data.projectIds,\n ...qualifiers,\n },\n },\n {\n onSuccess: () => {\n onDictionaryCreated?.();\n },\n }\n );\n };\n\n return (\n <Form\n schema={DictionarySchema}\n onSubmitSuccess={onSubmitSuccess}\n className=\"m-auto w-full max-w-100\"\n {...form}\n >\n <DictionaryCreationFormFields\n isSubmitting={isSubmitting}\n isPending={isPending}\n projectsData={projectsData}\n />\n </Form>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"DictionaryCreationForm.mjs","names":["FormInput","FormMultiSelect","FormSelect","FormButton","useForm"],"sources":["../../../../../src/components/DictionaryFieldEditor/DictionaryCreationForm/DictionaryCreationForm.tsx"],"sourcesContent":["'use client';\n\nimport { useAddDictionary, useGetProjects } from '@api/index';\nimport { useSession } from '@api/useAuth';\nimport {\n Form,\n FormButton,\n FormInput,\n FormMultiSelect,\n FormSelect,\n useForm,\n} from '@components/Form';\nimport { MultiSelect, Select } from '@components/Select';\nimport { AnimatePresence, motion } from 'framer-motion';\nimport type { FC } from 'react';\nimport { useWatch } from 'react-hook-form';\nimport { useIntlayer } from 'react-intlayer';\nimport {\n type DictionaryFormData,\n QUALIFIER_TYPES,\n type QualifierType,\n useDictionarySchema,\n} from './useDictionaryFormSchema';\n\ntype DictionaryCreationFormProps = {\n onDictionaryCreated?: () => void;\n};\n\n/**\n * Inner component rendered inside Form's FormProvider context so useWatch works.\n */\nconst DictionaryCreationFormFields: FC<{\n isSubmitting: boolean;\n isPending: boolean;\n projectsData: ReturnType<typeof useGetProjects>['data'];\n}> = ({ isSubmitting, isPending, projectsData }) => {\n const {\n keyInput,\n createDictionaryButton,\n projectInput,\n qualifierTypeSelect,\n itemInput,\n variantInput,\n } = useIntlayer('dictionary-form');\n\n const qualifierType = (useWatch({ name: 'qualifierType' }) ??\n 'none') as QualifierType;\n\n return (\n <>\n <FormInput\n name=\"key\"\n label={keyInput.label.value}\n placeholder={keyInput.placeholder.value}\n isRequired\n />\n\n <FormMultiSelect name=\"projectIds\" label={projectInput.label.value}>\n <MultiSelect.Trigger\n getBadgeValue={(value) =>\n projectsData?.data?.find((project) => String(project.id) === value)\n ?.name ?? value\n }\n >\n <MultiSelect.Input placeholder={projectInput.placeholder.value} />\n </MultiSelect.Trigger>\n <MultiSelect.Content>\n <MultiSelect.List>\n {projectsData?.data?.map((project) => (\n <MultiSelect.Item\n key={String(project.id)}\n value={String(project.id)}\n >\n {project.name}\n </MultiSelect.Item>\n ))}\n </MultiSelect.List>\n </MultiSelect.Content>\n </FormMultiSelect>\n\n <FormSelect\n name=\"qualifierType\"\n label={qualifierTypeSelect.label.value}\n description={qualifierTypeSelect.description.value}\n >\n <Select.Trigger>\n <Select.Value />\n </Select.Trigger>\n <Select.Content>\n {QUALIFIER_TYPES.map((type) => (\n <Select.Item key={type} value={type}>\n {\n (\n qualifierTypeSelect as Record<\n string,\n { value: string } | string\n >\n )[type]\n }\n </Select.Item>\n ))}\n </Select.Content>\n </FormSelect>\n\n <AnimatePresence mode=\"wait\">\n {qualifierType === 'item' && (\n <motion.div\n key=\"item-input\"\n initial={{ opacity: 0, height: 0 }}\n animate={{ opacity: 1, height: 'auto' }}\n exit={{ opacity: 0, height: 0 }}\n transition={{ duration: 0.2 }}\n className=\"overflow-hidden\"\n >\n <FormInput\n name=\"item\"\n type=\"number\"\n label={itemInput.label.value}\n placeholder={itemInput.placeholder.value}\n description={itemInput.description.value}\n min={1}\n />\n </motion.div>\n )}\n\n {qualifierType === 'variant' && (\n <motion.div\n key=\"variant-input\"\n initial={{ opacity: 0, height: 0 }}\n animate={{ opacity: 1, height: 'auto' }}\n exit={{ opacity: 0, height: 0 }}\n transition={{ duration: 0.2 }}\n className=\"overflow-hidden\"\n >\n <FormInput\n name=\"variant\"\n label={variantInput.label.value}\n placeholder={variantInput.placeholder.value}\n description={variantInput.description.value}\n />\n </motion.div>\n )}\n </AnimatePresence>\n\n <FormButton\n className=\"mt-12 ml-auto\"\n type=\"submit\"\n color=\"text\"\n isLoading={isSubmitting || isPending}\n label={createDictionaryButton.ariaLabel.value}\n isFullWidth\n >\n {createDictionaryButton.text}\n </FormButton>\n </>\n );\n};\n\nexport const DictionaryCreationForm: FC<DictionaryCreationFormProps> = ({\n onDictionaryCreated,\n}) => {\n const { session } = useSession();\n const { project } = session ?? {};\n const { mutate: addDictionary, isPending } = useAddDictionary();\n const { data: projectsData } = useGetProjects();\n const DictionarySchema = useDictionarySchema(String(project?.id));\n const { form, isSubmitting } = useForm(DictionarySchema, {\n defaultValues: {\n projectIds: [project?.id],\n qualifierType: 'none',\n },\n });\n\n const onSubmitSuccess = (data: DictionaryFormData) => {\n const qualifiers: Record<string, unknown> = {};\n if (data.qualifierType === 'item' && data.item !== undefined) {\n qualifiers.item = data.item;\n } else if (data.qualifierType === 'variant' && data.variant) {\n qualifiers.variant = data.variant;\n }\n\n addDictionary(\n {\n dictionary: {\n key: data.key,\n projectIds: data.projectIds,\n ...qualifiers,\n },\n },\n {\n onSuccess: () => {\n onDictionaryCreated?.();\n },\n }\n );\n };\n\n return (\n <Form\n schema={DictionarySchema}\n onSubmitSuccess={onSubmitSuccess}\n className=\"m-auto w-full max-w-100\"\n {...form}\n >\n <DictionaryCreationFormFields\n isSubmitting={isSubmitting}\n isPending={isPending}\n projectsData={projectsData}\n />\n </Form>\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AA+BA,MAAM,gCAIA,EAAE,cAAc,WAAW,mBAAmB;CAClD,MAAM,EACJ,UACA,wBACA,cACA,qBACA,WACA,iBACE,YAAY,iBAAiB;CAEjC,MAAM,gBAAiB,SAAS,EAAE,MAAM,gBAAgB,CAAC,KACvD;CAEF,OACE;EACE,oBAACA,cAAD;GACE,MAAK;GACL,OAAO,SAAS,MAAM;GACtB,aAAa,SAAS,YAAY;GAClC;EACD;EAED,qBAACC,oBAAD;GAAiB,MAAK;GAAa,OAAO,aAAa,MAAM;aAA7D,CACE,oBAAC,YAAY,SAAb;IACE,gBAAgB,UACd,cAAc,MAAM,MAAM,YAAY,OAAO,QAAQ,EAAE,MAAM,KAAK,CAAC,EAC/D,QAAQ;cAGd,oBAAC,YAAY,OAAb,EAAmB,aAAa,aAAa,YAAY,MAAQ;GAC9C,IACrB,oBAAC,YAAY,SAAb,YACE,oBAAC,YAAY,MAAb,YACG,cAAc,MAAM,KAAK,YACxB,oBAAC,YAAY,MAAb;IAEE,OAAO,OAAO,QAAQ,EAAE;cAEvB,QAAQ;GACO,GAJX,OAAO,QAAQ,EAAE,CAIN,CACnB,EACe,GACC,EACN;;EAEjB,qBAACC,eAAD;GACE,MAAK;GACL,OAAO,oBAAoB,MAAM;GACjC,aAAa,oBAAoB,YAAY;aAH/C,CAKE,oBAAC,OAAO,SAAR,YACE,oBAAC,OAAO,OAAR,CAAe,GACD,IAChB,oBAAC,OAAO,SAAR,YACG,gBAAgB,KAAK,SACpB,oBAAC,OAAO,MAAR;IAAwB,OAAO;cAGzB,oBAIA;GAEO,GATK,IASL,CACd,EACa,EACN;;EAEZ,qBAAC,iBAAD;GAAiB,MAAK;aAAtB,CACG,kBAAkB,UACjB,oBAAC,OAAO,KAAR;IAEE,SAAS;KAAE,SAAS;KAAG,QAAQ;IAAE;IACjC,SAAS;KAAE,SAAS;KAAG,QAAQ;IAAO;IACtC,MAAM;KAAE,SAAS;KAAG,QAAQ;IAAE;IAC9B,YAAY,EAAE,UAAU,GAAI;IAC5B,WAAU;cAEV,oBAACF,cAAD;KACE,MAAK;KACL,MAAK;KACL,OAAO,UAAU,MAAM;KACvB,aAAa,UAAU,YAAY;KACnC,aAAa,UAAU,YAAY;KACnC,KAAK;IACN;GACS,GAfN,YAeM,GAGb,kBAAkB,aACjB,oBAAC,OAAO,KAAR;IAEE,SAAS;KAAE,SAAS;KAAG,QAAQ;IAAE;IACjC,SAAS;KAAE,SAAS;KAAG,QAAQ;IAAO;IACtC,MAAM;KAAE,SAAS;KAAG,QAAQ;IAAE;IAC9B,YAAY,EAAE,UAAU,GAAI;IAC5B,WAAU;cAEV,oBAACA,cAAD;KACE,MAAK;KACL,OAAO,aAAa,MAAM;KAC1B,aAAa,aAAa,YAAY;KACtC,aAAa,aAAa,YAAY;IACvC;GACS,GAbN,eAaM,CAEC;;EAEjB,oBAACG,QAAD;GACE,WAAU;GACV,MAAK;GACL,OAAM;GACN,WAAW,gBAAgB;GAC3B,OAAO,uBAAuB,UAAU;GACxC;aAEC,uBAAuB;EACd;CACZ;AAEN;AAEA,MAAa,0BAA2D,EACtE,0BACI;CACJ,MAAM,EAAE,YAAY,WAAW;CAC/B,MAAM,EAAE,YAAY,WAAW,CAAC;CAChC,MAAM,EAAE,QAAQ,eAAe,cAAc,iBAAiB;CAC9D,MAAM,EAAE,MAAM,iBAAiB,eAAe;CAC9C,MAAM,mBAAmB,oBAAoB,OAAO,SAAS,EAAE,CAAC;CAChE,MAAM,EAAE,MAAM,iBAAiBC,UAAQ,kBAAkB,EACvD,eAAe;EACb,YAAY,CAAC,SAAS,EAAE;EACxB,eAAe;CACjB,EACF,CAAC;CAED,MAAM,mBAAmB,SAA6B;EACpD,MAAM,aAAsC,CAAC;EAC7C,IAAI,KAAK,kBAAkB,UAAU,KAAK,SAAS,QACjD,WAAW,OAAO,KAAK;OAClB,IAAI,KAAK,kBAAkB,aAAa,KAAK,SAClD,WAAW,UAAU,KAAK;EAG5B,cACE,EACE,YAAY;GACV,KAAK,KAAK;GACV,YAAY,KAAK;GACjB,GAAG;EACL,EACF,GACA,EACE,iBAAiB;GACf,sBAAsB;EACxB,EACF,CACF;CACF;CAEA,OACE,oBAAC,MAAD;EACE,QAAQ;EACS;EACjB,WAAU;EACV,GAAI;YAEJ,oBAAC,8BAAD;GACgB;GACH;GACG;EACf;CACG;AAEV"}
@@ -334,68 +334,6 @@ const dictionaryFormContent = {
334
334
  uk: "Іменована альтернативна форма вмісту для A/B-тестування, сезонних банерів або прапорів функцій."
335
335
  })
336
336
  },
337
- metaIdInput: {
338
- label: t({
339
- en: "Meta ID",
340
- "en-GB": "Meta ID",
341
- fr: "ID méta",
342
- es: "ID meta",
343
- de: "Meta-ID",
344
- ja: "メタID",
345
- ko: "메타 ID",
346
- zh: "元ID",
347
- it: "ID meta",
348
- pt: "ID meta",
349
- hi: "मेटा ID",
350
- ar: "معرّف البيانات الوصفية",
351
- ru: "Мета-ID",
352
- tr: "Meta kimliği",
353
- pl: "ID meta",
354
- id: "ID meta",
355
- vi: "ID meta",
356
- uk: "Мета-ID"
357
- }),
358
- placeholder: t({
359
- en: "e.g. prod_abc",
360
- "en-GB": "e.g. prod_abc",
361
- fr: "par ex. prod_abc",
362
- es: "por ej. prod_abc",
363
- de: "z. B. prod_abc",
364
- ja: "例: prod_abc",
365
- ko: "예: prod_abc",
366
- zh: "例如: prod_abc",
367
- it: "es. prod_abc",
368
- pt: "ex. prod_abc",
369
- hi: "उदा. prod_abc",
370
- ar: "مثال: prod_abc",
371
- ru: "напр. prod_abc",
372
- tr: "ör. prod_abc",
373
- pl: "np. prod_abc",
374
- id: "mis. prod_abc",
375
- vi: "ví dụ: prod_abc",
376
- uk: "напр. prod_abc"
377
- }),
378
- description: t({
379
- en: "The discriminator ID used to resolve this record at runtime.",
380
- "en-GB": "The discriminator ID used to resolve this record at runtime.",
381
- fr: "L'ID discriminant utilisé pour résoudre cet enregistrement au moment de l'exécution.",
382
- es: "El ID discriminador utilizado para resolver este registro en tiempo de ejecución.",
383
- de: "Die Diskriminator-ID, die verwendet wird, um diesen Datensatz zur Laufzeit aufzulösen.",
384
- ja: "実行時にこのレコードを解決するために使用される識別子ID。",
385
- ko: "런타임에 이 레코드를 해결하는 데 사용되는 식별자 ID.",
386
- zh: "在运行时用于解析此记录的鉴别符ID。",
387
- it: "L'ID discriminante utilizzato per risolvere questo record in fase di esecuzione.",
388
- pt: "O ID discriminador usado para resolver este registro em tempo de execução.",
389
- hi: "रनटाइम पर इस रिकॉर्ड को हल करने के लिए उपयोग किया जाने वाला विवेचक ID।",
390
- ar: "معرف المميز المستخدم لحل هذا السجل في وقت التشغيل.",
391
- ru: "Идентификатор-дискриминатор, используемый для разрешения этой записи во время выполнения.",
392
- tr: "Bu kaydı çalışma zamanında çözümlemek için kullanılan ayırt edici kimlik.",
393
- pl: "Identyfikator dyskryminatora używany do rozwiązania tego rekordu w czasie wykonywania.",
394
- id: "ID pembeda yang digunakan untuk menyelesaikan rekaman ini saat runtime.",
395
- vi: "ID phân biệt được sử dụng để giải quyết bản ghi này lúc chạy.",
396
- uk: "Ідентифікатор-дискримінатор, що використовується для розв'язання цього запису під час виконання."
397
- })
398
- },
399
337
  createDictionaryButton: {
400
338
  text: t({
401
339
  en: "Create dictionary",