@walkeros/explorer 3.0.0 → 3.0.2

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 (361) hide show
  1. package/dist/__mocks__/@monaco-editor/react.d.ts +3 -0
  2. package/dist/__mocks__/@monaco-editor/react.d.ts.map +1 -0
  3. package/dist/__mocks__/@monaco-editor/react.js +4 -0
  4. package/dist/__mocks__/@monaco-editor/react.js.map +1 -0
  5. package/dist/components/atoms/box.d.ts +27 -0
  6. package/dist/components/atoms/box.d.ts.map +1 -0
  7. package/dist/components/atoms/box.js +86 -0
  8. package/dist/components/atoms/box.js.map +1 -0
  9. package/dist/components/atoms/box.stories.d.ts +34 -0
  10. package/dist/components/atoms/box.stories.d.ts.map +1 -0
  11. package/dist/components/atoms/box.stories.js +104 -0
  12. package/dist/components/atoms/box.stories.js.map +1 -0
  13. package/dist/components/atoms/button-group.d.ts +17 -0
  14. package/dist/components/atoms/button-group.d.ts.map +1 -0
  15. package/dist/components/atoms/button-group.js +12 -0
  16. package/dist/components/atoms/button-group.js.map +1 -0
  17. package/dist/components/atoms/button-group.stories.d.ts +18 -0
  18. package/dist/components/atoms/button-group.stories.d.ts.map +1 -0
  19. package/dist/components/atoms/button-group.stories.js +39 -0
  20. package/dist/components/atoms/button-group.stories.js.map +1 -0
  21. package/dist/components/atoms/button-link.d.ts +12 -0
  22. package/dist/components/atoms/button-link.d.ts.map +1 -0
  23. package/dist/components/atoms/button-link.js +10 -0
  24. package/dist/components/atoms/button-link.js.map +1 -0
  25. package/dist/components/atoms/button-link.stories.d.ts +11 -0
  26. package/dist/components/atoms/button-link.stories.d.ts.map +1 -0
  27. package/dist/components/atoms/button-link.stories.js +50 -0
  28. package/dist/components/atoms/button-link.stories.js.map +1 -0
  29. package/dist/components/atoms/button.d.ts +15 -0
  30. package/dist/components/atoms/button.d.ts.map +1 -0
  31. package/dist/components/atoms/button.js +11 -0
  32. package/dist/components/atoms/button.js.map +1 -0
  33. package/dist/components/atoms/button.stories.d.ts +14 -0
  34. package/dist/components/atoms/button.stories.d.ts.map +1 -0
  35. package/dist/components/atoms/button.stories.js +25 -0
  36. package/dist/components/atoms/button.stories.js.map +1 -0
  37. package/dist/components/atoms/code.d.ts +92 -0
  38. package/dist/components/atoms/code.d.ts.map +1 -0
  39. package/dist/components/atoms/code.js +405 -0
  40. package/dist/components/atoms/code.js.map +1 -0
  41. package/dist/components/atoms/code.stories.d.ts +46 -0
  42. package/dist/components/atoms/code.stories.d.ts.map +1 -0
  43. package/dist/components/atoms/code.stories.js +156 -0
  44. package/dist/components/atoms/code.stories.js.map +1 -0
  45. package/dist/components/atoms/footer.d.ts +21 -0
  46. package/dist/components/atoms/footer.d.ts.map +1 -0
  47. package/dist/components/atoms/footer.js +19 -0
  48. package/dist/components/atoms/footer.js.map +1 -0
  49. package/dist/components/atoms/footer.stories.d.ts +14 -0
  50. package/dist/components/atoms/footer.stories.d.ts.map +1 -0
  51. package/dist/components/atoms/footer.stories.js +29 -0
  52. package/dist/components/atoms/footer.stories.js.map +1 -0
  53. package/dist/components/atoms/grid.d.ts +65 -0
  54. package/dist/components/atoms/grid.d.ts.map +1 -0
  55. package/dist/components/atoms/grid.js +169 -0
  56. package/dist/components/atoms/grid.js.map +1 -0
  57. package/dist/components/atoms/grid.stories.d.ts +18 -0
  58. package/dist/components/atoms/grid.stories.d.ts.map +1 -0
  59. package/dist/components/atoms/grid.stories.js +60 -0
  60. package/dist/components/atoms/grid.stories.js.map +1 -0
  61. package/dist/components/atoms/header.d.ts +7 -0
  62. package/dist/components/atoms/header.d.ts.map +1 -0
  63. package/dist/components/atoms/header.js +5 -0
  64. package/dist/components/atoms/header.js.map +1 -0
  65. package/dist/components/atoms/header.stories.d.ts +15 -0
  66. package/dist/components/atoms/header.stories.d.ts.map +1 -0
  67. package/dist/components/atoms/header.stories.js +37 -0
  68. package/dist/components/atoms/header.stories.js.map +1 -0
  69. package/dist/components/atoms/icons/icon.stories.d.ts +18 -0
  70. package/dist/components/atoms/icons/icon.stories.d.ts.map +1 -0
  71. package/dist/components/atoms/icons/icon.stories.js +37 -0
  72. package/dist/components/atoms/icons/icon.stories.js.map +1 -0
  73. package/dist/components/atoms/icons/icons.d.ts +2 -0
  74. package/dist/components/atoms/icons/icons.d.ts.map +1 -0
  75. package/dist/components/atoms/icons/icons.js +7 -0
  76. package/dist/components/atoms/icons/icons.js.map +1 -0
  77. package/dist/components/atoms/icons/index.d.ts +3 -0
  78. package/dist/components/atoms/icons/index.d.ts.map +1 -0
  79. package/dist/components/atoms/icons/index.js +3 -0
  80. package/dist/components/atoms/icons/index.js.map +1 -0
  81. package/dist/components/atoms/mdx-code.d.ts +33 -0
  82. package/dist/components/atoms/mdx-code.d.ts.map +1 -0
  83. package/dist/components/atoms/mdx-code.js +69 -0
  84. package/dist/components/atoms/mdx-code.js.map +1 -0
  85. package/dist/components/atoms/preview-footer.d.ts +32 -0
  86. package/dist/components/atoms/preview-footer.d.ts.map +1 -0
  87. package/dist/components/atoms/preview-footer.js +31 -0
  88. package/dist/components/atoms/preview-footer.js.map +1 -0
  89. package/dist/components/atoms/spinner.d.ts +17 -0
  90. package/dist/components/atoms/spinner.d.ts.map +1 -0
  91. package/dist/components/atoms/spinner.js +14 -0
  92. package/dist/components/atoms/spinner.js.map +1 -0
  93. package/dist/components/atoms/spinner.stories.d.ts +7 -0
  94. package/dist/components/atoms/spinner.stories.d.ts.map +1 -0
  95. package/dist/components/atoms/spinner.stories.js +9 -0
  96. package/dist/components/atoms/spinner.stories.js.map +1 -0
  97. package/dist/components/atoms/toggle.d.ts +9 -0
  98. package/dist/components/atoms/toggle.d.ts.map +1 -0
  99. package/dist/components/atoms/toggle.js +6 -0
  100. package/dist/components/atoms/toggle.js.map +1 -0
  101. package/dist/components/demos/DestinationDemo.d.ts +48 -0
  102. package/dist/components/demos/DestinationDemo.d.ts.map +1 -0
  103. package/dist/components/demos/DestinationDemo.js +105 -0
  104. package/dist/components/demos/DestinationDemo.js.map +1 -0
  105. package/dist/components/demos/DestinationDemo.stories.d.ts +17 -0
  106. package/dist/components/demos/DestinationDemo.stories.d.ts.map +1 -0
  107. package/dist/components/demos/DestinationDemo.stories.js +53 -0
  108. package/dist/components/demos/DestinationDemo.stories.js.map +1 -0
  109. package/dist/components/demos/DestinationInitDemo.d.ts +34 -0
  110. package/dist/components/demos/DestinationInitDemo.d.ts.map +1 -0
  111. package/dist/components/demos/DestinationInitDemo.js +73 -0
  112. package/dist/components/demos/DestinationInitDemo.js.map +1 -0
  113. package/dist/components/demos/DestinationInitDemo.stories.d.ts +17 -0
  114. package/dist/components/demos/DestinationInitDemo.stories.d.ts.map +1 -0
  115. package/dist/components/demos/DestinationInitDemo.stories.js +39 -0
  116. package/dist/components/demos/DestinationInitDemo.stories.js.map +1 -0
  117. package/dist/components/demos/PromotionPlayground.d.ts +30 -0
  118. package/dist/components/demos/PromotionPlayground.d.ts.map +1 -0
  119. package/dist/components/demos/PromotionPlayground.js +366 -0
  120. package/dist/components/demos/PromotionPlayground.js.map +1 -0
  121. package/dist/components/demos/PromotionPlayground.stories.d.ts +27 -0
  122. package/dist/components/demos/PromotionPlayground.stories.d.ts.map +1 -0
  123. package/dist/components/demos/PromotionPlayground.stories.js +32 -0
  124. package/dist/components/demos/PromotionPlayground.stories.js.map +1 -0
  125. package/dist/components/molecules/architecture-flow/ArchitectureFlow.d.ts +24 -0
  126. package/dist/components/molecules/architecture-flow/ArchitectureFlow.d.ts.map +1 -0
  127. package/dist/components/molecules/architecture-flow/ArchitectureFlow.js +10 -0
  128. package/dist/components/molecules/architecture-flow/ArchitectureFlow.js.map +1 -0
  129. package/dist/components/molecules/architecture-flow/ArchitectureFlow.stories.d.ts +7 -0
  130. package/dist/components/molecules/architecture-flow/ArchitectureFlow.stories.d.ts.map +1 -0
  131. package/dist/components/molecules/architecture-flow/ArchitectureFlow.stories.js +71 -0
  132. package/dist/components/molecules/architecture-flow/ArchitectureFlow.stories.js.map +1 -0
  133. package/dist/components/molecules/architecture-flow/index.d.ts +3 -0
  134. package/dist/components/molecules/architecture-flow/index.d.ts.map +1 -0
  135. package/dist/components/molecules/architecture-flow/index.js +2 -0
  136. package/dist/components/molecules/architecture-flow/index.js.map +1 -0
  137. package/dist/components/molecules/code-box.d.ts +75 -0
  138. package/dist/components/molecules/code-box.d.ts.map +1 -0
  139. package/dist/components/molecules/code-box.js +174 -0
  140. package/dist/components/molecules/code-box.js.map +1 -0
  141. package/dist/components/molecules/code-box.stories.d.ts +87 -0
  142. package/dist/components/molecules/code-box.stories.d.ts.map +1 -0
  143. package/dist/components/molecules/code-box.stories.js +300 -0
  144. package/dist/components/molecules/code-box.stories.js.map +1 -0
  145. package/dist/components/molecules/code-snippet.d.ts +58 -0
  146. package/dist/components/molecules/code-snippet.d.ts.map +1 -0
  147. package/dist/components/molecules/code-snippet.js +72 -0
  148. package/dist/components/molecules/code-snippet.js.map +1 -0
  149. package/dist/components/molecules/code-snippet.stories.d.ts +23 -0
  150. package/dist/components/molecules/code-snippet.stories.d.ts.map +1 -0
  151. package/dist/components/molecules/code-snippet.stories.js +87 -0
  152. package/dist/components/molecules/code-snippet.stories.js.map +1 -0
  153. package/dist/components/molecules/dropdown.d.ts +68 -0
  154. package/dist/components/molecules/dropdown.d.ts.map +1 -0
  155. package/dist/components/molecules/dropdown.js +47 -0
  156. package/dist/components/molecules/dropdown.js.map +1 -0
  157. package/dist/components/molecules/dropdown.stories.d.ts +7 -0
  158. package/dist/components/molecules/dropdown.stories.d.ts.map +1 -0
  159. package/dist/components/molecules/dropdown.stories.js +18 -0
  160. package/dist/components/molecules/dropdown.stories.js.map +1 -0
  161. package/dist/components/molecules/flow-map/FlowMap.d.ts +74 -0
  162. package/dist/components/molecules/flow-map/FlowMap.d.ts.map +1 -0
  163. package/dist/components/molecules/flow-map/FlowMap.js +1039 -0
  164. package/dist/components/molecules/flow-map/FlowMap.js.map +1 -0
  165. package/dist/components/molecules/flow-map/FlowMap.stories.d.ts +47 -0
  166. package/dist/components/molecules/flow-map/FlowMap.stories.d.ts.map +1 -0
  167. package/dist/components/molecules/flow-map/FlowMap.stories.js +355 -0
  168. package/dist/components/molecules/flow-map/FlowMap.stories.js.map +1 -0
  169. package/dist/components/molecules/flow-map/FlowMap.transformers.stories.d.ts +29 -0
  170. package/dist/components/molecules/flow-map/FlowMap.transformers.stories.d.ts.map +1 -0
  171. package/dist/components/molecules/flow-map/FlowMap.transformers.stories.js +117 -0
  172. package/dist/components/molecules/flow-map/FlowMap.transformers.stories.js.map +1 -0
  173. package/dist/components/molecules/flow-map/index.d.ts +3 -0
  174. package/dist/components/molecules/flow-map/index.d.ts.map +1 -0
  175. package/dist/components/molecules/flow-map/index.js +2 -0
  176. package/dist/components/molecules/flow-map/index.js.map +1 -0
  177. package/dist/components/molecules/preview.d.ts +23 -0
  178. package/dist/components/molecules/preview.d.ts.map +1 -0
  179. package/dist/components/molecules/preview.js +232 -0
  180. package/dist/components/molecules/preview.js.map +1 -0
  181. package/dist/components/molecules/preview.stories.d.ts +23 -0
  182. package/dist/components/molecules/preview.stories.d.ts.map +1 -0
  183. package/dist/components/molecules/preview.stories.js +186 -0
  184. package/dist/components/molecules/preview.stories.js.map +1 -0
  185. package/dist/components/molecules/property-table.d.ts +7 -0
  186. package/dist/components/molecules/property-table.d.ts.map +1 -0
  187. package/dist/components/molecules/property-table.js +88 -0
  188. package/dist/components/molecules/property-table.js.map +1 -0
  189. package/dist/components/molecules/property-table.stories.d.ts +24 -0
  190. package/dist/components/molecules/property-table.stories.d.ts.map +1 -0
  191. package/dist/components/molecules/property-table.stories.js +86 -0
  192. package/dist/components/molecules/property-table.stories.js.map +1 -0
  193. package/dist/components/organisms/browser-box.d.ts +31 -0
  194. package/dist/components/organisms/browser-box.d.ts.map +1 -0
  195. package/dist/components/organisms/browser-box.js +80 -0
  196. package/dist/components/organisms/browser-box.js.map +1 -0
  197. package/dist/components/organisms/browser-box.stories.d.ts +26 -0
  198. package/dist/components/organisms/browser-box.stories.d.ts.map +1 -0
  199. package/dist/components/organisms/browser-box.stories.js +102 -0
  200. package/dist/components/organisms/browser-box.stories.js.map +1 -0
  201. package/dist/components/organisms/collector-box.d.ts +24 -0
  202. package/dist/components/organisms/collector-box.d.ts.map +1 -0
  203. package/dist/components/organisms/collector-box.js +56 -0
  204. package/dist/components/organisms/collector-box.js.map +1 -0
  205. package/dist/components/organisms/collector-box.stories.d.ts +22 -0
  206. package/dist/components/organisms/collector-box.stories.d.ts.map +1 -0
  207. package/dist/components/organisms/collector-box.stories.js +59 -0
  208. package/dist/components/organisms/collector-box.stories.js.map +1 -0
  209. package/dist/components/organisms/live-code.d.ts +22 -0
  210. package/dist/components/organisms/live-code.d.ts.map +1 -0
  211. package/dist/components/organisms/live-code.js +50 -0
  212. package/dist/components/organisms/live-code.js.map +1 -0
  213. package/dist/components/organisms/live-code.stories.d.ts +24 -0
  214. package/dist/components/organisms/live-code.stories.d.ts.map +1 -0
  215. package/dist/components/organisms/live-code.stories.js +55 -0
  216. package/dist/components/organisms/live-code.stories.js.map +1 -0
  217. package/dist/components/ui/button.d.ts +4 -0
  218. package/dist/components/ui/button.d.ts.map +1 -0
  219. package/dist/components/ui/button.js +6 -0
  220. package/dist/components/ui/button.js.map +1 -0
  221. package/dist/components/ui/icon.d.ts +5 -0
  222. package/dist/components/ui/icon.d.ts.map +1 -0
  223. package/dist/components/ui/icon.js +5 -0
  224. package/dist/components/ui/icon.js.map +1 -0
  225. package/dist/contexts/GridHeightContext.d.ts +11 -0
  226. package/dist/contexts/GridHeightContext.d.ts.map +1 -0
  227. package/dist/contexts/GridHeightContext.js +14 -0
  228. package/dist/contexts/GridHeightContext.js.map +1 -0
  229. package/dist/helpers/capture.d.ts +83 -0
  230. package/dist/helpers/capture.d.ts.map +1 -0
  231. package/dist/helpers/capture.js +125 -0
  232. package/dist/helpers/capture.js.map +1 -0
  233. package/dist/helpers/destinations.d.ts +21 -0
  234. package/dist/helpers/destinations.d.ts.map +1 -0
  235. package/dist/helpers/destinations.js +46 -0
  236. package/dist/helpers/destinations.js.map +1 -0
  237. package/dist/hooks/useDropdown.d.ts +34 -0
  238. package/dist/hooks/useDropdown.d.ts.map +1 -0
  239. package/dist/hooks/useDropdown.js +66 -0
  240. package/dist/hooks/useDropdown.js.map +1 -0
  241. package/dist/hooks/useMonacoHeight.d.ts +31 -0
  242. package/dist/hooks/useMonacoHeight.d.ts.map +1 -0
  243. package/dist/hooks/useMonacoHeight.js +83 -0
  244. package/dist/hooks/useMonacoHeight.js.map +1 -0
  245. package/dist/hooks/useTreeState.d.ts +32 -0
  246. package/dist/hooks/useTreeState.d.ts.map +1 -0
  247. package/dist/hooks/useTreeState.js +94 -0
  248. package/dist/hooks/useTreeState.js.map +1 -0
  249. package/dist/index.d.ts +69 -1338
  250. package/dist/index.d.ts.map +1 -0
  251. package/dist/index.js +59 -1
  252. package/dist/index.js.map +1 -1
  253. package/dist/lib/utils.d.ts +7 -0
  254. package/dist/lib/utils.d.ts.map +1 -0
  255. package/dist/lib/utils.js +10 -0
  256. package/dist/lib/utils.js.map +1 -0
  257. package/dist/providers/MDXProvider.d.ts +40 -0
  258. package/dist/providers/MDXProvider.d.ts.map +1 -0
  259. package/dist/providers/MDXProvider.js +57 -0
  260. package/dist/providers/MDXProvider.js.map +1 -0
  261. package/dist/themes/index.d.ts +23 -0
  262. package/dist/themes/index.d.ts.map +1 -0
  263. package/dist/themes/index.js +29 -0
  264. package/dist/themes/index.js.map +1 -0
  265. package/dist/themes/lighthouse.d.ts +26 -0
  266. package/dist/themes/lighthouse.d.ts.map +1 -0
  267. package/dist/themes/lighthouse.js +230 -0
  268. package/dist/themes/lighthouse.js.map +1 -0
  269. package/dist/themes/palenight.d.ts +31 -0
  270. package/dist/themes/palenight.d.ts.map +1 -0
  271. package/dist/themes/palenight.js +236 -0
  272. package/dist/themes/palenight.js.map +1 -0
  273. package/dist/themes/types.d.ts +103 -0
  274. package/dist/themes/types.d.ts.map +1 -0
  275. package/dist/themes/types.js +8 -0
  276. package/dist/themes/types.js.map +1 -0
  277. package/dist/types/intellisense.d.ts +33 -0
  278. package/dist/types/intellisense.d.ts.map +1 -0
  279. package/dist/types/intellisense.js +2 -0
  280. package/dist/types/intellisense.js.map +1 -0
  281. package/dist/utils/code-normalizer.d.ts +11 -0
  282. package/dist/utils/code-normalizer.d.ts.map +1 -0
  283. package/dist/utils/code-normalizer.js +21 -0
  284. package/dist/utils/code-normalizer.js.map +1 -0
  285. package/dist/utils/contract-path-walker.d.ts +27 -0
  286. package/dist/utils/contract-path-walker.d.ts.map +1 -0
  287. package/dist/utils/contract-path-walker.js +145 -0
  288. package/dist/utils/contract-path-walker.js.map +1 -0
  289. package/dist/utils/format-code.d.ts +9 -0
  290. package/dist/utils/format-code.d.ts.map +1 -0
  291. package/dist/utils/format-code.js +77 -0
  292. package/dist/utils/format-code.js.map +1 -0
  293. package/dist/utils/mapping-context-detector.d.ts +17 -0
  294. package/dist/utils/mapping-context-detector.d.ts.map +1 -0
  295. package/dist/utils/mapping-context-detector.js +22 -0
  296. package/dist/utils/mapping-context-detector.js.map +1 -0
  297. package/dist/utils/monaco-context-types.d.ts +39 -0
  298. package/dist/utils/monaco-context-types.d.ts.map +1 -0
  299. package/dist/utils/monaco-context-types.js +426 -0
  300. package/dist/utils/monaco-context-types.js.map +1 -0
  301. package/dist/utils/monaco-decorators.d.ts +17 -0
  302. package/dist/utils/monaco-decorators.d.ts.map +1 -0
  303. package/dist/utils/monaco-decorators.js +81 -0
  304. package/dist/utils/monaco-decorators.js.map +1 -0
  305. package/dist/utils/monaco-formatters.d.ts +16 -0
  306. package/dist/utils/monaco-formatters.d.ts.map +1 -0
  307. package/dist/utils/monaco-formatters.js +139 -0
  308. package/dist/utils/monaco-formatters.js.map +1 -0
  309. package/dist/utils/monaco-intellisense-flow-extractor.d.ts +13 -0
  310. package/dist/utils/monaco-intellisense-flow-extractor.d.ts.map +1 -0
  311. package/dist/utils/monaco-intellisense-flow-extractor.js +168 -0
  312. package/dist/utils/monaco-intellisense-flow-extractor.js.map +1 -0
  313. package/dist/utils/monaco-json-path.d.ts +12 -0
  314. package/dist/utils/monaco-json-path.d.ts.map +1 -0
  315. package/dist/utils/monaco-json-path.js +68 -0
  316. package/dist/utils/monaco-json-path.js.map +1 -0
  317. package/dist/utils/monaco-json-schema.d.ts +45 -0
  318. package/dist/utils/monaco-json-schema.d.ts.map +1 -0
  319. package/dist/utils/monaco-json-schema.js +90 -0
  320. package/dist/utils/monaco-json-schema.js.map +1 -0
  321. package/dist/utils/monaco-schema-contract.d.ts +8 -0
  322. package/dist/utils/monaco-schema-contract.d.ts.map +1 -0
  323. package/dist/utils/monaco-schema-contract.js +73 -0
  324. package/dist/utils/monaco-schema-contract.js.map +1 -0
  325. package/dist/utils/monaco-schema-enrichment.d.ts +26 -0
  326. package/dist/utils/monaco-schema-enrichment.d.ts.map +1 -0
  327. package/dist/utils/monaco-schema-enrichment.js +31 -0
  328. package/dist/utils/monaco-schema-enrichment.js.map +1 -0
  329. package/dist/utils/monaco-schema-flow-config.d.ts +10 -0
  330. package/dist/utils/monaco-schema-flow-config.d.ts.map +1 -0
  331. package/dist/utils/monaco-schema-flow-config.js +201 -0
  332. package/dist/utils/monaco-schema-flow-config.js.map +1 -0
  333. package/dist/utils/monaco-schema-variables.d.ts +4 -0
  334. package/dist/utils/monaco-schema-variables.d.ts.map +1 -0
  335. package/dist/utils/monaco-schema-variables.js +26 -0
  336. package/dist/utils/monaco-schema-variables.js.map +1 -0
  337. package/dist/utils/monaco-types.d.ts +174 -0
  338. package/dist/utils/monaco-types.d.ts.map +1 -0
  339. package/dist/utils/monaco-types.js +378 -0
  340. package/dist/utils/monaco-types.js.map +1 -0
  341. package/dist/utils/monaco-walkeros-completions.d.ts +23 -0
  342. package/dist/utils/monaco-walkeros-completions.d.ts.map +1 -0
  343. package/dist/utils/monaco-walkeros-completions.js +258 -0
  344. package/dist/utils/monaco-walkeros-completions.js.map +1 -0
  345. package/dist/utils/monaco-walkeros-decorations.d.ts +29 -0
  346. package/dist/utils/monaco-walkeros-decorations.d.ts.map +1 -0
  347. package/dist/utils/monaco-walkeros-decorations.js +87 -0
  348. package/dist/utils/monaco-walkeros-decorations.js.map +1 -0
  349. package/dist/utils/monaco-walkeros-markers.d.ts +13 -0
  350. package/dist/utils/monaco-walkeros-markers.d.ts.map +1 -0
  351. package/dist/utils/monaco-walkeros-markers.js +69 -0
  352. package/dist/utils/monaco-walkeros-markers.js.map +1 -0
  353. package/dist/utils/monaco-walkeros-providers.d.ts +19 -0
  354. package/dist/utils/monaco-walkeros-providers.d.ts.map +1 -0
  355. package/dist/utils/monaco-walkeros-providers.js +284 -0
  356. package/dist/utils/monaco-walkeros-providers.js.map +1 -0
  357. package/dist/utils/path-analyzer.d.ts +88 -0
  358. package/dist/utils/path-analyzer.d.ts.map +1 -0
  359. package/dist/utils/path-analyzer.js +215 -0
  360. package/dist/utils/path-analyzer.js.map +1 -0
  361. package/package.json +6 -6
