@intlayer/design-system 3.5.4 → 3.5.6

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 (486) hide show
  1. package/dist/.vite/manifest.json +351 -60
  2. package/dist/CodeBlockShiki-BlmZyrr7.cjs +29 -0
  3. package/dist/CodeBlockShiki-BlmZyrr7.cjs.map +1 -0
  4. package/dist/CodeBlockShiki-CcpV9SVi.js +29 -0
  5. package/dist/CodeBlockShiki-CcpV9SVi.js.map +1 -0
  6. package/dist/CopyButton-Cxu3goRg.cjs +59 -0
  7. package/dist/CopyButton-Cxu3goRg.cjs.map +1 -0
  8. package/dist/CopyButton-DlcDlf6U.js +60 -0
  9. package/dist/CopyButton-DlcDlf6U.js.map +1 -0
  10. package/dist/Form-BB0kpER9.cjs +301 -0
  11. package/dist/Form-BB0kpER9.cjs.map +1 -0
  12. package/dist/Form-BDcoNTLV.cjs.map +1 -1
  13. package/dist/Form-DGLgTAdY.js +302 -0
  14. package/dist/Form-DGLgTAdY.js.map +1 -0
  15. package/dist/Form-DhsgC7kB.js.map +1 -1
  16. package/dist/components/Auth/useAuth/useSession.cjs +1 -0
  17. package/dist/components/Auth/useAuth/useSession.cjs.map +1 -1
  18. package/dist/components/Auth/useAuth/useSession.mjs +1 -0
  19. package/dist/components/Auth/useAuth/useSession.mjs.map +1 -1
  20. package/dist/components/Breadcrumb/breadcrumb.content.cjs +26 -0
  21. package/dist/components/Breadcrumb/breadcrumb.content.cjs.map +1 -0
  22. package/dist/components/Breadcrumb/breadcrumb.content.d.ts +8 -0
  23. package/dist/components/Breadcrumb/breadcrumb.content.d.ts.map +1 -0
  24. package/dist/components/Breadcrumb/breadcrumb.content.mjs +26 -0
  25. package/dist/components/Breadcrumb/breadcrumb.content.mjs.map +1 -0
  26. package/dist/components/Breadcrumb/index.cjs +106 -34
  27. package/dist/components/Breadcrumb/index.cjs.map +1 -1
  28. package/dist/components/Breadcrumb/index.d.ts +6 -2
  29. package/dist/components/Breadcrumb/index.d.ts.map +1 -1
  30. package/dist/components/Breadcrumb/index.mjs +106 -34
  31. package/dist/components/Breadcrumb/index.mjs.map +1 -1
  32. package/dist/components/Button/Button.cjs +7 -8
  33. package/dist/components/Button/Button.cjs.map +1 -1
  34. package/dist/components/Button/Button.d.ts.map +1 -1
  35. package/dist/components/Button/Button.mjs +7 -8
  36. package/dist/components/Button/Button.mjs.map +1 -1
  37. package/dist/components/ClickOutsideDiv/index.cjs +26 -0
  38. package/dist/components/ClickOutsideDiv/index.cjs.map +1 -0
  39. package/dist/components/ClickOutsideDiv/index.d.ts +6 -0
  40. package/dist/components/ClickOutsideDiv/index.d.ts.map +1 -0
  41. package/dist/components/ClickOutsideDiv/index.mjs +26 -0
  42. package/dist/components/ClickOutsideDiv/index.mjs.map +1 -0
  43. package/dist/components/Container/index.cjs +2 -2
  44. package/dist/components/Container/index.cjs.map +1 -1
  45. package/dist/components/Container/index.mjs +2 -2
  46. package/dist/components/Container/index.mjs.map +1 -1
  47. package/dist/components/ContentEditor/ContentEditorCode.cjs +78 -0
  48. package/dist/components/ContentEditor/ContentEditorCode.cjs.map +1 -0
  49. package/dist/components/ContentEditor/ContentEditorCode.d.ts +11 -0
  50. package/dist/components/ContentEditor/ContentEditorCode.d.ts.map +1 -0
  51. package/dist/components/ContentEditor/ContentEditorCode.mjs +78 -0
  52. package/dist/components/ContentEditor/ContentEditorCode.mjs.map +1 -0
  53. package/dist/components/ContentEditor/ContentEditorTextArea.cjs +30 -26
  54. package/dist/components/ContentEditor/ContentEditorTextArea.cjs.map +1 -1
  55. package/dist/components/ContentEditor/ContentEditorTextArea.d.ts +2 -1
  56. package/dist/components/ContentEditor/ContentEditorTextArea.d.ts.map +1 -1
  57. package/dist/components/ContentEditor/ContentEditorTextArea.mjs +30 -26
  58. package/dist/components/ContentEditor/ContentEditorTextArea.mjs.map +1 -1
  59. package/dist/components/DictionaryEditor/ValidDictionaryChangeButtons.cjs +3 -3
  60. package/dist/components/DictionaryEditor/ValidDictionaryChangeButtons.cjs.map +1 -1
  61. package/dist/components/DictionaryEditor/ValidDictionaryChangeButtons.mjs +3 -3
  62. package/dist/components/DictionaryEditor/ValidDictionaryChangeButtons.mjs.map +1 -1
  63. package/dist/components/DictionaryEditor/index.cjs +4 -0
  64. package/dist/components/DictionaryEditor/index.cjs.map +1 -1
  65. package/dist/components/DictionaryEditor/index.mjs +4 -0
  66. package/dist/components/DictionaryEditor/index.mjs.map +1 -1
  67. package/dist/components/DictionaryEditor/useEditedContentStore.cjs +3 -0
  68. package/dist/components/DictionaryEditor/useEditedContentStore.cjs.map +1 -1
  69. package/dist/components/DictionaryEditor/useEditedContentStore.d.ts +2 -2
  70. package/dist/components/DictionaryEditor/useEditedContentStore.d.ts.map +1 -1
  71. package/dist/components/DictionaryEditor/useEditedContentStore.mjs +3 -0
  72. package/dist/components/DictionaryEditor/useEditedContentStore.mjs.map +1 -1
  73. package/dist/components/DictionaryEditor/useEditionPanelStore.cjs.map +1 -1
  74. package/dist/components/DictionaryEditor/useEditionPanelStore.d.ts +1 -1
  75. package/dist/components/DictionaryEditor/useEditionPanelStore.d.ts.map +1 -1
  76. package/dist/components/DictionaryEditor/useEditionPanelStore.mjs.map +1 -1
  77. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.cjs +9 -5
  78. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.cjs.map +1 -1
  79. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.d.ts +3 -0
  80. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.d.ts.map +1 -1
  81. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.mjs +9 -5
  82. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.mjs.map +1 -1
  83. package/dist/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.cjs +161 -69
  84. package/dist/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.cjs.map +1 -1
  85. package/dist/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.d.ts.map +1 -1
  86. package/dist/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.mjs +163 -71
  87. package/dist/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.mjs.map +1 -1
  88. package/dist/components/DictionaryFieldEditor/DictionaryDetails/dictionaryDetails.content.cjs +123 -0
  89. package/dist/components/DictionaryFieldEditor/DictionaryDetails/dictionaryDetails.content.cjs.map +1 -1
  90. package/dist/components/DictionaryFieldEditor/DictionaryDetails/dictionaryDetails.content.d.ts +14 -0
  91. package/dist/components/DictionaryFieldEditor/DictionaryDetails/dictionaryDetails.content.d.ts.map +1 -1
  92. package/dist/components/DictionaryFieldEditor/DictionaryDetails/dictionaryDetails.content.mjs +123 -0
  93. package/dist/components/DictionaryFieldEditor/DictionaryDetails/dictionaryDetails.content.mjs.map +1 -1
  94. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.cjs +9 -2
  95. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.cjs.map +1 -1
  96. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.content.cjs +15 -0
  97. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.content.cjs.map +1 -1
  98. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.content.d.ts +1 -0
  99. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.content.d.ts.map +1 -1
  100. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.content.mjs +15 -0
  101. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.content.mjs.map +1 -1
  102. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.d.ts +6 -0
  103. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.d.ts.map +1 -1
  104. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.mjs +9 -2
  105. package/dist/components/DictionaryFieldEditor/DictionaryDetails/useDictionaryDetailsSchema.mjs.map +1 -1
  106. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.cjs +17 -6
  107. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.cjs.map +1 -1
  108. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.d.ts +3 -0
  109. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.d.ts.map +1 -1
  110. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.mjs +17 -6
  111. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.mjs.map +1 -1
  112. package/dist/components/DictionaryFieldEditor/EditorView/EditorView.cjs +7 -5
  113. package/dist/components/DictionaryFieldEditor/EditorView/EditorView.cjs.map +1 -1
  114. package/dist/components/DictionaryFieldEditor/EditorView/EditorView.d.ts +2 -0
  115. package/dist/components/DictionaryFieldEditor/EditorView/EditorView.d.ts.map +1 -1
  116. package/dist/components/DictionaryFieldEditor/EditorView/EditorView.mjs +7 -5
  117. package/dist/components/DictionaryFieldEditor/EditorView/EditorView.mjs.map +1 -1
  118. package/dist/components/DictionaryFieldEditor/EditorView/TextEditor.cjs +117 -55
  119. package/dist/components/DictionaryFieldEditor/EditorView/TextEditor.cjs.map +1 -1
  120. package/dist/components/DictionaryFieldEditor/EditorView/TextEditor.d.ts +4 -2
  121. package/dist/components/DictionaryFieldEditor/EditorView/TextEditor.d.ts.map +1 -1
  122. package/dist/components/DictionaryFieldEditor/EditorView/TextEditor.mjs +115 -53
  123. package/dist/components/DictionaryFieldEditor/EditorView/TextEditor.mjs.map +1 -1
  124. package/dist/components/DictionaryFieldEditor/JSONEditor.cjs +20 -18
  125. package/dist/components/DictionaryFieldEditor/JSONEditor.cjs.map +1 -1
  126. package/dist/components/DictionaryFieldEditor/JSONEditor.d.ts +1 -0
  127. package/dist/components/DictionaryFieldEditor/JSONEditor.d.ts.map +1 -1
  128. package/dist/components/DictionaryFieldEditor/JSONEditor.mjs +20 -18
  129. package/dist/components/DictionaryFieldEditor/JSONEditor.mjs.map +1 -1
  130. package/dist/components/DictionaryFieldEditor/KeyPathBreadcrumb.cjs +10 -2
  131. package/dist/components/DictionaryFieldEditor/KeyPathBreadcrumb.cjs.map +1 -1
  132. package/dist/components/DictionaryFieldEditor/KeyPathBreadcrumb.d.ts +2 -0
  133. package/dist/components/DictionaryFieldEditor/KeyPathBreadcrumb.d.ts.map +1 -1
  134. package/dist/components/DictionaryFieldEditor/KeyPathBreadcrumb.mjs +10 -2
  135. package/dist/components/DictionaryFieldEditor/KeyPathBreadcrumb.mjs.map +1 -1
  136. package/dist/components/DictionaryFieldEditor/LocaleSelector/LocaleSelector.d.ts +8 -0
  137. package/dist/components/DictionaryFieldEditor/LocaleSelector/LocaleSelector.d.ts.map +1 -0
  138. package/dist/components/DictionaryFieldEditor/LocaleSelector/LocaleSelectorContext.d.ts +13 -0
  139. package/dist/components/DictionaryFieldEditor/LocaleSelector/LocaleSelectorContext.d.ts.map +1 -0
  140. package/dist/components/DictionaryFieldEditor/LocaleSelector/localeSelector.content.d.ts +9 -0
  141. package/dist/components/DictionaryFieldEditor/LocaleSelector/localeSelector.content.d.ts.map +1 -0
  142. package/dist/components/DictionaryFieldEditor/NavigationView/NavigationViewNode.cjs +10 -10
  143. package/dist/components/DictionaryFieldEditor/NavigationView/NavigationViewNode.cjs.map +1 -1
  144. package/dist/components/DictionaryFieldEditor/NavigationView/NavigationViewNode.mjs +10 -10
  145. package/dist/components/DictionaryFieldEditor/NavigationView/NavigationViewNode.mjs.map +1 -1
  146. package/dist/components/DictionaryFieldEditor/NodeEditor.cjs +32 -23
  147. package/dist/components/DictionaryFieldEditor/NodeEditor.cjs.map +1 -1
  148. package/dist/components/DictionaryFieldEditor/NodeEditor.d.ts +2 -0
  149. package/dist/components/DictionaryFieldEditor/NodeEditor.d.ts.map +1 -1
  150. package/dist/components/DictionaryFieldEditor/NodeEditor.mjs +32 -23
  151. package/dist/components/DictionaryFieldEditor/NodeEditor.mjs.map +1 -1
  152. package/dist/components/DictionaryFieldEditor/NodeTypeSelector.cjs +1 -1
  153. package/dist/components/DictionaryFieldEditor/NodeTypeSelector.cjs.map +1 -1
  154. package/dist/components/DictionaryFieldEditor/NodeTypeSelector.mjs +1 -1
  155. package/dist/components/DictionaryFieldEditor/NodeTypeSelector.mjs.map +1 -1
  156. package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.cjs +59 -18
  157. package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.cjs.map +1 -1
  158. package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.d.ts.map +1 -1
  159. package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.mjs +62 -21
  160. package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.mjs.map +1 -1
  161. package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.cjs +32 -0
  162. package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.cjs.map +1 -1
  163. package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.d.ts +4 -0
  164. package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.d.ts.map +1 -1
  165. package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.mjs +32 -0
  166. package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.mjs.map +1 -1
  167. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcher.cjs +73 -0
  168. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcher.cjs.map +1 -0
  169. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcher.d.ts +7 -0
  170. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcher.d.ts.map +1 -0
  171. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcher.mjs +73 -0
  172. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcher.mjs.map +1 -0
  173. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcherContext.cjs +37 -0
  174. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcherContext.cjs.map +1 -0
  175. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcherContext.d.ts +14 -0
  176. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcherContext.d.ts.map +1 -0
  177. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcherContext.mjs +37 -0
  178. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/VersionSwitcherContext.mjs.map +1 -0
  179. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/index.cjs +8 -0
  180. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/index.cjs.map +1 -0
  181. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/index.d.ts +3 -0
  182. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/index.d.ts.map +1 -0
  183. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/index.mjs +8 -0
  184. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/index.mjs.map +1 -0
  185. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/versionSwitcherDropDown.content.cjs +54 -0
  186. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/versionSwitcherDropDown.content.cjs.map +1 -0
  187. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/versionSwitcherDropDown.content.d.ts +10 -0
  188. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/versionSwitcherDropDown.content.d.ts.map +1 -0
  189. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/versionSwitcherDropDown.content.mjs +55 -0
  190. package/dist/components/DictionaryFieldEditor/VersionSwitcherDropDown/versionSwitcherDropDown.content.mjs.map +1 -0
  191. package/dist/components/DictionaryFieldEditor/index.cjs +5 -0
  192. package/dist/components/DictionaryFieldEditor/index.cjs.map +1 -1
  193. package/dist/components/DictionaryFieldEditor/index.d.ts +1 -0
  194. package/dist/components/DictionaryFieldEditor/index.d.ts.map +1 -1
  195. package/dist/components/DictionaryFieldEditor/index.mjs +6 -1
  196. package/dist/components/DictionaryFieldEditor/index.mjs.map +1 -1
  197. package/dist/components/DropDown/index.cjs.map +1 -1
  198. package/dist/components/DropDown/index.d.ts +18 -1
  199. package/dist/components/DropDown/index.d.ts.map +1 -1
  200. package/dist/components/DropDown/index.mjs.map +1 -1
  201. package/dist/components/EditableField/EditableFieldInput.cjs +5 -1
  202. package/dist/components/EditableField/EditableFieldInput.cjs.map +1 -1
  203. package/dist/components/EditableField/EditableFieldInput.d.ts.map +1 -1
  204. package/dist/components/EditableField/EditableFieldInput.mjs +6 -2
  205. package/dist/components/EditableField/EditableFieldInput.mjs.map +1 -1
  206. package/dist/components/EditableField/EditableFieldTextArea.cjs +2 -8
  207. package/dist/components/EditableField/EditableFieldTextArea.cjs.map +1 -1
  208. package/dist/components/EditableField/EditableFieldTextArea.d.ts.map +1 -1
  209. package/dist/components/EditableField/EditableFieldTextArea.mjs +2 -8
  210. package/dist/components/EditableField/EditableFieldTextArea.mjs.map +1 -1
  211. package/dist/components/Form/FormLabel.cjs +6 -2
  212. package/dist/components/Form/FormLabel.cjs.map +1 -1
  213. package/dist/components/Form/FormLabel.d.ts.map +1 -1
  214. package/dist/components/Form/FormLabel.mjs +6 -2
  215. package/dist/components/Form/FormLabel.mjs.map +1 -1
  216. package/dist/components/Form/elements/EditableFieldInputElement.d.ts +1 -1
  217. package/dist/components/Form/elements/EditableFieldInputElement.d.ts.map +1 -1
  218. package/dist/components/Form/elements/EditableFieldTextAreaElement.d.ts +1 -1
  219. package/dist/components/Form/elements/EditableFieldTextAreaElement.d.ts.map +1 -1
  220. package/dist/components/Form/elements/SelectElement.d.ts.map +1 -1
  221. package/dist/components/Headers/index.cjs +1 -1
  222. package/dist/components/Headers/index.cjs.map +1 -1
  223. package/dist/components/Headers/index.mjs +1 -1
  224. package/dist/components/Headers/index.mjs.map +1 -1
  225. package/dist/components/IDE/Code.cjs +77 -0
  226. package/dist/components/IDE/Code.cjs.map +1 -0
  227. package/dist/components/IDE/Code.d.ts +18 -0
  228. package/dist/components/IDE/Code.d.ts.map +1 -0
  229. package/dist/components/IDE/Code.mjs +77 -0
  230. package/dist/components/IDE/Code.mjs.map +1 -0
  231. package/dist/components/IDE/CodeBlock.cjs +54 -0
  232. package/dist/components/IDE/CodeBlock.cjs.map +1 -0
  233. package/dist/components/IDE/CodeBlock.d.ts +12 -0
  234. package/dist/components/IDE/CodeBlock.d.ts.map +1 -0
  235. package/dist/components/IDE/CodeBlock.mjs +54 -0
  236. package/dist/components/IDE/CodeBlock.mjs.map +1 -0
  237. package/dist/components/IDE/CodeBlockClient.cjs +55 -0
  238. package/dist/components/IDE/CodeBlockClient.cjs.map +1 -0
  239. package/dist/components/IDE/CodeBlockClient.mjs +55 -0
  240. package/dist/components/IDE/CodeBlockClient.mjs.map +1 -0
  241. package/dist/components/IDE/CodeBlockLoader.cjs +28 -0
  242. package/dist/components/IDE/CodeBlockLoader.cjs.map +1 -0
  243. package/dist/components/IDE/CodeBlockLoader.d.ts +4 -0
  244. package/dist/components/IDE/CodeBlockLoader.d.ts.map +1 -0
  245. package/dist/components/IDE/CodeBlockLoader.mjs +28 -0
  246. package/dist/components/IDE/CodeBlockLoader.mjs.map +1 -0
  247. package/dist/components/IDE/CodeBlockServer.cjs +53 -0
  248. package/dist/components/IDE/CodeBlockServer.cjs.map +1 -0
  249. package/dist/components/IDE/CodeBlockServer.d.ts +12 -0
  250. package/dist/components/IDE/CodeBlockServer.d.ts.map +1 -0
  251. package/dist/components/IDE/CodeBlockServer.mjs +53 -0
  252. package/dist/components/IDE/CodeBlockServer.mjs.map +1 -0
  253. package/dist/components/IDE/CodeBlockShiki.d.ts +3 -0
  254. package/dist/components/IDE/CodeBlockShiki.d.ts.map +1 -0
  255. package/dist/components/IDE/CodeBlockclient.d.ts +12 -0
  256. package/dist/components/IDE/CodeBlockclient.d.ts.map +1 -0
  257. package/dist/components/IDE/CodeConditionalRenderer.cjs +20 -0
  258. package/dist/components/IDE/CodeConditionalRenderer.cjs.map +1 -0
  259. package/dist/components/IDE/CodeConditionalRenderer.d.ts +4 -0
  260. package/dist/components/IDE/CodeConditionalRenderer.d.ts.map +1 -0
  261. package/dist/components/IDE/CodeConditionalRenderer.mjs +20 -0
  262. package/dist/components/IDE/CodeConditionalRenderer.mjs.map +1 -0
  263. package/dist/components/IDE/CodeContext.cjs +57 -0
  264. package/dist/components/IDE/CodeContext.cjs.map +1 -0
  265. package/dist/components/IDE/CodeContext.d.ts +26 -0
  266. package/dist/components/IDE/CodeContext.d.ts.map +1 -0
  267. package/dist/components/IDE/CodeContext.mjs +57 -0
  268. package/dist/components/IDE/CodeContext.mjs.map +1 -0
  269. package/dist/components/IDE/CodeFormatSelector.cjs +30 -0
  270. package/dist/components/IDE/CodeFormatSelector.cjs.map +1 -0
  271. package/dist/components/IDE/CodeFormatSelector.d.ts +3 -0
  272. package/dist/components/IDE/CodeFormatSelector.d.ts.map +1 -0
  273. package/dist/components/IDE/CodeFormatSelector.mjs +30 -0
  274. package/dist/components/IDE/CodeFormatSelector.mjs.map +1 -0
  275. package/dist/components/IDE/CodeRender copy.cjs +141 -0
  276. package/dist/components/IDE/CodeRender copy.cjs.map +1 -0
  277. package/dist/components/IDE/CodeRender copy.d.ts +14 -0
  278. package/dist/components/IDE/CodeRender copy.d.ts.map +1 -0
  279. package/dist/components/IDE/CodeRender copy.mjs +141 -0
  280. package/dist/components/IDE/CodeRender copy.mjs.map +1 -0
  281. package/dist/components/IDE/CodeRender.cjs +39 -625
  282. package/dist/components/IDE/CodeRender.cjs.map +1 -1
  283. package/dist/components/IDE/CodeRender.d.ts +4 -5
  284. package/dist/components/IDE/CodeRender.d.ts.map +1 -1
  285. package/dist/components/IDE/CodeRender.mjs +40 -604
  286. package/dist/components/IDE/CodeRender.mjs.map +1 -1
  287. package/dist/components/IDE/CodeRenderer.cjs +27 -0
  288. package/dist/components/IDE/CodeRenderer.cjs.map +1 -0
  289. package/dist/components/IDE/CodeRenderer.d.ts +5 -0
  290. package/dist/components/IDE/CodeRenderer.d.ts.map +1 -0
  291. package/dist/components/IDE/CodeRenderer.mjs +27 -0
  292. package/dist/components/IDE/CodeRenderer.mjs.map +1 -0
  293. package/dist/components/IDE/ContentDeclarationFormatSelector.cjs +28 -0
  294. package/dist/components/IDE/ContentDeclarationFormatSelector.cjs.map +1 -0
  295. package/dist/components/IDE/ContentDeclarationFormatSelector.d.ts +3 -0
  296. package/dist/components/IDE/ContentDeclarationFormatSelector.d.ts.map +1 -0
  297. package/dist/components/IDE/ContentDeclarationFormatSelector.mjs +28 -0
  298. package/dist/components/IDE/ContentDeclarationFormatSelector.mjs.map +1 -0
  299. package/dist/components/IDE/CopyButton.cjs +40 -0
  300. package/dist/components/IDE/CopyButton.cjs.map +1 -0
  301. package/dist/components/IDE/CopyButton.content.cjs +26 -0
  302. package/dist/components/IDE/CopyButton.content.cjs.map +1 -0
  303. package/dist/components/IDE/CopyButton.content.d.ts +8 -0
  304. package/dist/components/IDE/CopyButton.content.d.ts.map +1 -0
  305. package/dist/components/IDE/CopyButton.content.mjs +26 -0
  306. package/dist/components/IDE/CopyButton.content.mjs.map +1 -0
  307. package/dist/components/IDE/CopyButton.d.ts +7 -0
  308. package/dist/components/IDE/CopyButton.d.ts.map +1 -0
  309. package/dist/components/IDE/CopyButton.mjs +40 -0
  310. package/dist/components/IDE/CopyButton.mjs.map +1 -0
  311. package/dist/components/IDE/EditableCodeBlock.d.ts +9 -0
  312. package/dist/components/IDE/EditableCodeBlock.d.ts.map +1 -0
  313. package/dist/components/IDE/IDE.cjs +1 -1
  314. package/dist/components/IDE/IDE.cjs.map +1 -1
  315. package/dist/components/IDE/IDE.mjs +1 -1
  316. package/dist/components/IDE/IDE.mjs.map +1 -1
  317. package/dist/components/IDE/MarkDownRender.cjs +11 -4
  318. package/dist/components/IDE/MarkDownRender.cjs.map +1 -1
  319. package/dist/components/IDE/MarkDownRender.d.ts.map +1 -1
  320. package/dist/components/IDE/MarkDownRender.mjs +11 -4
  321. package/dist/components/IDE/MarkDownRender.mjs.map +1 -1
  322. package/dist/components/IDE/MonacoCode.cjs +129 -0
  323. package/dist/components/IDE/MonacoCode.cjs.map +1 -0
  324. package/dist/components/IDE/MonacoCode.d.ts +14 -0
  325. package/dist/components/IDE/MonacoCode.d.ts.map +1 -0
  326. package/dist/components/IDE/MonacoCode.mjs +129 -0
  327. package/dist/components/IDE/MonacoCode.mjs.map +1 -0
  328. package/dist/components/IDE/PackageManagerSelector.cjs +20 -0
  329. package/dist/components/IDE/PackageManagerSelector.cjs.map +1 -0
  330. package/dist/components/IDE/PackageManagerSelector.d.ts +3 -0
  331. package/dist/components/IDE/PackageManagerSelector.d.ts.map +1 -0
  332. package/dist/components/IDE/PackageManagerSelector.mjs +20 -0
  333. package/dist/components/IDE/PackageManagerSelector.mjs.map +1 -0
  334. package/dist/components/IDE/index.cjs +2 -2
  335. package/dist/components/IDE/index.d.ts +1 -1
  336. package/dist/components/IDE/index.d.ts.map +1 -1
  337. package/dist/components/IDE/index.mjs +1 -1
  338. package/dist/components/Link/Link.cjs +50 -31
  339. package/dist/components/Link/Link.cjs.map +1 -1
  340. package/dist/components/Link/Link.d.ts +3 -0
  341. package/dist/components/Link/Link.d.ts.map +1 -1
  342. package/dist/components/Link/Link.mjs +51 -32
  343. package/dist/components/Link/Link.mjs.map +1 -1
  344. package/dist/components/Link/index.cjs +1 -0
  345. package/dist/components/Link/index.cjs.map +1 -1
  346. package/dist/components/Link/index.mjs +3 -2
  347. package/dist/components/LocaleSwitcherContentDropDown/LocaleSelectorContext.d.ts +13 -0
  348. package/dist/components/LocaleSwitcherContentDropDown/LocaleSelectorContext.d.ts.map +1 -0
  349. package/dist/components/LocaleSwitcherContentDropDown/LocaleSwitcherContent.cjs +218 -0
  350. package/dist/components/LocaleSwitcherContentDropDown/LocaleSwitcherContent.cjs.map +1 -0
  351. package/dist/components/LocaleSwitcherContentDropDown/LocaleSwitcherContent.d.ts +8 -0
  352. package/dist/components/LocaleSwitcherContentDropDown/LocaleSwitcherContent.d.ts.map +1 -0
  353. package/dist/components/LocaleSwitcherContentDropDown/LocaleSwitcherContent.mjs +218 -0
  354. package/dist/components/LocaleSwitcherContentDropDown/LocaleSwitcherContent.mjs.map +1 -0
  355. package/dist/components/LocaleSwitcherContentDropDown/LocaleSwitcherContentContext.cjs +42 -0
  356. package/dist/components/LocaleSwitcherContentDropDown/LocaleSwitcherContentContext.cjs.map +1 -0
  357. package/dist/components/LocaleSwitcherContentDropDown/LocaleSwitcherContentContext.d.ts +15 -0
  358. package/dist/components/LocaleSwitcherContentDropDown/LocaleSwitcherContentContext.d.ts.map +1 -0
  359. package/dist/components/LocaleSwitcherContentDropDown/LocaleSwitcherContentContext.mjs +42 -0
  360. package/dist/components/LocaleSwitcherContentDropDown/LocaleSwitcherContentContext.mjs.map +1 -0
  361. package/dist/components/LocaleSwitcherContentDropDown/index.cjs +8 -0
  362. package/dist/components/LocaleSwitcherContentDropDown/index.cjs.map +1 -0
  363. package/dist/components/LocaleSwitcherContentDropDown/index.d.ts +3 -0
  364. package/dist/components/LocaleSwitcherContentDropDown/index.d.ts.map +1 -0
  365. package/dist/components/LocaleSwitcherContentDropDown/index.mjs +8 -0
  366. package/dist/components/LocaleSwitcherContentDropDown/index.mjs.map +1 -0
  367. package/dist/components/LocaleSwitcherContentDropDown/localeSwitcher.content.cjs +118 -0
  368. package/dist/components/LocaleSwitcherContentDropDown/localeSwitcher.content.cjs.map +1 -0
  369. package/dist/components/LocaleSwitcherContentDropDown/localeSwitcher.content.d.ts +18 -0
  370. package/dist/components/LocaleSwitcherContentDropDown/localeSwitcher.content.d.ts.map +1 -0
  371. package/dist/components/LocaleSwitcherContentDropDown/localeSwitcher.content.mjs +119 -0
  372. package/dist/components/LocaleSwitcherContentDropDown/localeSwitcher.content.mjs.map +1 -0
  373. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.cjs +110 -34
  374. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.cjs.map +1 -1
  375. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.d.ts +2 -0
  376. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.d.ts.map +1 -1
  377. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.mjs +111 -35
  378. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.mjs.map +1 -1
  379. package/dist/components/LocaleSwitcherDropDown/localeSwitcher.content.cjs +63 -1
  380. package/dist/components/LocaleSwitcherDropDown/localeSwitcher.content.cjs.map +1 -1
  381. package/dist/components/LocaleSwitcherDropDown/localeSwitcher.content.d.ts +6 -0
  382. package/dist/components/LocaleSwitcherDropDown/localeSwitcher.content.d.ts.map +1 -1
  383. package/dist/components/LocaleSwitcherDropDown/localeSwitcher.content.mjs +63 -1
  384. package/dist/components/LocaleSwitcherDropDown/localeSwitcher.content.mjs.map +1 -1
  385. package/dist/components/MarkDownRender/index.cjs +22 -26
  386. package/dist/components/MarkDownRender/index.cjs.map +1 -1
  387. package/dist/components/MarkDownRender/index.d.ts +5 -1
  388. package/dist/components/MarkDownRender/index.d.ts.map +1 -1
  389. package/dist/components/MarkDownRender/index.mjs +22 -26
  390. package/dist/components/MarkDownRender/index.mjs.map +1 -1
  391. package/dist/components/Modal/Modal.cjs +11 -13
  392. package/dist/components/Modal/Modal.cjs.map +1 -1
  393. package/dist/components/Modal/Modal.d.ts +1 -1
  394. package/dist/components/Modal/Modal.d.ts.map +1 -1
  395. package/dist/components/Modal/Modal.mjs +11 -13
  396. package/dist/components/Modal/Modal.mjs.map +1 -1
  397. package/dist/components/Navbar/DesktopNavbar.cjs +1 -1
  398. package/dist/components/Navbar/DesktopNavbar.cjs.map +1 -1
  399. package/dist/components/Navbar/DesktopNavbar.mjs +1 -1
  400. package/dist/components/Navbar/DesktopNavbar.mjs.map +1 -1
  401. package/dist/components/SwitchSelector/index.cjs +4 -0
  402. package/dist/components/SwitchSelector/index.cjs.map +1 -1
  403. package/dist/components/SwitchSelector/index.d.ts.map +1 -1
  404. package/dist/components/SwitchSelector/index.mjs +5 -1
  405. package/dist/components/SwitchSelector/index.mjs.map +1 -1
  406. package/dist/components/index.cjs +21 -4
  407. package/dist/components/index.cjs.map +1 -1
  408. package/dist/components/index.d.ts +3 -1
  409. package/dist/components/index.d.ts.map +1 -1
  410. package/dist/components/index.mjs +21 -4
  411. package/dist/components/index.mjs.map +1 -1
  412. package/dist/design-system.css +235 -0
  413. package/dist/hooks/index.cjs +13 -0
  414. package/dist/hooks/index.cjs.map +1 -1
  415. package/dist/hooks/index.d.ts +1 -0
  416. package/dist/hooks/index.d.ts.map +1 -1
  417. package/dist/hooks/index.mjs +14 -1
  418. package/dist/hooks/index.mjs.map +1 -1
  419. package/dist/hooks/intlayerAPIHooks.cjs +86 -5
  420. package/dist/hooks/intlayerAPIHooks.cjs.map +1 -1
  421. package/dist/hooks/intlayerAPIHooks.d.ts +15 -1
  422. package/dist/hooks/intlayerAPIHooks.d.ts.map +1 -1
  423. package/dist/hooks/intlayerAPIHooks.mjs +86 -5
  424. package/dist/hooks/intlayerAPIHooks.mjs.map +1 -1
  425. package/dist/hooks/useAsync/index.cjs +3 -0
  426. package/dist/hooks/useAsync/index.cjs.map +1 -1
  427. package/dist/hooks/useAsync/index.d.ts +1 -0
  428. package/dist/hooks/useAsync/index.d.ts.map +1 -1
  429. package/dist/hooks/useAsync/index.mjs +4 -1
  430. package/dist/hooks/useAsync/index.mjs.map +1 -1
  431. package/dist/hooks/useAsync/useAsync.cjs +2 -9
  432. package/dist/hooks/useAsync/useAsync.cjs.map +1 -1
  433. package/dist/hooks/useAsync/useAsync.d.ts.map +1 -1
  434. package/dist/hooks/useAsync/useAsync.mjs +3 -10
  435. package/dist/hooks/useAsync/useAsync.mjs.map +1 -1
  436. package/dist/hooks/useAsync/useAsyncStateStore.cjs +123 -73
  437. package/dist/hooks/useAsync/useAsyncStateStore.cjs.map +1 -1
  438. package/dist/hooks/useAsync/useAsyncStateStore.d.ts +35 -11
  439. package/dist/hooks/useAsync/useAsyncStateStore.d.ts.map +1 -1
  440. package/dist/hooks/useAsync/useAsyncStateStore.mjs +123 -73
  441. package/dist/hooks/useAsync/useAsyncStateStore.mjs.map +1 -1
  442. package/dist/hooks/useGetAllDictionaries.cjs +4 -2
  443. package/dist/hooks/useGetAllDictionaries.cjs.map +1 -1
  444. package/dist/hooks/useGetAllDictionaries.d.ts +4 -1
  445. package/dist/hooks/useGetAllDictionaries.d.ts.map +1 -1
  446. package/dist/hooks/useGetAllDictionaries.mjs +4 -2
  447. package/dist/hooks/useGetAllDictionaries.mjs.map +1 -1
  448. package/dist/hooks/useIntlayerAPI.d.ts +13 -1
  449. package/dist/hooks/useIntlayerAPI.d.ts.map +1 -1
  450. package/dist/hooks/useIsDarkMode.cjs +15 -0
  451. package/dist/hooks/useIsDarkMode.cjs.map +1 -0
  452. package/dist/hooks/useIsDarkMode.d.ts +2 -0
  453. package/dist/hooks/useIsDarkMode.d.ts.map +1 -0
  454. package/dist/hooks/useIsDarkMode.mjs +15 -0
  455. package/dist/hooks/useIsDarkMode.mjs.map +1 -0
  456. package/dist/hooks/usePersistedStore.cjs +17 -5
  457. package/dist/hooks/usePersistedStore.cjs.map +1 -1
  458. package/dist/hooks/usePersistedStore.d.ts.map +1 -1
  459. package/dist/hooks/usePersistedStore.mjs +17 -5
  460. package/dist/hooks/usePersistedStore.mjs.map +1 -1
  461. package/dist/libs/intlayer-api/ai.cjs +54 -0
  462. package/dist/libs/intlayer-api/ai.cjs.map +1 -0
  463. package/dist/libs/intlayer-api/ai.d.ts +16 -0
  464. package/dist/libs/intlayer-api/ai.d.ts.map +1 -0
  465. package/dist/libs/intlayer-api/ai.mjs +54 -0
  466. package/dist/libs/intlayer-api/ai.mjs.map +1 -0
  467. package/dist/libs/intlayer-api/dictionary.cjs +2 -2
  468. package/dist/libs/intlayer-api/dictionary.cjs.map +1 -1
  469. package/dist/libs/intlayer-api/dictionary.d.ts +3 -3
  470. package/dist/libs/intlayer-api/dictionary.d.ts.map +1 -1
  471. package/dist/libs/intlayer-api/dictionary.mjs +2 -2
  472. package/dist/libs/intlayer-api/dictionary.mjs.map +1 -1
  473. package/dist/libs/intlayer-api/index.cjs +5 -1
  474. package/dist/libs/intlayer-api/index.cjs.map +1 -1
  475. package/dist/libs/intlayer-api/index.d.ts +26 -2
  476. package/dist/libs/intlayer-api/index.d.ts.map +1 -1
  477. package/dist/libs/intlayer-api/index.mjs +5 -1
  478. package/dist/libs/intlayer-api/index.mjs.map +1 -1
  479. package/dist/libs/intlayer-api/tag.cjs +52 -0
  480. package/dist/libs/intlayer-api/tag.cjs.map +1 -0
  481. package/dist/libs/intlayer-api/tag.d.ts +16 -0
  482. package/dist/libs/intlayer-api/tag.d.ts.map +1 -0
  483. package/dist/libs/intlayer-api/tag.mjs +52 -0
  484. package/dist/libs/intlayer-api/tag.mjs.map +1 -0
  485. package/dist/tailwind.css +1 -1
  486. package/package.json +20 -18
