@energy8platform/golem 0.1.0

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 (62) hide show
  1. package/README.md +376 -0
  2. package/bin/golem.js +2 -0
  3. package/dist/editor.css +701 -0
  4. package/dist/editor.js +59202 -0
  5. package/dist/lib/cli.d.ts +1 -0
  6. package/dist/lib/cli.js +5521 -0
  7. package/dist/lib/cli.js.map +7 -0
  8. package/dist/lib/editor/api.d.ts +42 -0
  9. package/dist/lib/editor/app.d.ts +13 -0
  10. package/dist/lib/editor/atlas-detect.d.ts +28 -0
  11. package/dist/lib/editor/atlas-panel.d.ts +1 -0
  12. package/dist/lib/editor/atlas.d.ts +39 -0
  13. package/dist/lib/editor/gizmo-math.d.ts +36 -0
  14. package/dist/lib/editor/gizmos.d.ts +185 -0
  15. package/dist/lib/editor/layers.d.ts +1 -0
  16. package/dist/lib/editor/library.d.ts +3 -0
  17. package/dist/lib/editor/panels.d.ts +26 -0
  18. package/dist/lib/editor/props.d.ts +19 -0
  19. package/dist/lib/editor/server.d.ts +11 -0
  20. package/dist/lib/editor/stage.d.ts +222 -0
  21. package/dist/lib/editor/store.d.ts +1053 -0
  22. package/dist/lib/editor/timeline-layout.d.ts +64 -0
  23. package/dist/lib/editor/timeline.d.ts +45 -0
  24. package/dist/lib/editor-entry.d.ts +2 -0
  25. package/dist/lib/editor-entry.js +5490 -0
  26. package/dist/lib/editor-entry.js.map +7 -0
  27. package/dist/lib/harness.js +51012 -0
  28. package/dist/lib/ktx2.d.ts +15 -0
  29. package/dist/lib/mcp-server.d.ts +2 -0
  30. package/dist/lib/preview/harness.d.ts +16 -0
  31. package/dist/lib/preview/render-preview.d.ts +27 -0
  32. package/dist/lib/preview/viewer.d.ts +1 -0
  33. package/dist/lib/rig-anim.d.ts +109 -0
  34. package/dist/lib/rig-api.d.ts +26 -0
  35. package/dist/lib/rig-atlas.d.ts +20 -0
  36. package/dist/lib/rig-check.d.ts +45 -0
  37. package/dist/lib/rig-constraints.d.ts +59 -0
  38. package/dist/lib/rig-deform.d.ts +27 -0
  39. package/dist/lib/rig-format.d.ts +5036 -0
  40. package/dist/lib/rig-history.d.ts +21 -0
  41. package/dist/lib/rig-import-layers.d.ts +32 -0
  42. package/dist/lib/rig-io.d.ts +9 -0
  43. package/dist/lib/rig-mesh-image.d.ts +2 -0
  44. package/dist/lib/rig-mesh.d.ts +143 -0
  45. package/dist/lib/rig-path.d.ts +101 -0
  46. package/dist/lib/rig-presets.d.ts +101 -0
  47. package/dist/lib/rig-queue.d.ts +2 -0
  48. package/dist/lib/rig-runtime.d.ts +70 -0
  49. package/dist/lib/rig-state.d.ts +64 -0
  50. package/dist/lib/rig-symbol.d.ts +60 -0
  51. package/dist/lib/rig-template-library.d.ts +3 -0
  52. package/dist/lib/rig-templates.d.ts +46 -0
  53. package/dist/lib/rig-tools.d.ts +376 -0
  54. package/dist/lib/runtime.d.ts +9 -0
  55. package/dist/lib/runtime.js +1584 -0
  56. package/dist/lib/runtime.js.map +7 -0
  57. package/dist/lib/spine-import.d.ts +68 -0
  58. package/dist/lib/tools.d.ts +2 -0
  59. package/dist/lib/tools.js +5242 -0
  60. package/dist/lib/tools.js.map +7 -0
  61. package/editor.html +3 -0
  62. package/package.json +96 -0
