@intlayer/design-system 3.5.4 → 3.5.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (224) hide show
  1. package/dist/.vite/manifest.json +112 -45
  2. package/dist/CopyButton-Cxu3goRg.cjs +59 -0
  3. package/dist/CopyButton-Cxu3goRg.cjs.map +1 -0
  4. package/dist/CopyButton-DlcDlf6U.js +60 -0
  5. package/dist/CopyButton-DlcDlf6U.js.map +1 -0
  6. package/dist/components/Auth/SignUpForm/signUpForm.content.d.ts +11 -11
  7. package/dist/components/Auth/useAuth/useSession.cjs +1 -0
  8. package/dist/components/Auth/useAuth/useSession.cjs.map +1 -1
  9. package/dist/components/Auth/useAuth/useSession.mjs +1 -0
  10. package/dist/components/Auth/useAuth/useSession.mjs.map +1 -1
  11. package/dist/components/Breadcrumb/breadcrumb.content.cjs +26 -0
  12. package/dist/components/Breadcrumb/breadcrumb.content.cjs.map +1 -0
  13. package/dist/components/Breadcrumb/breadcrumb.content.d.ts +8 -0
  14. package/dist/components/Breadcrumb/breadcrumb.content.d.ts.map +1 -0
  15. package/dist/components/Breadcrumb/breadcrumb.content.mjs +26 -0
  16. package/dist/components/Breadcrumb/breadcrumb.content.mjs.map +1 -0
  17. package/dist/components/Breadcrumb/index.cjs +103 -34
  18. package/dist/components/Breadcrumb/index.cjs.map +1 -1
  19. package/dist/components/Breadcrumb/index.d.ts +6 -2
  20. package/dist/components/Breadcrumb/index.d.ts.map +1 -1
  21. package/dist/components/Breadcrumb/index.mjs +103 -34
  22. package/dist/components/Breadcrumb/index.mjs.map +1 -1
  23. package/dist/components/Button/Button.cjs +7 -8
  24. package/dist/components/Button/Button.cjs.map +1 -1
  25. package/dist/components/Button/Button.d.ts.map +1 -1
  26. package/dist/components/Button/Button.mjs +7 -8
  27. package/dist/components/Button/Button.mjs.map +1 -1
  28. package/dist/components/Container/index.cjs +2 -2
  29. package/dist/components/Container/index.cjs.map +1 -1
  30. package/dist/components/Container/index.mjs +2 -2
  31. package/dist/components/Container/index.mjs.map +1 -1
  32. package/dist/components/DictionaryEditor/index.cjs +4 -0
  33. package/dist/components/DictionaryEditor/index.cjs.map +1 -1
  34. package/dist/components/DictionaryEditor/index.mjs +4 -0
  35. package/dist/components/DictionaryEditor/index.mjs.map +1 -1
  36. package/dist/components/DictionaryEditor/useEditedContentStore.cjs +3 -0
  37. package/dist/components/DictionaryEditor/useEditedContentStore.cjs.map +1 -1
  38. package/dist/components/DictionaryEditor/useEditedContentStore.d.ts +2 -2
  39. package/dist/components/DictionaryEditor/useEditedContentStore.d.ts.map +1 -1
  40. package/dist/components/DictionaryEditor/useEditedContentStore.mjs +3 -0
  41. package/dist/components/DictionaryEditor/useEditedContentStore.mjs.map +1 -1
  42. package/dist/components/DictionaryEditor/useEditionPanelStore.cjs.map +1 -1
  43. package/dist/components/DictionaryEditor/useEditionPanelStore.d.ts +1 -1
  44. package/dist/components/DictionaryEditor/useEditionPanelStore.d.ts.map +1 -1
  45. package/dist/components/DictionaryEditor/useEditionPanelStore.mjs.map +1 -1
  46. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.cjs +7 -5
  47. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.cjs.map +1 -1
  48. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.d.ts +1 -0
  49. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.d.ts.map +1 -1
  50. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.mjs +7 -5
  51. package/dist/components/DictionaryFieldEditor/DictionariesSelector/DictionariesSelector.mjs.map +1 -1
  52. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.cjs +6 -3
  53. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.cjs.map +1 -1
  54. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.d.ts +1 -0
  55. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.d.ts.map +1 -1
  56. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.mjs +6 -3
  57. package/dist/components/DictionaryFieldEditor/DictionaryFieldEditor.mjs.map +1 -1
  58. package/dist/components/DictionaryFieldEditor/JSONEditor.cjs +20 -18
  59. package/dist/components/DictionaryFieldEditor/JSONEditor.cjs.map +1 -1
  60. package/dist/components/DictionaryFieldEditor/JSONEditor.d.ts +1 -0
  61. package/dist/components/DictionaryFieldEditor/JSONEditor.d.ts.map +1 -1
  62. package/dist/components/DictionaryFieldEditor/JSONEditor.mjs +20 -18
  63. package/dist/components/DictionaryFieldEditor/JSONEditor.mjs.map +1 -1
  64. package/dist/components/DictionaryFieldEditor/KeyPathBreadcrumb.cjs +10 -2
  65. package/dist/components/DictionaryFieldEditor/KeyPathBreadcrumb.cjs.map +1 -1
  66. package/dist/components/DictionaryFieldEditor/KeyPathBreadcrumb.d.ts +2 -0
  67. package/dist/components/DictionaryFieldEditor/KeyPathBreadcrumb.d.ts.map +1 -1
  68. package/dist/components/DictionaryFieldEditor/KeyPathBreadcrumb.mjs +10 -2
  69. package/dist/components/DictionaryFieldEditor/KeyPathBreadcrumb.mjs.map +1 -1
  70. package/dist/components/DictionaryFieldEditor/NodeEditor.cjs +10 -14
  71. package/dist/components/DictionaryFieldEditor/NodeEditor.cjs.map +1 -1
  72. package/dist/components/DictionaryFieldEditor/NodeEditor.d.ts.map +1 -1
  73. package/dist/components/DictionaryFieldEditor/NodeEditor.mjs +10 -14
  74. package/dist/components/DictionaryFieldEditor/NodeEditor.mjs.map +1 -1
  75. package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.cjs +60 -17
  76. package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.cjs.map +1 -1
  77. package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.d.ts.map +1 -1
  78. package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.mjs +63 -20
  79. package/dist/components/DictionaryFieldEditor/SaveForm/SaveForm.mjs.map +1 -1
  80. package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.cjs +32 -0
  81. package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.cjs.map +1 -1
  82. package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.d.ts +4 -0
  83. package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.d.ts.map +1 -1
  84. package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.mjs +32 -0
  85. package/dist/components/DictionaryFieldEditor/SaveForm/saveForm.content.mjs.map +1 -1
  86. package/dist/components/DropDown/index.cjs.map +1 -1
  87. package/dist/components/DropDown/index.d.ts +18 -1
  88. package/dist/components/DropDown/index.d.ts.map +1 -1
  89. package/dist/components/DropDown/index.mjs.map +1 -1
  90. package/dist/components/Headers/index.cjs +1 -1
  91. package/dist/components/Headers/index.cjs.map +1 -1
  92. package/dist/components/Headers/index.mjs +1 -1
  93. package/dist/components/Headers/index.mjs.map +1 -1
  94. package/dist/components/IDE/CodeRender copy.cjs +141 -0
  95. package/dist/components/IDE/CodeRender copy.cjs.map +1 -0
  96. package/dist/components/IDE/CodeRender copy.d.ts +14 -0
  97. package/dist/components/IDE/CodeRender copy.d.ts.map +1 -0
  98. package/dist/components/IDE/CodeRender copy.mjs +141 -0
  99. package/dist/components/IDE/CodeRender copy.mjs.map +1 -0
  100. package/dist/components/IDE/CodeRender.cjs +39 -625
  101. package/dist/components/IDE/CodeRender.cjs.map +1 -1
  102. package/dist/components/IDE/CodeRender.d.ts +4 -5
  103. package/dist/components/IDE/CodeRender.d.ts.map +1 -1
  104. package/dist/components/IDE/CodeRender.mjs +40 -604
  105. package/dist/components/IDE/CodeRender.mjs.map +1 -1
  106. package/dist/components/IDE/CopyButton.cjs +40 -0
  107. package/dist/components/IDE/CopyButton.cjs.map +1 -0
  108. package/dist/components/IDE/CopyButton.content.cjs +26 -0
  109. package/dist/components/IDE/CopyButton.content.cjs.map +1 -0
  110. package/dist/components/IDE/CopyButton.content.d.ts +8 -0
  111. package/dist/components/IDE/CopyButton.content.d.ts.map +1 -0
  112. package/dist/components/IDE/CopyButton.content.mjs +26 -0
  113. package/dist/components/IDE/CopyButton.content.mjs.map +1 -0
  114. package/dist/components/IDE/CopyButton.d.ts +7 -0
  115. package/dist/components/IDE/CopyButton.d.ts.map +1 -0
  116. package/dist/components/IDE/CopyButton.mjs +40 -0
  117. package/dist/components/IDE/CopyButton.mjs.map +1 -0
  118. package/dist/components/IDE/IDE.cjs +1 -1
  119. package/dist/components/IDE/IDE.cjs.map +1 -1
  120. package/dist/components/IDE/IDE.mjs +1 -1
  121. package/dist/components/IDE/IDE.mjs.map +1 -1
  122. package/dist/components/IDE/MarkDownRender.cjs +10 -2
  123. package/dist/components/IDE/MarkDownRender.cjs.map +1 -1
  124. package/dist/components/IDE/MarkDownRender.d.ts.map +1 -1
  125. package/dist/components/IDE/MarkDownRender.mjs +10 -2
  126. package/dist/components/IDE/MarkDownRender.mjs.map +1 -1
  127. package/dist/components/IDE/MonacoCode.cjs +129 -0
  128. package/dist/components/IDE/MonacoCode.cjs.map +1 -0
  129. package/dist/components/IDE/MonacoCode.d.ts +14 -0
  130. package/dist/components/IDE/MonacoCode.d.ts.map +1 -0
  131. package/dist/components/IDE/MonacoCode.mjs +129 -0
  132. package/dist/components/IDE/MonacoCode.mjs.map +1 -0
  133. package/dist/components/Link/Link.cjs +50 -31
  134. package/dist/components/Link/Link.cjs.map +1 -1
  135. package/dist/components/Link/Link.d.ts +3 -0
  136. package/dist/components/Link/Link.d.ts.map +1 -1
  137. package/dist/components/Link/Link.mjs +51 -32
  138. package/dist/components/Link/Link.mjs.map +1 -1
  139. package/dist/components/Link/index.cjs +1 -0
  140. package/dist/components/Link/index.cjs.map +1 -1
  141. package/dist/components/Link/index.mjs +3 -2
  142. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.cjs +118 -34
  143. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.cjs.map +1 -1
  144. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.d.ts +2 -0
  145. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.d.ts.map +1 -1
  146. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.mjs +119 -35
  147. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.mjs.map +1 -1
  148. package/dist/components/LocaleSwitcherDropDown/localeSwitcher.content.cjs +63 -1
  149. package/dist/components/LocaleSwitcherDropDown/localeSwitcher.content.cjs.map +1 -1
  150. package/dist/components/LocaleSwitcherDropDown/localeSwitcher.content.d.ts +6 -0
  151. package/dist/components/LocaleSwitcherDropDown/localeSwitcher.content.d.ts.map +1 -1
  152. package/dist/components/LocaleSwitcherDropDown/localeSwitcher.content.mjs +63 -1
  153. package/dist/components/LocaleSwitcherDropDown/localeSwitcher.content.mjs.map +1 -1
  154. package/dist/components/MarkDownRender/index.cjs +4 -2
  155. package/dist/components/MarkDownRender/index.cjs.map +1 -1
  156. package/dist/components/MarkDownRender/index.d.ts +3 -1
  157. package/dist/components/MarkDownRender/index.d.ts.map +1 -1
  158. package/dist/components/MarkDownRender/index.mjs +4 -2
  159. package/dist/components/MarkDownRender/index.mjs.map +1 -1
  160. package/dist/components/Modal/Modal.cjs +8 -10
  161. package/dist/components/Modal/Modal.cjs.map +1 -1
  162. package/dist/components/Modal/Modal.d.ts.map +1 -1
  163. package/dist/components/Modal/Modal.mjs +8 -10
  164. package/dist/components/Modal/Modal.mjs.map +1 -1
  165. package/dist/components/Navbar/DesktopNavbar.cjs +1 -1
  166. package/dist/components/Navbar/DesktopNavbar.cjs.map +1 -1
  167. package/dist/components/Navbar/DesktopNavbar.mjs +1 -1
  168. package/dist/components/Navbar/DesktopNavbar.mjs.map +1 -1
  169. package/dist/components/index.cjs +5 -0
  170. package/dist/components/index.cjs.map +1 -1
  171. package/dist/components/index.mjs +6 -1
  172. package/dist/components/index.mjs.map +1 -1
  173. package/dist/design-system.css +235 -0
  174. package/dist/hooks/index.cjs +6 -0
  175. package/dist/hooks/index.cjs.map +1 -1
  176. package/dist/hooks/index.d.ts +1 -0
  177. package/dist/hooks/index.d.ts.map +1 -1
  178. package/dist/hooks/index.mjs +7 -1
  179. package/dist/hooks/index.mjs.map +1 -1
  180. package/dist/hooks/intlayerAPIHooks.cjs +8 -2
  181. package/dist/hooks/intlayerAPIHooks.cjs.map +1 -1
  182. package/dist/hooks/intlayerAPIHooks.d.ts +4 -0
  183. package/dist/hooks/intlayerAPIHooks.d.ts.map +1 -1
  184. package/dist/hooks/intlayerAPIHooks.mjs +8 -2
  185. package/dist/hooks/intlayerAPIHooks.mjs.map +1 -1
  186. package/dist/hooks/useAsync/index.cjs +3 -0
  187. package/dist/hooks/useAsync/index.cjs.map +1 -1
  188. package/dist/hooks/useAsync/index.d.ts +1 -0
  189. package/dist/hooks/useAsync/index.d.ts.map +1 -1
  190. package/dist/hooks/useAsync/index.mjs +4 -1
  191. package/dist/hooks/useAsync/index.mjs.map +1 -1
  192. package/dist/hooks/useAsync/useAsync.cjs +2 -9
  193. package/dist/hooks/useAsync/useAsync.cjs.map +1 -1
  194. package/dist/hooks/useAsync/useAsync.d.ts.map +1 -1
  195. package/dist/hooks/useAsync/useAsync.mjs +3 -10
  196. package/dist/hooks/useAsync/useAsync.mjs.map +1 -1
  197. package/dist/hooks/useAsync/useAsyncStateStore.cjs +123 -69
  198. package/dist/hooks/useAsync/useAsyncStateStore.cjs.map +1 -1
  199. package/dist/hooks/useAsync/useAsyncStateStore.d.ts +35 -11
  200. package/dist/hooks/useAsync/useAsyncStateStore.d.ts.map +1 -1
  201. package/dist/hooks/useAsync/useAsyncStateStore.mjs +123 -69
  202. package/dist/hooks/useAsync/useAsyncStateStore.mjs.map +1 -1
  203. package/dist/hooks/useIntlayerAPI.d.ts +3 -0
  204. package/dist/hooks/useIntlayerAPI.d.ts.map +1 -1
  205. package/dist/hooks/useIsDarkMode.cjs +15 -0
  206. package/dist/hooks/useIsDarkMode.cjs.map +1 -0
  207. package/dist/hooks/useIsDarkMode.d.ts +2 -0
  208. package/dist/hooks/useIsDarkMode.d.ts.map +1 -0
  209. package/dist/hooks/useIsDarkMode.mjs +15 -0
  210. package/dist/hooks/useIsDarkMode.mjs.map +1 -0
  211. package/dist/libs/intlayer-api/ai.cjs +24 -0
  212. package/dist/libs/intlayer-api/ai.cjs.map +1 -0
  213. package/dist/libs/intlayer-api/ai.d.ts +10 -0
  214. package/dist/libs/intlayer-api/ai.d.ts.map +1 -0
  215. package/dist/libs/intlayer-api/ai.mjs +24 -0
  216. package/dist/libs/intlayer-api/ai.mjs.map +1 -0
  217. package/dist/libs/intlayer-api/index.cjs +3 -1
  218. package/dist/libs/intlayer-api/index.cjs.map +1 -1
  219. package/dist/libs/intlayer-api/index.d.ts +6 -0
  220. package/dist/libs/intlayer-api/index.d.ts.map +1 -1
  221. package/dist/libs/intlayer-api/index.mjs +3 -1
  222. package/dist/libs/intlayer-api/index.mjs.map +1 -1
  223. package/dist/tailwind.css +1 -1
  224. package/package.json +19 -16
