A focused Docker Compose management web application.
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

feat: basic compose editor

Brooke bbba0d49 1422bcf3

+289 -1
+6
packages/panel/package.json
··· 13 13 "lint": "prettier --check ." 14 14 }, 15 15 "devDependencies": { 16 + "@catppuccin/codemirror": "^1.0.3", 16 17 "@catppuccin/palette": "^1.7.1", 18 + "@codemirror/autocomplete": "^6.20.1", 19 + "@codemirror/commands": "^6.10.3", 20 + "@codemirror/lang-yaml": "^6.1.2", 21 + "@codemirror/view": "^6.40.0", 17 22 "@fontsource-variable/open-sans": "^5.2.7", 18 23 "@fontsource/dejavu-mono": "^5.2.5", 19 24 "@fortawesome/fontawesome-common-types": "6.7.2", ··· 27 32 "@xterm/addon-fit": "^0.11.0", 28 33 "@xterm/addon-web-links": "^0.12.0", 29 34 "@xterm/xterm": "^6.0.0", 35 + "codemirror": "^6.0.2", 30 36 "melt": "^0.44.0", 31 37 "openapi-fetch": "^0.17.0", 32 38 "openapi-typescript": "^7.13.0",
+91
packages/panel/src/lib/component/ComposeEditor.svelte
··· 1 + <script lang="ts"> 2 + import { catppuccinMacchiato } from "@catppuccin/codemirror"; 3 + import { EditorView, keymap } from "@codemirror/view"; 4 + import type { Attachment } from "svelte/attachments"; 5 + import { indentWithTab } from "@codemirror/commands"; 6 + import { yaml } from "@codemirror/lang-yaml"; 7 + import { basicSetup } from "codemirror"; 8 + 9 + let { content = $bindable() }: { content: string } = $props(); 10 + 11 + let focused = $state(false); 12 + 13 + const editor: Attachment<HTMLElement> = (parent) => { 14 + const view = new EditorView({ 15 + extensions: [ 16 + yaml(), 17 + basicSetup, 18 + keymap.of([indentWithTab]), 19 + catppuccinMacchiato, 20 + 21 + // Update content on every change 22 + EditorView.updateListener.of((update) => { 23 + if (update.docChanged) { 24 + content = update.state.doc.toString(); 25 + } 26 + }), 27 + ], 28 + doc: content, 29 + parent, 30 + }); 31 + 32 + return () => { 33 + view.destroy(); 34 + }; 35 + }; 36 + </script> 37 + 38 + <div class="container"> 39 + {#if focused} 40 + <div class="message">Esc</div> 41 + {/if} 42 + <div onfocusin={() => (focused = true)} onfocusout={() => (focused = false)} class="editor" {@attach editor}></div> 43 + </div> 44 + 45 + <style lang="scss"> 46 + .container { 47 + position: relative; 48 + 49 + display: flex; 50 + align-items: end; 51 + justify-content: end; 52 + } 53 + 54 + .message { 55 + position: absolute; 56 + z-index: 10; 57 + 58 + padding: 5px 10px; 59 + margin: 10px; 60 + 61 + background-color: var(--crust); 62 + border: var(--subtext0); 63 + border-radius: 5px; 64 + } 65 + 66 + .editor { 67 + background-color: var(--base); 68 + border-radius: 10px; 69 + padding: 10px; 70 + width: 100%; 71 + 72 + & > :global(.cm-focused) { 73 + outline: none; 74 + } 75 + 76 + & :global(.cm-button) { 77 + border-color: var(--subtext0); 78 + background: transparent; 79 + } 80 + 81 + & :global(.cm-panels) { 82 + border-radius: 10px; 83 + padding: 5px; 84 + border: none; 85 + } 86 + 87 + & :global(.cm-textfield) { 88 + border-color: var(--subtext0); 89 + } 90 + } 91 + </style>
+3 -1
packages/panel/src/routes/(authenticated)/projects/[project]/+page.svelte
··· 1 1 <script lang="ts"> 2 2 import { faCircleInfo, faGears, faLayerGroup, faPencil } from "@fortawesome/free-solid-svg-icons"; 3 + import ComposeEditor from "$lib/component/ComposeEditor.svelte"; 3 4 import LogTerminal from "$lib/component/LogTerminal.svelte"; 4 5 import StatusIcon from "$lib/component/StatusIcon.svelte"; 5 6 import Tabs from "$lib/component/Tabs.svelte"; ··· 44 45 {/snippet} 45 46 46 47 {#snippet compose()} 47 - <h2>Compose Tab</h2> 48 + <h2>Compose</h2> 49 + <ComposeEditor bind:content={data.compose} /> 48 50 {/snippet} 49 51 50 52 {#snippet variables()}
+189
pnpm-lock.yaml
··· 10 10 11 11 packages/panel: 12 12 devDependencies: 13 + '@catppuccin/codemirror': 14 + specifier: ^1.0.3 15 + version: 1.0.3 13 16 '@catppuccin/palette': 14 17 specifier: ^1.7.1 15 18 version: 1.7.1 19 + '@codemirror/autocomplete': 20 + specifier: ^6.20.1 21 + version: 6.20.1 22 + '@codemirror/commands': 23 + specifier: ^6.10.3 24 + version: 6.10.3 25 + '@codemirror/lang-yaml': 26 + specifier: ^6.1.2 27 + version: 6.1.2 28 + '@codemirror/view': 29 + specifier: ^6.40.0 30 + version: 6.40.0 16 31 '@fontsource-variable/open-sans': 17 32 specifier: ^5.2.7 18 33 version: 5.2.7 ··· 52 67 '@xterm/xterm': 53 68 specifier: ^6.0.0 54 69 version: 6.0.0 70 + codemirror: 71 + specifier: ^6.0.2 72 + version: 6.0.2 55 73 melt: 56 74 specifier: ^0.44.0 57 75 version: 0.44.0(@floating-ui/dom@1.7.6)(svelte@5.53.7) ··· 105 123 resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==} 106 124 engines: {node: '>=6.9.0'} 107 125 126 + '@catppuccin/codemirror@1.0.3': 127 + resolution: {integrity: sha512-P1ZCj4DZVLqr/TNz28m3aaF2Elrikpb8OOnzN0Vyf95Un4pTWTkCSvhbskbnJbnNJ87Rfvt3fXoaUj4o55X30Q==} 128 + 108 129 '@catppuccin/palette@1.7.1': 109 130 resolution: {integrity: sha512-aRc1tbzrevOTV7nFTT9SRdF26w/MIwT4Jwt4fDMc9itRZUDXCuEDBLyz4TQMlqO9ZP8mf5Hu4Jr6D03NLFc6Gw==} 131 + 132 + '@codemirror/autocomplete@6.20.1': 133 + resolution: {integrity: sha512-1cvg3Vz1dSSToCNlJfRA2WSI4ht3K+WplO0UMOgmUYPivCyy2oueZY6Lx7M9wThm7SDUBViRmuT+OG/i8+ON9A==} 134 + 135 + '@codemirror/commands@6.10.3': 136 + resolution: {integrity: sha512-JFRiqhKu+bvSkDLI+rUhJwSxQxYb759W5GBezE8Uc8mHLqC9aV/9aTC7yJSqCtB3F00pylrLCwnyS91Ap5ej4Q==} 137 + 138 + '@codemirror/lang-yaml@6.1.2': 139 + resolution: {integrity: sha512-dxrfG8w5Ce/QbT7YID7mWZFKhdhsaTNOYjOkSIMt1qmC4VQnXSDSYVHHHn8k6kJUfIhtLo8t1JJgltlxWdsITw==} 140 + 141 + '@codemirror/language@6.12.2': 142 + resolution: {integrity: sha512-jEPmz2nGGDxhRTg3lTpzmIyGKxz3Gp3SJES4b0nAuE5SWQoKdT5GoQ69cwMmFd+wvFUhYirtDTr0/DRHpQAyWg==} 143 + 144 + '@codemirror/lint@6.9.5': 145 + resolution: {integrity: sha512-GElsbU9G7QT9xXhpUg1zWGmftA/7jamh+7+ydKRuT0ORpWS3wOSP0yT1FOlIZa7mIJjpVPipErsyvVqB9cfTFA==} 146 + 147 + '@codemirror/search@6.6.0': 148 + resolution: {integrity: sha512-koFuNXcDvyyotWcgOnZGmY7LZqEOXZaaxD/j6n18TCLx2/9HieZJ5H6hs1g8FiRxBD0DNfs0nXn17g872RmYdw==} 149 + 150 + '@codemirror/state@6.6.0': 151 + resolution: {integrity: sha512-4nbvra5R5EtiCzr9BTHiTLc+MLXK2QGiAVYMyi8PkQd3SR+6ixar/Q/01Fa21TBIDOZXgeWV4WppsQolSreAPQ==} 152 + 153 + '@codemirror/view@6.40.0': 154 + resolution: {integrity: sha512-WA0zdU7xfF10+5I3HhUUq3kqOx3KjqmtQ9lqZjfK7jtYk4G72YW9rezcSywpaUMCWOMlq+6E0pO1IWg1TNIhtg==} 110 155 111 156 '@esbuild/aix-ppc64@0.25.12': 112 157 resolution: {integrity: sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==} ··· 315 360 '@jridgewell/trace-mapping@0.3.31': 316 361 resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} 317 362 363 + '@lezer/common@1.5.1': 364 + resolution: {integrity: sha512-6YRVG9vBkaY7p1IVxL4s44n5nUnaNnGM2/AckNgYOnxTG2kWh1vR8BMxPseWPjRNpb5VtXnMpeYAEAADoRV1Iw==} 365 + 366 + '@lezer/highlight@1.2.3': 367 + resolution: {integrity: sha512-qXdH7UqTvGfdVBINrgKhDsVTJTxactNNxLk7+UMwZhU13lMHaOBlJe9Vqp907ya56Y3+ed2tlqzys7jDkTmW0g==} 368 + 369 + '@lezer/lr@1.4.8': 370 + resolution: {integrity: sha512-bPWa0Pgx69ylNlMlPvBPryqeLYQjyJjqPx+Aupm5zydLIF3NE+6MMLT8Yi23Bd9cif9VS00aUebn+6fDIGBcDA==} 371 + 372 + '@lezer/yaml@1.0.4': 373 + resolution: {integrity: sha512-2lrrHqxalACEbxIbsjhqGpSW8kWpUKuY6RHgnSAFZa6qK62wvnPxA8hGOwOoDbwHcOFs5M4o27mjGu+P7TvBmw==} 374 + 375 + '@marijn/find-cluster-break@1.0.2': 376 + resolution: {integrity: sha512-l0h88YhZFyKdXIFNfSWpyjStDjGHwZ/U7iobcK1cQQD8sejsONdQtTVU+1wVN1PBw40PiiHB1vA5S7VTfQiP9g==} 377 + 318 378 '@parcel/watcher-android-arm64@2.5.6': 319 379 resolution: {integrity: sha512-YQxSS34tPF/6ZG7r/Ih9xy+kP/WwediEUsqmtf0cuCV5TPPKw/PQHRhueUo6JdeFJaqV3pyjm0GdYjZotbRt/A==} 320 380 engines: {node: '>= 10.0.0'} ··· 344 404 engines: {node: '>= 10.0.0'} 345 405 cpu: [arm] 346 406 os: [linux] 407 + libc: [glibc] 347 408 348 409 '@parcel/watcher-linux-arm-musl@2.5.6': 349 410 resolution: {integrity: sha512-Ve3gUCG57nuUUSyjBq/MAM0CzArtuIOxsBdQ+ftz6ho8n7s1i9E1Nmk/xmP323r2YL0SONs1EuwqBp2u1k5fxg==} 350 411 engines: {node: '>= 10.0.0'} 351 412 cpu: [arm] 352 413 os: [linux] 414 + libc: [musl] 353 415 354 416 '@parcel/watcher-linux-arm64-glibc@2.5.6': 355 417 resolution: {integrity: sha512-f2g/DT3NhGPdBmMWYoxixqYr3v/UXcmLOYy16Bx0TM20Tchduwr4EaCbmxh1321TABqPGDpS8D/ggOTaljijOA==} 356 418 engines: {node: '>= 10.0.0'} 357 419 cpu: [arm64] 358 420 os: [linux] 421 + libc: [glibc] 359 422 360 423 '@parcel/watcher-linux-arm64-musl@2.5.6': 361 424 resolution: {integrity: sha512-qb6naMDGlbCwdhLj6hgoVKJl2odL34z2sqkC7Z6kzir8b5W65WYDpLB6R06KabvZdgoHI/zxke4b3zR0wAbDTA==} 362 425 engines: {node: '>= 10.0.0'} 363 426 cpu: [arm64] 364 427 os: [linux] 428 + libc: [musl] 365 429 366 430 '@parcel/watcher-linux-x64-glibc@2.5.6': 367 431 resolution: {integrity: sha512-kbT5wvNQlx7NaGjzPFu8nVIW1rWqV780O7ZtkjuWaPUgpv2NMFpjYERVi0UYj1msZNyCzGlaCWEtzc+exjMGbQ==} 368 432 engines: {node: '>= 10.0.0'} 369 433 cpu: [x64] 370 434 os: [linux] 435 + libc: [glibc] 371 436 372 437 '@parcel/watcher-linux-x64-musl@2.5.6': 373 438 resolution: {integrity: sha512-1JRFeC+h7RdXwldHzTsmdtYR/Ku8SylLgTU/reMuqdVD7CtLwf0VR1FqeprZ0eHQkO0vqsbvFLXUmYm/uNKJBg==} 374 439 engines: {node: '>= 10.0.0'} 375 440 cpu: [x64] 376 441 os: [linux] 442 + libc: [musl] 377 443 378 444 '@parcel/watcher-win32-arm64@2.5.6': 379 445 resolution: {integrity: sha512-3ukyebjc6eGlw9yRt678DxVF7rjXatWiHvTXqphZLvo7aC5NdEgFufVwjFfY51ijYEWpXbqF5jtrK275z52D4Q==} ··· 444 510 resolution: {integrity: sha512-t4ONHboXi/3E0rT6OZl1pKbl2Vgxf9vJfWgmUoCEVQVxhW6Cw/c8I6hbbu7DAvgp82RKiH7TpLwxnJeKv2pbsw==} 445 511 cpu: [arm] 446 512 os: [linux] 513 + libc: [glibc] 447 514 448 515 '@rollup/rollup-linux-arm-musleabihf@4.59.0': 449 516 resolution: {integrity: sha512-CikFT7aYPA2ufMD086cVORBYGHffBo4K8MQ4uPS/ZnY54GKj36i196u8U+aDVT2LX4eSMbyHtyOh7D7Zvk2VvA==} 450 517 cpu: [arm] 451 518 os: [linux] 519 + libc: [musl] 452 520 453 521 '@rollup/rollup-linux-arm64-gnu@4.59.0': 454 522 resolution: {integrity: sha512-jYgUGk5aLd1nUb1CtQ8E+t5JhLc9x5WdBKew9ZgAXg7DBk0ZHErLHdXM24rfX+bKrFe+Xp5YuJo54I5HFjGDAA==} 455 523 cpu: [arm64] 456 524 os: [linux] 525 + libc: [glibc] 457 526 458 527 '@rollup/rollup-linux-arm64-musl@4.59.0': 459 528 resolution: {integrity: sha512-peZRVEdnFWZ5Bh2KeumKG9ty7aCXzzEsHShOZEFiCQlDEepP1dpUl/SrUNXNg13UmZl+gzVDPsiCwnV1uI0RUA==} 460 529 cpu: [arm64] 461 530 os: [linux] 531 + libc: [musl] 462 532 463 533 '@rollup/rollup-linux-loong64-gnu@4.59.0': 464 534 resolution: {integrity: sha512-gbUSW/97f7+r4gHy3Jlup8zDG190AuodsWnNiXErp9mT90iCy9NKKU0Xwx5k8VlRAIV2uU9CsMnEFg/xXaOfXg==} 465 535 cpu: [loong64] 466 536 os: [linux] 537 + libc: [glibc] 467 538 468 539 '@rollup/rollup-linux-loong64-musl@4.59.0': 469 540 resolution: {integrity: sha512-yTRONe79E+o0FWFijasoTjtzG9EBedFXJMl888NBEDCDV9I2wGbFFfJQQe63OijbFCUZqxpHz1GzpbtSFikJ4Q==} 470 541 cpu: [loong64] 471 542 os: [linux] 543 + libc: [musl] 472 544 473 545 '@rollup/rollup-linux-ppc64-gnu@4.59.0': 474 546 resolution: {integrity: sha512-sw1o3tfyk12k3OEpRddF68a1unZ5VCN7zoTNtSn2KndUE+ea3m3ROOKRCZxEpmT9nsGnogpFP9x6mnLTCaoLkA==} 475 547 cpu: [ppc64] 476 548 os: [linux] 549 + libc: [glibc] 477 550 478 551 '@rollup/rollup-linux-ppc64-musl@4.59.0': 479 552 resolution: {integrity: sha512-+2kLtQ4xT3AiIxkzFVFXfsmlZiG5FXYW7ZyIIvGA7Bdeuh9Z0aN4hVyXS/G1E9bTP/vqszNIN/pUKCk/BTHsKA==} 480 553 cpu: [ppc64] 481 554 os: [linux] 555 + libc: [musl] 482 556 483 557 '@rollup/rollup-linux-riscv64-gnu@4.59.0': 484 558 resolution: {integrity: sha512-NDYMpsXYJJaj+I7UdwIuHHNxXZ/b/N2hR15NyH3m2qAtb/hHPA4g4SuuvrdxetTdndfj9b1WOmy73kcPRoERUg==} 485 559 cpu: [riscv64] 486 560 os: [linux] 561 + libc: [glibc] 487 562 488 563 '@rollup/rollup-linux-riscv64-musl@4.59.0': 489 564 resolution: {integrity: sha512-nLckB8WOqHIf1bhymk+oHxvM9D3tyPndZH8i8+35p/1YiVoVswPid2yLzgX7ZJP0KQvnkhM4H6QZ5m0LzbyIAg==} 490 565 cpu: [riscv64] 491 566 os: [linux] 567 + libc: [musl] 492 568 493 569 '@rollup/rollup-linux-s390x-gnu@4.59.0': 494 570 resolution: {integrity: sha512-oF87Ie3uAIvORFBpwnCvUzdeYUqi2wY6jRFWJAy1qus/udHFYIkplYRW+wo+GRUP4sKzYdmE1Y3+rY5Gc4ZO+w==} 495 571 cpu: [s390x] 496 572 os: [linux] 573 + libc: [glibc] 497 574 498 575 '@rollup/rollup-linux-x64-gnu@4.59.0': 499 576 resolution: {integrity: sha512-3AHmtQq/ppNuUspKAlvA8HtLybkDflkMuLK4DPo77DfthRb71V84/c4MlWJXixZz4uruIH4uaa07IqoAkG64fg==} 500 577 cpu: [x64] 501 578 os: [linux] 579 + libc: [glibc] 502 580 503 581 '@rollup/rollup-linux-x64-musl@4.59.0': 504 582 resolution: {integrity: sha512-2UdiwS/9cTAx7qIUZB/fWtToJwvt0Vbo0zmnYt7ED35KPg13Q0ym1g442THLC7VyI6JfYTP4PiSOWyoMdV2/xg==} 505 583 cpu: [x64] 506 584 os: [linux] 585 + libc: [musl] 507 586 508 587 '@rollup/rollup-openbsd-x64@4.59.0': 509 588 resolution: {integrity: sha512-M3bLRAVk6GOwFlPTIxVBSYKUaqfLrn8l0psKinkCFxl4lQvOSz8ZrKDz2gxcBwHFpci0B6rttydI4IpS4IS/jQ==} ··· 660 739 resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} 661 740 engines: {node: '>=6'} 662 741 742 + codemirror@6.0.2: 743 + resolution: {integrity: sha512-VhydHotNW5w1UGK0Qj96BwSk/Zqbp9WbnyK2W/eVMv4QyF41INRGpjUhFJY7/uDNuudSc33a/PKr4iDqRduvHw==} 744 + 663 745 color-convert@2.0.1: 664 746 resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 665 747 engines: {node: '>=7.0.0'} ··· 674 756 resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==} 675 757 engines: {node: '>= 0.6'} 676 758 759 + crelt@1.0.6: 760 + resolution: {integrity: sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==} 761 + 677 762 debug@4.4.3: 678 763 resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} 679 764 engines: {node: '>=6.0'} ··· 938 1023 resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} 939 1024 engines: {node: '>=0.10.0'} 940 1025 1026 + style-mod@4.1.3: 1027 + resolution: {integrity: sha512-i/n8VsZydrugj3Iuzll8+x/00GH2vnYsk1eomD8QiRrSAeW6ItbCQDtfXCeJHd0iwiNagqjQkvpvREEPtW3IoQ==} 1028 + 941 1029 supports-color@10.2.2: 942 1030 resolution: {integrity: sha512-SS+jx45GF1QjgEXQx4NJZV9ImqmO2NPz5FNsIHrsDjh2YsHnawpan7SNQ1o8NuhrbHZy9AZhIoCUiCeaW/C80g==} 943 1031 engines: {node: '>=18'} ··· 1042 1130 vite: 1043 1131 optional: true 1044 1132 1133 + w3c-keyname@2.2.8: 1134 + resolution: {integrity: sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==} 1135 + 1045 1136 yaml-ast-parser@0.0.43: 1046 1137 resolution: {integrity: sha512-2PTINUwsRqSd+s8XxKaJWQlUuEMHJQyEuh2edBbW8KNJz0SJPwUSD2zRWqezFEdN7IzAgeuYHFUCF7o8zRdZ0A==} 1047 1138 ··· 1062 1153 1063 1154 '@babel/helper-validator-identifier@7.28.5': {} 1064 1155 1156 + '@catppuccin/codemirror@1.0.3': 1157 + dependencies: 1158 + '@catppuccin/palette': 1.7.1 1159 + '@codemirror/language': 6.12.2 1160 + '@codemirror/state': 6.6.0 1161 + '@codemirror/view': 6.40.0 1162 + '@lezer/highlight': 1.2.3 1163 + 1065 1164 '@catppuccin/palette@1.7.1': {} 1066 1165 1166 + '@codemirror/autocomplete@6.20.1': 1167 + dependencies: 1168 + '@codemirror/language': 6.12.2 1169 + '@codemirror/state': 6.6.0 1170 + '@codemirror/view': 6.40.0 1171 + '@lezer/common': 1.5.1 1172 + 1173 + '@codemirror/commands@6.10.3': 1174 + dependencies: 1175 + '@codemirror/language': 6.12.2 1176 + '@codemirror/state': 6.6.0 1177 + '@codemirror/view': 6.40.0 1178 + '@lezer/common': 1.5.1 1179 + 1180 + '@codemirror/lang-yaml@6.1.2': 1181 + dependencies: 1182 + '@codemirror/autocomplete': 6.20.1 1183 + '@codemirror/language': 6.12.2 1184 + '@codemirror/state': 6.6.0 1185 + '@lezer/common': 1.5.1 1186 + '@lezer/highlight': 1.2.3 1187 + '@lezer/lr': 1.4.8 1188 + '@lezer/yaml': 1.0.4 1189 + 1190 + '@codemirror/language@6.12.2': 1191 + dependencies: 1192 + '@codemirror/state': 6.6.0 1193 + '@codemirror/view': 6.40.0 1194 + '@lezer/common': 1.5.1 1195 + '@lezer/highlight': 1.2.3 1196 + '@lezer/lr': 1.4.8 1197 + style-mod: 4.1.3 1198 + 1199 + '@codemirror/lint@6.9.5': 1200 + dependencies: 1201 + '@codemirror/state': 6.6.0 1202 + '@codemirror/view': 6.40.0 1203 + crelt: 1.0.6 1204 + 1205 + '@codemirror/search@6.6.0': 1206 + dependencies: 1207 + '@codemirror/state': 6.6.0 1208 + '@codemirror/view': 6.40.0 1209 + crelt: 1.0.6 1210 + 1211 + '@codemirror/state@6.6.0': 1212 + dependencies: 1213 + '@marijn/find-cluster-break': 1.0.2 1214 + 1215 + '@codemirror/view@6.40.0': 1216 + dependencies: 1217 + '@codemirror/state': 6.6.0 1218 + crelt: 1.0.6 1219 + style-mod: 4.1.3 1220 + w3c-keyname: 2.2.8 1221 + 1067 1222 '@esbuild/aix-ppc64@0.25.12': 1068 1223 optional: true 1069 1224 ··· 1194 1349 '@jridgewell/resolve-uri': 3.1.2 1195 1350 '@jridgewell/sourcemap-codec': 1.5.5 1196 1351 1352 + '@lezer/common@1.5.1': {} 1353 + 1354 + '@lezer/highlight@1.2.3': 1355 + dependencies: 1356 + '@lezer/common': 1.5.1 1357 + 1358 + '@lezer/lr@1.4.8': 1359 + dependencies: 1360 + '@lezer/common': 1.5.1 1361 + 1362 + '@lezer/yaml@1.0.4': 1363 + dependencies: 1364 + '@lezer/common': 1.5.1 1365 + '@lezer/highlight': 1.2.3 1366 + '@lezer/lr': 1.4.8 1367 + 1368 + '@marijn/find-cluster-break@1.0.2': {} 1369 + 1197 1370 '@parcel/watcher-android-arm64@2.5.6': 1198 1371 optional: true 1199 1372 ··· 1464 1637 1465 1638 clsx@2.1.1: {} 1466 1639 1640 + codemirror@6.0.2: 1641 + dependencies: 1642 + '@codemirror/autocomplete': 6.20.1 1643 + '@codemirror/commands': 6.10.3 1644 + '@codemirror/language': 6.12.2 1645 + '@codemirror/lint': 6.9.5 1646 + '@codemirror/search': 6.6.0 1647 + '@codemirror/state': 6.6.0 1648 + '@codemirror/view': 6.40.0 1649 + 1467 1650 color-convert@2.0.1: 1468 1651 dependencies: 1469 1652 color-name: 1.1.4 ··· 1473 1656 colorette@1.4.0: {} 1474 1657 1475 1658 cookie@0.6.0: {} 1659 + 1660 + crelt@1.0.6: {} 1476 1661 1477 1662 debug@4.4.3(supports-color@10.2.2): 1478 1663 dependencies: ··· 1755 1940 1756 1941 source-map-js@1.2.1: {} 1757 1942 1943 + style-mod@4.1.3: {} 1944 + 1758 1945 supports-color@10.2.2: {} 1759 1946 1760 1947 supports-color@7.2.0: ··· 1833 2020 vitefu@1.1.2(vite@6.4.1(@types/node@25.3.5)(sass@1.97.3)): 1834 2021 optionalDependencies: 1835 2022 vite: 6.4.1(@types/node@25.3.5)(sass@1.97.3) 2023 + 2024 + w3c-keyname@2.2.8: {} 1836 2025 1837 2026 yaml-ast-parser@0.0.43: {} 1838 2027