@@ -0,0 +1,701 @@
1
+ /* src/editor/editor.css */
2
+ :root {
3
+ --bg:#1E1E1E;
4
+ --panel:#1F1F1F;
5
+ --chrome:#181818;
6
+ --line:#2B2B2B;
7
+ --accent:#0078D4;
8
+ --accent-hover:#026EC1;
9
+ --fg:#CCCCCC;
10
+ --fg2:#9D9D9D;
11
+ --ctl:#313131;
12
+ --ctl-hover:#3C3C3C;
13
+ --ctl-line:#3C3C3C;
14
+ --err:#F14C4C;
15
+ --warn:#CCA700;
16
+ --r-xs:2px;
17
+ --r-s:4px;
18
+ --r-m:6px;
19
+ --r-l:8px;
20
+ --r-xl:12px;
21
+ --gap:6px;
22
+ }
23
+ html,
24
+ body {
25
+ margin: 0;
26
+ height: 100%;
27
+ background: var(--chrome);
28
+ color: var(--fg);
29
+ font:
30
+ 13px -apple-system,
31
+ "Segoe UI",
32
+ sans-serif;
33
+ user-select: none;
34
+ }
35
+ #app {
36
+ display: grid;
37
+ height: 100%;
38
+ gap: var(--gap);
39
+ grid-template-rows: 36px 1fr var(--tl-h,220px) 22px;
40
+ grid-template-columns: var(--left-w,240px) 1fr var(--right-w,280px);
41
+ grid-template-areas: "top top top" "tree stage props" "tl tl tl" "status status status";
42
+ }
43
+ .top,
44
+ .tree,
45
+ .props,
46
+ .tl,
47
+ .status {
48
+ border: 1px solid var(--line);
49
+ }
50
+ .top,
51
+ .tree,
52
+ .props,
53
+ .tl,
54
+ .status,
55
+ #stage {
56
+ border-radius: var(--r-m);
57
+ }
58
+ .top {
59
+ grid-area: top;
60
+ display: flex;
61
+ align-items: center;
62
+ gap: 8px;
63
+ padding: 0 8px;
64
+ background: var(--panel);
65
+ }
66
+ .tree {
67
+ grid-area: tree;
68
+ overflow: auto;
69
+ background: var(--panel);
70
+ padding: 4px 0;
71
+ }
72
+ #stage {
73
+ grid-area: stage;
74
+ position: relative;
75
+ overflow: hidden;
76
+ background: var(--bg);
77
+ }
78
+ #stage canvas {
79
+ position: absolute;
80
+ inset: 0;
81
+ }
82
+ .props {
83
+ grid-area: props;
84
+ overflow: auto;
85
+ background: var(--panel);
86
+ padding: 8px;
87
+ }
88
+ .tl {
89
+ grid-area: tl;
90
+ background: var(--panel);
91
+ position: relative;
92
+ overflow: hidden;
93
+ }
94
+ .tl canvas {
95
+ position: absolute;
96
+ inset: 0;
97
+ width: 100%;
98
+ height: 100%;
99
+ display: block;
100
+ }
101
+ .status {
102
+ grid-area: status;
103
+ display: flex;
104
+ gap: 16px;
105
+ align-items: center;
106
+ padding: 0 8px;
107
+ background: var(--panel);
108
+ color: var(--fg2);
109
+ font-size: 12px;
110
+ }
111
+ .status.error {
112
+ color: var(--err);
113
+ }
114
+ .status.warn {
115
+ color: var(--warn);
116
+ }
117
+ .status a.diff {
118
+ color: var(--accent);
119
+ cursor: pointer;
120
+ text-decoration: underline;
121
+ }
122
+ .status .view {
123
+ margin-left: auto;
124
+ font-variant-numeric: tabular-nums;
125
+ white-space: nowrap;
126
+ }
127
+ .popover {
128
+ position: absolute;
129
+ z-index: 5;
130
+ top: calc(36px + var(--gap));
131
+ left: 8px;
132
+ right: 8px;
133
+ max-height: 50vh;
134
+ overflow: auto;
135
+ margin: 0;
136
+ padding: 8px;
137
+ background: var(--panel);
138
+ border: 1px solid var(--ctl-line);
139
+ border-radius: var(--r-l);
140
+ box-shadow: 0 8px 24px #0009;
141
+ color: var(--fg);
142
+ font:
143
+ 12px ui-monospace,
144
+ SFMono-Regular,
145
+ Menlo,
146
+ monospace;
147
+ white-space: pre-wrap;
148
+ }
149
+ .findings .f {
150
+ display: flex;
151
+ gap: 8px;
152
+ align-items: baseline;
153
+ padding: 3px 6px;
154
+ border-radius: var(--r-xs);
155
+ cursor: pointer;
156
+ white-space: normal;
157
+ }
158
+ .findings .f:hover {
159
+ background: var(--ctl);
160
+ }
161
+ .findings .f.error .code {
162
+ color: var(--err);
163
+ }
164
+ .findings .f.warn .code {
165
+ color: var(--warn);
166
+ }
167
+ .findings .code {
168
+ flex: 0 0 110px;
169
+ }
170
+ .findings .subject {
171
+ flex: 0 0 130px;
172
+ color: var(--fg);
173
+ }
174
+ .findings .at {
175
+ flex: 0 0 120px;
176
+ color: var(--accent);
177
+ }
178
+ .findings .msg {
179
+ color: var(--fg2);
180
+ }
181
+ .top button.check .err {
182
+ color: var(--err);
183
+ }
184
+ .top button.check .warn {
185
+ color: var(--warn);
186
+ }
187
+ .top button.check.stale {
188
+ opacity: .55;
189
+ }
190
+ .tree .node .warn {
191
+ color: var(--warn);
192
+ }
193
+ .tree h4.group {
194
+ padding: 0 8px;
195
+ cursor: default;
196
+ }
197
+ .tree .node.dragging {
198
+ opacity: .5;
199
+ }
200
+ .tree .node.drop {
201
+ background: var(--ctl);
202
+ box-shadow: inset 0 0 0 1px var(--accent);
203
+ }
204
+ .menu {
205
+ position: fixed;
206
+ z-index: 6;
207
+ min-width: 160px;
208
+ padding: 4px 0;
209
+ background: var(--panel);
210
+ border: 1px solid var(--ctl-line);
211
+ border-radius: var(--r-l);
212
+ box-shadow: 0 8px 24px #0009;
213
+ }
214
+ .menu .item {
215
+ padding: 4px 12px;
216
+ cursor: pointer;
217
+ white-space: nowrap;
218
+ }
219
+ .menu .item:hover {
220
+ background: var(--accent);
221
+ color: #fff;
222
+ }
223
+ button,
224
+ select,
225
+ input {
226
+ font: inherit;
227
+ color: var(--fg);
228
+ background: var(--ctl);
229
+ border: 1px solid var(--ctl-line);
230
+ border-radius: var(--r-s);
231
+ padding: 3px 8px;
232
+ transition: background .1s, border-color .1s;
233
+ }
234
+ button:hover:not(:disabled),
235
+ select:hover,
236
+ input:hover:not([type=range]) {
237
+ background: var(--ctl-hover);
238
+ border-color: var(--fg2);
239
+ }
240
+ button:active:not(:disabled) {
241
+ background: var(--ctl-line);
242
+ }
243
+ button:focus-visible,
244
+ select:focus-visible,
245
+ input:focus-visible,
246
+ .key:focus-visible {
247
+ outline: 1px solid var(--accent);
248
+ outline-offset: 1px;
249
+ }
250
+ select:focus,
251
+ input:focus {
252
+ border-color: var(--accent);
253
+ outline: none;
254
+ }
255
+ button:disabled {
256
+ opacity: .45;
257
+ cursor: default;
258
+ }
259
+ button.on {
260
+ background: var(--accent);
261
+ border-color: var(--accent);
262
+ color: #fff;
263
+ }
264
+ button.on:hover:not(:disabled) {
265
+ background: var(--accent-hover);
266
+ border-color: var(--accent-hover);
267
+ }
268
+ select {
269
+ appearance: none;
270
+ padding-right: 20px;
271
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%239D9D9D' stroke-width='1.2'%3E%3Cpath d='M4 6.5l4 4 4-4'/%3E%3C/svg%3E");
272
+ background-repeat: no-repeat;
273
+ background-position: right 2px center;
274
+ }
275
+ input[type=checkbox] {
276
+ width: 14px;
277
+ height: 14px;
278
+ margin: 0;
279
+ padding: 0;
280
+ accent-color: var(--accent);
281
+ }
282
+ label:has(> input[type=checkbox]) {
283
+ display: inline-flex;
284
+ align-items: center;
285
+ gap: 5px;
286
+ cursor: pointer;
287
+ }
288
+ input[type=number] {
289
+ font-variant-numeric: tabular-nums;
290
+ }
291
+ input::placeholder {
292
+ color: var(--fg2);
293
+ }
294
+ .node {
295
+ padding: 4px 8px;
296
+ white-space: nowrap;
297
+ cursor: default;
298
+ border-radius: var(--r-s);
299
+ }
300
+ .node:hover:not(.sel) {
301
+ background: var(--ctl);
302
+ }
303
+ .node.sel {
304
+ background: var(--accent);
305
+ color: #fff;
306
+ }
307
+ .node .kind {
308
+ color: var(--fg2);
309
+ margin-right: 4px;
310
+ }
311
+ .field {
312
+ display: grid;
313
+ grid-template-columns: 90px 1fr 16px;
314
+ align-items: center;
315
+ gap: 6px;
316
+ margin: 3px 0;
317
+ }
318
+ .field input,
319
+ .field select {
320
+ width: 100%;
321
+ box-sizing: border-box;
322
+ }
323
+ .field label {
324
+ color: var(--fg2);
325
+ overflow: hidden;
326
+ text-overflow: ellipsis;
327
+ }
328
+ .field .ro {
329
+ color: var(--fg2);
330
+ overflow: hidden;
331
+ text-overflow: ellipsis;
332
+ white-space: nowrap;
333
+ }
334
+ .key {
335
+ width: 10px;
336
+ height: 10px;
337
+ transform: rotate(45deg);
338
+ border: 1px solid var(--fg2);
339
+ cursor: pointer;
340
+ transition: background .1s, border-color .1s;
341
+ }
342
+ .key:hover {
343
+ border-color: var(--fg);
344
+ }
345
+ .key.on {
346
+ background: var(--accent);
347
+ border-color: var(--accent);
348
+ }
349
+ .field.slider {
350
+ grid-template-columns: 90px 1fr 56px;
351
+ }
352
+ .field.slider input[type=range] {
353
+ padding: 0;
354
+ height: 16px;
355
+ background: none;
356
+ border: none;
357
+ accent-color: var(--accent);
358
+ }
359
+ .evt {
360
+ display: grid;
361
+ grid-template-columns: 60px 1fr 20px;
362
+ align-items: center;
363
+ gap: 6px;
364
+ margin: 3px 0;
365
+ }
366
+ .evt input {
367
+ width: 100%;
368
+ box-sizing: border-box;
369
+ }
370
+ .evt .rm-event {
371
+ padding: 0 4px;
372
+ }
373
+ .props button {
374
+ margin: 6px 6px 0 0;
375
+ }
376
+ .vertex-form {
377
+ margin-top: 8px;
378
+ padding-top: 2px;
379
+ border-top: 1px solid var(--line);
380
+ }
381
+ .inf,
382
+ .inf-head {
383
+ display: grid;
384
+ grid-template-columns: 1fr 54px 44px 44px 20px;
385
+ align-items: center;
386
+ gap: 4px;
387
+ margin: 2px 0;
388
+ font-size: 12px;
389
+ }
390
+ .inf-head {
391
+ color: var(--fg2);
392
+ font-size: 11px;
393
+ text-transform: uppercase;
394
+ }
395
+ .inf input {
396
+ width: 100%;
397
+ box-sizing: border-box;
398
+ padding: 1px 4px;
399
+ }
400
+ .inf .ro {
401
+ color: var(--fg2);
402
+ overflow: hidden;
403
+ text-overflow: ellipsis;
404
+ white-space: nowrap;
405
+ }
406
+ .inf .rm-influence {
407
+ margin: 0;
408
+ padding: 0 4px;
409
+ }
410
+ .split {
411
+ position: absolute;
412
+ z-index: 2;
413
+ background: transparent;
414
+ }
415
+ .split:hover,
416
+ .split.dragging {
417
+ background: var(--accent);
418
+ }
419
+ .split.v {
420
+ width: var(--gap);
421
+ cursor: col-resize;
422
+ top: calc(36px + var(--gap));
423
+ bottom: calc(var(--tl-h,220px) + 22px + 2 * var(--gap));
424
+ }
425
+ .split.h {
426
+ height: var(--gap);
427
+ cursor: row-resize;
428
+ left: 0;
429
+ right: 0;
430
+ bottom: calc(var(--tl-h,220px) + 22px + var(--gap) / 2);
431
+ }
432
+ .split.left {
433
+ left: calc(var(--left-w,240px) - var(--gap) / 2);
434
+ }
435
+ .split.right {
436
+ right: calc(var(--right-w,280px) - var(--gap) / 2);
437
+ }
438
+ h4 {
439
+ margin: 8px 0 4px;
440
+ color: var(--fg2);
441
+ font-weight: 600;
442
+ font-size: 11px;
443
+ text-transform: uppercase;
444
+ }
445
+ .props .hint {
446
+ margin: 6px 0 0;
447
+ color: var(--fg2);
448
+ font-size: 11px;
449
+ white-space: normal;
450
+ }
451
+ .props .candidate {
452
+ display: inline-flex;
453
+ align-items: center;
454
+ gap: 3px;
455
+ margin: 2px 8px 2px 0;
456
+ color: var(--fg2);
457
+ font-size: 12px;
458
+ }
459
+ .props .candidate input {
460
+ margin: 0;
461
+ accent-color: var(--accent);
462
+ }
463
+ .top button.weights:disabled {
464
+ opacity: .45;
465
+ }
466
+ .ease-curve {
467
+ display: block;
468
+ width: 100%;
469
+ max-width: 140px;
470
+ aspect-ratio: 1;
471
+ margin: 4px 0 8px;
472
+ }
473
+ .ease-curve .square {
474
+ fill: var(--ctl);
475
+ stroke: var(--ctl-line);
476
+ }
477
+ .ease-curve .diag {
478
+ stroke: var(--ctl-line);
479
+ stroke-dasharray: 2, 2;
480
+ }
481
+ .ease-curve .curve {
482
+ fill: none;
483
+ stroke: var(--accent);
484
+ stroke-width: 1.5;
485
+ }
486
+ .ease-curve .handle-line {
487
+ stroke: var(--fg2);
488
+ }
489
+ .ease-curve .handle {
490
+ fill: var(--accent);
491
+ stroke: var(--panel);
492
+ cursor: pointer;
493
+ }
494
+ .ease-curve .handle.ghost {
495
+ fill: var(--fg2);
496
+ }
497
+ .section .section-head {
498
+ padding: 0 8px;
499
+ cursor: pointer;
500
+ user-select: none;
501
+ }
502
+ .section.closed .section-head {
503
+ opacity: .7;
504
+ }
505
+ .layers .layer {
506
+ display: flex;
507
+ align-items: center;
508
+ gap: 6px;
509
+ padding: 2px 8px;
510
+ border-radius: var(--r-s);
511
+ cursor: default;
512
+ white-space: nowrap;
513
+ }
514
+ .layers .layer:hover:not(.sel) {
515
+ background: var(--ctl);
516
+ }
517
+ .layers .layer.sel {
518
+ background: var(--accent);
519
+ color: #fff;
520
+ }
521
+ .layers .layer .eye {
522
+ color: var(--fg2);
523
+ cursor: pointer;
524
+ }
525
+ .layers .layer .name {
526
+ flex: 1;
527
+ overflow: hidden;
528
+ text-overflow: ellipsis;
529
+ }
530
+ .layers .layer input.z {
531
+ width: 44px;
532
+ padding: 1px 3px;
533
+ font-size: 11px;
534
+ }
535
+ .layers .layer.dragging {
536
+ opacity: .5;
537
+ }
538
+ .layers .layer.drop-above {
539
+ box-shadow: inset 0 2px 0 var(--accent);
540
+ }
541
+ .layers .drop-end {
542
+ height: 2px;
543
+ margin: 0 8px;
544
+ background: var(--accent);
545
+ }
546
+ .files .file {
547
+ display: flex;
548
+ align-items: center;
549
+ gap: 4px;
550
+ padding: 2px 8px;
551
+ font-size: 12px;
552
+ }
553
+ .files .file .name {
554
+ flex: 1;
555
+ overflow: hidden;
556
+ text-overflow: ellipsis;
557
+ white-space: nowrap;
558
+ }
559
+ .files .file button {
560
+ padding: 1px 6px;
561
+ font-size: 11px;
562
+ }
563
+ .files .upload-btn {
564
+ display: inline-block;
565
+ margin: 4px 8px;
566
+ padding: 2px 8px;
567
+ background: var(--ctl);
568
+ border: 1px solid var(--ctl-line);
569
+ border-radius: var(--r-s);
570
+ cursor: pointer;
571
+ }
572
+ .files .upload-btn input {
573
+ display: none;
574
+ }
575
+ .bin {
576
+ display: flex;
577
+ flex-wrap: wrap;
578
+ gap: 6px;
579
+ padding: 4px 8px;
580
+ }
581
+ .bin .asset {
582
+ width: 64px;
583
+ display: flex;
584
+ flex-direction: column;
585
+ align-items: center;
586
+ gap: 2px;
587
+ position: relative;
588
+ cursor: grab;
589
+ border-radius: var(--r-s);
590
+ padding: 2px;
591
+ }
592
+ .bin .asset:hover {
593
+ background: var(--ctl);
594
+ }
595
+ .bin .asset.placed {
596
+ opacity: .45;
597
+ cursor: pointer;
598
+ }
599
+ .bin .asset.dragging {
600
+ opacity: .5;
601
+ }
602
+ .bin .thumb {
603
+ background-repeat: no-repeat;
604
+ image-rendering: pixelated;
605
+ background-color: #0003;
606
+ border-radius: var(--r-xs);
607
+ }
608
+ .bin .asset input {
609
+ width: 60px;
610
+ box-sizing: border-box;
611
+ padding: 1px 3px;
612
+ font-size: 11px;
613
+ text-align: center;
614
+ }
615
+ .bin .asset .rm {
616
+ position: absolute;
617
+ top: 0;
618
+ right: 0;
619
+ padding: 0 4px;
620
+ font-size: 10px;
621
+ display: none;
622
+ }
623
+ .bin .asset:hover .rm {
624
+ display: block;
625
+ }
626
+ .open-list .rig {
627
+ display: flex;
628
+ gap: 10px;
629
+ padding: 4px 6px;
630
+ color: var(--fg);
631
+ text-decoration: none;
632
+ border-radius: var(--r-xs);
633
+ }
634
+ .open-list .rig:hover {
635
+ background: var(--ctl);
636
+ }
637
+ .open-list .rig.error {
638
+ color: var(--err);
639
+ }
640
+ .open-list .path {
641
+ color: var(--fg2);
642
+ }
643
+ .open-list .when {
644
+ margin-left: auto;
645
+ color: var(--fg2);
646
+ font-size: 11px;
647
+ }
648
+ .new-form {
649
+ width: 320px;
650
+ right: auto;
651
+ }
652
+ .atlas-panel {
653
+ padding: 4px 0;
654
+ }
655
+ .atlas-panel .row {
656
+ display: flex;
657
+ flex-wrap: wrap;
658
+ gap: 6px;
659
+ align-items: center;
660
+ padding: 2px 8px;
661
+ font-size: 12px;
662
+ }
663
+ .atlas-panel .row input[type=range] {
664
+ width: 70px;
665
+ padding: 0;
666
+ background: none;
667
+ border: none;
668
+ accent-color: var(--accent);
669
+ }
670
+ .atlas-panel .rect {
671
+ display: grid;
672
+ grid-template-columns: 1fr 38px 38px 38px 38px 18px;
673
+ gap: 3px;
674
+ align-items: center;
675
+ padding: 2px 8px;
676
+ border-radius: var(--r-xs);
677
+ cursor: default;
678
+ }
679
+ .atlas-panel .rect input {
680
+ width: 100%;
681
+ box-sizing: border-box;
682
+ padding: 1px 3px;
683
+ font-size: 11px;
684
+ }
685
+ .atlas-panel .rect.proposed input.rect-name {
686
+ border-style: dashed;
687
+ }
688
+ .atlas-panel .rect.sel {
689
+ background: var(--ctl);
690
+ box-shadow: inset 0 0 0 1px var(--accent);
691
+ }
692
+ .atlas-panel .rect .rm {
693
+ padding: 0 3px;
694
+ font-size: 10px;
695
+ }
696
+ .atlas-panel .hint {
697
+ padding: 4px 8px;
698
+ color: var(--fg2);
699
+ font-size: 11px;
700
+ }
701
+ /*# sourceMappingURL=editor.css.map */