@@ -1 +1 @@
1
- {"version":3,"file":"CodeRender.mjs","sources":["../../../../../../node_modules/.pnpm/react-syntax-highlighter@15.6.1_react@18.3.1/node_modules/react-syntax-highlighter/dist/esm/styles/prism/okaidia.js","../../../../../../node_modules/.pnpm/react-syntax-highlighter@15.6.1_react@18.3.1/node_modules/react-syntax-highlighter/dist/esm/styles/prism/coldark-cold.js","../../../src/components/IDE/CodeRender.tsx"],"sourcesContent":["export default {\n \"code[class*=\\\"language-\\\"]\": {\n \"color\": \"#f8f8f2\",\n \"background\": \"none\",\n \"textShadow\": \"0 1px rgba(0, 0, 0, 0.3)\",\n \"fontFamily\": \"Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace\",\n \"fontSize\": \"1em\",\n \"textAlign\": \"left\",\n \"whiteSpace\": \"pre\",\n \"wordSpacing\": \"normal\",\n \"wordBreak\": \"normal\",\n \"wordWrap\": \"normal\",\n \"lineHeight\": \"1.5\",\n \"MozTabSize\": \"4\",\n \"OTabSize\": \"4\",\n \"tabSize\": \"4\",\n \"WebkitHyphens\": \"none\",\n \"MozHyphens\": \"none\",\n \"msHyphens\": \"none\",\n \"hyphens\": \"none\"\n },\n \"pre[class*=\\\"language-\\\"]\": {\n \"color\": \"#f8f8f2\",\n \"background\": \"#272822\",\n \"textShadow\": \"0 1px rgba(0, 0, 0, 0.3)\",\n \"fontFamily\": \"Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace\",\n \"fontSize\": \"1em\",\n \"textAlign\": \"left\",\n \"whiteSpace\": \"pre\",\n \"wordSpacing\": \"normal\",\n \"wordBreak\": \"normal\",\n \"wordWrap\": \"normal\",\n \"lineHeight\": \"1.5\",\n \"MozTabSize\": \"4\",\n \"OTabSize\": \"4\",\n \"tabSize\": \"4\",\n \"WebkitHyphens\": \"none\",\n \"MozHyphens\": \"none\",\n \"msHyphens\": \"none\",\n \"hyphens\": \"none\",\n \"padding\": \"1em\",\n \"margin\": \".5em 0\",\n \"overflow\": \"auto\",\n \"borderRadius\": \"0.3em\"\n },\n \":not(pre) > code[class*=\\\"language-\\\"]\": {\n \"background\": \"#272822\",\n \"padding\": \".1em\",\n \"borderRadius\": \".3em\",\n \"whiteSpace\": \"normal\"\n },\n \"comment\": {\n \"color\": \"#8292a2\"\n },\n \"prolog\": {\n \"color\": \"#8292a2\"\n },\n \"doctype\": {\n \"color\": \"#8292a2\"\n },\n \"cdata\": {\n \"color\": \"#8292a2\"\n },\n \"punctuation\": {\n \"color\": \"#f8f8f2\"\n },\n \"namespace\": {\n \"Opacity\": \".7\"\n },\n \"property\": {\n \"color\": \"#f92672\"\n },\n \"tag\": {\n \"color\": \"#f92672\"\n },\n \"constant\": {\n \"color\": \"#f92672\"\n },\n \"symbol\": {\n \"color\": \"#f92672\"\n },\n \"deleted\": {\n \"color\": \"#f92672\"\n },\n \"boolean\": {\n \"color\": \"#ae81ff\"\n },\n \"number\": {\n \"color\": \"#ae81ff\"\n },\n \"selector\": {\n \"color\": \"#a6e22e\"\n },\n \"attr-name\": {\n \"color\": \"#a6e22e\"\n },\n \"string\": {\n \"color\": \"#a6e22e\"\n },\n \"char\": {\n \"color\": \"#a6e22e\"\n },\n \"builtin\": {\n \"color\": \"#a6e22e\"\n },\n \"inserted\": {\n \"color\": \"#a6e22e\"\n },\n \"operator\": {\n \"color\": \"#f8f8f2\"\n },\n \"entity\": {\n \"color\": \"#f8f8f2\",\n \"cursor\": \"help\"\n },\n \"url\": {\n \"color\": \"#f8f8f2\"\n },\n \".language-css .token.string\": {\n \"color\": \"#f8f8f2\"\n },\n \".style .token.string\": {\n \"color\": \"#f8f8f2\"\n },\n \"variable\": {\n \"color\": \"#f8f8f2\"\n },\n \"atrule\": {\n \"color\": \"#e6db74\"\n },\n \"attr-value\": {\n \"color\": \"#e6db74\"\n },\n \"function\": {\n \"color\": \"#e6db74\"\n },\n \"class-name\": {\n \"color\": \"#e6db74\"\n },\n \"keyword\": {\n \"color\": \"#66d9ef\"\n },\n \"regex\": {\n \"color\": \"#fd971f\"\n },\n \"important\": {\n \"color\": \"#fd971f\",\n \"fontWeight\": \"bold\"\n },\n \"bold\": {\n \"fontWeight\": \"bold\"\n },\n \"italic\": {\n \"fontStyle\": \"italic\"\n }\n};","export default {\n \"code[class*=\\\"language-\\\"]\": {\n \"color\": \"#111b27\",\n \"background\": \"none\",\n \"fontFamily\": \"Consolas, Monaco, \\\"Andale Mono\\\", \\\"Ubuntu Mono\\\", monospace\",\n \"textAlign\": \"left\",\n \"whiteSpace\": \"pre\",\n \"wordSpacing\": \"normal\",\n \"wordBreak\": \"normal\",\n \"wordWrap\": \"normal\",\n \"lineHeight\": \"1.5\",\n \"MozTabSize\": \"4\",\n \"OTabSize\": \"4\",\n \"tabSize\": \"4\",\n \"WebkitHyphens\": \"none\",\n \"MozHyphens\": \"none\",\n \"msHyphens\": \"none\",\n \"hyphens\": \"none\"\n },\n \"pre[class*=\\\"language-\\\"]\": {\n \"color\": \"#111b27\",\n \"background\": \"#e3eaf2\",\n \"fontFamily\": \"Consolas, Monaco, \\\"Andale Mono\\\", \\\"Ubuntu Mono\\\", monospace\",\n \"textAlign\": \"left\",\n \"whiteSpace\": \"pre\",\n \"wordSpacing\": \"normal\",\n \"wordBreak\": \"normal\",\n \"wordWrap\": \"normal\",\n \"lineHeight\": \"1.5\",\n \"MozTabSize\": \"4\",\n \"OTabSize\": \"4\",\n \"tabSize\": \"4\",\n \"WebkitHyphens\": \"none\",\n \"MozHyphens\": \"none\",\n \"msHyphens\": \"none\",\n \"hyphens\": \"none\",\n \"padding\": \"1em\",\n \"margin\": \"0.5em 0\",\n \"overflow\": \"auto\"\n },\n \"pre[class*=\\\"language-\\\"]::-moz-selection\": {\n \"background\": \"#8da1b9\"\n },\n \"pre[class*=\\\"language-\\\"] ::-moz-selection\": {\n \"background\": \"#8da1b9\"\n },\n \"code[class*=\\\"language-\\\"]::-moz-selection\": {\n \"background\": \"#8da1b9\"\n },\n \"code[class*=\\\"language-\\\"] ::-moz-selection\": {\n \"background\": \"#8da1b9\"\n },\n \"pre[class*=\\\"language-\\\"]::selection\": {\n \"background\": \"#8da1b9\"\n },\n \"pre[class*=\\\"language-\\\"] ::selection\": {\n \"background\": \"#8da1b9\"\n },\n \"code[class*=\\\"language-\\\"]::selection\": {\n \"background\": \"#8da1b9\"\n },\n \"code[class*=\\\"language-\\\"] ::selection\": {\n \"background\": \"#8da1b9\"\n },\n \":not(pre) > code[class*=\\\"language-\\\"]\": {\n \"background\": \"#e3eaf2\",\n \"padding\": \"0.1em 0.3em\",\n \"borderRadius\": \"0.3em\",\n \"whiteSpace\": \"normal\"\n },\n \"comment\": {\n \"color\": \"#3c526d\"\n },\n \"prolog\": {\n \"color\": \"#3c526d\"\n },\n \"doctype\": {\n \"color\": \"#3c526d\"\n },\n \"cdata\": {\n \"color\": \"#3c526d\"\n },\n \"punctuation\": {\n \"color\": \"#111b27\"\n },\n \"delimiter.important\": {\n \"color\": \"#006d6d\",\n \"fontWeight\": \"inherit\"\n },\n \"selector.parent\": {\n \"color\": \"#006d6d\"\n },\n \"tag\": {\n \"color\": \"#006d6d\"\n },\n \"tag.punctuation\": {\n \"color\": \"#006d6d\"\n },\n \"attr-name\": {\n \"color\": \"#755f00\"\n },\n \"boolean\": {\n \"color\": \"#755f00\"\n },\n \"boolean.important\": {\n \"color\": \"#755f00\"\n },\n \"number\": {\n \"color\": \"#755f00\"\n },\n \"constant\": {\n \"color\": \"#755f00\"\n },\n \"selector.attribute\": {\n \"color\": \"#755f00\"\n },\n \"class-name\": {\n \"color\": \"#005a8e\"\n },\n \"key\": {\n \"color\": \"#005a8e\"\n },\n \"parameter\": {\n \"color\": \"#005a8e\"\n },\n \"property\": {\n \"color\": \"#005a8e\"\n },\n \"property-access\": {\n \"color\": \"#005a8e\"\n },\n \"variable\": {\n \"color\": \"#005a8e\"\n },\n \"attr-value\": {\n \"color\": \"#116b00\"\n },\n \"inserted\": {\n \"color\": \"#116b00\"\n },\n \"color\": {\n \"color\": \"#116b00\"\n },\n \"selector.value\": {\n \"color\": \"#116b00\"\n },\n \"string\": {\n \"color\": \"#116b00\"\n },\n \"string.url-link\": {\n \"color\": \"#116b00\"\n },\n \"builtin\": {\n \"color\": \"#af00af\"\n },\n \"keyword-array\": {\n \"color\": \"#af00af\"\n },\n \"package\": {\n \"color\": \"#af00af\"\n },\n \"regex\": {\n \"color\": \"#af00af\"\n },\n \"function\": {\n \"color\": \"#7c00aa\"\n },\n \"selector.class\": {\n \"color\": \"#7c00aa\"\n },\n \"selector.id\": {\n \"color\": \"#7c00aa\"\n },\n \"atrule.rule\": {\n \"color\": \"#a04900\"\n },\n \"combinator\": {\n \"color\": \"#a04900\"\n },\n \"keyword\": {\n \"color\": \"#a04900\"\n },\n \"operator\": {\n \"color\": \"#a04900\"\n },\n \"pseudo-class\": {\n \"color\": \"#a04900\"\n },\n \"pseudo-element\": {\n \"color\": \"#a04900\"\n },\n \"selector\": {\n \"color\": \"#a04900\"\n },\n \"unit\": {\n \"color\": \"#a04900\"\n },\n \"deleted\": {\n \"color\": \"#c22f2e\"\n },\n \"important\": {\n \"color\": \"#c22f2e\",\n \"fontWeight\": \"bold\"\n },\n \"keyword-this\": {\n \"color\": \"#005a8e\",\n \"fontWeight\": \"bold\"\n },\n \"this\": {\n \"color\": \"#005a8e\",\n \"fontWeight\": \"bold\"\n },\n \"bold\": {\n \"fontWeight\": \"bold\"\n },\n \"italic\": {\n \"fontStyle\": \"italic\"\n },\n \"entity\": {\n \"cursor\": \"help\"\n },\n \".language-markdown .token.title\": {\n \"color\": \"#005a8e\",\n \"fontWeight\": \"bold\"\n },\n \".language-markdown .token.title .token.punctuation\": {\n \"color\": \"#005a8e\",\n \"fontWeight\": \"bold\"\n },\n \".language-markdown .token.blockquote.punctuation\": {\n \"color\": \"#af00af\"\n },\n \".language-markdown .token.code\": {\n \"color\": \"#006d6d\"\n },\n \".language-markdown .token.hr.punctuation\": {\n \"color\": \"#005a8e\"\n },\n \".language-markdown .token.url > .token.content\": {\n \"color\": \"#116b00\"\n },\n \".language-markdown .token.url-link\": {\n \"color\": \"#755f00\"\n },\n \".language-markdown .token.list.punctuation\": {\n \"color\": \"#af00af\"\n },\n \".language-markdown .token.table-header\": {\n \"color\": \"#111b27\"\n },\n \".language-json .token.operator\": {\n \"color\": \"#111b27\"\n },\n \".language-scss .token.variable\": {\n \"color\": \"#006d6d\"\n },\n \"token.tab:not(:empty):before\": {\n \"color\": \"#3c526d\"\n },\n \"token.cr:before\": {\n \"color\": \"#3c526d\"\n },\n \"token.lf:before\": {\n \"color\": \"#3c526d\"\n },\n \"token.space:before\": {\n \"color\": \"#3c526d\"\n },\n \"div.code-toolbar > .toolbar.toolbar > .toolbar-item > a\": {\n \"color\": \"#e3eaf2\",\n \"background\": \"#005a8e\"\n },\n \"div.code-toolbar > .toolbar.toolbar > .toolbar-item > button\": {\n \"color\": \"#e3eaf2\",\n \"background\": \"#005a8e\"\n },\n \"div.code-toolbar > .toolbar.toolbar > .toolbar-item > a:hover\": {\n \"color\": \"#e3eaf2\",\n \"background\": \"#005a8eda\",\n \"textDecoration\": \"none\"\n },\n \"div.code-toolbar > .toolbar.toolbar > .toolbar-item > a:focus\": {\n \"color\": \"#e3eaf2\",\n \"background\": \"#005a8eda\",\n \"textDecoration\": \"none\"\n },\n \"div.code-toolbar > .toolbar.toolbar > .toolbar-item > button:hover\": {\n \"color\": \"#e3eaf2\",\n \"background\": \"#005a8eda\",\n \"textDecoration\": \"none\"\n },\n \"div.code-toolbar > .toolbar.toolbar > .toolbar-item > button:focus\": {\n \"color\": \"#e3eaf2\",\n \"background\": \"#005a8eda\",\n \"textDecoration\": \"none\"\n },\n \"div.code-toolbar > .toolbar.toolbar > .toolbar-item > span\": {\n \"color\": \"#e3eaf2\",\n \"background\": \"#3c526d\"\n },\n \"div.code-toolbar > .toolbar.toolbar > .toolbar-item > span:hover\": {\n \"color\": \"#e3eaf2\",\n \"background\": \"#3c526d\"\n },\n \"div.code-toolbar > .toolbar.toolbar > .toolbar-item > span:focus\": {\n \"color\": \"#e3eaf2\",\n \"background\": \"#3c526d\"\n },\n \".line-highlight.line-highlight\": {\n \"background\": \"linear-gradient(to right, #8da1b92f 70%, #8da1b925)\"\n },\n \".line-highlight.line-highlight:before\": {\n \"backgroundColor\": \"#3c526d\",\n \"color\": \"#e3eaf2\",\n \"boxShadow\": \"0 1px #8da1b9\"\n },\n \".line-highlight.line-highlight[data-end]:after\": {\n \"backgroundColor\": \"#3c526d\",\n \"color\": \"#e3eaf2\",\n \"boxShadow\": \"0 1px #8da1b9\"\n },\n \"pre[id].linkable-line-numbers.linkable-line-numbers span.line-numbers-rows > span:hover:before\": {\n \"backgroundColor\": \"#3c526d1f\"\n },\n \".line-numbers.line-numbers .line-numbers-rows\": {\n \"borderRight\": \"1px solid #8da1b97a\",\n \"background\": \"#d0dae77a\"\n },\n \".line-numbers .line-numbers-rows > span:before\": {\n \"color\": \"#3c526dda\"\n },\n \".rainbow-braces .token.token.punctuation.brace-level-1\": {\n \"color\": \"#755f00\"\n },\n \".rainbow-braces .token.token.punctuation.brace-level-5\": {\n \"color\": \"#755f00\"\n },\n \".rainbow-braces .token.token.punctuation.brace-level-9\": {\n \"color\": \"#755f00\"\n },\n \".rainbow-braces .token.token.punctuation.brace-level-2\": {\n \"color\": \"#af00af\"\n },\n \".rainbow-braces .token.token.punctuation.brace-level-6\": {\n \"color\": \"#af00af\"\n },\n \".rainbow-braces .token.token.punctuation.brace-level-10\": {\n \"color\": \"#af00af\"\n },\n \".rainbow-braces .token.token.punctuation.brace-level-3\": {\n \"color\": \"#005a8e\"\n },\n \".rainbow-braces .token.token.punctuation.brace-level-7\": {\n \"color\": \"#005a8e\"\n },\n \".rainbow-braces .token.token.punctuation.brace-level-11\": {\n \"color\": \"#005a8e\"\n },\n \".rainbow-braces .token.token.punctuation.brace-level-4\": {\n \"color\": \"#7c00aa\"\n },\n \".rainbow-braces .token.token.punctuation.brace-level-8\": {\n \"color\": \"#7c00aa\"\n },\n \".rainbow-braces .token.token.punctuation.brace-level-12\": {\n \"color\": \"#7c00aa\"\n },\n \"pre.diff-highlight > code .token.token.deleted:not(.prefix)\": {\n \"backgroundColor\": \"#c22f2e1f\"\n },\n \"pre > code.diff-highlight .token.token.deleted:not(.prefix)\": {\n \"backgroundColor\": \"#c22f2e1f\"\n },\n \"pre.diff-highlight > code .token.token.inserted:not(.prefix)\": {\n \"backgroundColor\": \"#116b001f\"\n },\n \"pre > code.diff-highlight .token.token.inserted:not(.prefix)\": {\n \"backgroundColor\": \"#116b001f\"\n },\n \".command-line .command-line-prompt\": {\n \"borderRight\": \"1px solid #8da1b97a\"\n },\n \".command-line .command-line-prompt > span:before\": {\n \"color\": \"#3c526dda\"\n }\n};","'use client';\n\nimport { CopyCheckIcon, CopyIcon } from 'lucide-react';\nimport {\n type FC,\n useEffect,\n useState,\n lazy,\n Suspense,\n type ReactNode,\n} from 'react';\nimport CopyToClipboard from 'react-copy-to-clipboard';\nimport {\n okaidia,\n coldarkCold,\n} from 'react-syntax-highlighter/dist/esm/styles/prism';\nimport { cn } from '../../utils/cn';\nimport { Loader } from '../Loader';\n\nconst SyntaxHighlighter = lazy(() =>\n import('react-syntax-highlighter').then((module) => ({\n default: module.Prism,\n }))\n);\n\ntype CodeCompProps = {\n children: string;\n language: string;\n isDarkMode?: boolean;\n showLineNumbers?: boolean;\n};\n\nexport const Code: FC<CodeCompProps> = ({\n children,\n language,\n isDarkMode,\n showLineNumbers = true,\n ...props\n}) => {\n const [isDarkModeState, setIsDarkModeState] = useState(false);\n const [copied, setCopied] = useState(false);\n\n useEffect(\n () =>\n // Necessary to fix first render bug\n setIsDarkModeState(isDarkMode ?? false),\n [isDarkMode]\n );\n\n useEffect(() => {\n const timer = setTimeout(() => {\n setCopied(false);\n }, 1000);\n return () => clearTimeout(timer);\n }, [copied]);\n\n return (\n <div\n className={cn(\n 'relative h-full w-full text-sm',\n showLineNumbers && 'ml-0'\n )}\n >\n <CopyToClipboard text={children} onCopy={() => setCopied(true)}>\n <button className=\"absolute right-3 top-3\" aria-label=\"Copy code\">\n {copied ? (\n <CopyCheckIcon className=\"size-4\" />\n ) : (\n <CopyIcon className=\"size-4\" />\n )}\n </button>\n </CopyToClipboard>\n <div className=\"grid size-full grid-cols-[0px] overflow-auto p-3\">\n <Suspense fallback={<Loader />}>\n <SyntaxHighlighter\n customStyle={{\n display: undefined,\n overflowX: 'auto',\n overflowY: 'auto',\n padding: undefined,\n color: undefined,\n background: 'inherit',\n margin: undefined,\n }}\n PreTag={(props: { children: ReactNode }) => props.children}\n language={language ?? 'javascript'}\n style={isDarkModeState ? okaidia : coldarkCold}\n showLineNumbers={showLineNumbers}\n {...props}\n >\n {String(children).replace(/\\n$/, '')}\n </SyntaxHighlighter>\n </Suspense>\n </div>\n </div>\n );\n};\n"],"names":["jsxs","jsx","props"],"mappings":";;;;;;;AAAA,MAAe,UAAA;AAAA,EACb,4BAA8B;AAAA,IAC5B,SAAS;AAAA,IACT,cAAc;AAAA,IACd,cAAc;AAAA,IACd,cAAc;AAAA,IACd,YAAY;AAAA,IACZ,aAAa;AAAA,IACb,cAAc;AAAA,IACd,eAAe;AAAA,IACf,aAAa;AAAA,IACb,YAAY;AAAA,IACZ,cAAc;AAAA,IACd,cAAc;AAAA,IACd,YAAY;AAAA,IACZ,WAAW;AAAA,IACX,iBAAiB;AAAA,IACjB,cAAc;AAAA,IACd,aAAa;AAAA,IACb,WAAW;AAAA,EACZ;AAAA,EACD,2BAA6B;AAAA,IAC3B,SAAS;AAAA,IACT,cAAc;AAAA,IACd,cAAc;AAAA,IACd,cAAc;AAAA,IACd,YAAY;AAAA,IACZ,aAAa;AAAA,IACb,cAAc;AAAA,IACd,eAAe;AAAA,IACf,aAAa;AAAA,IACb,YAAY;AAAA,IACZ,cAAc;AAAA,IACd,cAAc;AAAA,IACd,YAAY;AAAA,IACZ,WAAW;AAAA,IACX,iBAAiB;AAAA,IACjB,cAAc;AAAA,IACd,aAAa;AAAA,IACb,WAAW;AAAA,IACX,WAAW;AAAA,IACX,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,gBAAgB;AAAA,EACjB;AAAA,EACD,wCAA0C;AAAA,IACxC,cAAc;AAAA,IACd,WAAW;AAAA,IACX,gBAAgB;AAAA,IAChB,cAAc;AAAA,EACf;AAAA,EACD,WAAW;AAAA,IACT,SAAS;AAAA,EACV;AAAA,EACD,UAAU;AAAA,IACR,SAAS;AAAA,EACV;AAAA,EACD,WAAW;AAAA,IACT,SAAS;AAAA,EACV;AAAA,EACD,SAAS;AAAA,IACP,SAAS;AAAA,EACV;AAAA,EACD,eAAe;AAAA,IACb,SAAS;AAAA,EACV;AAAA,EACD,aAAa;AAAA,IACX,WAAW;AAAA,EACZ;AAAA,EACD,YAAY;AAAA,IACV,SAAS;AAAA,EACV;AAAA,EACD,OAAO;AAAA,IACL,SAAS;AAAA,EACV;AAAA,EACD,YAAY;AAAA,IACV,SAAS;AAAA,EACV;AAAA,EACD,UAAU;AAAA,IACR,SAAS;AAAA,EACV;AAAA,EACD,WAAW;AAAA,IACT,SAAS;AAAA,EACV;AAAA,EACD,WAAW;AAAA,IACT,SAAS;AAAA,EACV;AAAA,EACD,UAAU;AAAA,IACR,SAAS;AAAA,EACV;AAAA,EACD,YAAY;AAAA,IACV,SAAS;AAAA,EACV;AAAA,EACD,aAAa;AAAA,IACX,SAAS;AAAA,EACV;AAAA,EACD,UAAU;AAAA,IACR,SAAS;AAAA,EACV;AAAA,EACD,QAAQ;AAAA,IACN,SAAS;AAAA,EACV;AAAA,EACD,WAAW;AAAA,IACT,SAAS;AAAA,EACV;AAAA,EACD,YAAY;AAAA,IACV,SAAS;AAAA,EACV;AAAA,EACD,YAAY;AAAA,IACV,SAAS;AAAA,EACV;AAAA,EACD,UAAU;AAAA,IACR,SAAS;AAAA,IACT,UAAU;AAAA,EACX;AAAA,EACD,OAAO;AAAA,IACL,SAAS;AAAA,EACV;AAAA,EACD,+BAA+B;AAAA,IAC7B,SAAS;AAAA,EACV;AAAA,EACD,wBAAwB;AAAA,IACtB,SAAS;AAAA,EACV;AAAA,EACD,YAAY;AAAA,IACV,SAAS;AAAA,EACV;AAAA,EACD,UAAU;AAAA,IACR,SAAS;AAAA,EACV;AAAA,EACD,cAAc;AAAA,IACZ,SAAS;AAAA,EACV;AAAA,EACD,YAAY;AAAA,IACV,SAAS;AAAA,EACV;AAAA,EACD,cAAc;AAAA,IACZ,SAAS;AAAA,EACV;AAAA,EACD,WAAW;AAAA,IACT,SAAS;AAAA,EACV;AAAA,EACD,SAAS;AAAA,IACP,SAAS;AAAA,EACV;AAAA,EACD,aAAa;AAAA,IACX,SAAS;AAAA,IACT,cAAc;AAAA,EACf;AAAA,EACD,QAAQ;AAAA,IACN,cAAc;AAAA,EACf;AAAA,EACD,UAAU;AAAA,IACR,aAAa;AAAA,EACjB;AACA;AC3JA,MAAe,cAAA;AAAA,EACb,4BAA8B;AAAA,IAC5B,SAAS;AAAA,IACT,cAAc;AAAA,IACd,cAAc;AAAA,IACd,aAAa;AAAA,IACb,cAAc;AAAA,IACd,eAAe;AAAA,IACf,aAAa;AAAA,IACb,YAAY;AAAA,IACZ,cAAc;AAAA,IACd,cAAc;AAAA,IACd,YAAY;AAAA,IACZ,WAAW;AAAA,IACX,iBAAiB;AAAA,IACjB,cAAc;AAAA,IACd,aAAa;AAAA,IACb,WAAW;AAAA,EACZ;AAAA,EACD,2BAA6B;AAAA,IAC3B,SAAS;AAAA,IACT,cAAc;AAAA,IACd,cAAc;AAAA,IACd,aAAa;AAAA,IACb,cAAc;AAAA,IACd,eAAe;AAAA,IACf,aAAa;AAAA,IACb,YAAY;AAAA,IACZ,cAAc;AAAA,IACd,cAAc;AAAA,IACd,YAAY;AAAA,IACZ,WAAW;AAAA,IACX,iBAAiB;AAAA,IACjB,cAAc;AAAA,IACd,aAAa;AAAA,IACb,WAAW;AAAA,IACX,WAAW;AAAA,IACX,UAAU;AAAA,IACV,YAAY;AAAA,EACb;AAAA,EACD,2CAA6C;AAAA,IAC3C,cAAc;AAAA,EACf;AAAA,EACD,4CAA8C;AAAA,IAC5C,cAAc;AAAA,EACf;AAAA,EACD,4CAA8C;AAAA,IAC5C,cAAc;AAAA,EACf;AAAA,EACD,6CAA+C;AAAA,IAC7C,cAAc;AAAA,EACf;AAAA,EACD,sCAAwC;AAAA,IACtC,cAAc;AAAA,EACf;AAAA,EACD,uCAAyC;AAAA,IACvC,cAAc;AAAA,EACf;AAAA,EACD,uCAAyC;AAAA,IACvC,cAAc;AAAA,EACf;AAAA,EACD,wCAA0C;AAAA,IACxC,cAAc;AAAA,EACf;AAAA,EACD,wCAA0C;AAAA,IACxC,cAAc;AAAA,IACd,WAAW;AAAA,IACX,gBAAgB;AAAA,IAChB,cAAc;AAAA,EACf;AAAA,EACD,WAAW;AAAA,IACT,SAAS;AAAA,EACV;AAAA,EACD,UAAU;AAAA,IACR,SAAS;AAAA,EACV;AAAA,EACD,WAAW;AAAA,IACT,SAAS;AAAA,EACV;AAAA,EACD,SAAS;AAAA,IACP,SAAS;AAAA,EACV;AAAA,EACD,eAAe;AAAA,IACb,SAAS;AAAA,EACV;AAAA,EACD,uBAAuB;AAAA,IACrB,SAAS;AAAA,IACT,cAAc;AAAA,EACf;AAAA,EACD,mBAAmB;AAAA,IACjB,SAAS;AAAA,EACV;AAAA,EACD,OAAO;AAAA,IACL,SAAS;AAAA,EACV;AAAA,EACD,mBAAmB;AAAA,IACjB,SAAS;AAAA,EACV;AAAA,EACD,aAAa;AAAA,IACX,SAAS;AAAA,EACV;AAAA,EACD,WAAW;AAAA,IACT,SAAS;AAAA,EACV;AAAA,EACD,qBAAqB;AAAA,IACnB,SAAS;AAAA,EACV;AAAA,EACD,UAAU;AAAA,IACR,SAAS;AAAA,EACV;AAAA,EACD,YAAY;AAAA,IACV,SAAS;AAAA,EACV;AAAA,EACD,sBAAsB;AAAA,IACpB,SAAS;AAAA,EACV;AAAA,EACD,cAAc;AAAA,IACZ,SAAS;AAAA,EACV;AAAA,EACD,OAAO;AAAA,IACL,SAAS;AAAA,EACV;AAAA,EACD,aAAa;AAAA,IACX,SAAS;AAAA,EACV;AAAA,EACD,YAAY;AAAA,IACV,SAAS;AAAA,EACV;AAAA,EACD,mBAAmB;AAAA,IACjB,SAAS;AAAA,EACV;AAAA,EACD,YAAY;AAAA,IACV,SAAS;AAAA,EACV;AAAA,EACD,cAAc;AAAA,IACZ,SAAS;AAAA,EACV;AAAA,EACD,YAAY;AAAA,IACV,SAAS;AAAA,EACV;AAAA,EACD,SAAS;AAAA,IACP,SAAS;AAAA,EACV;AAAA,EACD,kBAAkB;AAAA,IAChB,SAAS;AAAA,EACV;AAAA,EACD,UAAU;AAAA,IACR,SAAS;AAAA,EACV;AAAA,EACD,mBAAmB;AAAA,IACjB,SAAS;AAAA,EACV;AAAA,EACD,WAAW;AAAA,IACT,SAAS;AAAA,EACV;AAAA,EACD,iBAAiB;AAAA,IACf,SAAS;AAAA,EACV;AAAA,EACD,WAAW;AAAA,IACT,SAAS;AAAA,EACV;AAAA,EACD,SAAS;AAAA,IACP,SAAS;AAAA,EACV;AAAA,EACD,YAAY;AAAA,IACV,SAAS;AAAA,EACV;AAAA,EACD,kBAAkB;AAAA,IAChB,SAAS;AAAA,EACV;AAAA,EACD,eAAe;AAAA,IACb,SAAS;AAAA,EACV;AAAA,EACD,eAAe;AAAA,IACb,SAAS;AAAA,EACV;AAAA,EACD,cAAc;AAAA,IACZ,SAAS;AAAA,EACV;AAAA,EACD,WAAW;AAAA,IACT,SAAS;AAAA,EACV;AAAA,EACD,YAAY;AAAA,IACV,SAAS;AAAA,EACV;AAAA,EACD,gBAAgB;AAAA,IACd,SAAS;AAAA,EACV;AAAA,EACD,kBAAkB;AAAA,IAChB,SAAS;AAAA,EACV;AAAA,EACD,YAAY;AAAA,IACV,SAAS;AAAA,EACV;AAAA,EACD,QAAQ;AAAA,IACN,SAAS;AAAA,EACV;AAAA,EACD,WAAW;AAAA,IACT,SAAS;AAAA,EACV;AAAA,EACD,aAAa;AAAA,IACX,SAAS;AAAA,IACT,cAAc;AAAA,EACf;AAAA,EACD,gBAAgB;AAAA,IACd,SAAS;AAAA,IACT,cAAc;AAAA,EACf;AAAA,EACD,QAAQ;AAAA,IACN,SAAS;AAAA,IACT,cAAc;AAAA,EACf;AAAA,EACD,QAAQ;AAAA,IACN,cAAc;AAAA,EACf;AAAA,EACD,UAAU;AAAA,IACR,aAAa;AAAA,EACd;AAAA,EACD,UAAU;AAAA,IACR,UAAU;AAAA,EACX;AAAA,EACD,mCAAmC;AAAA,IACjC,SAAS;AAAA,IACT,cAAc;AAAA,EACf;AAAA,EACD,sDAAsD;AAAA,IACpD,SAAS;AAAA,IACT,cAAc;AAAA,EACf;AAAA,EACD,oDAAoD;AAAA,IAClD,SAAS;AAAA,EACV;AAAA,EACD,kCAAkC;AAAA,IAChC,SAAS;AAAA,EACV;AAAA,EACD,4CAA4C;AAAA,IAC1C,SAAS;AAAA,EACV;AAAA,EACD,kDAAkD;AAAA,IAChD,SAAS;AAAA,EACV;AAAA,EACD,sCAAsC;AAAA,IACpC,SAAS;AAAA,EACV;AAAA,EACD,8CAA8C;AAAA,IAC5C,SAAS;AAAA,EACV;AAAA,EACD,0CAA0C;AAAA,IACxC,SAAS;AAAA,EACV;AAAA,EACD,kCAAkC;AAAA,IAChC,SAAS;AAAA,EACV;AAAA,EACD,kCAAkC;AAAA,IAChC,SAAS;AAAA,EACV;AAAA,EACD,gCAAgC;AAAA,IAC9B,SAAS;AAAA,EACV;AAAA,EACD,mBAAmB;AAAA,IACjB,SAAS;AAAA,EACV;AAAA,EACD,mBAAmB;AAAA,IACjB,SAAS;AAAA,EACV;AAAA,EACD,sBAAsB;AAAA,IACpB,SAAS;AAAA,EACV;AAAA,EACD,2DAA2D;AAAA,IACzD,SAAS;AAAA,IACT,cAAc;AAAA,EACf;AAAA,EACD,gEAAgE;AAAA,IAC9D,SAAS;AAAA,IACT,cAAc;AAAA,EACf;AAAA,EACD,iEAAiE;AAAA,IAC/D,SAAS;AAAA,IACT,cAAc;AAAA,IACd,kBAAkB;AAAA,EACnB;AAAA,EACD,iEAAiE;AAAA,IAC/D,SAAS;AAAA,IACT,cAAc;AAAA,IACd,kBAAkB;AAAA,EACnB;AAAA,EACD,sEAAsE;AAAA,IACpE,SAAS;AAAA,IACT,cAAc;AAAA,IACd,kBAAkB;AAAA,EACnB;AAAA,EACD,sEAAsE;AAAA,IACpE,SAAS;AAAA,IACT,cAAc;AAAA,IACd,kBAAkB;AAAA,EACnB;AAAA,EACD,8DAA8D;AAAA,IAC5D,SAAS;AAAA,IACT,cAAc;AAAA,EACf;AAAA,EACD,oEAAoE;AAAA,IAClE,SAAS;AAAA,IACT,cAAc;AAAA,EACf;AAAA,EACD,oEAAoE;AAAA,IAClE,SAAS;AAAA,IACT,cAAc;AAAA,EACf;AAAA,EACD,kCAAkC;AAAA,IAChC,cAAc;AAAA,EACf;AAAA,EACD,yCAAyC;AAAA,IACvC,mBAAmB;AAAA,IACnB,SAAS;AAAA,IACT,aAAa;AAAA,EACd;AAAA,EACD,kDAAkD;AAAA,IAChD,mBAAmB;AAAA,IACnB,SAAS;AAAA,IACT,aAAa;AAAA,EACd;AAAA,EACD,kGAAkG;AAAA,IAChG,mBAAmB;AAAA,EACpB;AAAA,EACD,iDAAiD;AAAA,IAC/C,eAAe;AAAA,IACf,cAAc;AAAA,EACf;AAAA,EACD,kDAAkD;AAAA,IAChD,SAAS;AAAA,EACV;AAAA,EACD,0DAA0D;AAAA,IACxD,SAAS;AAAA,EACV;AAAA,EACD,0DAA0D;AAAA,IACxD,SAAS;AAAA,EACV;AAAA,EACD,0DAA0D;AAAA,IACxD,SAAS;AAAA,EACV;AAAA,EACD,0DAA0D;AAAA,IACxD,SAAS;AAAA,EACV;AAAA,EACD,0DAA0D;AAAA,IACxD,SAAS;AAAA,EACV;AAAA,EACD,2DAA2D;AAAA,IACzD,SAAS;AAAA,EACV;AAAA,EACD,0DAA0D;AAAA,IACxD,SAAS;AAAA,EACV;AAAA,EACD,0DAA0D;AAAA,IACxD,SAAS;AAAA,EACV;AAAA,EACD,2DAA2D;AAAA,IACzD,SAAS;AAAA,EACV;AAAA,EACD,0DAA0D;AAAA,IACxD,SAAS;AAAA,EACV;AAAA,EACD,0DAA0D;AAAA,IACxD,SAAS;AAAA,EACV;AAAA,EACD,2DAA2D;AAAA,IACzD,SAAS;AAAA,EACV;AAAA,EACD,+DAA+D;AAAA,IAC7D,mBAAmB;AAAA,EACpB;AAAA,EACD,+DAA+D;AAAA,IAC7D,mBAAmB;AAAA,EACpB;AAAA,EACD,gEAAgE;AAAA,IAC9D,mBAAmB;AAAA,EACpB;AAAA,EACD,gEAAgE;AAAA,IAC9D,mBAAmB;AAAA,EACpB;AAAA,EACD,sCAAsC;AAAA,IACpC,eAAe;AAAA,EAChB;AAAA,EACD,oDAAoD;AAAA,IAClD,SAAS;AAAA,EACb;AACA;AC9WA,MAAM,oBAAoB;AAAA,EAAK,MAC7B,OAAO,0BAA0B,EAAE,KAAK,CAAC,YAAY;AAAA,IACnD,SAAS,OAAO;AAAA,EAAA,EAChB;AACJ;AASO,MAAM,OAA0B,CAAC;AAAA,EACtC;AAAA,EACA;AAAA,EACA;AAAA,EACA,kBAAkB;AAAA,EAClB,GAAG;AACL,MAAM;AACJ,QAAM,CAAC,iBAAiB,kBAAkB,IAAI,SAAS,KAAK;AAC5D,QAAM,CAAC,QAAQ,SAAS,IAAI,SAAS,KAAK;AAE1C;AAAA,IACE;AAAA;AAAA,MAEE,mBAAmB,cAAc,KAAK;AAAA;AAAA,IACxC,CAAC,UAAU;AAAA,EACb;AAEA,YAAU,MAAM;AACR,UAAA,QAAQ,WAAW,MAAM;AAC7B,gBAAU,KAAK;AAAA,OACd,GAAI;AACA,WAAA,MAAM,aAAa,KAAK;AAAA,EAAA,GAC9B,CAAC,MAAM,CAAC;AAGT,SAAAA,kCAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAW;AAAA,QACT;AAAA,QACA,mBAAmB;AAAA,MACrB;AAAA,MAEA,UAAA;AAAA,QAACC,kCAAA,IAAA,iBAAA,EAAgB,MAAM,UAAU,QAAQ,MAAM,UAAU,IAAI,GAC3D,UAACA,kCAAAA,IAAA,UAAA,EAAO,WAAU,0BAAyB,cAAW,aACnD,UAAA,SACEA,kCAAA,IAAA,eAAA,EAAc,WAAU,SAAS,CAAA,IAElCA,kCAAAA,IAAC,UAAS,EAAA,WAAU,SAAS,CAAA,EAAA,CAEjC,EACF,CAAA;AAAA,QACAA,kCAAAA,IAAC,SAAI,WAAU,oDACb,gDAAC,UAAS,EAAA,UAAWA,kCAAAA,IAAA,QAAA,CAAA,CAAO,GAC1B,UAAAA,kCAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,aAAa;AAAA,cACX,SAAS;AAAA,cACT,WAAW;AAAA,cACX,WAAW;AAAA,cACX,SAAS;AAAA,cACT,OAAO;AAAA,cACP,YAAY;AAAA,cACZ,QAAQ;AAAA,YACV;AAAA,YACA,QAAQ,CAACC,WAAmCA,OAAM;AAAA,YAClD,UAAU,YAAY;AAAA,YACtB,OAAO,kBAAkB,UAAU;AAAA,YACnC;AAAA,YACC,GAAG;AAAA,YAEH,UAAO,OAAA,QAAQ,EAAE,QAAQ,OAAO,EAAE;AAAA,UAAA;AAAA,WAEvC,EACF,CAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EACF;AAEJ;","x_google_ignoreList":[0,1]}
1
+ {"version":3,"file":"CodeRender.mjs","sources":["../../../src/components/IDE/CodeRender.tsx"],"sourcesContent":["'use client';\n\nimport highlight from 'highlight.js';\nimport { forwardRef, type HTMLAttributes, useEffect, useRef } from 'react';\nimport { cn } from '../../utils/cn';\nimport { CopyButton } from './CopyButton';\n\ntype CodeCompProps = {\n children: string;\n language: string;\n isDarkMode?: boolean;\n showHeader?: boolean;\n showLineNumbers?: boolean;\n} & HTMLAttributes<HTMLDivElement>;\n\nexport const Code = forwardRef<HTMLDivElement, CodeCompProps>(\n (\n {\n children,\n language,\n isDarkMode,\n showHeader = true,\n showLineNumbers = true,\n className,\n ...props\n },\n ref\n ) => {\n const codeRef = useRef<HTMLElement>(null);\n\n useEffect(() => {\n if (\n codeRef &&\n codeRef.current &&\n !codeRef.current.hasAttribute('data-highlighted')\n ) {\n highlight.highlightElement(codeRef.current);\n\n if (showLineNumbers) {\n // To implement line numbers, we need to add a new div with the line numbers\n }\n\n // Mark as highlighted so we don't re-highlight\n codeRef.current.setAttribute('data-highlighted', 'true');\n }\n }, [children, showLineNumbers]);\n\n return (\n <div\n className={cn(\n 'relative h-full w-full text-sm leading-6',\n showLineNumbers && 'ml-0',\n className\n )}\n ref={ref}\n {...props}\n >\n {showHeader && (\n <>\n <div className=\"bg-card dark:bg-card-dark text-neutral dark:text-neutral-dark flex h-9 w-full items-center rounded-t-xl pl-4 text-sm\">\n {language ?? 'javascript'}\n </div>\n <div className=\"sticky top-28\">\n <div className=\"absolute bottom-0 right-2 flex h-9 items-center\">\n <CopyButton content={children} />\n </div>\n </div>\n </>\n )}\n <div className=\"grid size-full grid-cols-[0px] overflow-auto p-3\">\n <pre>\n <code className={`language-${language} w-fit`} ref={codeRef}>\n {children}\n </code>\n </pre>\n </div>\n </div>\n );\n }\n);\n\nCode.displayName = 'Code';\n"],"names":["jsxs","Fragment","jsx"],"mappings":";;;;;;AAeO,MAAM,OAAO;AAAA,EAClB,CACE;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,IACA,aAAa;AAAA,IACb,kBAAkB;AAAA,IAClB;AAAA,IACA,GAAG;AAAA,KAEL,QACG;AACG,UAAA,UAAU,OAAoB,IAAI;AAExC,cAAU,MAAM;AAEZ,UAAA,WACA,QAAQ,WACR,CAAC,QAAQ,QAAQ,aAAa,kBAAkB,GAChD;AACU,kBAAA,iBAAiB,QAAQ,OAAO;AAOlC,gBAAA,QAAQ,aAAa,oBAAoB,MAAM;AAAA,MAAA;AAAA,IACzD,GACC,CAAC,UAAU,eAAe,CAAC;AAG5B,WAAAA,kCAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAW;AAAA,UACT;AAAA,UACA,mBAAmB;AAAA,UACnB;AAAA,QACF;AAAA,QACA;AAAA,QACC,GAAG;AAAA,QAEH,UAAA;AAAA,UAAA,cAEGA,kCAAA,KAAAC,4BAAA,EAAA,UAAA;AAAA,YAAAC,kCAAA,IAAC,OAAI,EAAA,WAAU,wHACZ,UAAA,YAAY,cACf;AAAA,YACCA,kCAAA,IAAA,OAAA,EAAI,WAAU,iBACb,UAACA,kCAAAA,IAAA,OAAA,EAAI,WAAU,mDACb,UAACA,kCAAAA,IAAA,YAAA,EAAW,SAAS,SAAA,CAAU,GACjC,EACF,CAAA;AAAA,UAAA,GACF;AAAA,gDAED,OAAI,EAAA,WAAU,oDACb,UAAAA,kCAAAA,IAAC,SACC,UAACA,sCAAA,QAAA,EAAK,WAAW,YAAY,QAAQ,UAAU,KAAK,SACjD,UACH,GACF,EACF,CAAA;AAAA,QAAA;AAAA,MAAA;AAAA,IACF;AAAA,EAAA;AAGN;AAEA,KAAK,cAAc;"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const require$$0 = require("react");
4
+ const jsxRuntime = require("../../jsx-runtime-XHKiWCTo.cjs");
5
+ const rehypeParse = require("rehype-parse");
6
+ const rehypePrettyCode = require("rehype-pretty-code");
7
+ const rehypeReact = require("rehype-react");
8
+ const unified = require("unified");
9
+ const CodeRenderer = async ({ code }) => {
10
+ const highlightedCode = await processMarkdown();
11
+ console.log("code", code);
12
+ return highlightedCode;
13
+ };
14
+ const rehypePrettyCodeOptions = {
15
+ theme: "github-dark"
16
+ };
17
+ const processMarkdown = async (htmlContent) => {
18
+ const file = await unified.unified().use(rehypeParse, { fragment: true }).use(rehypePrettyCode.rehypePrettyCode, rehypePrettyCodeOptions).use(rehypeReact, {
19
+ createElement: require$$0.createElement,
20
+ Fragment: jsxRuntime.jsxRuntimeExports.Fragment,
21
+ jsx: jsxRuntime.jsxRuntimeExports.jsx,
22
+ jsxs: jsxRuntime.jsxRuntimeExports.jsxs
23
+ }).process("`const numbers = [1, 2, 3]{:js}`");
24
+ return file.result;
25
+ };
26
+ exports.CodeRenderer = CodeRenderer;
27
+ //# sourceMappingURL=CodeRenderer.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CodeRenderer.cjs","sources":["../../../src/components/IDE/CodeRenderer.tsx"],"sourcesContent":["import { createElement } from 'react';\nimport { Fragment, jsx, jsxs } from 'react/jsx-runtime';\nimport rehypeParse from 'rehype-parse';\nimport {\n rehypePrettyCode,\n type Options as RehypePrettyCodeOptions,\n} from 'rehype-pretty-code';\nimport rehypeReact from 'rehype-react';\nimport rehypeStringify from 'rehype-stringify';\nimport remarkParse from 'remark-parse';\nimport remarkRehype from 'remark-rehype';\nimport { unified } from 'unified';\n\nexport type CodeRendererProps = {\n code: string;\n};\n\nexport const CodeRenderer = async ({ code }: CodeRendererProps) => {\n const highlightedCode = await processMarkdown(code);\n\n console.log('code', code);\n return highlightedCode;\n};\n\nconst rehypePrettyCodeOptions: RehypePrettyCodeOptions = {\n theme: 'github-dark',\n};\n\nconst processMarkdown = async (htmlContent: string) => {\n const file = await unified()\n .use(rehypeParse, { fragment: true }) // Parse the HTML string\n .use(rehypePrettyCode, rehypePrettyCodeOptions) // Apply syntax highlighting\n .use(rehypeReact, {\n createElement,\n Fragment,\n jsx,\n jsxs,\n })\n .process('`const numbers = [1, 2, 3]{:js}`');\n\n return file.result;\n};\n"],"names":["unified","rehypePrettyCode","createElement","Fragment","jsx","jsxs"],"mappings":";;;;;;;;AAiBO,MAAM,eAAe,OAAO,EAAE,WAA8B;AAC3D,QAAA,kBAAkB,MAAM,gBAAoB;AAE1C,UAAA,IAAI,QAAQ,IAAI;AACjB,SAAA;AACT;AAEA,MAAM,0BAAmD;AAAA,EACvD,OAAO;AACT;AAEA,MAAM,kBAAkB,OAAO,gBAAwB;AACrD,QAAM,OAAO,MAAMA,QAAA,QAAA,EAChB,IAAI,aAAa,EAAE,UAAU,KAAK,CAAC,EACnC,IAAIC,iBAAA,kBAAkB,uBAAuB,EAC7C,IAAI,aAAa;AAAA,IAAA,eAChBC,WAAA;AAAA,IAAA,UACAC,WAAA,kBAAA;AAAA,IAAA,KACAC,WAAA,kBAAA;AAAA,IACAC,MAAAA,WAAAA,kBAAAA;AAAAA,EAAA,CACD,EACA,QAAQ,kCAAkC;AAE7C,SAAO,KAAK;AACd;;"}
@@ -0,0 +1,5 @@
1
+ export type CodeRendererProps = {
2
+ code: string;
3
+ };
4
+ export declare const CodeRenderer: ({ code }: CodeRendererProps) => Promise<JSX.Element>;
5
+ //# sourceMappingURL=CodeRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CodeRenderer.d.ts","sourceRoot":"","sources":["../../../src/components/IDE/CodeRenderer.tsx"],"names":[],"mappings":"AAaA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,eAAO,MAAM,YAAY,aAAoB,iBAAiB,yBAK7D,CAAC"}
@@ -0,0 +1,27 @@
1
+ import { createElement } from "react";
2
+ import { j as jsxRuntimeExports } from "../../jsx-runtime-DaNGiM0W.js";
3
+ import rehypeParse from "rehype-parse";
4
+ import { rehypePrettyCode } from "rehype-pretty-code";
5
+ import rehypeReact from "rehype-react";
6
+ import { unified } from "unified";
7
+ const CodeRenderer = async ({ code }) => {
8
+ const highlightedCode = await processMarkdown();
9
+ console.log("code", code);
10
+ return highlightedCode;
11
+ };
12
+ const rehypePrettyCodeOptions = {
13
+ theme: "github-dark"
14
+ };
15
+ const processMarkdown = async (htmlContent) => {
16
+ const file = await unified().use(rehypeParse, { fragment: true }).use(rehypePrettyCode, rehypePrettyCodeOptions).use(rehypeReact, {
17
+ createElement,
18
+ Fragment: jsxRuntimeExports.Fragment,
19
+ jsx: jsxRuntimeExports.jsx,
20
+ jsxs: jsxRuntimeExports.jsxs
21
+ }).process("`const numbers = [1, 2, 3]{:js}`");
22
+ return file.result;
23
+ };
24
+ export {
25
+ CodeRenderer
26
+ };
27
+ //# sourceMappingURL=CodeRenderer.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CodeRenderer.mjs","sources":["../../../src/components/IDE/CodeRenderer.tsx"],"sourcesContent":["import { createElement } from 'react';\nimport { Fragment, jsx, jsxs } from 'react/jsx-runtime';\nimport rehypeParse from 'rehype-parse';\nimport {\n rehypePrettyCode,\n type Options as RehypePrettyCodeOptions,\n} from 'rehype-pretty-code';\nimport rehypeReact from 'rehype-react';\nimport rehypeStringify from 'rehype-stringify';\nimport remarkParse from 'remark-parse';\nimport remarkRehype from 'remark-rehype';\nimport { unified } from 'unified';\n\nexport type CodeRendererProps = {\n code: string;\n};\n\nexport const CodeRenderer = async ({ code }: CodeRendererProps) => {\n const highlightedCode = await processMarkdown(code);\n\n console.log('code', code);\n return highlightedCode;\n};\n\nconst rehypePrettyCodeOptions: RehypePrettyCodeOptions = {\n theme: 'github-dark',\n};\n\nconst processMarkdown = async (htmlContent: string) => {\n const file = await unified()\n .use(rehypeParse, { fragment: true }) // Parse the HTML string\n .use(rehypePrettyCode, rehypePrettyCodeOptions) // Apply syntax highlighting\n .use(rehypeReact, {\n createElement,\n Fragment,\n jsx,\n jsxs,\n })\n .process('`const numbers = [1, 2, 3]{:js}`');\n\n return file.result;\n};\n"],"names":["Fragment","jsx","jsxs"],"mappings":";;;;;;AAiBO,MAAM,eAAe,OAAO,EAAE,WAA8B;AAC3D,QAAA,kBAAkB,MAAM,gBAAoB;AAE1C,UAAA,IAAI,QAAQ,IAAI;AACjB,SAAA;AACT;AAEA,MAAM,0BAAmD;AAAA,EACvD,OAAO;AACT;AAEA,MAAM,kBAAkB,OAAO,gBAAwB;AACrD,QAAM,OAAO,MAAM,QAAA,EAChB,IAAI,aAAa,EAAE,UAAU,KAAK,CAAC,EACnC,IAAI,kBAAkB,uBAAuB,EAC7C,IAAI,aAAa;AAAA,IAChB;AAAA,IAAA,UACAA,kBAAA;AAAA,IAAA,KACAC,kBAAA;AAAA,IACAC,MAAAA,kBAAAA;AAAAA,EAAA,CACD,EACA,QAAQ,kCAAkC;AAE7C,SAAO,KAAK;AACd;"}
@@ -0,0 +1,28 @@
1
+ "use client";
2
+ "use strict";
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
4
+ const jsxRuntime = require("../../jsx-runtime-XHKiWCTo.cjs");
5
+ require("../Select/Multiselect.cjs");
6
+ const components_Select_Select = require("../Select/Select.cjs");
7
+ const components_IDE_CodeContext = require("./CodeContext.cjs");
8
+ const ContentDeclarationFormatSelector = () => {
9
+ const { contentDeclarationFormat, setContentDeclarationFormat } = components_IDE_CodeContext.useCodeContext();
10
+ return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsxs(
11
+ components_Select_Select.Select,
12
+ {
13
+ value: contentDeclarationFormat,
14
+ onValueChange: setContentDeclarationFormat,
15
+ children: [
16
+ /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(components_Select_Select.Select.Trigger, { children: /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(components_Select_Select.Select.Value, { placeholder: "Content Declaration Format" }) }),
17
+ /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsxs(components_Select_Select.Select.Content, { children: [
18
+ /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(components_Select_Select.Select.Item, { value: "typescript", children: "TypeScript" }),
19
+ /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(components_Select_Select.Select.Item, { value: "commonjs", children: "CommonJS" }),
20
+ /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(components_Select_Select.Select.Item, { value: "esm", children: "ESM" }),
21
+ /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(components_Select_Select.Select.Item, { value: "json", children: "JSON" })
22
+ ] })
23
+ ]
24
+ }
25
+ );
26
+ };
27
+ exports.ContentDeclarationFormatSelector = ContentDeclarationFormatSelector;
28
+ //# sourceMappingURL=ContentDeclarationFormatSelector.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContentDeclarationFormatSelector.cjs","sources":["../../../src/components/IDE/ContentDeclarationFormatSelector.tsx"],"sourcesContent":["'use client';\n\nimport type { FC } from 'react';\nimport { Select } from '../Select';\nimport { useCodeContext } from './CodeContext';\n\nexport const ContentDeclarationFormatSelector: FC = () => {\n const { contentDeclarationFormat, setContentDeclarationFormat } =\n useCodeContext();\n\n return (\n <Select\n value={contentDeclarationFormat}\n onValueChange={setContentDeclarationFormat}\n >\n <Select.Trigger>\n <Select.Value placeholder=\"Content Declaration Format\" />\n </Select.Trigger>\n <Select.Content>\n <Select.Item value=\"typescript\">TypeScript</Select.Item>\n <Select.Item value=\"commonjs\">CommonJS</Select.Item>\n <Select.Item value=\"esm\">ESM</Select.Item>\n <Select.Item value=\"json\">JSON</Select.Item>\n </Select.Content>\n </Select>\n );\n};\n"],"names":["useCodeContext","jsxs","Select","jsx"],"mappings":";;;;;;;AAMO,MAAM,mCAAuC,MAAM;AACxD,QAAM,EAAE,0BAA0B,4BAA4B,IAC5DA,0CAAe;AAGf,SAAAC,2BAAA,kBAAA;AAAA,IAACC,yBAAA;AAAA,IAAA;AAAA,MACC,OAAO;AAAA,MACP,eAAe;AAAA,MAEf,UAAA;AAAA,QAACC,2BAAAA,kBAAAA,IAAAD,yBAAA,OAAO,SAAP,EACC,UAAAC,2BAAA,kBAAA,IAACD,gCAAO,OAAP,EAAa,aAAY,6BAAA,CAA6B,EACzD,CAAA;AAAA,QACAD,2BAAAA,kBAAAA,KAACC,yBAAO,OAAA,SAAP,EACC,UAAA;AAAA,UAAAC,2BAAA,kBAAA,IAACD,yBAAO,OAAA,MAAP,EAAY,OAAM,cAAa,UAAU,cAAA;AAAA,2DACzCA,yBAAO,OAAA,MAAP,EAAY,OAAM,YAAW,UAAQ,YAAA;AAAA,2DACrCA,yBAAO,OAAA,MAAP,EAAY,OAAM,OAAM,UAAG,OAAA;AAAA,2DAC3BA,yBAAO,OAAA,MAAP,EAAY,OAAM,QAAO,UAAI,OAAA,CAAA;AAAA,QAAA,EAChC,CAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EACF;AAEJ;;"}
@@ -0,0 +1,3 @@
1
+ import { FC } from 'react';
2
+ export declare const ContentDeclarationFormatSelector: FC;
3
+ //# sourceMappingURL=ContentDeclarationFormatSelector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContentDeclarationFormatSelector.d.ts","sourceRoot":"","sources":["../../../src/components/IDE/ContentDeclarationFormatSelector.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAIhC,eAAO,MAAM,gCAAgC,EAAE,EAoB9C,CAAC"}
@@ -0,0 +1,28 @@
1
+ "use client";
2
+ import { j as jsxRuntimeExports } from "../../jsx-runtime-DaNGiM0W.js";
3
+ import "../Select/Multiselect.mjs";
4
+ import { Select } from "../Select/Select.mjs";
5
+ import { useCodeContext } from "./CodeContext.mjs";
6
+ const ContentDeclarationFormatSelector = () => {
7
+ const { contentDeclarationFormat, setContentDeclarationFormat } = useCodeContext();
8
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs(
9
+ Select,
10
+ {
11
+ value: contentDeclarationFormat,
12
+ onValueChange: setContentDeclarationFormat,
13
+ children: [
14
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Select.Trigger, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(Select.Value, { placeholder: "Content Declaration Format" }) }),
15
+ /* @__PURE__ */ jsxRuntimeExports.jsxs(Select.Content, { children: [
16
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Select.Item, { value: "typescript", children: "TypeScript" }),
17
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Select.Item, { value: "commonjs", children: "CommonJS" }),
18
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Select.Item, { value: "esm", children: "ESM" }),
19
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Select.Item, { value: "json", children: "JSON" })
20
+ ] })
21
+ ]
22
+ }
23
+ );
24
+ };
25
+ export {
26
+ ContentDeclarationFormatSelector
27
+ };
28
+ //# sourceMappingURL=ContentDeclarationFormatSelector.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContentDeclarationFormatSelector.mjs","sources":["../../../src/components/IDE/ContentDeclarationFormatSelector.tsx"],"sourcesContent":["'use client';\n\nimport type { FC } from 'react';\nimport { Select } from '../Select';\nimport { useCodeContext } from './CodeContext';\n\nexport const ContentDeclarationFormatSelector: FC = () => {\n const { contentDeclarationFormat, setContentDeclarationFormat } =\n useCodeContext();\n\n return (\n <Select\n value={contentDeclarationFormat}\n onValueChange={setContentDeclarationFormat}\n >\n <Select.Trigger>\n <Select.Value placeholder=\"Content Declaration Format\" />\n </Select.Trigger>\n <Select.Content>\n <Select.Item value=\"typescript\">TypeScript</Select.Item>\n <Select.Item value=\"commonjs\">CommonJS</Select.Item>\n <Select.Item value=\"esm\">ESM</Select.Item>\n <Select.Item value=\"json\">JSON</Select.Item>\n </Select.Content>\n </Select>\n );\n};\n"],"names":["jsxs","jsx"],"mappings":";;;;;AAMO,MAAM,mCAAuC,MAAM;AACxD,QAAM,EAAE,0BAA0B,4BAA4B,IAC5D,eAAe;AAGf,SAAAA,kCAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,OAAO;AAAA,MACP,eAAe;AAAA,MAEf,UAAA;AAAA,QAACC,kCAAAA,IAAA,OAAO,SAAP,EACC,UAAAA,kCAAA,IAAC,OAAO,OAAP,EAAa,aAAY,6BAAA,CAA6B,EACzD,CAAA;AAAA,QACAD,kCAAAA,KAAC,OAAO,SAAP,EACC,UAAA;AAAA,UAAAC,kCAAA,IAAC,OAAO,MAAP,EAAY,OAAM,cAAa,UAAU,cAAA;AAAA,gDACzC,OAAO,MAAP,EAAY,OAAM,YAAW,UAAQ,YAAA;AAAA,gDACrC,OAAO,MAAP,EAAY,OAAM,OAAM,UAAG,OAAA;AAAA,gDAC3B,OAAO,MAAP,EAAY,OAAM,QAAO,UAAI,OAAA,CAAA;AAAA,QAAA,EAChC,CAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EACF;AAEJ;"}
@@ -0,0 +1,40 @@
1
+ "use client";
2
+ "use strict";
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
4
+ const jsxRuntime = require("../../jsx-runtime-XHKiWCTo.cjs");
5
+ const lucideReact = require("lucide-react");
6
+ const require$$0 = require("react");
7
+ const reactIntlayer = require("react-intlayer");
8
+ const components_Button_Button = require("../Button/Button.cjs");
9
+ const components_IDE_CopyButton_content = require("./CopyButton.content.cjs");
10
+ const CopyButton = ({ content }) => {
11
+ const [copied, setCopied] = require$$0.useState(false);
12
+ const { label } = reactIntlayer.useDictionary(components_IDE_CopyButton_content.copyContentContent);
13
+ const handleCopy = async () => {
14
+ try {
15
+ await navigator.clipboard.writeText(content);
16
+ setCopied(true);
17
+ } catch (error) {
18
+ console.error("Failed to copy text: ", error);
19
+ }
20
+ };
21
+ require$$0.useEffect(() => {
22
+ const timer = setTimeout(() => {
23
+ setCopied(false);
24
+ }, 1e3);
25
+ return () => clearTimeout(timer);
26
+ }, [copied]);
27
+ return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(
28
+ components_Button_Button.Button,
29
+ {
30
+ Icon: copied ? lucideReact.CopyCheckIcon : lucideReact.CopyIcon,
31
+ onClick: handleCopy,
32
+ variant: "hoverable",
33
+ color: "text",
34
+ label,
35
+ size: "icon-sm"
36
+ }
37
+ );
38
+ };
39
+ exports.CopyButton = CopyButton;
40
+ //# sourceMappingURL=CopyButton.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CopyButton.cjs","sources":["../../../src/components/IDE/CopyButton.tsx"],"sourcesContent":["'use client';\n\nimport { CopyCheckIcon, CopyIcon } from 'lucide-react';\nimport { useEffect, useState, type FC } from 'react';\n// @ts-ignore react-intlayer not build yet\nimport { useDictionary } from 'react-intlayer';\nimport { Button } from '../Button';\nimport { copyContentContent } from './CopyButton.content';\n\ntype CopyButtonProps = {\n content: string;\n};\n\nexport const CopyButton: FC<CopyButtonProps> = ({ content }) => {\n const [copied, setCopied] = useState(false);\n const { label } = useDictionary(copyContentContent);\n\n const handleCopy = async () => {\n try {\n await navigator.clipboard.writeText(content);\n setCopied(true);\n } catch (error) {\n console.error('Failed to copy text: ', error);\n }\n };\n\n useEffect(() => {\n const timer = setTimeout(() => {\n setCopied(false);\n }, 1000);\n return () => clearTimeout(timer);\n }, [copied]);\n\n return (\n <Button\n Icon={copied ? CopyCheckIcon : CopyIcon}\n onClick={handleCopy}\n variant=\"hoverable\"\n color=\"text\"\n label={label}\n size=\"icon-sm\"\n />\n );\n};\n"],"names":["useState","useDictionary","copyContentContent","useEffect","jsx","Button","CopyCheckIcon","CopyIcon"],"mappings":";;;;;;;;;AAaO,MAAM,aAAkC,CAAC,EAAE,cAAc;AAC9D,QAAM,CAAC,QAAQ,SAAS,IAAIA,WAAAA,SAAS,KAAK;AAC1C,QAAM,EAAE,MAAA,IAAUC,cAAA,cAAcC,oDAAkB;AAElD,QAAM,aAAa,YAAY;AACzB,QAAA;AACI,YAAA,UAAU,UAAU,UAAU,OAAO;AAC3C,gBAAU,IAAI;AAAA,aACP,OAAO;AACN,cAAA,MAAM,yBAAyB,KAAK;AAAA,IAAA;AAAA,EAEhD;AAEAC,aAAAA,UAAU,MAAM;AACR,UAAA,QAAQ,WAAW,MAAM;AAC7B,gBAAU,KAAK;AAAA,OACd,GAAI;AACA,WAAA,MAAM,aAAa,KAAK;AAAA,EAAA,GAC9B,CAAC,MAAM,CAAC;AAGT,SAAAC,2BAAA,kBAAA;AAAA,IAACC,yBAAA;AAAA,IAAA;AAAA,MACC,MAAM,SAASC,YAAAA,gBAAgBC,YAAA;AAAA,MAC/B,SAAS;AAAA,MACT,SAAQ;AAAA,MACR,OAAM;AAAA,MACN;AAAA,MACA,MAAK;AAAA,IAAA;AAAA,EACP;AAEJ;;"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ const intlayer = require("intlayer");
4
+ const copyContentContent = {
5
+ key: "copy-button",
6
+ content: {
7
+ label: intlayer.t({
8
+ en: "Copy content",
9
+ fr: "Copier le contenu",
10
+ es: "Copiar contenido",
11
+ "en-GB": "Copy content",
12
+ de: "Inhalt kopieren",
13
+ ja: "コンテンツをコピー",
14
+ ko: "콘텐츠 복사",
15
+ zh: "复制内容",
16
+ it: "Copia contenuto",
17
+ pt: "Copiar conteúdo",
18
+ hi: "सामग्री कॉपी करें",
19
+ ar: "نسخ المحتوى",
20
+ ru: "Копировать содержимое"
21
+ })
22
+ }
23
+ };
24
+ exports.copyContentContent = copyContentContent;
25
+ exports.default = copyContentContent;
26
+ //# sourceMappingURL=CopyButton.content.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CopyButton.content.cjs","sources":["../../../src/components/IDE/CopyButton.content.ts"],"sourcesContent":["import { t, type DeclarationContent } from 'intlayer';\n\nexport const copyContentContent = {\n key: 'copy-button',\n content: {\n label: t({\n en: 'Copy content',\n fr: 'Copier le contenu',\n es: 'Copiar contenido',\n 'en-GB': 'Copy content',\n de: 'Inhalt kopieren',\n ja: 'コンテンツをコピー',\n ko: '콘텐츠 복사',\n zh: '复制内容',\n it: 'Copia contenuto',\n pt: 'Copiar conteúdo',\n hi: 'सामग्री कॉपी करें',\n ar: 'نسخ المحتوى',\n ru: 'Копировать содержимое',\n }),\n },\n} satisfies DeclarationContent;\n\nexport default copyContentContent;\n"],"names":["t"],"mappings":";;;AAEO,MAAM,qBAAqB;AAAA,EAChC,KAAK;AAAA,EACL,SAAS;AAAA,IACP,OAAOA,SAAAA,EAAE;AAAA,MACP,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,SAAS;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,IACL,CAAA;AAAA,EAAA;AAEL;;;"}
@@ -0,0 +1,8 @@
1
+ export declare const copyContentContent: {
2
+ key: string;
3
+ content: {
4
+ label: import('@intlayer/core').TranslationContent<string>;
5
+ };
6
+ };
7
+ export default copyContentContent;
8
+ //# sourceMappingURL=CopyButton.content.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CopyButton.content.d.ts","sourceRoot":"","sources":["../../../src/components/IDE/CopyButton.content.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,kBAAkB;;;;;CAmBD,CAAC;AAE/B,eAAe,kBAAkB,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { t } from "intlayer";
2
+ const copyContentContent = {
3
+ key: "copy-button",
4
+ content: {
5
+ label: t({
6
+ en: "Copy content",
7
+ fr: "Copier le contenu",
8
+ es: "Copiar contenido",
9
+ "en-GB": "Copy content",
10
+ de: "Inhalt kopieren",
11
+ ja: "コンテンツをコピー",
12
+ ko: "콘텐츠 복사",
13
+ zh: "复制内容",
14
+ it: "Copia contenuto",
15
+ pt: "Copiar conteúdo",
16
+ hi: "सामग्री कॉपी करें",
17
+ ar: "نسخ المحتوى",
18
+ ru: "Копировать содержимое"
19
+ })
20
+ }
21
+ };
22
+ export {
23
+ copyContentContent,
24
+ copyContentContent as default
25
+ };
26
+ //# sourceMappingURL=CopyButton.content.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CopyButton.content.mjs","sources":["../../../src/components/IDE/CopyButton.content.ts"],"sourcesContent":["import { t, type DeclarationContent } from 'intlayer';\n\nexport const copyContentContent = {\n key: 'copy-button',\n content: {\n label: t({\n en: 'Copy content',\n fr: 'Copier le contenu',\n es: 'Copiar contenido',\n 'en-GB': 'Copy content',\n de: 'Inhalt kopieren',\n ja: 'コンテンツをコピー',\n ko: '콘텐츠 복사',\n zh: '复制内容',\n it: 'Copia contenuto',\n pt: 'Copiar conteúdo',\n hi: 'सामग्री कॉपी करें',\n ar: 'نسخ المحتوى',\n ru: 'Копировать содержимое',\n }),\n },\n} satisfies DeclarationContent;\n\nexport default copyContentContent;\n"],"names":[],"mappings":";AAEO,MAAM,qBAAqB;AAAA,EAChC,KAAK;AAAA,EACL,SAAS;AAAA,IACP,OAAO,EAAE;AAAA,MACP,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,SAAS;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,IACL,CAAA;AAAA,EAAA;AAEL;"}
@@ -0,0 +1,7 @@
1
+ import { FC } from 'react';
2
+ type CopyButtonProps = {
3
+ content: string;
4
+ };
5
+ export declare const CopyButton: FC<CopyButtonProps>;
6
+ export {};
7
+ //# sourceMappingURL=CopyButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CopyButton.d.ts","sourceRoot":"","sources":["../../../src/components/IDE/CopyButton.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAuB,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAMrD,KAAK,eAAe,GAAG;IACrB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,EAAE,CAAC,eAAe,CA8B1C,CAAC"}
@@ -0,0 +1,40 @@
1
+ "use client";
2
+ import { j as jsxRuntimeExports } from "../../jsx-runtime-DaNGiM0W.js";
3
+ import { CopyCheckIcon, CopyIcon } from "lucide-react";
4
+ import { useState, useEffect } from "react";
5
+ import { useDictionary } from "react-intlayer";
6
+ import { Button } from "../Button/Button.mjs";
7
+ import { copyContentContent } from "./CopyButton.content.mjs";
8
+ const CopyButton = ({ content }) => {
9
+ const [copied, setCopied] = useState(false);
10
+ const { label } = useDictionary(copyContentContent);
11
+ const handleCopy = async () => {
12
+ try {
13
+ await navigator.clipboard.writeText(content);
14
+ setCopied(true);
15
+ } catch (error) {
16
+ console.error("Failed to copy text: ", error);
17
+ }
18
+ };
19
+ useEffect(() => {
20
+ const timer = setTimeout(() => {
21
+ setCopied(false);
22
+ }, 1e3);
23
+ return () => clearTimeout(timer);
24
+ }, [copied]);
25
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(
26
+ Button,
27
+ {
28
+ Icon: copied ? CopyCheckIcon : CopyIcon,
29
+ onClick: handleCopy,
30
+ variant: "hoverable",
31
+ color: "text",
32
+ label,
33
+ size: "icon-sm"
34
+ }
35
+ );
36
+ };
37
+ export {
38
+ CopyButton
39
+ };
40
+ //# sourceMappingURL=CopyButton.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CopyButton.mjs","sources":["../../../src/components/IDE/CopyButton.tsx"],"sourcesContent":["'use client';\n\nimport { CopyCheckIcon, CopyIcon } from 'lucide-react';\nimport { useEffect, useState, type FC } from 'react';\n// @ts-ignore react-intlayer not build yet\nimport { useDictionary } from 'react-intlayer';\nimport { Button } from '../Button';\nimport { copyContentContent } from './CopyButton.content';\n\ntype CopyButtonProps = {\n content: string;\n};\n\nexport const CopyButton: FC<CopyButtonProps> = ({ content }) => {\n const [copied, setCopied] = useState(false);\n const { label } = useDictionary(copyContentContent);\n\n const handleCopy = async () => {\n try {\n await navigator.clipboard.writeText(content);\n setCopied(true);\n } catch (error) {\n console.error('Failed to copy text: ', error);\n }\n };\n\n useEffect(() => {\n const timer = setTimeout(() => {\n setCopied(false);\n }, 1000);\n return () => clearTimeout(timer);\n }, [copied]);\n\n return (\n <Button\n Icon={copied ? CopyCheckIcon : CopyIcon}\n onClick={handleCopy}\n variant=\"hoverable\"\n color=\"text\"\n label={label}\n size=\"icon-sm\"\n />\n );\n};\n"],"names":["jsx"],"mappings":";;;;;;;AAaO,MAAM,aAAkC,CAAC,EAAE,cAAc;AAC9D,QAAM,CAAC,QAAQ,SAAS,IAAI,SAAS,KAAK;AAC1C,QAAM,EAAE,MAAA,IAAU,cAAc,kBAAkB;AAElD,QAAM,aAAa,YAAY;AACzB,QAAA;AACI,YAAA,UAAU,UAAU,UAAU,OAAO;AAC3C,gBAAU,IAAI;AAAA,aACP,OAAO;AACN,cAAA,MAAM,yBAAyB,KAAK;AAAA,IAAA;AAAA,EAEhD;AAEA,YAAU,MAAM;AACR,UAAA,QAAQ,WAAW,MAAM;AAC7B,gBAAU,KAAK;AAAA,OACd,GAAI;AACA,WAAA,MAAM,aAAa,KAAK;AAAA,EAAA,GAC9B,CAAC,MAAM,CAAC;AAGT,SAAAA,kCAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,MAAM,SAAS,gBAAgB;AAAA,MAC/B,SAAS;AAAA,MACT,SAAQ;AAAA,MACR,OAAM;AAAA,MACN;AAAA,MACA,MAAK;AAAA,IAAA;AAAA,EACP;AAEJ;"}
@@ -0,0 +1,9 @@
1
+ import { FC } from 'react';
2
+ import { BundledLanguage } from 'shiki';
3
+ export type EditableCodeBlockProps = {
4
+ children: string;
5
+ lang: BundledLanguage;
6
+ isDarkMode?: boolean;
7
+ };
8
+ export declare const EditableCodeBlock: FC<EditableCodeBlockProps>;
9
+ //# sourceMappingURL=EditableCodeBlock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EditableCodeBlock.d.ts","sourceRoot":"","sources":["../../../src/components/IDE/EditableCodeBlock.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EACL,eAAe,EAIhB,MAAM,OAAO,CAAC;AAEf,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,eAAe,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAab,EAAE,CAAC,sBAAsB,CAAC,CAAC"}
@@ -79,7 +79,7 @@ const IDE = ({
79
79
  onClickFile: handleClickFile
80
80
  }
81
81
  ) }),