@@ -0,0 +1,92 @@
1
+ import type { editor } from 'monaco-editor';
2
+ import type { IntelliSenseContext } from '../../types/intellisense';
3
+ export interface CodeProps {
4
+ code: string;
5
+ language?: string;
6
+ onChange?: (code: string) => void;
7
+ disabled?: boolean;
8
+ lineNumbers?: boolean;
9
+ minimap?: boolean;
10
+ folding?: boolean;
11
+ wordWrap?: boolean;
12
+ className?: string;
13
+ beforeMount?: (monaco: typeof import('monaco-editor')) => void;
14
+ onMount?: (editor: editor.IStandaloneCodeEditor) => void;
15
+ autoHeight?: boolean | {
16
+ min?: number;
17
+ max?: number;
18
+ };
19
+ fontSize?: number;
20
+ packages?: string[];
21
+ sticky?: boolean;
22
+ ide?: boolean;
23
+ /** JSON Schema (Draft 7) for validation and IntelliSense in JSON mode */
24
+ jsonSchema?: Record<string, unknown>;
25
+ /** Context data for dynamic IntelliSense (variable names, secrets, etc.) */
26
+ intellisenseContext?: IntelliSenseContext;
27
+ /** Validation function — called on content change, results rendered as Monaco markers */
28
+ validate?: (code: string) => {
29
+ valid: boolean;
30
+ errors: Array<{
31
+ message: string;
32
+ severity: 'error' | 'warning';
33
+ line: number;
34
+ column: number;
35
+ endLine?: number;
36
+ endColumn?: number;
37
+ }>;
38
+ warnings: Array<{
39
+ message: string;
40
+ severity: 'error' | 'warning';
41
+ line: number;
42
+ column: number;
43
+ endLine?: number;
44
+ endColumn?: number;
45
+ }>;
46
+ };
47
+ /** Callback when Monaco marker counts change */
48
+ onMarkerCounts?: (info: {
49
+ errors: number;
50
+ warnings: number;
51
+ markers: Array<{
52
+ message: string;
53
+ severity: 'error' | 'warning';
54
+ line: number;
55
+ column: number;
56
+ }>;
57
+ }) => void;
58
+ }
59
+ /**
60
+ * Code - Pure Monaco editor atom
61
+ *
62
+ * Height Management:
63
+ * Two modes controlled by `autoHeight` prop:
64
+ *
65
+ * 1. Default (autoHeight=false): height="100%" - fills parent container
66
+ * - Uses flex: 1 + min-height: 0 for proper flex overflow containment
67
+ * - Monaco set to height="100%" to fill container
68
+ * - automaticLayout: true + ResizeObserver for reliable resize detection
69
+ * - Use in Grid (equal heights) and Flex contexts (fill parent)
70
+ *
71
+ * 2. Auto-height (autoHeight=true): Dynamically sizes to content
72
+ * - Uses Monaco's getContentHeight() API for accurate content measurement
73
+ * - Respects min/max boundaries (default: 100-600px)
74
+ * - Updates automatically when content changes
75
+ * - Use in standalone contexts (docs) to eliminate blank space
76
+ *
77
+ * @example
78
+ * // Grid context - use default height="100%" for equal row heights
79
+ * <Grid columns={3}>
80
+ * <CodeBox code={event} />
81
+ * <CodeBox code={mapping} />
82
+ * </Grid>
83
+ *
84
+ * @example
85
+ * // Standalone context - use autoHeight to fit content
86
+ * <CodeBox
87
+ * code={shortExample}
88
+ * autoHeight={{ min: 100, max: 600 }}
89
+ * />
90
+ */
91
+ export declare function Code({ code, language, onChange, disabled, lineNumbers, minimap, folding, wordWrap, className, beforeMount, onMount, autoHeight, fontSize, packages, sticky, ide, jsonSchema, intellisenseContext, validate, onMarkerCounts, }: CodeProps): import("react/jsx-runtime").JSX.Element;
92
+ //# sourceMappingURL=code.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"code.d.ts","sourceRoot":"","sources":["../../../src/components/atoms/code.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AA8B5C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEpE,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,eAAe,CAAC,KAAK,IAAI,CAAC;IAC/D,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,qBAAqB,KAAK,IAAI,CAAC;IACzD,UAAU,CAAC,EAAE,OAAO,GAAG;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACtD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,yEAAyE;IACzE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,4EAA4E;IAC5E,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,yFAAyF;IACzF,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK;QAC3B,KAAK,EAAE,OAAO,CAAC;QACf,MAAM,EAAE,KAAK,CAAC;YACZ,OAAO,EAAE,MAAM,CAAC;YAChB,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;YAC9B,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,EAAE,MAAM,CAAC;YACf,OAAO,CAAC,EAAE,MAAM,CAAC;YACjB,SAAS,CAAC,EAAE,MAAM,CAAC;SACpB,CAAC,CAAC;QACH,QAAQ,EAAE,KAAK,CAAC;YACd,OAAO,EAAE,MAAM,CAAC;YAChB,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;YAC9B,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,EAAE,MAAM,CAAC;YACf,OAAO,CAAC,EAAE,MAAM,CAAC;YACjB,SAAS,CAAC,EAAE,MAAM,CAAC;SACpB,CAAC,CAAC;KACJ,CAAC;IACF,gDAAgD;IAChD,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE;QACtB,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,KAAK,CAAC;YACb,OAAO,EAAE,MAAM,CAAC;YAChB,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;YAC9B,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,EAAE,MAAM,CAAC;SAChB,CAAC,CAAC;KACJ,KAAK,IAAI,CAAC;CACZ;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,IAAI,CAAC,EACnB,IAAI,EACJ,QAAuB,EACvB,QAAQ,EACR,QAAgB,EAChB,WAAmB,EACnB,OAAe,EACf,OAAe,EACf,QAAgB,EAChB,SAAS,EACT,WAAW,EACX,OAAO,EACP,UAAU,EACV,QAAa,EACb,QAAQ,EACR,MAAa,EACb,GAAW,EACX,UAAU,EACV,mBAAmB,EACnB,QAAQ,EACR,cAAc,GACf,EAAE,SAAS,2CA2cX"}
@@ -0,0 +1,405 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useEffect, useState, useRef, useCallback, } from 'react';
3
+ import { Editor } from '@monaco-editor/react';
4
+ import { registerAllThemes } from '../../themes';
5
+ import { registerWalkerOSTypes } from '../../utils/monaco-types';
6
+ import { applyDataElbDecorations, registerDataElbStyles, } from '../../utils/monaco-decorators';
7
+ import { applyWalkerOSDecorations, registerWalkerOSDecorationStyles, } from '../../utils/monaco-walkeros-decorations';
8
+ import { registerWalkerOSProviders, setIntelliSenseContext, removeIntelliSenseContext, } from '../../utils/monaco-walkeros-providers';
9
+ import { registerFormatters } from '../../utils/monaco-formatters';
10
+ import { generateModelPath, initMonacoJson, registerJsonSchema, unregisterJsonSchema, } from '../../utils/monaco-json-schema';
11
+ import { useMonacoHeight } from '../../hooks/useMonacoHeight';
12
+ import { useGridHeight } from '../../contexts/GridHeightContext';
13
+ /**
14
+ * Code - Pure Monaco editor atom
15
+ *
16
+ * Height Management:
17
+ * Two modes controlled by `autoHeight` prop:
18
+ *
19
+ * 1. Default (autoHeight=false): height="100%" - fills parent container
20
+ * - Uses flex: 1 + min-height: 0 for proper flex overflow containment
21
+ * - Monaco set to height="100%" to fill container
22
+ * - automaticLayout: true + ResizeObserver for reliable resize detection
23
+ * - Use in Grid (equal heights) and Flex contexts (fill parent)
24
+ *
25
+ * 2. Auto-height (autoHeight=true): Dynamically sizes to content
26
+ * - Uses Monaco's getContentHeight() API for accurate content measurement
27
+ * - Respects min/max boundaries (default: 100-600px)
28
+ * - Updates automatically when content changes
29
+ * - Use in standalone contexts (docs) to eliminate blank space
30
+ *
31
+ * @example
32
+ * // Grid context - use default height="100%" for equal row heights
33
+ * <Grid columns={3}>
34
+ * <CodeBox code={event} />
35
+ * <CodeBox code={mapping} />
36
+ * </Grid>
37
+ *
38
+ * @example
39
+ * // Standalone context - use autoHeight to fit content
40
+ * <CodeBox
41
+ * code={shortExample}
42
+ * autoHeight={{ min: 100, max: 600 }}
43
+ * />
44
+ */
45
+ export function Code({ code, language = 'javascript', onChange, disabled = false, lineNumbers = false, minimap = false, folding = false, wordWrap = false, className, beforeMount, onMount, autoHeight, fontSize = 13, packages, sticky = true, ide = false, jsonSchema, intellisenseContext, validate, onMarkerCounts, }) {
46
+ // Track if component has mounted (client-side hydration complete)
47
+ const [isMounted, setIsMounted] = useState(false);
48
+ // Use a consistent default theme for SSR - only update after mount
49
+ const [monacoTheme, setMonacoTheme] = useState('vs-light');
50
+ const decorationsCleanupRef = useRef([]);
51
+ const monacoRef = useRef(null);
52
+ const editorRef = useRef(null);
53
+ const containerRef = useRef(null);
54
+ const gridContext = useGridHeight();
55
+ const boxIdRef = useRef(null);
56
+ if (gridContext?.enabled && boxIdRef.current === null) {
57
+ boxIdRef.current = gridContext.getBoxId();
58
+ }
59
+ const handleHeightChange = useCallback((height) => {
60
+ if (gridContext?.enabled && boxIdRef.current !== null) {
61
+ gridContext.registerBox(boxIdRef.current, height);
62
+ }
63
+ }, [gridContext]);
64
+ useEffect(() => {
65
+ return () => {
66
+ if (gridContext?.enabled && boxIdRef.current !== null) {
67
+ gridContext.unregisterBox(boxIdRef.current);
68
+ }
69
+ };
70
+ }, [gridContext]);
71
+ const heightConfig = typeof autoHeight === 'object' ? autoHeight : {};
72
+ const [calculatedHeight, registerEditor] = useMonacoHeight({
73
+ enabled: !!autoHeight || !!gridContext?.enabled,
74
+ minHeight: heightConfig.min ?? (gridContext?.enabled ? 1 : 20),
75
+ maxHeight: heightConfig.max ?? 600,
76
+ defaultHeight: gridContext?.enabled ? 250 : 400,
77
+ onHeightChange: handleHeightChange,
78
+ });
79
+ // Register data-elb styles on mount
80
+ useEffect(() => {
81
+ registerDataElbStyles();
82
+ }, []);
83
+ // Helper: Find data-theme attribute from closest ancestor or document
84
+ // Returns null during SSR (no document available)
85
+ const getDataTheme = useCallback(() => {
86
+ if (typeof document === 'undefined')
87
+ return null;
88
+ // Check container ref first (closest to Monaco)
89
+ if (containerRef.current) {
90
+ const closest = containerRef.current.closest('[data-theme]');
91
+ if (closest) {
92
+ return closest.getAttribute('data-theme');
93
+ }
94
+ }
95
+ // Fall back to document root
96
+ return document.documentElement.getAttribute('data-theme');
97
+ }, []);
98
+ // Mark component as mounted (hydration complete)
99
+ useEffect(() => {
100
+ setIsMounted(true);
101
+ }, []);
102
+ // Theme detection - only runs after mount to prevent hydration mismatch
103
+ useEffect(() => {
104
+ if (!isMounted)
105
+ return;
106
+ const checkTheme = () => {
107
+ const dataTheme = getDataTheme();
108
+ const isDark = dataTheme === 'dark' ||
109
+ (dataTheme === null &&
110
+ window.matchMedia('(prefers-color-scheme: dark)').matches);
111
+ const newTheme = isDark ? 'elbTheme-dark' : 'elbTheme-light';
112
+ setMonacoTheme(newTheme);
113
+ };
114
+ checkTheme();
115
+ const observer = new MutationObserver(() => {
116
+ checkTheme();
117
+ });
118
+ observer.observe(document.documentElement, {
119
+ attributes: true,
120
+ attributeFilter: ['data-theme'],
121
+ });
122
+ const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
123
+ const handleChange = () => {
124
+ checkTheme();
125
+ };
126
+ mediaQuery.addEventListener('change', handleChange);
127
+ return () => {
128
+ observer.disconnect();
129
+ mediaQuery.removeEventListener('change', handleChange);
130
+ };
131
+ }, [isMounted, getDataTheme]);
132
+ // ResizeObserver for container size changes
133
+ // Complements automaticLayout: true for more reliable detection
134
+ // Handles cases where Grid constraints change or parent container resizes
135
+ useEffect(() => {
136
+ const editor = editorRef.current;
137
+ const container = containerRef.current;
138
+ if (!editor || !container)
139
+ return;
140
+ const resizeObserver = new ResizeObserver(() => {
141
+ // Debounce layout calls to prevent excessive updates
142
+ requestAnimationFrame(() => {
143
+ editor.layout();
144
+ });
145
+ });
146
+ resizeObserver.observe(container);
147
+ return () => {
148
+ resizeObserver.disconnect();
149
+ };
150
+ }, []);
151
+ // JSON Schema registration for IntelliSense
152
+ const modelPathRef = useRef(null);
153
+ const intellisenseContextRef = useRef(intellisenseContext);
154
+ intellisenseContextRef.current = intellisenseContext;
155
+ const validateRef = useRef(validate);
156
+ validateRef.current = validate;
157
+ const onMarkerCountsRef = useRef(onMarkerCounts);
158
+ onMarkerCountsRef.current = onMarkerCounts;
159
+ // Generate stable model path on first render if jsonSchema is provided
160
+ if ((jsonSchema || intellisenseContext) && !modelPathRef.current) {
161
+ modelPathRef.current = generateModelPath();
162
+ }
163
+ // Register/update JSON schema when it changes
164
+ useEffect(() => {
165
+ if (!jsonSchema || !modelPathRef.current)
166
+ return;
167
+ registerJsonSchema(modelPathRef.current, jsonSchema);
168
+ return () => {
169
+ if (modelPathRef.current) {
170
+ unregisterJsonSchema(modelPathRef.current);
171
+ }
172
+ };
173
+ }, [jsonSchema]);
174
+ // Sync intellisenseContext with provider registry
175
+ useEffect(() => {
176
+ if (intellisenseContext && modelPathRef.current) {
177
+ setIntelliSenseContext(modelPathRef.current, intellisenseContext);
178
+ return () => {
179
+ if (modelPathRef.current) {
180
+ removeIntelliSenseContext(modelPathRef.current);
181
+ }
182
+ };
183
+ }
184
+ }, [intellisenseContext]);
185
+ const handleChange = (value) => {
186
+ if (onChange && value !== undefined) {
187
+ onChange(value);
188
+ }
189
+ };
190
+ const handleBeforeMount = async (monaco) => {
191
+ monacoRef.current = monaco;
192
+ // Initialize JSON schema registry with this monaco instance
193
+ initMonacoJson(monaco);
194
+ // Always run built-in setup
195
+ registerAllThemes(monaco);
196
+ registerFormatters(monaco);
197
+ if (packages && packages.length > 0) {
198
+ registerWalkerOSTypes(monaco);
199
+ const { loadPackageTypes } = await import('../../utils/monaco-types');
200
+ for (const pkg of packages) {
201
+ if (pkg !== '@walkeros/core') {
202
+ await loadPackageTypes(monaco, { package: pkg }).catch(() => { });
203
+ }
204
+ }
205
+ }
206
+ const dataTheme = getDataTheme();
207
+ const isDark = dataTheme === 'dark' ||
208
+ (dataTheme === null &&
209
+ window.matchMedia('(prefers-color-scheme: dark)').matches);
210
+ const themeName = isDark ? 'elbTheme-dark' : 'elbTheme-light';
211
+ monaco.editor.setTheme(themeName);
212
+ // Register walkerOS IntelliSense providers for JSON
213
+ if (language === 'json') {
214
+ registerWalkerOSProviders(monaco);
215
+ }
216
+ // Call user's beforeMount AFTER built-in setup
217
+ if (beforeMount) {
218
+ beforeMount(monaco);
219
+ }
220
+ };
221
+ const MonacoEditor = Editor;
222
+ const handleEditorMount = (monacoEditor) => {
223
+ editorRef.current = monacoEditor;
224
+ // Register with height hook if auto-height or grid context is enabled
225
+ if (autoHeight || gridContext?.enabled) {
226
+ registerEditor(monacoEditor);
227
+ }
228
+ // Apply data-elb decorations for HTML
229
+ if (language === 'html' && monacoRef.current) {
230
+ decorationsCleanupRef.current.push(applyDataElbDecorations(monacoEditor, monacoRef.current));
231
+ }
232
+ // Apply walkerOS reference decorations for JSON
233
+ if (language === 'json') {
234
+ registerWalkerOSDecorationStyles();
235
+ decorationsCleanupRef.current.push(applyWalkerOSDecorations(monacoEditor));
236
+ }
237
+ // Run validation from validate prop (replaces internal walkerOS markers)
238
+ if (validateRef.current && monacoRef.current) {
239
+ const monacoInstance = monacoRef.current;
240
+ let validateTimer;
241
+ const runValidation = () => {
242
+ const model = monacoEditor.getModel();
243
+ if (!model)
244
+ return;
245
+ const text = model.getValue();
246
+ const fn = validateRef.current;
247
+ if (!fn)
248
+ return;
249
+ const result = fn(text);
250
+ const allIssues = [...result.errors, ...result.warnings];
251
+ monacoInstance.editor.setModelMarkers(model, 'validate', allIssues.map((issue) => ({
252
+ severity: issue.severity === 'error' ? 8 : 4,
253
+ message: issue.message,
254
+ startLineNumber: issue.line,
255
+ startColumn: issue.column,
256
+ endLineNumber: issue.endLine ?? issue.line,
257
+ endColumn: issue.endColumn ?? issue.column + 1,
258
+ })));
259
+ // Don't report here — the global marker listener below handles it
260
+ };
261
+ // Initial validation
262
+ runValidation();
263
+ // Debounced validation on content change
264
+ const validateDisposable = monacoEditor.onDidChangeModelContent(() => {
265
+ clearTimeout(validateTimer);
266
+ validateTimer = setTimeout(runValidation, 300);
267
+ });
268
+ decorationsCleanupRef.current.push(() => {
269
+ clearTimeout(validateTimer);
270
+ validateDisposable.dispose();
271
+ });
272
+ }
273
+ // Listen for marker changes and report counts to CodeBox header badges.
274
+ // When a custom validate prop is provided, it is the single source of truth
275
+ // (same validator the CLI uses). Clear Monaco's built-in JSON diagnostics
276
+ // so they don't double-count.
277
+ if (onMarkerCountsRef.current && monacoRef.current) {
278
+ const monacoInstance = monacoRef.current;
279
+ const model = monacoEditor.getModel();
280
+ const hasCustomValidate = !!validateRef.current;
281
+ if (model) {
282
+ const reportMarkers = () => {
283
+ // When custom validate owns validation, strip Monaco's JSON markers
284
+ if (hasCustomValidate) {
285
+ monacoInstance.editor.setModelMarkers(model, 'json', []);
286
+ }
287
+ const raw = monacoInstance.editor.getModelMarkers({
288
+ resource: model.uri,
289
+ });
290
+ let errors = 0;
291
+ let warnings = 0;
292
+ const details = [];
293
+ for (const m of raw) {
294
+ if (m.severity === 8) {
295
+ errors++;
296
+ details.push({
297
+ message: m.message,
298
+ severity: 'error',
299
+ line: m.startLineNumber,
300
+ column: m.startColumn,
301
+ });
302
+ }
303
+ else if (m.severity === 4) {
304
+ warnings++;
305
+ details.push({
306
+ message: m.message,
307
+ severity: 'warning',
308
+ line: m.startLineNumber,
309
+ column: m.startColumn,
310
+ });
311
+ }
312
+ }
313
+ onMarkerCountsRef.current?.({ errors, warnings, markers: details });
314
+ };
315
+ const markerDisposable = monacoInstance.editor.onDidChangeMarkers((uris) => {
316
+ if (uris.some((uri) => uri.toString() === model.uri.toString())) {
317
+ reportMarkers();
318
+ }
319
+ });
320
+ // Initial report (catches markers set before listener)
321
+ requestAnimationFrame(reportMarkers);
322
+ decorationsCleanupRef.current.push(() => {
323
+ markerDisposable.dispose();
324
+ });
325
+ }
326
+ }
327
+ // Initial layout call after mount
328
+ requestAnimationFrame(() => {
329
+ monacoEditor.layout();
330
+ });
331
+ if (onMount) {
332
+ onMount(monacoEditor);
333
+ }
334
+ };
335
+ // Cleanup
336
+ useEffect(() => {
337
+ return () => {
338
+ for (const cleanup of decorationsCleanupRef.current) {
339
+ cleanup();
340
+ }
341
+ decorationsCleanupRef.current = [];
342
+ };
343
+ }, []);
344
+ // Choose height strategy: auto-calculated or fill parent
345
+ // Note: When grid context is enabled with synced mode, CodeBox applies
346
+ // syncedHeight to the Box container. Monaco should use calculatedHeight
347
+ // (content-only) here, not syncedHeight (which includes header + border).
348
+ const monacoHeight = autoHeight || gridContext?.enabled ? `${calculatedHeight}px` : '100%';
349
+ // Add modifier class when using auto-height or synced height
350
+ const useContentHeight = !!autoHeight || !!gridContext?.enabled;
351
+ const codeClassName = `elb-code ${useContentHeight ? 'elb-code--auto-height' : ''} ${className || ''}`.trim();
352
+ return (_jsx("div", { className: codeClassName, ref: containerRef, children: _jsx(MonacoEditor, { height: monacoHeight, language: language, value: code, onChange: handleChange, beforeMount: handleBeforeMount, onMount: handleEditorMount, theme: monacoTheme, path: modelPathRef.current || undefined, options: {
353
+ readOnly: disabled || !onChange,
354
+ readOnlyMessage: { value: '' },
355
+ minimap: { enabled: minimap },
356
+ fontSize: fontSize,
357
+ lineHeight: Math.round(fontSize * 1.5),
358
+ padding: 0,
359
+ lineNumbers: lineNumbers ? 'on' : 'off',
360
+ lineNumbersMinChars: 3,
361
+ glyphMargin: false,
362
+ folding: folding,
363
+ lineDecorationsWidth: 8, // Gap between line numbers and code
364
+ scrollBeyondLastLine: false,
365
+ automaticLayout: true,
366
+ tabSize: 2,
367
+ detectIndentation: false,
368
+ trimAutoWhitespace: false,
369
+ wordWrap: wordWrap ? 'on' : 'off',
370
+ fixedOverflowWidgets: true,
371
+ overviewRulerLanes: 0,
372
+ renderLineHighlight: 'none',
373
+ renderValidationDecorations: ide || jsonSchema ? 'editable' : 'off',
374
+ hover: { enabled: ide || !!jsonSchema || !!intellisenseContext },
375
+ 'semanticHighlighting.enabled': ide,
376
+ showDeprecated: ide,
377
+ showUnused: ide,
378
+ 'bracketPairColorization.enabled': false,
379
+ guides: {
380
+ bracketPairs: false,
381
+ bracketPairsHorizontal: false,
382
+ highlightActiveBracketPair: false,
383
+ indentation: false, // Disable indentation guide lines
384
+ },
385
+ scrollbar: {
386
+ vertical: 'auto',
387
+ horizontal: 'auto',
388
+ alwaysConsumeMouseWheel: false,
389
+ },
390
+ // Cursor and selection behavior
391
+ cursorBlinking: 'blink', // Make cursor blink visibly
392
+ cursorStyle: 'line', // Use line cursor (most visible)
393
+ cursorWidth: 2, // Make cursor 2px wide for better visibility
394
+ cursorSmoothCaretAnimation: 'off', // Disable smooth cursor animation
395
+ selectionHighlight: false, // Disable auto-highlighting of selected text occurrences
396
+ occurrencesHighlight: 'off', // Disable highlighting matching words
397
+ selectOnLineNumbers: false, // Don't select line when clicking line numbers
398
+ wordBasedSuggestions: 'off', // Reduce auto-completion interference
399
+ quickSuggestions: jsonSchema || intellisenseContext
400
+ ? { strings: true, other: true, comments: false }
401
+ : false,
402
+ stickyScroll: { enabled: sticky },
403
+ } }) }));
404
+ }
405
+ //# sourceMappingURL=code.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"code.js","sourceRoot":"","sources":["../../../src/components/atoms/code.tsx"],"names":[],"mappings":";AAAA,OAAc,EAEZ,SAAS,EACT,QAAQ,EACR,MAAM,EACN,WAAW,GACZ,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,MAAM,EAAU,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EACL,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,wBAAwB,EACxB,gCAAgC,GACjC,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AA8DjE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,UAAU,IAAI,CAAC,EACnB,IAAI,EACJ,QAAQ,GAAG,YAAY,EACvB,QAAQ,EACR,QAAQ,GAAG,KAAK,EAChB,WAAW,GAAG,KAAK,EACnB,OAAO,GAAG,KAAK,EACf,OAAO,GAAG,KAAK,EACf,QAAQ,GAAG,KAAK,EAChB,SAAS,EACT,WAAW,EACX,OAAO,EACP,UAAU,EACV,QAAQ,GAAG,EAAE,EACb,QAAQ,EACR,MAAM,GAAG,IAAI,EACb,GAAG,GAAG,KAAK,EACX,UAAU,EACV,mBAAmB,EACnB,QAAQ,EACR,cAAc,GACJ;IACV,kEAAkE;IAClE,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClD,mEAAmE;IACnE,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC3D,MAAM,qBAAqB,GAAG,MAAM,CAAoB,EAAE,CAAC,CAAC;IAC5D,MAAM,SAAS,GAAG,MAAM,CAAwC,IAAI,CAAC,CAAC;IACtE,MAAM,SAAS,GAAG,MAAM,CAAsC,IAAI,CAAC,CAAC;IACpE,MAAM,YAAY,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IAEzD,MAAM,WAAW,GAAG,aAAa,EAAE,CAAC;IACpC,MAAM,QAAQ,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAC;IAE7C,IAAI,WAAW,EAAE,OAAO,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QACtD,QAAQ,CAAC,OAAO,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;IAC5C,CAAC;IAED,MAAM,kBAAkB,GAAG,WAAW,CACpC,CAAC,MAAc,EAAE,EAAE;QACjB,IAAI,WAAW,EAAE,OAAO,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YACtD,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACpD,CAAC;IACH,CAAC,EACD,CAAC,WAAW,CAAC,CACd,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,GAAG,EAAE;YACV,IAAI,WAAW,EAAE,OAAO,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;gBACtD,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,MAAM,YAAY,GAAG,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;IACtE,MAAM,CAAC,gBAAgB,EAAE,cAAc,CAAC,GAAG,eAAe,CAAC;QACzD,OAAO,EAAE,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,WAAW,EAAE,OAAO;QAC/C,SAAS,EAAE,YAAY,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9D,SAAS,EAAE,YAAY,CAAC,GAAG,IAAI,GAAG;QAClC,aAAa,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;QAC/C,cAAc,EAAE,kBAAkB;KACnC,CAAC,CAAC;IAEH,oCAAoC;IACpC,SAAS,CAAC,GAAG,EAAE;QACb,qBAAqB,EAAE,CAAC;IAC1B,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,sEAAsE;IACtE,kDAAkD;IAClD,MAAM,YAAY,GAAG,WAAW,CAAC,GAAkB,EAAE;QACnD,IAAI,OAAO,QAAQ,KAAK,WAAW;YAAE,OAAO,IAAI,CAAC;QAEjD,gDAAgD;QAChD,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;YACzB,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;YAC7D,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;QAED,6BAA6B;QAC7B,OAAO,QAAQ,CAAC,eAAe,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;IAC7D,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,iDAAiD;IACjD,SAAS,CAAC,GAAG,EAAE;QACb,YAAY,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,wEAAwE;IACxE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,SAAS;YAAE,OAAO;QAEvB,MAAM,UAAU,GAAG,GAAG,EAAE;YACtB,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;YACjC,MAAM,MAAM,GACV,SAAS,KAAK,MAAM;gBACpB,CAAC,SAAS,KAAK,IAAI;oBACjB,MAAM,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAAC,OAAO,CAAC,CAAC;YAC/D,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,gBAAgB,CAAC;YAE7D,cAAc,CAAC,QAAQ,CAAC,CAAC;QAC3B,CAAC,CAAC;QAEF,UAAU,EAAE,CAAC;QAEb,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,GAAG,EAAE;YACzC,UAAU,EAAE,CAAC;QACf,CAAC,CAAC,CAAC;QACH,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,EAAE;YACzC,UAAU,EAAE,IAAI;YAChB,eAAe,EAAE,CAAC,YAAY,CAAC;SAChC,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAAC;QACrE,MAAM,YAAY,GAAG,GAAG,EAAE;YACxB,UAAU,EAAE,CAAC;QACf,CAAC,CAAC;QACF,UAAU,CAAC,gBAAgB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QAEpD,OAAO,GAAG,EAAE;YACV,QAAQ,CAAC,UAAU,EAAE,CAAC;YACtB,UAAU,CAAC,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACzD,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC;IAE9B,4CAA4C;IAC5C,gEAAgE;IAChE,0EAA0E;IAC1E,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC;QACjC,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC;QAEvC,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS;YAAE,OAAO;QAElC,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,GAAG,EAAE;YAC7C,qDAAqD;YACrD,qBAAqB,CAAC,GAAG,EAAE;gBACzB,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAElC,OAAO,GAAG,EAAE;YACV,cAAc,CAAC,UAAU,EAAE,CAAC;QAC9B,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,4CAA4C;IAC5C,MAAM,YAAY,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAC;IACjD,MAAM,sBAAsB,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAC3D,sBAAsB,CAAC,OAAO,GAAG,mBAAmB,CAAC;IACrD,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IACrC,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAC;IAC/B,MAAM,iBAAiB,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;IACjD,iBAAiB,CAAC,OAAO,GAAG,cAAc,CAAC;IAE3C,uEAAuE;IACvE,IAAI,CAAC,UAAU,IAAI,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QACjE,YAAY,CAAC,OAAO,GAAG,iBAAiB,EAAE,CAAC;IAC7C,CAAC;IAED,8CAA8C;IAC9C,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,UAAU,IAAI,CAAC,YAAY,CAAC,OAAO;YAAE,OAAO;QAEjD,kBAAkB,CAAC,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAErD,OAAO,GAAG,EAAE;YACV,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;gBACzB,oBAAoB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,kDAAkD;IAClD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,mBAAmB,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;YAChD,sBAAsB,CAAC,YAAY,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;YAClE,OAAO,GAAG,EAAE;gBACV,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;oBACzB,yBAAyB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;gBAClD,CAAC;YACH,CAAC,CAAC;QACJ,CAAC;IACH,CAAC,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAE1B,MAAM,YAAY,GAAG,CAAC,KAAyB,EAAE,EAAE;QACjD,IAAI,QAAQ,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACpC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,KAAK,EAAE,MAAsC,EAAE,EAAE;QACzE,SAAS,CAAC,OAAO,GAAG,MAAM,CAAC;QAE3B,4DAA4D;QAC5D,cAAc,CAAC,MAAM,CAAC,CAAC;QAEvB,4BAA4B;QAC5B,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC1B,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAE3B,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpC,qBAAqB,CAAC,MAAM,CAAC,CAAC;YAE9B,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,0BAA0B,CAAC,CAAC;YACtE,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;gBAC3B,IAAI,GAAG,KAAK,gBAAgB,EAAE,CAAC;oBAC7B,MAAM,gBAAgB,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBACnE,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;QACjC,MAAM,MAAM,GACV,SAAS,KAAK,MAAM;YACpB,CAAC,SAAS,KAAK,IAAI;gBACjB,MAAM,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAAC,OAAO,CAAC,CAAC;QAC/D,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,gBAAgB,CAAC;QAC9D,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAElC,oDAAoD;QACpD,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;YACxB,yBAAyB,CAAC,MAAM,CAAC,CAAC;QACpC,CAAC;QAED,+CAA+C;QAC/C,IAAI,WAAW,EAAE,CAAC;YAChB,WAAW,CAAC,MAAM,CAAC,CAAC;QACtB,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,MAUnB,CAAC;IAEH,MAAM,iBAAiB,GAAG,CAAC,YAA0C,EAAE,EAAE;QACvE,SAAS,CAAC,OAAO,GAAG,YAAY,CAAC;QAEjC,sEAAsE;QACtE,IAAI,UAAU,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;YACvC,cAAc,CAAC,YAAY,CAAC,CAAC;QAC/B,CAAC;QAED,sCAAsC;QACtC,IAAI,QAAQ,KAAK,MAAM,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;YAC7C,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAChC,uBAAuB,CAAC,YAAY,EAAE,SAAS,CAAC,OAAO,CAAC,CACzD,CAAC;QACJ,CAAC;QAED,gDAAgD;QAChD,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;YACxB,gCAAgC,EAAE,CAAC;YACnC,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAChC,wBAAwB,CAAC,YAAY,CAAC,CACvC,CAAC;QACJ,CAAC;QAED,yEAAyE;QACzE,IAAI,WAAW,CAAC,OAAO,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;YAC7C,MAAM,cAAc,GAAG,SAAS,CAAC,OAAO,CAAC;YACzC,IAAI,aAA4C,CAAC;YAEjD,MAAM,aAAa,GAAG,GAAG,EAAE;gBACzB,MAAM,KAAK,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAC;gBACtC,IAAI,CAAC,KAAK;oBAAE,OAAO;gBACnB,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;gBAC9B,MAAM,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC;gBAC/B,IAAI,CAAC,EAAE;oBAAE,OAAO;gBAEhB,MAAM,MAAM,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;gBACxB,MAAM,SAAS,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAEzD,cAAc,CAAC,MAAM,CAAC,eAAe,CACnC,KAAK,EACL,UAAU,EACV,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;oBACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC5C,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,eAAe,EAAE,KAAK,CAAC,IAAI;oBAC3B,WAAW,EAAE,KAAK,CAAC,MAAM;oBACzB,aAAa,EAAE,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,IAAI;oBAC1C,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;iBAC/C,CAAC,CAAC,CACJ,CAAC;gBAEF,kEAAkE;YACpE,CAAC,CAAC;YAEF,qBAAqB;YACrB,aAAa,EAAE,CAAC;YAEhB,yCAAyC;YACzC,MAAM,kBAAkB,GAAG,YAAY,CAAC,uBAAuB,CAAC,GAAG,EAAE;gBACnE,YAAY,CAAC,aAAa,CAAC,CAAC;gBAC5B,aAAa,GAAG,UAAU,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;YACjD,CAAC,CAAC,CAAC;YAEH,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE;gBACtC,YAAY,CAAC,aAAa,CAAC,CAAC;gBAC5B,kBAAkB,CAAC,OAAO,EAAE,CAAC;YAC/B,CAAC,CAAC,CAAC;QACL,CAAC;QAED,wEAAwE;QACxE,4EAA4E;QAC5E,0EAA0E;QAC1E,8BAA8B;QAC9B,IAAI,iBAAiB,CAAC,OAAO,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;YACnD,MAAM,cAAc,GAAG,SAAS,CAAC,OAAO,CAAC;YACzC,MAAM,KAAK,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAC;YACtC,MAAM,iBAAiB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC;YAChD,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,aAAa,GAAG,GAAG,EAAE;oBACzB,oEAAoE;oBACpE,IAAI,iBAAiB,EAAE,CAAC;wBACtB,cAAc,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;oBAC3D,CAAC;oBACD,MAAM,GAAG,GAAG,cAAc,CAAC,MAAM,CAAC,eAAe,CAAC;wBAChD,QAAQ,EAAE,KAAK,CAAC,GAAG;qBACpB,CAAC,CAAC;oBACH,IAAI,MAAM,GAAG,CAAC,CAAC;oBACf,IAAI,QAAQ,GAAG,CAAC,CAAC;oBACjB,MAAM,OAAO,GAKR,EAAE,CAAC;oBACR,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;wBACpB,IAAI,CAAC,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;4BACrB,MAAM,EAAE,CAAC;4BACT,OAAO,CAAC,IAAI,CAAC;gCACX,OAAO,EAAE,CAAC,CAAC,OAAO;gCAClB,QAAQ,EAAE,OAAO;gCACjB,IAAI,EAAE,CAAC,CAAC,eAAe;gCACvB,MAAM,EAAE,CAAC,CAAC,WAAW;6BACtB,CAAC,CAAC;wBACL,CAAC;6BAAM,IAAI,CAAC,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;4BAC5B,QAAQ,EAAE,CAAC;4BACX,OAAO,CAAC,IAAI,CAAC;gCACX,OAAO,EAAE,CAAC,CAAC,OAAO;gCAClB,QAAQ,EAAE,SAAS;gCACnB,IAAI,EAAE,CAAC,CAAC,eAAe;gCACvB,MAAM,EAAE,CAAC,CAAC,WAAW;6BACtB,CAAC,CAAC;wBACL,CAAC;oBACH,CAAC;oBACD,iBAAiB,CAAC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;gBACtE,CAAC,CAAC;gBAEF,MAAM,gBAAgB,GAAG,cAAc,CAAC,MAAM,CAAC,kBAAkB,CAC/D,CAAC,IAAI,EAAE,EAAE;oBACP,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC;wBAChE,aAAa,EAAE,CAAC;oBAClB,CAAC;gBACH,CAAC,CACF,CAAC;gBAEF,uDAAuD;gBACvD,qBAAqB,CAAC,aAAa,CAAC,CAAC;gBAErC,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE;oBACtC,gBAAgB,CAAC,OAAO,EAAE,CAAC;gBAC7B,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,kCAAkC;QAClC,qBAAqB,CAAC,GAAG,EAAE;YACzB,YAAY,CAAC,MAAM,EAAE,CAAC;QACxB,CAAC,CAAC,CAAC;QAEH,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,YAAY,CAAC,CAAC;QACxB,CAAC;IACH,CAAC,CAAC;IAEF,UAAU;IACV,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,GAAG,EAAE;YACV,KAAK,MAAM,OAAO,IAAI,qBAAqB,CAAC,OAAO,EAAE,CAAC;gBACpD,OAAO,EAAE,CAAC;YACZ,CAAC;YACD,qBAAqB,CAAC,OAAO,GAAG,EAAE,CAAC;QACrC,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,yDAAyD;IACzD,uEAAuE;IACvE,wEAAwE;IACxE,0EAA0E;IAC1E,MAAM,YAAY,GAChB,UAAU,IAAI,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,gBAAgB,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;IAExE,6DAA6D;IAC7D,MAAM,gBAAgB,GAAG,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,WAAW,EAAE,OAAO,CAAC;IAChE,MAAM,aAAa,GACjB,YAAY,gBAAgB,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE,IAAI,SAAS,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;IAE1F,OAAO,CACL,cAAK,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,YAAY,YAC9C,KAAC,YAAY,IACX,MAAM,EAAE,YAAY,EACpB,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,IAAI,EACX,QAAQ,EAAE,YAAY,EACtB,WAAW,EAAE,iBAAiB,EAC9B,OAAO,EAAE,iBAAiB,EAC1B,KAAK,EAAE,WAAW,EAClB,IAAI,EAAE,YAAY,CAAC,OAAO,IAAI,SAAS,EACvC,OAAO,EAAE;gBACP,QAAQ,EAAE,QAAQ,IAAI,CAAC,QAAQ;gBAC/B,eAAe,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;gBAC9B,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE;gBAC7B,QAAQ,EAAE,QAAQ;gBAClB,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAC;gBACtC,OAAO,EAAE,CAAC;gBACV,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;gBACvC,mBAAmB,EAAE,CAAC;gBACtB,WAAW,EAAE,KAAK;gBAClB,OAAO,EAAE,OAAO;gBAChB,oBAAoB,EAAE,CAAC,EAAE,oCAAoC;gBAC7D,oBAAoB,EAAE,KAAK;gBAC3B,eAAe,EAAE,IAAI;gBACrB,OAAO,EAAE,CAAC;gBACV,iBAAiB,EAAE,KAAK;gBACxB,kBAAkB,EAAE,KAAK;gBACzB,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;gBACjC,oBAAoB,EAAE,IAAI;gBAC1B,kBAAkB,EAAE,CAAC;gBACrB,mBAAmB,EAAE,MAAM;gBAC3B,2BAA2B,EAAE,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK;gBACnE,KAAK,EAAE,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,mBAAmB,EAAE;gBAChE,8BAA8B,EAAE,GAAG;gBACnC,cAAc,EAAE,GAAG;gBACnB,UAAU,EAAE,GAAG;gBACf,iCAAiC,EAAE,KAAK;gBACxC,MAAM,EAAE;oBACN,YAAY,EAAE,KAAK;oBACnB,sBAAsB,EAAE,KAAK;oBAC7B,0BAA0B,EAAE,KAAK;oBACjC,WAAW,EAAE,KAAK,EAAE,kCAAkC;iBACvD;gBACD,SAAS,EAAE;oBACT,QAAQ,EAAE,MAAM;oBAChB,UAAU,EAAE,MAAM;oBAClB,uBAAuB,EAAE,KAAK;iBAC/B;gBACD,gCAAgC;gBAChC,cAAc,EAAE,OAAO,EAAE,4BAA4B;gBACrD,WAAW,EAAE,MAAM,EAAE,iCAAiC;gBACtD,WAAW,EAAE,CAAC,EAAE,6CAA6C;gBAC7D,0BAA0B,EAAE,KAAK,EAAE,kCAAkC;gBACrE,kBAAkB,EAAE,KAAK,EAAE,yDAAyD;gBACpF,oBAAoB,EAAE,KAAK,EAAE,sCAAsC;gBACnE,mBAAmB,EAAE,KAAK,EAAE,+CAA+C;gBAC3E,oBAAoB,EAAE,KAAK,EAAE,sCAAsC;gBACnE,gBAAgB,EACd,UAAU,IAAI,mBAAmB;oBAC/B,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE;oBACjD,CAAC,CAAC,KAAK;gBACX,YAAY,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;aAClC,GACD,GACE,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,46 @@
1
+ import type { Meta, StoryObj } from '@storybook/react-vite';
2
+ import { Code } from './code';
3
+ /**
4
+ * Code - Monaco Editor atom component
5
+ *
6
+ * Pure Monaco editor without Box wrapper. This is the base atom that CodeBox uses.
7
+ * Supports syntax highlighting, auto-height, and various editor configurations.
8
+ *
9
+ * Note: For most use cases, use CodeBox (molecule) which includes header and actions.
10
+ */
11
+ declare const meta: Meta<typeof Code>;
12
+ export default meta;
13
+ type Story = StoryObj<typeof Code>;
14
+ /**
15
+ * Default code editor - fills parent container height
16
+ *
17
+ * The dashed border shows the parent container bounds.
18
+ * Code uses height="100%" by default, filling the available space.
19
+ */
20
+ export declare const Default: Story;
21
+ /**
22
+ * With line numbers enabled
23
+ */
24
+ export declare const WithLineNumbers: Story;
25
+ /**
26
+ * Auto-height mode - sizes to content
27
+ *
28
+ * Instead of filling the container, the editor sizes to fit its content.
29
+ * Useful for documentation and standalone code displays.
30
+ */
31
+ export declare const AutoHeight: Story;
32
+ /**
33
+ * Sticky scroll disabled
34
+ *
35
+ * When sticky={false}, the nested context headers won't stick to the top when scrolling.
36
+ * Compare with default (sticky=true) to see the difference.
37
+ */
38
+ export declare const NoStickyScroll: Story;
39
+ /**
40
+ * IDE mode ON - Full Monaco features
41
+ *
42
+ * Enable hover tooltips, validation decorations, and other IDE features.
43
+ * Use for interactive editors like playgrounds where feedback is useful.
44
+ */
45
+ export declare const IdeOn: Story;
46
+ //# sourceMappingURL=code.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"code.stories.d.ts","sourceRoot":"","sources":["../../../src/components/atoms/code.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B;;;;;;;GAOG;AACH,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,IAAI,CAsB3B,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAcnC;;;;;GAKG;AACH,eAAO,MAAM,OAAO,EAAE,KAKrB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,KAM7B,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,UAAU,EAAE,KAsBxB,CAAC;AAkCF;;;;;GAKG;AACH,eAAO,MAAM,cAAc,EAAE,KAM5B,CAAC;AAiBF;;;;;GAKG;AACH,eAAO,MAAM,KAAK,EAAE,KAMnB,CAAC"}