@powerduck/schema-designer 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 (102) hide show
  1. package/README.md +217 -0
  2. package/dist/InlineSchemaEditor-BssSx3SI.d.ts +6 -0
  3. package/dist/InlineSchemaEditor-Bua-lDhE.d.cts +6 -0
  4. package/dist/chunk-2XUQB6BQ.js +1896 -0
  5. package/dist/chunk-4H3LXOL4.cjs +1900 -0
  6. package/dist/chunk-7LG4MVMD.cjs +2 -0
  7. package/dist/chunk-BXFABOMJ.js +1475 -0
  8. package/dist/chunk-FTALJIVZ.js +1 -0
  9. package/dist/chunk-GTZH37JS.cjs +1120 -0
  10. package/dist/chunk-GWHDTTQK.js +1437 -0
  11. package/dist/chunk-GXXD6ITE.cjs +1477 -0
  12. package/dist/chunk-HI5FBHCO.js +1057 -0
  13. package/dist/chunk-KX3LFFOV.js +88 -0
  14. package/dist/chunk-MADPN2PJ.js +185 -0
  15. package/dist/chunk-NOUORNCI.cjs +1452 -0
  16. package/dist/chunk-O6PTRJQ5.js +1195 -0
  17. package/dist/chunk-OBHJC3I2.cjs +2 -0
  18. package/dist/chunk-OOSNM45O.cjs +264 -0
  19. package/dist/chunk-P5B3HSPY.js +244 -0
  20. package/dist/chunk-PBE36BVA.js +1 -0
  21. package/dist/chunk-PVEYKCM6.js +1 -0
  22. package/dist/chunk-QZADGAP3.cjs +1218 -0
  23. package/dist/chunk-S7GNTGEE.js +1 -0
  24. package/dist/chunk-SMBDRWV2.cjs +2 -0
  25. package/dist/chunk-THYDOHOP.cjs +2 -0
  26. package/dist/chunk-WRHWOMZQ.cjs +190 -0
  27. package/dist/chunk-YNKP5JJA.cjs +32 -0
  28. package/dist/chunk-YWDKCX6N.cjs +91 -0
  29. package/dist/chunk-ZHNYNFGL.js +28 -0
  30. package/dist/compat/inline.cjs +137 -0
  31. package/dist/compat/inline.css +275 -0
  32. package/dist/compat/inline.d.cts +6 -0
  33. package/dist/compat/inline.d.ts +6 -0
  34. package/dist/compat/inline.js +4 -0
  35. package/dist/compat/parameters.cjs +90 -0
  36. package/dist/compat/parameters.css +997 -0
  37. package/dist/compat/parameters.d.cts +70 -0
  38. package/dist/compat/parameters.d.ts +70 -0
  39. package/dist/compat/parameters.js +9 -0
  40. package/dist/compat/tree.cjs +142 -0
  41. package/dist/compat/tree.css +1069 -0
  42. package/dist/compat/tree.d.cts +4 -0
  43. package/dist/compat/tree.d.ts +4 -0
  44. package/dist/compat/tree.js +5 -0
  45. package/dist/compat/variable-editor.cjs +82 -0
  46. package/dist/compat/variable-editor.d.cts +68 -0
  47. package/dist/compat/variable-editor.d.ts +68 -0
  48. package/dist/compat/variable-editor.js +1 -0
  49. package/dist/core/index.cjs +197 -0
  50. package/dist/core/index.d.cts +21 -0
  51. package/dist/core/index.d.ts +21 -0
  52. package/dist/core/index.js +4 -0
  53. package/dist/index.cjs +35 -0
  54. package/dist/index.css +1791 -0
  55. package/dist/index.d.cts +9 -0
  56. package/dist/index.d.ts +9 -0
  57. package/dist/index.js +10 -0
  58. package/dist/parameterValue-2pL9n-3q.d.ts +8 -0
  59. package/dist/parameterValue-Cky9Lnd3.d.cts +8 -0
  60. package/dist/react/index.cjs +35 -0
  61. package/dist/react/index.css +1791 -0
  62. package/dist/react/index.d.cts +9 -0
  63. package/dist/react/index.d.ts +9 -0
  64. package/dist/react/index.js +10 -0
  65. package/dist/react/inlineSchemaEditor/index.cjs +97 -0
  66. package/dist/react/inlineSchemaEditor/index.css +275 -0
  67. package/dist/react/inlineSchemaEditor/index.d.cts +6 -0
  68. package/dist/react/inlineSchemaEditor/index.d.ts +6 -0
  69. package/dist/react/inlineSchemaEditor/index.js +4 -0
  70. package/dist/react/parametersTable/index.cjs +22 -0
  71. package/dist/react/parametersTable/index.css +997 -0
  72. package/dist/react/parametersTable/index.d.cts +7 -0
  73. package/dist/react/parametersTable/index.d.ts +7 -0
  74. package/dist/react/parametersTable/index.js +9 -0
  75. package/dist/react/parametersTable/libs/generateValue.cjs +558 -0
  76. package/dist/react/parametersTable/libs/generateValue.d.cts +17 -0
  77. package/dist/react/parametersTable/libs/generateValue.d.ts +17 -0
  78. package/dist/react/parametersTable/libs/generateValue.js +551 -0
  79. package/dist/react/schemaTreeEditor/index.cjs +18 -0
  80. package/dist/react/schemaTreeEditor/index.css +1069 -0
  81. package/dist/react/schemaTreeEditor/index.d.cts +7 -0
  82. package/dist/react/schemaTreeEditor/index.d.ts +7 -0
  83. package/dist/react/schemaTreeEditor/index.js +5 -0
  84. package/dist/react/variableTextEditor/index.cjs +11 -0
  85. package/dist/react/variableTextEditor/index.css +306 -0
  86. package/dist/react/variableTextEditor/index.d.cts +6 -0
  87. package/dist/react/variableTextEditor/index.d.ts +6 -0
  88. package/dist/react/variableTextEditor/index.js +2 -0
  89. package/dist/schema-CKAPsYeW.d.cts +41 -0
  90. package/dist/schema-o7OJRaJ8.d.ts +41 -0
  91. package/dist/styles.css +1791 -0
  92. package/dist/tree-D06Xa6_N.d.ts +95 -0
  93. package/dist/tree-Dq1Rk-CF.d.cts +95 -0
  94. package/dist/types-B27Dw9do.d.cts +163 -0
  95. package/dist/types-B27Dw9do.d.ts +163 -0
  96. package/dist/types-Bk9rzr6l.d.cts +48 -0
  97. package/dist/types-D2jEaM9Z.d.cts +145 -0
  98. package/dist/types-D2jEaM9Z.d.ts +145 -0
  99. package/dist/types-xAihO_KW.d.ts +48 -0
  100. package/dist/variableTextEditor.types-ClzvARvK.d.cts +49 -0
  101. package/dist/variableTextEditor.types-ClzvARvK.d.ts +49 -0
  102. package/package.json +130 -0