82
- /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx("div", { className: "size-full flex-1 overflow-auto pt-2 text-xs md:text-sm", children: /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(components_IDE_MarkDownRender.MarkdownRenderer, { isDarkMode, children: content }) })
82
+ /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx("div", { className: "size-full flex-1 overflow-auto pt-2 text-xs", children: /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(components_IDE_MarkDownRender.MarkdownRenderer, { isDarkMode, children: content }) })
83
83
  ] }) }) })
84
84
  ]
85
85
  }
@@ -1 +1 @@
1
- {"version":3,"file":"IDE.cjs","sources":["../../../src/components/IDE/IDE.tsx"],"sourcesContent":["'use client';\n\nimport { type HTMLAttributes, useState, type FC } from 'react';\nimport { cn } from '../../utils/cn';\nimport { Container } from '../Container';\nimport { WithResizer } from '../WithResizer';\nimport { FileTree } from './FileTree';\nimport { MarkdownRenderer } from './MarkDownRender';\n\nexport type IDEProps = {\n pages: {\n path: string;\n content: string;\n isOpen?: boolean;\n }[];\n isDarkMode?: boolean;\n} & HTMLAttributes<HTMLDivElement>;\n\nexport const IDE: FC<IDEProps> = ({\n pages: initialPages,\n isDarkMode,\n className,\n ...props\n}) => {\n const [pages, setPages] = useState(initialPages);\n const tabs = pages.filter(({ isOpen }) => isOpen);\n\n const firstTabIndex = tabs.findIndex(({ isOpen }) => isOpen);\n const [activeTab, setActiveTab] = useState(firstTabIndex);\n\n const { content, path } = pages[activeTab];\n const filePaths = initialPages.map(({ path: title }) => title);\n\n const handleClickFile = (title: string) => {\n const page = pages.find(({ path: tabTitle }) => tabTitle === title);\n if (!page) return;\n\n const newPages = pages.map((page) => {\n if (page.path === title) {\n return { ...page, isOpen: true };\n }\n return page;\n });\n\n setPages(newPages);\n\n const newPageIndex = newPages.findIndex(\n ({ path: tabTitle }) => tabTitle === title\n );\n\n setActiveTab(newPageIndex);\n };\n\n return (\n <Container\n className={cn(\n 'flex size-full flex-col justify-start overflow-hidden shadow-lg',\n className\n )}\n roundedSize=\"3xl\"\n transparency=\"none\"\n {...props}\n >\n <div className=\"text-neutral dark:text-neutral-dark flex w-auto flex-row items-center justify-start gap-1 rounded-t-3xl bg-neutral-200 text-xs dark:bg-neutral-950\">\n <div className=\"mx-2 flex items-center justify-start gap-2 p-1\">\n <div className=\"size-3 rounded-full bg-red-500\" />\n <div className=\"size-3 rounded-full bg-yellow-500\" />\n <div className=\"size-3 rounded-full bg-green-500\" />\n </div>\n <div className=\"flex size-full overflow-y-auto\">\n {tabs.map(({ path }, index) => {\n const fullPath = path.split('/');\n const title = fullPath[fullPath.length - 1];\n const isActive = index === activeTab;\n\n return (\n <button\n className={cn(\n 'flex h-8 min-w-20 items-center justify-start px-3 py-1 transition',\n isActive\n ? 'bg-card dark:bg-card-dark'\n : 'dark:hover:bg-card-dark cursor-pointer bg-neutral-200 hover:bg-neutral-300 dark:bg-neutral-950'\n )}\n key={title}\n onClick={() => setActiveTab(index)}\n >\n {title}\n </button>\n );\n })}\n </div>\n </div>\n <div className=\"relative flex size-full flex-1 flex-row justify-start\">\n <div className=\"absolute left-0 top-0 size-full\">\n <div className=\"flex size-full\">\n <WithResizer initialWidth={150}>\n <FileTree\n filesPaths={filePaths}\n activeFile={path}\n onClickFile={handleClickFile}\n />\n </WithResizer>\n\n <div className=\"size-full flex-1 overflow-auto pt-2 text-xs md:text-sm\">\n <MarkdownRenderer isDarkMode={isDarkMode}>\n {content}\n </MarkdownRenderer>\n </div>\n </div>\n </div>\n </div>\n </Container>\n );\n};\n"],"names":["useState","page","jsxs","Container","cn","jsx","path","WithResizer","FileTree","MarkdownRenderer"],"mappings":"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"}
1
+ {"version":3,"file":"IDE.cjs","sources":["../../../src/components/IDE/IDE.tsx"],"sourcesContent":["'use client';\n\nimport { type HTMLAttributes, useState, type FC } from 'react';\nimport { cn } from '../../utils/cn';\nimport { Container } from '../Container';\nimport { WithResizer } from '../WithResizer';\nimport { FileTree } from './FileTree';\nimport { MarkdownRenderer } from './MarkDownRender';\n\nexport type IDEProps = {\n pages: {\n path: string;\n content: string;\n isOpen?: boolean;\n }[];\n isDarkMode?: boolean;\n} & HTMLAttributes<HTMLDivElement>;\n\nexport const IDE: FC<IDEProps> = ({\n pages: initialPages,\n isDarkMode,\n className,\n ...props\n}) => {\n const [pages, setPages] = useState(initialPages);\n const tabs = pages.filter(({ isOpen }) => isOpen);\n\n const firstTabIndex = tabs.findIndex(({ isOpen }) => isOpen);\n const [activeTab, setActiveTab] = useState(firstTabIndex);\n\n const { content, path } = pages[activeTab];\n const filePaths = initialPages.map(({ path: title }) => title);\n\n const handleClickFile = (title: string) => {\n const page = pages.find(({ path: tabTitle }) => tabTitle === title);\n if (!page) return;\n\n const newPages = pages.map((page) => {\n if (page.path === title) {\n return { ...page, isOpen: true };\n }\n return page;\n });\n\n setPages(newPages);\n\n const newPageIndex = newPages.findIndex(\n ({ path: tabTitle }) => tabTitle === title\n );\n\n setActiveTab(newPageIndex);\n };\n\n return (\n <Container\n className={cn(\n 'flex size-full flex-col justify-start overflow-hidden shadow-lg',\n className\n )}\n roundedSize=\"3xl\"\n transparency=\"none\"\n {...props}\n >\n <div className=\"text-neutral dark:text-neutral-dark flex w-auto flex-row items-center justify-start gap-1 rounded-t-3xl bg-neutral-200 text-xs dark:bg-neutral-950\">\n <div className=\"mx-2 flex items-center justify-start gap-2 p-1\">\n <div className=\"size-3 rounded-full bg-red-500\" />\n <div className=\"size-3 rounded-full bg-yellow-500\" />\n <div className=\"size-3 rounded-full bg-green-500\" />\n </div>\n <div className=\"flex size-full overflow-y-auto\">\n {tabs.map(({ path }, index) => {\n const fullPath = path.split('/');\n const title = fullPath[fullPath.length - 1];\n const isActive = index === activeTab;\n\n return (\n <button\n className={cn(\n 'flex h-8 min-w-20 items-center justify-start px-3 py-1 transition',\n isActive\n ? 'bg-card dark:bg-card-dark'\n : 'dark:hover:bg-card-dark cursor-pointer bg-neutral-200 hover:bg-neutral-300 dark:bg-neutral-950'\n )}\n key={title}\n onClick={() => setActiveTab(index)}\n >\n {title}\n </button>\n );\n })}\n </div>\n </div>\n <div className=\"relative flex size-full flex-1 flex-row justify-start\">\n <div className=\"absolute left-0 top-0 size-full\">\n <div className=\"flex size-full\">\n <WithResizer initialWidth={150}>\n <FileTree\n filesPaths={filePaths}\n activeFile={path}\n onClickFile={handleClickFile}\n />\n </WithResizer>\n\n <div className=\"size-full flex-1 overflow-auto pt-2 text-xs\">\n <MarkdownRenderer isDarkMode={isDarkMode}>\n {content}\n </MarkdownRenderer>\n </div>\n </div>\n </div>\n </div>\n </Container>\n );\n};\n"],"names":["useState","page","jsxs","Container","cn","jsx","path","WithResizer","FileTree","MarkdownRenderer"],"mappings":"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"}
@@ -77,7 +77,7 @@ const IDE = ({
77
77
  onClickFile: handleClickFile
78
78
  }
79
79
  ) }),