@@ -0,0 +1,141 @@
1
+ "use client";
2
+ "use strict";
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
4
+ const jsxRuntime = require("../../jsx-runtime-XHKiWCTo.cjs");
5
+ const react = require("@monaco-editor/react");
6
+ const lucideReact = require("lucide-react");
7
+ const require$$0 = require("react");
8
+ const CopyToClipboard = require("react-copy-to-clipboard");
9
+ const utils_cn = require("../../utils/cn.cjs");
10
+ const components_Button_Button = require("../Button/Button.cjs");
11
+ const components_Loader_index = require("../Loader/index.cjs");
12
+ const MonacoCode = ({
13
+ children,
14
+ language,
15
+ isDarkMode,
16
+ showLineNumbers,
17
+ showCopyButton = true,
18
+ isReadOnly = false,
19
+ onChange
20
+ }) => {
21
+ const [copied, setCopied] = require$$0.useState(false);
22
+ const containerRef = require$$0.useRef(null);
23
+ const ideRef = require$$0.useRef(null);
24
+ const [editorSize, setEditorSize] = require$$0.useState({ height: 0, width: 0 });
25
+ require$$0.useEffect(() => {
26
+ const timer = setTimeout(() => {
27
+ setCopied(false);
28
+ }, 1e3);
29
+ return () => clearTimeout(timer);
30
+ }, [copied]);
31
+ const handleMountIde = require$$0.useCallback(
32
+ (editor, monaco) => {
33
+ ideRef.current = editor;
34
+ const contentHeight = (editor.getContentHeight() ?? 0) + 25;
35
+ monaco.editor.defineTheme("transparent-theme", {
36
+ base: isDarkMode ? "vs-dark" : "vs",
37
+ inherit: true,
38
+ rules: [],
39
+ colors: {
40
+ "editor.background": "#00000000"
41
+ }
42
+ });
43
+ monaco.languages.typescript.typescriptDefaults.setDiagnosticsOptions({
44
+ noSemanticValidation: true,
45
+ // Disables type checking
46
+ noSyntaxValidation: true
47
+ // Disables syntax errors
48
+ });
49
+ monaco.languages.typescript.javascriptDefaults.setDiagnosticsOptions({
50
+ noSemanticValidation: true,
51
+ noSyntaxValidation: true
52
+ });
53
+ monaco.languages.typescript.typescriptDefaults.setCompilerOptions({
54
+ noLib: true,
55
+ allowNonTsExtensions: true
56
+ });
57
+ monaco.languages.typescript.javascriptDefaults.setCompilerOptions({
58
+ noLib: true,
59
+ allowNonTsExtensions: true
60
+ });
61
+ setEditorSize({
62
+ height: contentHeight,
63
+ width: containerRef.current?.clientWidth ?? 0
64
+ });
65
+ },
66
+ [isDarkMode]
67
+ );
68
+ const isShowLineNumbers = showLineNumbers ?? children.split("\n").length > 1;
69
+ return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsxs(
70
+ "div",
71
+ {
72
+ className: utils_cn.cn(
73
+ "relative h-full w-full text-sm",
74
+ showLineNumbers && "ml-0"
75
+ ),
76
+ children: [
77
+ showCopyButton && /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(CopyToClipboard, { text: children, onCopy: () => setCopied(true), children: /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(
78
+ components_Button_Button.Button,
79
+ {
80
+ className: utils_cn.cn(
81
+ "absolute right-3 top-3 z-50",
82
+ copied && "!text-success/70 !dark:text-success-dark/70"
83
+ ),
84
+ label: "Cpoy code",
85
+ variant: "hoverable",
86
+ color: "text",
87
+ size: "icon-sm",
88
+ Icon: copied ? lucideReact.CopyCheckIcon : lucideReact.CopyIcon
89
+ }
90
+ ) }),
91
+ /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(
92
+ "div",
93
+ {
94
+ className: "grid size-full grid-cols-[0px] overflow-auto",
95
+ ref: containerRef,
96
+ children: /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(
97
+ react.Editor,
98
+ {
99
+ ...editorSize,
100
+ defaultLanguage: "typescript",
101
+ language,
102
+ loading: /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(components_Loader_index.Loader, {}),
103
+ defaultValue: String(children).replace(/\n$/, ""),
104
+ onMount: handleMountIde,
105
+ onChange,
106
+ options: {
107
+ readOnly: isReadOnly,
108
+ cursorStyle: "line",
109
+ minimap: { enabled: false },
110
+ scrollbar: {
111
+ vertical: "hidden",
112
+ verticalScrollbarSize: 0,
113
+ alwaysConsumeMouseWheel: false
114
+ },
115
+ folding: false,
116
+ // Disable code folding
117
+ renderValidationDecorations: "off",
118
+ // Disable error/warning decorations
119
+ quickSuggestions: false,
120
+ // Disable IntelliSense
121
+ parameterHints: { enabled: false },
122
+ // Disable parameter hints
123
+ suggestOnTriggerCharacters: false,
124
+ // Disable suggestions on typing
125
+ mouseWheelScrollSensitivity: 0,
126
+ fastScrollSensitivity: 0,
127
+ scrollBeyondLastLine: false,
128
+ lineNumbers: isShowLineNumbers ? "on" : "off"
129
+ },
130
+ theme: "transparent-theme",
131
+ className: "my-2 rounded-md"
132
+ }
133
+ )
134
+ }
135
+ )
136
+ ]
137
+ }
138
+ );
139
+ };
140
+ exports.MonacoCode = MonacoCode;
141
+ //# sourceMappingURL=CodeRender copy.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CodeRender copy.cjs","sources":["../../../src/components/IDE/CodeRender copy.tsx"],"sourcesContent":["'use client';\n\nimport { Editor, OnChange, OnMount } from '@monaco-editor/react';\nimport { CopyCheckIcon, CopyIcon } from 'lucide-react';\nimport { type FC, useEffect, useState, useRef, useCallback } from 'react';\nimport CopyToClipboard from 'react-copy-to-clipboard';\nimport { cn } from '../../utils/cn';\nimport { Button } from '../Button';\nimport { Loader } from '../Loader';\n\ntype CodeCompProps = {\n children: string;\n language: string;\n isDarkMode?: boolean;\n showLineNumbers?: boolean;\n showCopyButton?: boolean;\n isReadOnly?: boolean;\n onChange?: OnChange;\n};\n\nexport const MonacoCode: FC<CodeCompProps> = ({\n children,\n language,\n isDarkMode,\n showLineNumbers,\n showCopyButton = true,\n isReadOnly = false,\n onChange,\n}) => {\n const [copied, setCopied] = useState(false);\n const containerRef = useRef<HTMLDivElement>(null);\n const ideRef = useRef(null);\n const [editorSize, setEditorSize] = useState<{\n height: number;\n width: number;\n }>({ height: 0, width: 0 });\n\n useEffect(() => {\n const timer = setTimeout(() => {\n setCopied(false);\n }, 1000);\n return () => clearTimeout(timer);\n }, [copied]);\n\n const handleMountIde: OnMount = useCallback(\n (editor, monaco) => {\n // first time you set the height based on content Height\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ideRef.current = editor as any;\n const contentHeight = (editor.getContentHeight() ?? 0) + 25;\n\n monaco.editor.defineTheme('transparent-theme', {\n base: isDarkMode ? 'vs-dark' : 'vs',\n inherit: true,\n rules: [],\n colors: {\n 'editor.background': '#00000000',\n },\n });\n\n // Disable TypeScript diagnostics\n monaco.languages.typescript.typescriptDefaults.setDiagnosticsOptions({\n noSemanticValidation: true, // Disables type checking\n noSyntaxValidation: true, // Disables syntax errors\n });\n\n // Disable JavaScript diagnostics\n monaco.languages.typescript.javascriptDefaults.setDiagnosticsOptions({\n noSemanticValidation: true,\n noSyntaxValidation: true,\n });\n\n // Disable unnecessary language features (e.g., suggestions, quick fixes)\n monaco.languages.typescript.typescriptDefaults.setCompilerOptions({\n noLib: true,\n allowNonTsExtensions: true,\n });\n\n monaco.languages.typescript.javascriptDefaults.setCompilerOptions({\n noLib: true,\n allowNonTsExtensions: true,\n });\n\n setEditorSize({\n height: contentHeight,\n width: containerRef.current?.clientWidth ?? 0,\n });\n },\n [isDarkMode]\n );\n\n const isShowLineNumbers = showLineNumbers ?? children.split('\\n').length > 1;\n\n return (\n <div\n className={cn(\n 'relative h-full w-full text-sm',\n showLineNumbers && 'ml-0'\n )}\n >\n {showCopyButton && (\n <CopyToClipboard text={children} onCopy={() => setCopied(true)}>\n <Button\n className={cn(\n 'absolute right-3 top-3 z-50',\n copied && '!text-success/70 !dark:text-success-dark/70'\n )}\n label=\"Cpoy code\"\n variant=\"hoverable\"\n color=\"text\"\n size=\"icon-sm\"\n Icon={copied ? CopyCheckIcon : CopyIcon}\n />\n </CopyToClipboard>\n )}\n <div\n className=\"grid size-full grid-cols-[0px] overflow-auto\"\n ref={containerRef}\n >\n <Editor\n {...editorSize}\n defaultLanguage=\"typescript\"\n language={language}\n loading={<Loader />}\n defaultValue={String(children).replace(/\\n$/, '')}\n onMount={handleMountIde}\n onChange={onChange}\n options={{\n readOnly: isReadOnly,\n cursorStyle: 'line',\n minimap: { enabled: false },\n scrollbar: {\n vertical: 'hidden',\n verticalScrollbarSize: 0,\n alwaysConsumeMouseWheel: false,\n },\n folding: false, // Disable code folding\n renderValidationDecorations: 'off', // Disable error/warning decorations\n quickSuggestions: false, // Disable IntelliSense\n parameterHints: { enabled: false }, // Disable parameter hints\n suggestOnTriggerCharacters: false, // Disable suggestions on typing\n\n mouseWheelScrollSensitivity: 0,\n fastScrollSensitivity: 0,\n scrollBeyondLastLine: false,\n lineNumbers: isShowLineNumbers ? 'on' : 'off',\n }}\n theme=\"transparent-theme\"\n className=\"my-2 rounded-md\"\n />\n </div>\n </div>\n );\n};\n"],"names":["useState","useRef","useEffect","useCallback","jsxs","cn","jsx","Button","CopyCheckIcon","CopyIcon","Editor","Loader"],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { OnChange } from '@monaco-editor/react';
2
+ import { FC } from 'react';
3
+ type CodeCompProps = {
4
+ children: string;
5
+ language: string;
6
+ isDarkMode?: boolean;
7
+ showLineNumbers?: boolean;
8
+ showCopyButton?: boolean;
9
+ isReadOnly?: boolean;
10
+ onChange?: OnChange;
11
+ };
12
+ export declare const MonacoCode: FC<CodeCompProps>;
13
+ export {};
14
+ //# sourceMappingURL=CodeRender%20copy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CodeRender copy.d.ts","sourceRoot":"","sources":["../../../src/components/IDE/CodeRender copy.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAU,QAAQ,EAAW,MAAM,sBAAsB,CAAC;AAEjE,OAAO,EAAE,KAAK,EAAE,EAA4C,MAAM,OAAO,CAAC;AAM1E,KAAK,aAAa,GAAG;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,EAAE,CAAC,aAAa,CAqIxC,CAAC"}
@@ -0,0 +1,141 @@
1
+ "use client";
2
+ import { j as jsxRuntimeExports } from "../../jsx-runtime-DaNGiM0W.js";
3
+ import { Editor } from "@monaco-editor/react";
4
+ import { CopyCheckIcon, CopyIcon } from "lucide-react";
5
+ import { useState, useRef, useEffect, useCallback } from "react";
6
+ import CopyToClipboard from "react-copy-to-clipboard";
7
+ import { cn } from "../../utils/cn.mjs";
8
+ import { Button } from "../Button/Button.mjs";
9
+ import { Loader } from "../Loader/index.mjs";
10
+ const MonacoCode = ({
11
+ children,
12
+ language,
13
+ isDarkMode,
14
+ showLineNumbers,
15
+ showCopyButton = true,
16
+ isReadOnly = false,
17
+ onChange
18
+ }) => {
19
+ const [copied, setCopied] = useState(false);
20
+ const containerRef = useRef(null);
21
+ const ideRef = useRef(null);
22
+ const [editorSize, setEditorSize] = useState({ height: 0, width: 0 });
23
+ useEffect(() => {
24
+ const timer = setTimeout(() => {
25
+ setCopied(false);
26
+ }, 1e3);
27
+ return () => clearTimeout(timer);
28
+ }, [copied]);
29
+ const handleMountIde = useCallback(
30
+ (editor, monaco) => {
31
+ ideRef.current = editor;
32
+ const contentHeight = (editor.getContentHeight() ?? 0) + 25;
33
+ monaco.editor.defineTheme("transparent-theme", {
34
+ base: isDarkMode ? "vs-dark" : "vs",
35
+ inherit: true,
36
+ rules: [],
37
+ colors: {
38
+ "editor.background": "#00000000"
39
+ }
40
+ });
41
+ monaco.languages.typescript.typescriptDefaults.setDiagnosticsOptions({
42
+ noSemanticValidation: true,
43
+ // Disables type checking
44
+ noSyntaxValidation: true
45
+ // Disables syntax errors
46
+ });
47
+ monaco.languages.typescript.javascriptDefaults.setDiagnosticsOptions({
48
+ noSemanticValidation: true,
49
+ noSyntaxValidation: true
50
+ });
51
+ monaco.languages.typescript.typescriptDefaults.setCompilerOptions({
52
+ noLib: true,
53
+ allowNonTsExtensions: true
54
+ });
55
+ monaco.languages.typescript.javascriptDefaults.setCompilerOptions({
56
+ noLib: true,
57
+ allowNonTsExtensions: true
58
+ });
59
+ setEditorSize({
60
+ height: contentHeight,
61
+ width: containerRef.current?.clientWidth ?? 0
62
+ });
63
+ },
64
+ [isDarkMode]
65
+ );
66
+ const isShowLineNumbers = showLineNumbers ?? children.split("\n").length > 1;
67
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs(
68
+ "div",
69
+ {
70
+ className: cn(
71
+ "relative h-full w-full text-sm",
72
+ showLineNumbers && "ml-0"
73
+ ),
74
+ children: [
75
+ showCopyButton && /* @__PURE__ */ jsxRuntimeExports.jsx(CopyToClipboard, { text: children, onCopy: () => setCopied(true), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
76
+ Button,
77
+ {
78
+ className: cn(
79
+ "absolute right-3 top-3 z-50",
80
+ copied && "!text-success/70 !dark:text-success-dark/70"
81
+ ),
82
+ label: "Cpoy code",
83
+ variant: "hoverable",
84
+ color: "text",
85
+ size: "icon-sm",
86
+ Icon: copied ? CopyCheckIcon : CopyIcon
87
+ }
88
+ ) }),
89
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
90
+ "div",
91
+ {
92
+ className: "grid size-full grid-cols-[0px] overflow-auto",
93
+ ref: containerRef,
94
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(
95
+ Editor,
96
+ {
97
+ ...editorSize,
98
+ defaultLanguage: "typescript",
99
+ language,
100
+ loading: /* @__PURE__ */ jsxRuntimeExports.jsx(Loader, {}),
101
+ defaultValue: String(children).replace(/\n$/, ""),
102
+ onMount: handleMountIde,
103
+ onChange,
104
+ options: {
105
+ readOnly: isReadOnly,
106
+ cursorStyle: "line",
107
+ minimap: { enabled: false },
108
+ scrollbar: {
109
+ vertical: "hidden",
110
+ verticalScrollbarSize: 0,
111
+ alwaysConsumeMouseWheel: false
112
+ },
113
+ folding: false,
114
+ // Disable code folding
115
+ renderValidationDecorations: "off",
116
+ // Disable error/warning decorations
117
+ quickSuggestions: false,
118
+ // Disable IntelliSense
119
+ parameterHints: { enabled: false },
120
+ // Disable parameter hints
121
+ suggestOnTriggerCharacters: false,
122
+ // Disable suggestions on typing
123
+ mouseWheelScrollSensitivity: 0,
124
+ fastScrollSensitivity: 0,
125
+ scrollBeyondLastLine: false,
126
+ lineNumbers: isShowLineNumbers ? "on" : "off"
127
+ },
128
+ theme: "transparent-theme",
129
+ className: "my-2 rounded-md"
130
+ }
131
+ )
132
+ }
133
+ )
134
+ ]
135
+ }
136
+ );
137
+ };
138
+ export {
139
+ MonacoCode
140
+ };
141
+ //# sourceMappingURL=CodeRender copy.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CodeRender copy.mjs","sources":["../../../src/components/IDE/CodeRender copy.tsx"],"sourcesContent":["'use client';\n\nimport { Editor, OnChange, OnMount } from '@monaco-editor/react';\nimport { CopyCheckIcon, CopyIcon } from 'lucide-react';\nimport { type FC, useEffect, useState, useRef, useCallback } from 'react';\nimport CopyToClipboard from 'react-copy-to-clipboard';\nimport { cn } from '../../utils/cn';\nimport { Button } from '../Button';\nimport { Loader } from '../Loader';\n\ntype CodeCompProps = {\n children: string;\n language: string;\n isDarkMode?: boolean;\n showLineNumbers?: boolean;\n showCopyButton?: boolean;\n isReadOnly?: boolean;\n onChange?: OnChange;\n};\n\nexport const MonacoCode: FC<CodeCompProps> = ({\n children,\n language,\n isDarkMode,\n showLineNumbers,\n showCopyButton = true,\n isReadOnly = false,\n onChange,\n}) => {\n const [copied, setCopied] = useState(false);\n const containerRef = useRef<HTMLDivElement>(null);\n const ideRef = useRef(null);\n const [editorSize, setEditorSize] = useState<{\n height: number;\n width: number;\n }>({ height: 0, width: 0 });\n\n useEffect(() => {\n const timer = setTimeout(() => {\n setCopied(false);\n }, 1000);\n return () => clearTimeout(timer);\n }, [copied]);\n\n const handleMountIde: OnMount = useCallback(\n (editor, monaco) => {\n // first time you set the height based on content Height\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ideRef.current = editor as any;\n const contentHeight = (editor.getContentHeight() ?? 0) + 25;\n\n monaco.editor.defineTheme('transparent-theme', {\n base: isDarkMode ? 'vs-dark' : 'vs',\n inherit: true,\n rules: [],\n colors: {\n 'editor.background': '#00000000',\n },\n });\n\n // Disable TypeScript diagnostics\n monaco.languages.typescript.typescriptDefaults.setDiagnosticsOptions({\n noSemanticValidation: true, // Disables type checking\n noSyntaxValidation: true, // Disables syntax errors\n });\n\n // Disable JavaScript diagnostics\n monaco.languages.typescript.javascriptDefaults.setDiagnosticsOptions({\n noSemanticValidation: true,\n noSyntaxValidation: true,\n });\n\n // Disable unnecessary language features (e.g., suggestions, quick fixes)\n monaco.languages.typescript.typescriptDefaults.setCompilerOptions({\n noLib: true,\n allowNonTsExtensions: true,\n });\n\n monaco.languages.typescript.javascriptDefaults.setCompilerOptions({\n noLib: true,\n allowNonTsExtensions: true,\n });\n\n setEditorSize({\n height: contentHeight,\n width: containerRef.current?.clientWidth ?? 0,\n });\n },\n [isDarkMode]\n );\n\n const isShowLineNumbers = showLineNumbers ?? children.split('\\n').length > 1;\n\n return (\n <div\n className={cn(\n 'relative h-full w-full text-sm',\n showLineNumbers && 'ml-0'\n )}\n >\n {showCopyButton && (\n <CopyToClipboard text={children} onCopy={() => setCopied(true)}>\n <Button\n className={cn(\n 'absolute right-3 top-3 z-50',\n copied && '!text-success/70 !dark:text-success-dark/70'\n )}\n label=\"Cpoy code\"\n variant=\"hoverable\"\n color=\"text\"\n size=\"icon-sm\"\n Icon={copied ? CopyCheckIcon : CopyIcon}\n />\n </CopyToClipboard>\n )}\n <div\n className=\"grid size-full grid-cols-[0px] overflow-auto\"\n ref={containerRef}\n >\n <Editor\n {...editorSize}\n defaultLanguage=\"typescript\"\n language={language}\n loading={<Loader />}\n defaultValue={String(children).replace(/\\n$/, '')}\n onMount={handleMountIde}\n onChange={onChange}\n options={{\n readOnly: isReadOnly,\n cursorStyle: 'line',\n minimap: { enabled: false },\n scrollbar: {\n vertical: 'hidden',\n verticalScrollbarSize: 0,\n alwaysConsumeMouseWheel: false,\n },\n folding: false, // Disable code folding\n renderValidationDecorations: 'off', // Disable error/warning decorations\n quickSuggestions: false, // Disable IntelliSense\n parameterHints: { enabled: false }, // Disable parameter hints\n suggestOnTriggerCharacters: false, // Disable suggestions on typing\n\n mouseWheelScrollSensitivity: 0,\n fastScrollSensitivity: 0,\n scrollBeyondLastLine: false,\n lineNumbers: isShowLineNumbers ? 'on' : 'off',\n }}\n theme=\"transparent-theme\"\n className=\"my-2 rounded-md\"\n />\n </div>\n </div>\n );\n};\n"],"names":["jsxs","jsx"],"mappings":"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"}