@@ -0,0 +1,997 @@
1
+ /* src/react/shared/SettingsPanel.module.css */
2
+ .SettingsPanel_panel {
3
+ width: min(420px, calc(100vw - 24px));
4
+ max-height: min(640px, calc(100dvh - 32px), var(--available-height, 640px));
5
+ display: flex;
6
+ flex-direction: column;
7
+ overflow: hidden;
8
+ color: var(--color-text-primary, #26282b);
9
+ background: var(--color-surface, #fff);
10
+ border: 1px solid var(--color-border-default, #e0e4e8);
11
+ border-radius: var(--radius-md, 6px);
12
+ box-shadow: var(--shadow-lg, 0 8px 28px #0002);
13
+ font-family: var(--font-family-ui, system-ui, sans-serif);
14
+ font-size: 12px;
15
+ }
16
+ .SettingsPanel_header {
17
+ margin: 0;
18
+ display: flex;
19
+ align-items: center;
20
+ gap: 8px;
21
+ padding: 8px 12px;
22
+ border-bottom: 1px solid var(--color-border-subtle, #eceff1);
23
+ flex-shrink: 0;
24
+ }
25
+ .SettingsPanel_title {
26
+ flex: 1;
27
+ min-width: 0;
28
+ overflow: hidden;
29
+ text-overflow: ellipsis;
30
+ white-space: nowrap;
31
+ font-size: 12px;
32
+ font-weight: 600;
33
+ }
34
+ .SettingsPanel_close {
35
+ position: static;
36
+ display: inline-flex;
37
+ align-items: center;
38
+ justify-content: center;
39
+ padding: 0;
40
+ width: 24px;
41
+ height: 24px;
42
+ border-radius: 4px;
43
+ background: transparent;
44
+ color: var(--color-text-secondary, #6f747c);
45
+ }
46
+ .SettingsPanel_close:hover {
47
+ background: var(--color-surface-hover, #f4f5f6);
48
+ }
49
+ .SettingsPanel_close:focus-visible {
50
+ outline: 2px solid var(--color-focus-ring, #f5c98f);
51
+ }
52
+ .SettingsPanel_body {
53
+ padding: 12px;
54
+ overflow: auto;
55
+ min-height: 0;
56
+ overscroll-behavior: contain;
57
+ scrollbar-width: thin;
58
+ scrollbar-color: transparent transparent;
59
+ }
60
+ .SettingsPanel_body:hover,
61
+ .SettingsPanel_body:focus-within {
62
+ scrollbar-color: var(--color-border-strong, #ccd2d8) transparent;
63
+ }
64
+
65
+ /* src/react/inlineSchemaEditor/InlineSchemaEditor.module.css */
66
+ .InlineSchemaEditor_root {
67
+ width: 100%;
68
+ min-width: 0;
69
+ padding: 0;
70
+ color: var(--color-text-primary, #26282b);
71
+ font-family: var(--font-family-ui, system-ui, sans-serif);
72
+ font-size: 12px;
73
+ }
74
+ .InlineSchemaEditor_shell {
75
+ display: flex;
76
+ gap: 16px;
77
+ align-items: flex-start;
78
+ min-width: 0;
79
+ }
80
+ .InlineSchemaEditor_editorPane {
81
+ flex: 1;
82
+ min-width: 0;
83
+ }
84
+ .InlineSchemaEditor_previewPane {
85
+ width: min(36vw, 360px);
86
+ min-width: 240px;
87
+ padding: 12px;
88
+ border: 1px solid var(--color-border-subtle, #eceff1);
89
+ border-radius: 6px;
90
+ background: var(--color-surface, #fff);
91
+ max-height: 70vh;
92
+ display: flex;
93
+ }
94
+ .InlineSchemaEditor_root input:not([type=checkbox]):not([type=radio]),
95
+ .InlineSchemaEditor_root select,
96
+ .InlineSchemaEditor_root [data-scope=select][data-part=trigger] {
97
+ height: 28px;
98
+ min-height: 28px;
99
+ padding: 0 8px;
100
+ font-size: 12px;
101
+ border: 1px solid var(--color-border-default, #e0e4e8);
102
+ border-radius: 4px;
103
+ color: var(--color-text-primary, #26282b);
104
+ background: var(--color-surface, #fff);
105
+ }
106
+ .InlineSchemaEditor_root select {
107
+ padding-right: 28px;
108
+ }
109
+ .InlineSchemaEditor_root textarea {
110
+ font-size: 12px;
111
+ padding: 6px 8px;
112
+ border: 1px solid var(--color-border-default, #e0e4e8);
113
+ border-radius: 4px;
114
+ color: var(--color-text-primary, #26282b);
115
+ background: var(--color-surface, #fff);
116
+ }
117
+ .InlineSchemaEditor_root [data-scope=field][data-part=root] {
118
+ gap: 4px;
119
+ min-width: 0;
120
+ }
121
+ .InlineSchemaEditor_root [data-part=label] {
122
+ font-size: 12px;
123
+ font-weight: 500;
124
+ line-height: 18px;
125
+ color: var(--color-text-secondary, #6f747c);
126
+ }
127
+ .InlineSchemaEditor_root [data-part=helper-text],
128
+ .InlineSchemaEditor_root p {
129
+ font-size: 11px;
130
+ line-height: 16px;
131
+ color: var(--color-text-secondary, #6f747c);
132
+ }
133
+ .InlineSchemaEditor_root button {
134
+ font-size: 12px;
135
+ min-height: 24px;
136
+ color: var(--color-text-secondary, #6f747c);
137
+ }
138
+ .InlineSchemaEditor_root button:hover {
139
+ background: var(--color-surface-hover, #f4f5f6);
140
+ }
141
+ .InlineSchemaEditor_root input:focus-visible,
142
+ .InlineSchemaEditor_root select:focus-visible,
143
+ .InlineSchemaEditor_root textarea:focus-visible,
144
+ .InlineSchemaEditor_root button:focus-visible,
145
+ .InlineSchemaEditor_reference > summary:focus-visible {
146
+ outline: 2px solid var(--color-focus-ring, #f5c98f);
147
+ outline-offset: 1px;
148
+ box-shadow: none;
149
+ }
150
+ .InlineSchemaEditor_root [data-scope=switch][data-part=control] {
151
+ width: 28px;
152
+ height: 16px;
153
+ min-width: 28px;
154
+ background: var(--color-surface-selected, #eef0f2);
155
+ border: 1px solid var(--color-border-strong, #ccd2d8);
156
+ }
157
+ .InlineSchemaEditor_root [data-scope=switch][data-part=thumb] {
158
+ width: 12px;
159
+ height: 12px;
160
+ background: var(--color-surface, #fff);
161
+ }
162
+ .InlineSchemaEditor_root [data-scope=switch][data-part=control][data-state=checked] {
163
+ background: var(--color-accent, #f28c28);
164
+ border-color: var(--color-accent, #f28c28);
165
+ }
166
+ .InlineSchemaEditor_tabsList,
167
+ .InlineSchemaEditor_root [data-scope=tabs][data-part=list] {
168
+ display: flex;
169
+ width: 100%;
170
+ gap: 12px;
171
+ padding: 0;
172
+ border: 0;
173
+ border-bottom: 1px solid var(--color-border-subtle, #eceff1);
174
+ background: transparent;
175
+ border-radius: 0;
176
+ }
177
+ .InlineSchemaEditor_root [data-scope=tabs][data-part=trigger] {
178
+ flex: 0 0 auto;
179
+ min-height: 28px;
180
+ height: 28px;
181
+ padding: 0 2px;
182
+ border-radius: 0;
183
+ border-bottom: 2px solid transparent;
184
+ box-shadow: none;
185
+ font-size: 12px;
186
+ background: transparent;
187
+ }
188
+ .InlineSchemaEditor_root [data-scope=tabs][data-part=trigger][data-selected] {
189
+ color: var(--color-text-primary, #26282b);
190
+ border-bottom-color: var(--color-accent, #f28c28);
191
+ }
192
+ .InlineSchemaEditor_root .pdDesignerSchemaSection {
193
+ padding: 0;
194
+ border: 0;
195
+ border-radius: 0;
196
+ background: transparent;
197
+ }
198
+ .InlineSchemaEditor_root .pdDesignerSchemaNestedCard {
199
+ padding: 8px;
200
+ border: 1px solid var(--color-border-subtle, #eceff1);
201
+ border-radius: 4px;
202
+ background: transparent;
203
+ }
204
+ .InlineSchemaEditor_reference {
205
+ border-top: 1px solid var(--color-border-subtle, #eceff1);
206
+ padding-top: 6px;
207
+ }
208
+ .InlineSchemaEditor_reference > summary {
209
+ cursor: pointer;
210
+ font-size: 12px;
211
+ color: var(--color-text-secondary, #6f747c);
212
+ padding: 2px 0;
213
+ }
214
+ .InlineSchemaEditor_reference[open] > summary {
215
+ margin-bottom: 6px;
216
+ }
217
+ .pdDesignerSchemaPopoverContent {
218
+ width: min(420px, calc(100vw - 24px));
219
+ background: var(--color-surface, #fff);
220
+ color: var(--color-text-primary, #26282b);
221
+ border: 1px solid var(--color-border-default, #e0e4e8);
222
+ border-radius: 6px;
223
+ max-height: 80vh;
224
+ overflow: hidden;
225
+ }
226
+ .pdDesignerSchemaPopoverBody {
227
+ padding: 12px;
228
+ max-height: 72vh;
229
+ overflow: auto;
230
+ }
231
+ .pdDesignerSchemaIconButton {
232
+ width: 24px;
233
+ min-width: 24px;
234
+ height: 24px;
235
+ padding: 0;
236
+ }
237
+ @media (max-width: 900px) {
238
+ .InlineSchemaEditor_shell {
239
+ flex-direction: column;
240
+ }
241
+ .InlineSchemaEditor_editorPane {
242
+ width: 100%;
243
+ }
244
+ .InlineSchemaEditor_previewPane {
245
+ width: 100%;
246
+ min-width: 0;
247
+ max-height: 280px;
248
+ }
249
+ }
250
+ .pdDesignerSelectMenu {
251
+ min-width: var(--reference-width, 132px);
252
+ background: var(--color-surface, #fff);
253
+ color: var(--color-text-primary, #26282b);
254
+ border: 1px solid var(--color-border-default, #e0e4e8);
255
+ font-size: 12px;
256
+ padding: 4px;
257
+ }
258
+ .pdDesignerSelectMenu [data-part=item] {
259
+ min-height: 26px;
260
+ padding: 4px 8px;
261
+ border-radius: 4px;
262
+ }
263
+ .pdDesignerSelectMenu [data-highlighted] {
264
+ background: var(--color-surface-hover, #f4f5f6);
265
+ }
266
+ .InlineSchemaEditor_root p {
267
+ margin: 0;
268
+ }
269
+ .InlineSchemaEditor_root [data-scope=tabs][data-part=trigger]::before,
270
+ .InlineSchemaEditor_root [data-scope=tabs][data-part=trigger]::after {
271
+ display: none;
272
+ }
273
+ .InlineSchemaEditor_root [data-scope=tabs][data-part=indicator] {
274
+ display: none;
275
+ }
276
+
277
+ /* src/react/variableTextEditor/VariableTextEditor.module.css */
278
+ .VariableTextEditor_root {
279
+ --editor-min-height: 40px;
280
+ --editor-max-focused-height: 240px;
281
+ --editor-line-height: 24px;
282
+ --editor-padding-block: 4px;
283
+ position: relative;
284
+ box-sizing: border-box;
285
+ width: 100%;
286
+ min-width: 0;
287
+ min-height: var(--editor-min-height);
288
+ height: var(--editor-min-height);
289
+ overflow: hidden;
290
+ color: var(--color-text-primary, #202124);
291
+ background: transparent;
292
+ font-family:
293
+ var(--font-family-ui, Inter),
294
+ ui-monospace,
295
+ SFMono-Regular,
296
+ Menlo,
297
+ Monaco,
298
+ Consolas,
299
+ monospace;
300
+ font-size: var(--font-size-sm, 13px);
301
+ line-height: var(--editor-line-height);
302
+ }
303
+ .VariableTextEditor_root[data-focused] {
304
+ height: var(--editor-focused-height, var(--editor-min-height));
305
+ max-height: var(--editor-max-focused-height);
306
+ }
307
+ .VariableTextEditor_root[data-wrapped] {
308
+ border-radius: var(--radius-sm, 4px);
309
+ background: var(--color-surface, #fff);
310
+ margin-left: 0;
311
+ margin-top: 0;
312
+ z-index: 1;
313
+ width: 100%;
314
+ }
315
+ .VariableTextEditor_root[data-disabled] {
316
+ color: var(--color-text-disabled, #9aa0a6);
317
+ }
318
+ .VariableTextEditor_root .cm-editor,
319
+ .VariableTextEditor_root .cm-scroller {
320
+ box-sizing: border-box;
321
+ width: 100%;
322
+ min-width: 0;
323
+ height: 100%;
324
+ background: transparent;
325
+ }
326
+ .VariableTextEditor_root .cm-editor {
327
+ font: inherit;
328
+ }
329
+ .VariableTextEditor_root .cm-scroller {
330
+ padding-inline: var(--space-2, 8px);
331
+ overflow-x: hidden;
332
+ overflow-y: hidden;
333
+ scrollbar-width: thin;
334
+ scrollbar-color: transparent transparent;
335
+ }
336
+ .VariableTextEditor_root .cm-content {
337
+ box-sizing: border-box;
338
+ display: block;
339
+ width: 100%;
340
+ min-width: 0;
341
+ min-height: 0;
342
+ height: auto;
343
+ padding: 0;
344
+ white-space: pre;
345
+ overflow-wrap: normal;
346
+ word-break: normal;
347
+ line-height: var(--editor-line-height);
348
+ }
349
+ .VariableTextEditor_root .cm-line {
350
+ font-family: var(--font-family-ui, Inter), sans-serif;
351
+ box-sizing: border-box;
352
+ width: auto;
353
+ min-width: 0;
354
+ min-height: var(--editor-min-height);
355
+ padding: 0;
356
+ font-size: var(--font-size-sm, 13px);
357
+ line-height: var(--editor-min-height);
358
+ }
359
+ .VariableTextEditor_root[data-focused] .cm-scroller {
360
+ overflow-x: hidden;
361
+ overflow-y: hidden;
362
+ }
363
+ .VariableTextEditor_root[data-focused] .cm-content {
364
+ width: 100%;
365
+ min-width: 0;
366
+ min-height: 0 !important;
367
+ height: auto !important;
368
+ padding-block: var(--editor-padding-block, 4px);
369
+ white-space: pre-wrap !important;
370
+ overflow-wrap: anywhere !important;
371
+ word-break: normal !important;
372
+ line-height: var(--editor-line-height);
373
+ }
374
+ .VariableTextEditor_root[data-focused] .cm-lineWrapping {
375
+ white-space: pre-wrap !important;
376
+ overflow-wrap: anywhere !important;
377
+ word-break: normal !important;
378
+ }
379
+ .VariableTextEditor_root[data-focused] .cm-line {
380
+ width: auto;
381
+ min-width: 0;
382
+ min-height: var(--editor-line-height);
383
+ line-height: var(--editor-line-height);
384
+ white-space: pre-wrap !important;
385
+ overflow-wrap: anywhere !important;
386
+ word-break: normal !important;
387
+ hyphens: manual;
388
+ }
389
+ .VariableTextEditor_root .cm-selectionLayer {
390
+ pointer-events: none;
391
+ }
392
+ .VariableTextEditor_root .cm-selectionBackground {
393
+ background: var( --pd-editor-selection-background, color-mix(in srgb, var(--color-info, #4f79bf) 24%, transparent) ) !important;
394
+ }
395
+ .VariableTextEditor_root .cm-focused .cm-selectionBackground {
396
+ background: var( --pd-editor-selection-background-focused, color-mix(in srgb, var(--color-info, #4f79bf) 34%, transparent) ) !important;
397
+ }
398
+ .VariableTextEditor_root .cm-cursorLayer {
399
+ z-index: 30;
400
+ pointer-events: none;
401
+ }
402
+ .VariableTextEditor_root .cm-cursor {
403
+ border-left: 1px solid currentColor;
404
+ display: none;
405
+ visibility: visible;
406
+ box-sizing: border-box;
407
+ margin-left: 0;
408
+ filter: drop-shadow(1px 0 0 var(--color-surface, #fff)) drop-shadow(-1px 0 0 var(--color-surface, #fff));
409
+ pointer-events: none;
410
+ }
411
+ .VariableTextEditor_root .cm-focused .cm-cursor {
412
+ display: block;
413
+ }
414
+ .VariableTextEditor_root .cm-fat-cursor {
415
+ background: currentColor;
416
+ color: var(--color-surface, #fff);
417
+ }
418
+ .VariableTextEditor_root .cm-tooltip-autocomplete {
419
+ z-index: 1500;
420
+ min-width: 220px;
421
+ max-width: min(360px, calc(100vw - 24px));
422
+ margin-top: 8px;
423
+ overflow: hidden;
424
+ color: var(--color-text-primary, #202124);
425
+ background: var(--color-surface, #fff);
426
+ border: 1px solid var(--color-border-default, #dadce0);
427
+ border-radius: var(--radius-md, 8px);
428
+ box-shadow: var(--shadow-lg, 0 12px 32px rgb(60 64 67 / 18%));
429
+ }
430
+ .VariableTextEditor_root .cm-tooltip-autocomplete > ul {
431
+ max-height: 280px;
432
+ padding: 4px;
433
+ overflow-y: auto;
434
+ font-family: var(--font-family-ui, Inter), sans-serif;
435
+ font-size: var(--font-size-sm, 13px);
436
+ }
437
+ .VariableTextEditor_root .cm-tooltip-autocomplete > ul > li {
438
+ min-height: 30px;
439
+ padding: 5px 8px;
440
+ border-radius: var(--radius-sm, 6px);
441
+ }
442
+ .VariableTextEditor_root .cm-tooltip-autocomplete > ul > li[aria-selected=true] {
443
+ color: var(--color-text-primary, #202124);
444
+ background: var(--color-surface-hover, #f1f3f4);
445
+ }
446
+ .VariableTextEditor_variableToken {
447
+ --token-color: unset;
448
+ --token-bg-color: unset;
449
+ color: var(--token-color);
450
+ background-color: var(--token-bg-color);
451
+ position: relative;
452
+ z-index: 1;
453
+ display: inline;
454
+ padding: 2px 0;
455
+ border-radius: var(--radius-sm, 4px);
456
+ box-decoration-break: clone;
457
+ -webkit-box-decoration-break: clone;
458
+ cursor: text;
459
+ white-space: nowrap;
460
+ overflow-wrap: normal;
461
+ word-break: normal;
462
+ }
463
+ .VariableTextEditor_variableToken_unknown {
464
+ color: var(--color-accent, #dc2626);
465
+ }
466
+ .VariableTextEditor_variableToken_environment {
467
+ color: var(--color-success, #15803d);
468
+ }
469
+ .VariableTextEditor_variableToken_secret {
470
+ color: var(--color-secret, #7c3aed);
471
+ }
472
+ .VariableTextEditor_variableToken_request {
473
+ color: var(--color-info, #2563eb);
474
+ }
475
+ .VariableTextEditor_variableToken_dynamic {
476
+ color: var(--color-dynamic, #1d4ed8);
477
+ }
478
+ .VariableTextEditor_hoverPopover {
479
+ position: fixed;
480
+ z-index: 1600;
481
+ box-sizing: border-box;
482
+ width: min(360px, calc(100vw - 24px));
483
+ padding: 14px;
484
+ color: var(--color-text-primary, #202124);
485
+ background: var(--color-surface, #fff);
486
+ border: 1px solid var(--color-border-default, #dadce0);
487
+ border-radius: var(--radius-lg, 10px);
488
+ box-shadow: var(--shadow-lg, 0 12px 32px rgb(60 64 67 / 20%));
489
+ isolation: isolate;
490
+ pointer-events: auto;
491
+ }
492
+ .VariableTextEditor_hoverPopover[data-placement=bottom]::before,
493
+ .VariableTextEditor_hoverPopover[data-placement=top]::before {
494
+ position: absolute;
495
+ right: -8px;
496
+ left: -8px;
497
+ height: 12px;
498
+ content: "";
499
+ pointer-events: auto;
500
+ }
501
+ .VariableTextEditor_hoverPopover[data-placement=bottom]::before {
502
+ top: -16px;
503
+ }
504
+ .VariableTextEditor_hoverPopover[data-placement=top]::before {
505
+ bottom: -16px;
506
+ }
507
+ .VariableTextEditor_hoverPopoverArrow {
508
+ position: absolute;
509
+ left: var(--popover-arrow-left, 50%);
510
+ width: 11px;
511
+ height: 11px;
512
+ background: var(--color-surface, #fff);
513
+ pointer-events: none;
514
+ }
515
+ .VariableTextEditor_hoverPopover[data-placement=bottom] .VariableTextEditor_hoverPopoverArrow {
516
+ top: -6px;
517
+ border-top: 1px solid var(--color-border-default, #dadce0);
518
+ border-left: 1px solid var(--color-border-default, #dadce0);
519
+ transform: translateX(-50%) rotate(45deg);
520
+ }
521
+ .VariableTextEditor_hoverPopover[data-placement=top] .VariableTextEditor_hoverPopoverArrow {
522
+ bottom: -6px;
523
+ border-right: 1px solid var(--color-border-default, #dadce0);
524
+ border-bottom: 1px solid var(--color-border-default, #dadce0);
525
+ transform: translateX(-50%) rotate(45deg);
526
+ }
527
+ .VariableTextEditor_popoverHeader {
528
+ font-weight: var(--font-weight-semibold, 600);
529
+ }
530
+ .VariableTextEditor_popoverType {
531
+ color: var(--color-text-tertiary, #80868b);
532
+ font-size: var(--font-size-xs, 12px);
533
+ text-transform: capitalize;
534
+ }
535
+ .VariableTextEditor_popoverValue {
536
+ box-sizing: border-box;
537
+ width: 100%;
538
+ max-height: 180px;
539
+ margin-top: 5px;
540
+ padding: 7px 9px;
541
+ overflow: auto;
542
+ overflow-wrap: anywhere;
543
+ color: var(--color-text-primary, #202124);
544
+ background: var(--color-surface-subtle, #f8f9fa);
545
+ border-radius: var(--radius-sm, 6px);
546
+ font-family: var(--font-family-ui, Inter), sans-serif;
547
+ white-space: pre-wrap;
548
+ }
549
+ .VariableTextEditor_popoverDesc {
550
+ color: var(--color-text-secondary, #5f6368);
551
+ font-size: var(--font-size-sm, 13px);
552
+ overflow-wrap: anywhere;
553
+ }
554
+ .VariableTextEditor_root[data-focused] {
555
+ border-radius: 0;
556
+ background: var(--color-surface, #fff);
557
+ box-shadow: inset 0 0 0 1px var(--color-border-strong, #ccd2d8);
558
+ }
559
+ .VariableTextEditor_root .cm-focused {
560
+ outline: none;
561
+ }
562
+ .VariableTextEditor_root[data-focused] .cm-scroller {
563
+ overflow-y: auto;
564
+ }
565
+ .VariableTextEditor_root[data-focused]:hover .cm-scroller,
566
+ .VariableTextEditor_root[data-focused]:focus-within .cm-scroller {
567
+ scrollbar-color: var(--color-border-strong, #ccd2d8) transparent;
568
+ }
569
+ .VariableTextEditor_hoverPopover {
570
+ max-height: calc(100dvh - 24px);
571
+ overflow: auto;
572
+ }
573
+ .VariableTextEditor_root[data-focused][data-multiline] .cm-line {
574
+ position: relative;
575
+ }
576
+ .VariableTextEditor_root[data-focused][data-multiline] .cm-line:has(> br:only-child)::before {
577
+ content: "\21b5";
578
+ position: absolute;
579
+ color: var(--color-text-tertiary, #989da5);
580
+ pointer-events: none;
581
+ user-select: none;
582
+ }
583
+
584
+ /* src/react/parametersTable/ParametersTable.module.css */
585
+ .ParametersTable_root {
586
+ position: relative;
587
+ display: flex;
588
+ width: 100%;
589
+ min-width: 0;
590
+ min-height: 0;
591
+ flex-direction: column;
592
+ overflow: hidden;
593
+ border-radius: var(--radius-md, 6px);
594
+ background: var(--color-surface, #ffffff);
595
+ color: var(--color-text-primary, #26282b);
596
+ font-family: var( --font-family-ui, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif );
597
+ font-size: var(--font-size-sm, 13px);
598
+ line-height: var(--line-height-normal, 20px);
599
+ }
600
+ .ParametersTable_tableViewport {
601
+ position: relative;
602
+ display: block;
603
+ width: 100%;
604
+ min-width: 0;
605
+ min-height: 0;
606
+ flex: 1;
607
+ overflow: auto;
608
+ background: var(--color-surface, #ffffff);
609
+ }
610
+ .ParametersTable_tableContainer {
611
+ position: relative;
612
+ width: 100%;
613
+ min-width: 100%;
614
+ }
615
+ .ParametersTable_table {
616
+ width: 100%;
617
+ min-width: 100%;
618
+ max-width: none;
619
+ table-layout: fixed;
620
+ border-collapse: collapse;
621
+ border-spacing: 0;
622
+ }
623
+ .ParametersTable_colCheckbox {
624
+ width: 48px !important;
625
+ min-width: 48px !important;
626
+ max-width: 48px !important;
627
+ }
628
+ .ParametersTable_colData {
629
+ min-width: 0;
630
+ }
631
+ .ParametersTable_headerCell {
632
+ position: sticky;
633
+ z-index: 3;
634
+ top: 0;
635
+ height: var(--control-height-md, 32px);
636
+ padding: 0 var(--space-2, 8px);
637
+ border-bottom: 1px solid var(--color-border-default, #e0e4e8);
638
+ background: var(--color-surface-subtle, #f8f9fa);
639
+ color: var(--color-text-secondary, #6f747c);
640
+ font-size: var(--font-size-xs, 12px);
641
+ font-weight: var(--font-weight-semibold, 600);
642
+ line-height: var(--line-height-tight, 16px);
643
+ text-align: left;
644
+ white-space: nowrap;
645
+ user-select: none;
646
+ }
647
+ .ParametersTable_headerCell.ParametersTable_dragCell,
648
+ .ParametersTable_headerCell.ParametersTable_checkboxCell {
649
+ padding: 0;
650
+ }
651
+ .ParametersTable_headerContent {
652
+ position: relative;
653
+ display: flex;
654
+ width: 100%;
655
+ min-width: 0;
656
+ height: 100%;
657
+ align-items: center;
658
+ justify-content: space-between;
659
+ gap: var(--space-2, 8px);
660
+ }
661
+ .ParametersTable_headerLabel {
662
+ min-width: 0;
663
+ padding-left: var(--space-2, 8px);
664
+ overflow: hidden;
665
+ text-overflow: ellipsis;
666
+ white-space: nowrap;
667
+ font-size: var(--font-size-md, 14px);
668
+ }
669
+ .ParametersTable_resizeHandle {
670
+ position: absolute;
671
+ top: 0;
672
+ right: -1px;
673
+ z-index: 5;
674
+ width: 12px;
675
+ height: 100%;
676
+ cursor: col-resize;
677
+ touch-action: none;
678
+ user-select: none;
679
+ }
680
+ .ParametersTable_resizeHandle::after {
681
+ position: absolute;
682
+ top: 50%;
683
+ right: 3px;
684
+ width: 3px;
685
+ height: 14px;
686
+ border-radius: 999px;
687
+ background: transparent;
688
+ content: "";
689
+ transform: translateY(-50%);
690
+ transition: background var(--transition-fast, 140ms ease), height var(--transition-fast, 140ms ease);
691
+ }
692
+ .ParametersTable_resizeHandle:hover::after,
693
+ .ParametersTable_resizeHandle[data-resizing=true]::after {
694
+ height: 20px;
695
+ background: var(--color-accent, #f28c28);
696
+ }
697
+ .ParametersTable_root:has(.ParametersTable_resizeHandle[data-resizing=true]) {
698
+ user-select: none;
699
+ }
700
+ .ParametersTable_root:has(.ParametersTable_resizeHandle[data-resizing=true]) .ParametersTable_table {
701
+ cursor: col-resize;
702
+ }
703
+ .ParametersTable_variableTextEditor {
704
+ display: flex;
705
+ align-items: flex-start;
706
+ gap: 6px;
707
+ width: 100%;
708
+ min-width: 0;
709
+ min-height: 32px;
710
+ padding-block: 2px;
711
+ box-sizing: border-box;
712
+ }
713
+ .ParametersTable_row {
714
+ height: 32px;
715
+ background: var(--color-surface, #ffffff);
716
+ transition: background var(--transition-fast, 140ms ease), opacity var(--transition-fast, 140ms ease);
717
+ }
718
+ .ParametersTable_row,
719
+ .ParametersTable_cell {
720
+ min-width: 0;
721
+ }
722
+ .ParametersTable_row:hover {
723
+ background: var(--color-surface-hover, #f4f5f6);
724
+ }
725
+ .ParametersTable_row[data-dragging=true] {
726
+ opacity: 0.45;
727
+ }
728
+ .ParametersTable_cell {
729
+ position: relative;
730
+ height: 32px;
731
+ min-width: 0;
732
+ padding: 0 var(--space-2, 8px);
733
+ border-bottom: 1px solid var(--color-border-subtle, #eceff1);
734
+ color: var(--color-text-primary, #26282b);
735
+ vertical-align: top;
736
+ }
737
+ .ParametersTable_nameCell {
738
+ min-width: 0;
739
+ }
740
+ .ParametersTable_checkboxCell {
741
+ width: 48px;
742
+ min-width: 48px;
743
+ max-width: 48px;
744
+ padding: 0;
745
+ text-align: center;
746
+ }
747
+ .ParametersTable_checkboxCellGroup {
748
+ display: flex;
749
+ width: 48px;
750
+ height: 32px;
751
+ align-items: center;
752
+ justify-content: flex-end;
753
+ padding: 0;
754
+ margin: 0;
755
+ }
756
+ .ParametersTable_checkboxRoot {
757
+ display: inline-flex;
758
+ width: 22px;
759
+ min-width: 22px;
760
+ max-width: 22px;
761
+ height: 22px;
762
+ align-items: center;
763
+ justify-content: center;
764
+ border-radius: var(--space-2, 8px);
765
+ }
766
+ .ParametersTable_checkboxRoot [data-checked=true] {
767
+ color: var(--color-on-accent, #ffffff);
768
+ }
769
+ .ParametersTable_checkboxRoot .ParametersTable_chakra-checkbox__control,
770
+ .ParametersTable_checkboxRoot [data-state=unchecked] {
771
+ border-color: var(--color-border-strong, #ccd2d8);
772
+ background: transparent;
773
+ border-radius: 6px;
774
+ cursor: pointer;
775
+ }
776
+ .ParametersTable_checkboxRoot [data-checked=true],
777
+ .ParametersTable_checkboxRoot [data-state=checked] {
778
+ background: var(--color-accent, #f28c28);
779
+ border-color: var(--color-accent, #f28c28);
780
+ border-radius: 6px;
781
+ cursor: pointer;
782
+ }
783
+ .ParametersTable_checkboxRoot [data-checked=mixed],
784
+ .ParametersTable_checkboxRoot [data-state=indeterminate] {
785
+ background: var(--color-accent, #f28c28);
786
+ border-color: var(--color-accent, #f28c28);
787
+ border-radius: 6px;
788
+ cursor: pointer;
789
+ }
790
+ .ParametersTable_checkboxRoot:focus-visible {
791
+ outline: 2px solid var(--color-focus-ring, rgba(242, 140, 40, 0.28));
792
+ outline-offset: 2px;
793
+ border-radius: var(--radius-xs, 3px);
794
+ }
795
+ .ParametersTable_dragHandleWrap {
796
+ display: flex;
797
+ width: 28px;
798
+ min-width: 28px;
799
+ max-width: 28px;
800
+ height: 32px;
801
+ align-items: center;
802
+ justify-content: center;
803
+ }
804
+ .ParametersTable_dragHandle {
805
+ display: none;
806
+ width: 28px;
807
+ height: 32px;
808
+ align-items: center;
809
+ justify-content: center;
810
+ padding: 0;
811
+ margin: 0;
812
+ border: 0;
813
+ background: transparent;
814
+ color: var(--color-text-tertiary, #989da5);
815
+ cursor: grab;
816
+ touch-action: none;
817
+ user-select: none;
818
+ }
819
+ .ParametersTable_row:hover .ParametersTable_dragHandle {
820
+ display: inline-flex;
821
+ }
822
+ .ParametersTable_dragHandle:hover {
823
+ color: var(--color-text-secondary, #6f747c);
824
+ }
825
+ .ParametersTable_dragHandle:active {
826
+ cursor: grabbing;
827
+ }
828
+ .ParametersTable_description {
829
+ display: block;
830
+ min-width: 0;
831
+ overflow: hidden;
832
+ color: var(--color-text-secondary, #6f747c);
833
+ font-size: var(--font-size-xs, 12px);
834
+ text-overflow: ellipsis;
835
+ white-space: nowrap;
836
+ }
837
+ .ParametersTable_required {
838
+ display: inline-flex;
839
+ align-items: center;
840
+ color: var(--color-text-accent, #d97818);
841
+ font-size: var(--font-size-xs, 12px);
842
+ font-weight: var(--font-weight-semibold, 600);
843
+ }
844
+ .ParametersTable_optional {
845
+ color: var(--color-text-tertiary, #989da5);
846
+ font-size: var(--font-size-xs, 12px);
847
+ }
848
+ .ParametersTable_name {
849
+ overflow: hidden;
850
+ color: var(--color-text-primary, #26282b);
851
+ font-family:
852
+ ui-monospace,
853
+ SFMono-Regular,
854
+ Menlo,
855
+ Monaco,
856
+ Consolas,
857
+ "Liberation Mono",
858
+ "Courier New",
859
+ monospace;
860
+ font-size: var(--font-size-sm, 13px);
861
+ font-weight: var(--font-weight-medium, 500);
862
+ text-overflow: ellipsis;
863
+ white-space: nowrap;
864
+ }
865
+ .ParametersTable_empty {
866
+ display: flex;
867
+ min-height: 160px;
868
+ align-items: center;
869
+ justify-content: center;
870
+ padding: var(--space-8, 32px);
871
+ color: var(--color-text-tertiary, #989da5);
872
+ font-size: var(--font-size-sm, 13px);
873
+ }
874
+ .ParametersTable_actionBarContent {
875
+ display: flex;
876
+ min-height: 32px;
877
+ align-items: center;
878
+ gap: 10px;
879
+ padding: var(--space-1, 4px);
880
+ border: 1px solid var(--color-border-default, #e0e4e8);
881
+ border-radius: var(--radius-full, 9999px);
882
+ background: var(--color-surface, #ffffff);
883
+ box-shadow: var( --shadow-sm, 0 1px 2px rgba(28, 32, 36, 0.035), 0 1px 3px rgba(28, 32, 36, 0.025) );
884
+ }
885
+ .ParametersTable_actionBarLeft {
886
+ display: flex;
887
+ align-items: center;
888
+ }
889
+ .ParametersTable_actionBarTrigger {
890
+ border: 0;
891
+ color: var(--color-text-primary, #26282b);
892
+ font-size: var(--font-size-xs, 12px);
893
+ font-weight: var(--font-weight-semibold, 600);
894
+ }
895
+ .ParametersTable_actionBarDivider {
896
+ width: 1px;
897
+ height: 18px;
898
+ border-radius: 9999px;
899
+ background: var(--color-border-subtle, #eceff1);
900
+ }
901
+ .ParametersTable_actionButton {
902
+ height: 26px;
903
+ padding: 0 10px;
904
+ border: 1px solid transparent;
905
+ border-radius: var(--radius-full, 9999px);
906
+ color: var(--color-text-primary, #26282b);
907
+ font-size: var(--font-size-xs, 12px);
908
+ font-weight: var(--font-weight-medium, 500);
909
+ }
910
+ .ParametersTable_actionButton:hover {
911
+ border-color: var(--color-border-subtle, #eceff1);
912
+ background: var(--color-surface-hover, #f4f5f6);
913
+ }
914
+ .ParametersTable_actionButtonAccent {
915
+ color: var(--color-text-accent, #d97818);
916
+ }
917
+ .ParametersTable_actionButtonAccent:hover {
918
+ border-color: var(--color-accent-border, #f5c98f);
919
+ background: var(--color-accent-bg-subtle, #fffaf5);
920
+ color: var(--color-accent-hover, #e47c16);
921
+ }
922
+ .ParametersTable_actionIcon {
923
+ flex: 0 0 auto;
924
+ margin-right: 6px;
925
+ font-size: 12px;
926
+ }
927
+ @media (max-width: 640px) {
928
+ .ParametersTable_headerCell {
929
+ padding: 0 var(--space-1, 4px);
930
+ }
931
+ .ParametersTable_cell {
932
+ padding: 0 var(--space-1, 4px);
933
+ }
934
+ .ParametersTable_headerLabel {
935
+ padding-left: var(--space-1, 4px);
936
+ }
937
+ }
938
+ .ParametersTable_variableTextEditor > [data-scope=checkbox] {
939
+ flex: 0 0 22px;
940
+ }
941
+ .ParametersTable_variableTextEditor > button {
942
+ flex-shrink: 0;
943
+ }
944
+ .ParametersTable_variableTextEditor > div {
945
+ flex: 1;
946
+ min-width: 0;
947
+ }
948
+ .ParametersTable_row:focus-within .ParametersTable_dragHandle {
949
+ display: inline-flex;
950
+ }
951
+ .ParametersTable_cell select {
952
+ height: 26px;
953
+ min-height: 26px;
954
+ font-size: 12px;
955
+ border-color: transparent;
956
+ background: transparent;
957
+ }
958
+ .ParametersTable_cell select:hover,
959
+ .ParametersTable_cell select:focus-visible {
960
+ border-color: var(--color-border-default, #e0e4e8);
961
+ }
962
+ .ParametersTable_variableTextEditor > button {
963
+ color: var(--color-text-secondary, #6f747c);
964
+ }
965
+ .ParametersTable_root[data-sticky-header=false] .ParametersTable_headerCell {
966
+ position: static;
967
+ }
968
+ .ParametersTable_tableViewport {
969
+ scrollbar-width: thin;
970
+ scrollbar-color: transparent transparent;
971
+ overscroll-behavior: contain;
972
+ }
973
+ .ParametersTable_tableViewport:hover,
974
+ .ParametersTable_tableViewport:focus-within {
975
+ scrollbar-color: var(--color-border-strong, #ccd2d8) transparent;
976
+ }
977
+ .ParametersTable_cell [data-scope=select][data-part=trigger] {
978
+ height: 28px;
979
+ min-height: 28px;
980
+ padding: 0 8px;
981
+ font-size: 12px;
982
+ background: transparent;
983
+ border-color: transparent;
984
+ color: var(--color-text-primary, #26282b);
985
+ }
986
+ .ParametersTable_cell [data-scope=select][data-part=trigger]:hover {
987
+ border-color: var(--color-border-default, #e0e4e8);
988
+ }
989
+ @media (hover: none) {
990
+ .ParametersTable_dragHandle {
991
+ display: inline-flex;
992
+ }
993
+ }
994
+ .ParametersTable_resizeHandle:focus-visible {
995
+ outline: 2px solid var(--color-focus-ring, #f5c98f);
996
+ outline-offset: -2px;
997
+ }