80
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "size-full flex-1 overflow-auto pt-2 text-xs md:text-sm", children: /* @__PURE__ */ jsxRuntimeExports.jsx(MarkdownRenderer, { isDarkMode, children: content }) })
80
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "size-full flex-1 overflow-auto pt-2 text-xs", children: /* @__PURE__ */ jsxRuntimeExports.jsx(MarkdownRenderer, { isDarkMode, children: content }) })
81
81
  ] }) }) })
82
82
  ]
83
83
  }
@@ -1 +1 @@
1
- {"version":3,"file":"IDE.mjs","sources":["../../../src/components/IDE/IDE.tsx"],"sourcesContent":["'use client';\n\nimport { type HTMLAttributes, useState, type FC } from 'react';\nimport { cn } from '../../utils/cn';\nimport { Container } from '../Container';\nimport { WithResizer } from '../WithResizer';\nimport { FileTree } from './FileTree';\nimport { MarkdownRenderer } from './MarkDownRender';\n\nexport type IDEProps = {\n pages: {\n path: string;\n content: string;\n isOpen?: boolean;\n }[];\n isDarkMode?: boolean;\n} & HTMLAttributes<HTMLDivElement>;\n\nexport const IDE: FC<IDEProps> = ({\n pages: initialPages,\n isDarkMode,\n className,\n ...props\n}) => {\n const [pages, setPages] = useState(initialPages);\n const tabs = pages.filter(({ isOpen }) => isOpen);\n\n const firstTabIndex = tabs.findIndex(({ isOpen }) => isOpen);\n const [activeTab, setActiveTab] = useState(firstTabIndex);\n\n const { content, path } = pages[activeTab];\n const filePaths = initialPages.map(({ path: title }) => title);\n\n const handleClickFile = (title: string) => {\n const page = pages.find(({ path: tabTitle }) => tabTitle === title);\n if (!page) return;\n\n const newPages = pages.map((page) => {\n if (page.path === title) {\n return { ...page, isOpen: true };\n }\n return page;\n });\n\n setPages(newPages);\n\n const newPageIndex = newPages.findIndex(\n ({ path: tabTitle }) => tabTitle === title\n );\n\n setActiveTab(newPageIndex);\n };\n\n return (\n <Container\n className={cn(\n 'flex size-full flex-col justify-start overflow-hidden shadow-lg',\n className\n )}\n roundedSize=\"3xl\"\n transparency=\"none\"\n {...props}\n >\n <div className=\"text-neutral dark:text-neutral-dark flex w-auto flex-row items-center justify-start gap-1 rounded-t-3xl bg-neutral-200 text-xs dark:bg-neutral-950\">\n <div className=\"mx-2 flex items-center justify-start gap-2 p-1\">\n <div className=\"size-3 rounded-full bg-red-500\" />\n <div className=\"size-3 rounded-full bg-yellow-500\" />\n <div className=\"size-3 rounded-full bg-green-500\" />\n </div>\n <div className=\"flex size-full overflow-y-auto\">\n {tabs.map(({ path }, index) => {\n const fullPath = path.split('/');\n const title = fullPath[fullPath.length - 1];\n const isActive = index === activeTab;\n\n return (\n <button\n className={cn(\n 'flex h-8 min-w-20 items-center justify-start px-3 py-1 transition',\n isActive\n ? 'bg-card dark:bg-card-dark'\n : 'dark:hover:bg-card-dark cursor-pointer bg-neutral-200 hover:bg-neutral-300 dark:bg-neutral-950'\n )}\n key={title}\n onClick={() => setActiveTab(index)}\n >\n {title}\n </button>\n );\n })}\n </div>\n </div>\n <div className=\"relative flex size-full flex-1 flex-row justify-start\">\n <div className=\"absolute left-0 top-0 size-full\">\n <div className=\"flex size-full\">\n <WithResizer initialWidth={150}>\n <FileTree\n filesPaths={filePaths}\n activeFile={path}\n onClickFile={handleClickFile}\n />\n </WithResizer>\n\n <div className=\"size-full flex-1 overflow-auto pt-2 text-xs md:text-sm\">\n <MarkdownRenderer isDarkMode={isDarkMode}>\n {content}\n </MarkdownRenderer>\n </div>\n </div>\n </div>\n </div>\n </Container>\n );\n};\n"],"names":["page","jsxs","jsx","path"],"mappings":";;;;;;;;AAkBO,MAAM,MAAoB,CAAC;AAAA,EAChC,OAAO;AAAA,EACP;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,CAAC,OAAO,QAAQ,IAAI,SAAS,YAAY;AAC/C,QAAM,OAAO,MAAM,OAAO,CAAC,EAAE,aAAa,MAAM;AAEhD,QAAM,gBAAgB,KAAK,UAAU,CAAC,EAAE,aAAa,MAAM;AAC3D,QAAM,CAAC,WAAW,YAAY,IAAI,SAAS,aAAa;AAExD,QAAM,EAAE,SAAS,SAAS,MAAM,SAAS;AACnC,QAAA,YAAY,aAAa,IAAI,CAAC,EAAE,MAAM,YAAY,KAAK;AAEvD,QAAA,kBAAkB,CAAC,UAAkB;AACnC,UAAA,OAAO,MAAM,KAAK,CAAC,EAAE,MAAM,SAAA,MAAe,aAAa,KAAK;AAClE,QAAI,CAAC,KAAM;AAEX,UAAM,WAAW,MAAM,IAAI,CAACA,UAAS;AAC/BA,UAAAA,MAAK,SAAS,OAAO;AACvB,eAAO,EAAE,GAAGA,OAAM,QAAQ,KAAK;AAAA,MAAA;AAE1BA,aAAAA;AAAAA,IAAA,CACR;AAED,aAAS,QAAQ;AAEjB,UAAM,eAAe,SAAS;AAAA,MAC5B,CAAC,EAAE,MAAM,eAAe,aAAa;AAAA,IACvC;AAEA,iBAAa,YAAY;AAAA,EAC3B;AAGE,SAAAC,kCAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACA,aAAY;AAAA,MACZ,cAAa;AAAA,MACZ,GAAG;AAAA,MAEJ,UAAA;AAAA,QAACA,kCAAAA,KAAA,OAAA,EAAI,WAAU,sJACb,UAAA;AAAA,UAACA,kCAAAA,KAAA,OAAA,EAAI,WAAU,kDACb,UAAA;AAAA,YAACC,kCAAAA,IAAA,OAAA,EAAI,WAAU,iCAAiC,CAAA;AAAA,YAChDA,kCAAAA,IAAC,OAAI,EAAA,WAAU,oCAAoC,CAAA;AAAA,YACnDA,kCAAAA,IAAC,OAAI,EAAA,WAAU,mCAAmC,CAAA;AAAA,UAAA,GACpD;AAAA,UACAA,kCAAAA,IAAC,OAAI,EAAA,WAAU,kCACZ,UAAA,KAAK,IAAI,CAAC,EAAE,MAAAC,MAAK,GAAG,UAAU;AACvB,kBAAA,WAAWA,MAAK,MAAM,GAAG;AAC/B,kBAAM,QAAQ,SAAS,SAAS,SAAS,CAAC;AAC1C,kBAAM,WAAW,UAAU;AAGzB,mBAAAD,kCAAA;AAAA,cAAC;AAAA,cAAA;AAAA,gBACC,WAAW;AAAA,kBACT;AAAA,kBACA,WACI,8BACA;AAAA,gBACN;AAAA,gBAEA,SAAS,MAAM,aAAa,KAAK;AAAA,gBAEhC,UAAA;AAAA,cAAA;AAAA,cAHI;AAAA,YAIP;AAAA,UAAA,CAEH,EACH,CAAA;AAAA,QAAA,GACF;AAAA,QACAA,kCAAA,IAAC,OAAI,EAAA,WAAU,yDACb,UAAAA,kCAAA,IAAC,OAAI,EAAA,WAAU,mCACb,UAAAD,uCAAC,OAAI,EAAA,WAAU,kBACb,UAAA;AAAA,UAACC,kCAAAA,IAAA,aAAA,EAAY,cAAc,KACzB,UAAAA,kCAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,YAAY;AAAA,cACZ,YAAY;AAAA,cACZ,aAAa;AAAA,YAAA;AAAA,UAAA,GAEjB;AAAA,UAEAA,kCAAAA,IAAC,SAAI,WAAU,0DACb,gDAAC,kBAAiB,EAAA,YACf,kBACH,CAAA,EACF,CAAA;AAAA,QAAA,EACF,CAAA,EACF,CAAA,EACF,CAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EACF;AAEJ;"}
1
+ {"version":3,"file":"IDE.mjs","sources":["../../../src/components/IDE/IDE.tsx"],"sourcesContent":["'use client';\n\nimport { type HTMLAttributes, useState, type FC } from 'react';\nimport { cn } from '../../utils/cn';\nimport { Container } from '../Container';\nimport { WithResizer } from '../WithResizer';\nimport { FileTree } from './FileTree';\nimport { MarkdownRenderer } from './MarkDownRender';\n\nexport type IDEProps = {\n pages: {\n path: string;\n content: string;\n isOpen?: boolean;\n }[];\n isDarkMode?: boolean;\n} & HTMLAttributes<HTMLDivElement>;\n\nexport const IDE: FC<IDEProps> = ({\n pages: initialPages,\n isDarkMode,\n className,\n ...props\n}) => {\n const [pages, setPages] = useState(initialPages);\n const tabs = pages.filter(({ isOpen }) => isOpen);\n\n const firstTabIndex = tabs.findIndex(({ isOpen }) => isOpen);\n const [activeTab, setActiveTab] = useState(firstTabIndex);\n\n const { content, path } = pages[activeTab];\n const filePaths = initialPages.map(({ path: title }) => title);\n\n const handleClickFile = (title: string) => {\n const page = pages.find(({ path: tabTitle }) => tabTitle === title);\n if (!page) return;\n\n const newPages = pages.map((page) => {\n if (page.path === title) {\n return { ...page, isOpen: true };\n }\n return page;\n });\n\n setPages(newPages);\n\n const newPageIndex = newPages.findIndex(\n ({ path: tabTitle }) => tabTitle === title\n );\n\n setActiveTab(newPageIndex);\n };\n\n return (\n <Container\n className={cn(\n 'flex size-full flex-col justify-start overflow-hidden shadow-lg',\n className\n )}\n roundedSize=\"3xl\"\n transparency=\"none\"\n {...props}\n >\n <div className=\"text-neutral dark:text-neutral-dark flex w-auto flex-row items-center justify-start gap-1 rounded-t-3xl bg-neutral-200 text-xs dark:bg-neutral-950\">\n <div className=\"mx-2 flex items-center justify-start gap-2 p-1\">\n <div className=\"size-3 rounded-full bg-red-500\" />\n <div className=\"size-3 rounded-full bg-yellow-500\" />\n <div className=\"size-3 rounded-full bg-green-500\" />\n </div>\n <div className=\"flex size-full overflow-y-auto\">\n {tabs.map(({ path }, index) => {\n const fullPath = path.split('/');\n const title = fullPath[fullPath.length - 1];\n const isActive = index === activeTab;\n\n return (\n <button\n className={cn(\n 'flex h-8 min-w-20 items-center justify-start px-3 py-1 transition',\n isActive\n ? 'bg-card dark:bg-card-dark'\n : 'dark:hover:bg-card-dark cursor-pointer bg-neutral-200 hover:bg-neutral-300 dark:bg-neutral-950'\n )}\n key={title}\n onClick={() => setActiveTab(index)}\n >\n {title}\n </button>\n );\n })}\n </div>\n </div>\n <div className=\"relative flex size-full flex-1 flex-row justify-start\">\n <div className=\"absolute left-0 top-0 size-full\">\n <div className=\"flex size-full\">\n <WithResizer initialWidth={150}>\n <FileTree\n filesPaths={filePaths}\n activeFile={path}\n onClickFile={handleClickFile}\n />\n </WithResizer>\n\n <div className=\"size-full flex-1 overflow-auto pt-2 text-xs\">\n <MarkdownRenderer isDarkMode={isDarkMode}>\n {content}\n </MarkdownRenderer>\n </div>\n </div>\n </div>\n </div>\n </Container>\n );\n};\n"],"names":["page","jsxs","jsx","path"],"mappings":";;;;;;;;AAkBO,MAAM,MAAoB,CAAC;AAAA,EAChC,OAAO;AAAA,EACP;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,CAAC,OAAO,QAAQ,IAAI,SAAS,YAAY;AAC/C,QAAM,OAAO,MAAM,OAAO,CAAC,EAAE,aAAa,MAAM;AAEhD,QAAM,gBAAgB,KAAK,UAAU,CAAC,EAAE,aAAa,MAAM;AAC3D,QAAM,CAAC,WAAW,YAAY,IAAI,SAAS,aAAa;AAExD,QAAM,EAAE,SAAS,SAAS,MAAM,SAAS;AACnC,QAAA,YAAY,aAAa,IAAI,CAAC,EAAE,MAAM,YAAY,KAAK;AAEvD,QAAA,kBAAkB,CAAC,UAAkB;AACnC,UAAA,OAAO,MAAM,KAAK,CAAC,EAAE,MAAM,SAAA,MAAe,aAAa,KAAK;AAClE,QAAI,CAAC,KAAM;AAEX,UAAM,WAAW,MAAM,IAAI,CAACA,UAAS;AAC/BA,UAAAA,MAAK,SAAS,OAAO;AACvB,eAAO,EAAE,GAAGA,OAAM,QAAQ,KAAK;AAAA,MAAA;AAE1BA,aAAAA;AAAAA,IAAA,CACR;AAED,aAAS,QAAQ;AAEjB,UAAM,eAAe,SAAS;AAAA,MAC5B,CAAC,EAAE,MAAM,eAAe,aAAa;AAAA,IACvC;AAEA,iBAAa,YAAY;AAAA,EAC3B;AAGE,SAAAC,kCAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACA,aAAY;AAAA,MACZ,cAAa;AAAA,MACZ,GAAG;AAAA,MAEJ,UAAA;AAAA,QAACA,kCAAAA,KAAA,OAAA,EAAI,WAAU,sJACb,UAAA;AAAA,UAACA,kCAAAA,KAAA,OAAA,EAAI,WAAU,kDACb,UAAA;AAAA,YAACC,kCAAAA,IAAA,OAAA,EAAI,WAAU,iCAAiC,CAAA;AAAA,YAChDA,kCAAAA,IAAC,OAAI,EAAA,WAAU,oCAAoC,CAAA;AAAA,YACnDA,kCAAAA,IAAC,OAAI,EAAA,WAAU,mCAAmC,CAAA;AAAA,UAAA,GACpD;AAAA,UACAA,kCAAAA,IAAC,OAAI,EAAA,WAAU,kCACZ,UAAA,KAAK,IAAI,CAAC,EAAE,MAAAC,MAAK,GAAG,UAAU;AACvB,kBAAA,WAAWA,MAAK,MAAM,GAAG;AAC/B,kBAAM,QAAQ,SAAS,SAAS,SAAS,CAAC;AAC1C,kBAAM,WAAW,UAAU;AAGzB,mBAAAD,kCAAA;AAAA,cAAC;AAAA,cAAA;AAAA,gBACC,WAAW;AAAA,kBACT;AAAA,kBACA,WACI,8BACA;AAAA,gBACN;AAAA,gBAEA,SAAS,MAAM,aAAa,KAAK;AAAA,gBAEhC,UAAA;AAAA,cAAA;AAAA,cAHI;AAAA,YAIP;AAAA,UAAA,CAEH,EACH,CAAA;AAAA,QAAA,GACF;AAAA,QACAA,kCAAA,IAAC,OAAI,EAAA,WAAU,yDACb,UAAAA,kCAAA,IAAC,OAAI,EAAA,WAAU,mCACb,UAAAD,uCAAC,OAAI,EAAA,WAAU,kBACb,UAAA;AAAA,UAACC,kCAAAA,IAAA,aAAA,EAAY,cAAc,KACzB,UAAAA,kCAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,YAAY;AAAA,cACZ,YAAY;AAAA,cACZ,aAAa;AAAA,YAAA;AAAA,UAAA,GAEjB;AAAA,UAEAA,kCAAAA,IAAC,SAAI,WAAU,+CACb,gDAAC,kBAAiB,EAAA,YACf,kBACH,CAAA,EACF,CAAA;AAAA,QAAA,EACF,CAAA,EACF,CAAA,EACF,CAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EACF;AAEJ;"}
@@ -1,9 +1,8 @@
1
- "use client";
2
1
  "use strict";
3
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
4
3
  const jsxRuntime = require("../../jsx-runtime-XHKiWCTo.cjs");
5
4
  const Markdown = require("markdown-to-jsx");
6
- const components_IDE_CodeRender = require("./CodeRender.cjs");
5
+ const components_IDE_Code = require("./Code.cjs");
7
6
  const MarkdownRenderer = ({
8
7
  children,
9
8
  isDarkMode
@@ -13,8 +12,16 @@ const MarkdownRenderer = ({
13
12
  options: {
14
13
  overrides: {
15
14
  code: {
16
- // eslint-disable-next-line sonarjs/no-unstable-nested-components
17
- component: (props) => /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(components_IDE_CodeRender.Code, { ...props, isDarkMode })
15
+ component: (props) => /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(
16
+ components_IDE_Code.Code,
17
+ {
18
+ ...props,
19
+ isDarkMode,
20
+ language: props.className.replace("lang-", ""),
21
+ showHeader: false,
22
+ className: "text-xs leading-5"
23
+ }
24
+ )
18
25
  },
19
26
  pre: (props) => props.children
20
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MarkDownRender.cjs","sources":["../../../src/components/IDE/MarkDownRender.tsx"],"sourcesContent":["'use client';\n\nimport Markdown from 'markdown-to-jsx';\nimport type { FC } from 'react';\nimport { Code } from './CodeRender';\n\ntype MarkdownRendererProps = {\n isDarkMode?: boolean;\n children: string;\n};\n\nexport const MarkdownRenderer: FC<MarkdownRendererProps> = ({\n children,\n isDarkMode,\n}) => (\n <Markdown\n options={{\n overrides: {\n code: {\n // eslint-disable-next-line sonarjs/no-unstable-nested-components\n component: (props) => <Code {...props} isDarkMode={isDarkMode} />,\n },\n pre: (props) => props.children,\n },\n }}\n >\n {children ?? ''}\n </Markdown>\n);\n"],"names":["jsx","Code"],"mappings":";;;;;;AAWO,MAAM,mBAA8C,CAAC;AAAA,EAC1D;AAAA,EACA;AACF,MACEA,2BAAA,kBAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,SAAS;AAAA,MACP,WAAW;AAAA,QACT,MAAM;AAAA;AAAA,UAEJ,WAAW,CAAC,2DAAWC,0BAAM,MAAA,EAAA,GAAG,OAAO,WAAwB,CAAA;AAAA,QACjE;AAAA,QACA,KAAK,CAAC,UAAU,MAAM;AAAA,MAAA;AAAA,IAE1B;AAAA,IAEC,UAAY,YAAA;AAAA,EAAA;AACf;;"}
1
+ {"version":3,"file":"MarkDownRender.cjs","sources":["../../../src/components/IDE/MarkDownRender.tsx"],"sourcesContent":["import Markdown from 'markdown-to-jsx';\nimport type { FC } from 'react';\nimport { Code } from './Code';\n\ntype MarkdownRendererProps = {\n isDarkMode?: boolean;\n children: string;\n};\n\nexport const MarkdownRenderer: FC<MarkdownRendererProps> = ({\n children,\n isDarkMode,\n}) => (\n <Markdown\n options={{\n overrides: {\n code: {\n component: (props) => (\n <Code\n {...props}\n isDarkMode={isDarkMode}\n language={props.className.replace('lang-', '')}\n showHeader={false}\n className=\"text-xs leading-5\"\n />\n ),\n },\n pre: (props) => props.children,\n },\n }}\n >\n {children ?? ''}\n </Markdown>\n);\n"],"names":["jsx","Code"],"mappings":";;;;;AASO,MAAM,mBAA8C,CAAC;AAAA,EAC1D;AAAA,EACA;AACF,MACEA,2BAAA,kBAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,SAAS;AAAA,MACP,WAAW;AAAA,QACT,MAAM;AAAA,UACJ,WAAW,CAAC,UACVA,2BAAA,kBAAA;AAAA,YAACC,oBAAA;AAAA,YAAA;AAAA,cACE,GAAG;AAAA,cACJ;AAAA,cACA,UAAU,MAAM,UAAU,QAAQ,SAAS,EAAE;AAAA,cAC7C,YAAY;AAAA,cACZ,WAAU;AAAA,YAAA;AAAA,UAAA;AAAA,QAGhB;AAAA,QACA,KAAK,CAAC,UAAU,MAAM;AAAA,MAAA;AAAA,IAE1B;AAAA,IAEC,UAAY,YAAA;AAAA,EAAA;AACf;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"MarkDownRender.d.ts","sourceRoot":"","sources":["../../../src/components/IDE/MarkDownRender.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAGhC,KAAK,qBAAqB,GAAG;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,qBAAqB,CAiBtD,CAAC"}
1
+ {"version":3,"file":"MarkDownRender.d.ts","sourceRoot":"","sources":["../../../src/components/IDE/MarkDownRender.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAGhC,KAAK,qBAAqB,GAAG;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,qBAAqB,CAwBtD,CAAC"}