fragment-tools 0.2.8 → 0.2.10

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 (98) hide show
  1. package/README.md +14 -10
  2. package/bin/index.js +4 -0
  3. package/package.json +11 -4
  4. package/src/cli/build.js +1 -3
  5. package/src/cli/create.js +55 -6
  6. package/src/cli/createConfig.js +9 -24
  7. package/src/cli/createFragmentFile.js +44 -46
  8. package/src/cli/getEntries.js +13 -5
  9. package/src/cli/plugins/check-dependencies.js +1 -1
  10. package/src/cli/plugins/save.js +7 -2
  11. package/src/cli/run.js +12 -3
  12. package/src/cli/templates/blank/index.js +4 -4
  13. package/src/cli/templates/blank/index.ts +15 -0
  14. package/src/cli/templates/default/index.js +7 -6
  15. package/src/cli/templates/default/index.ts +20 -0
  16. package/src/cli/templates/fragment-gl/fragment.fs +1 -1
  17. package/src/cli/templates/fragment-gl/index.js +3 -3
  18. package/src/cli/templates/fragment-gl/index.ts +20 -0
  19. package/src/cli/templates/p5/index.js +6 -6
  20. package/src/cli/templates/p5/index.ts +14 -0
  21. package/src/cli/templates/p5-webgl/fragment.fs +2 -4
  22. package/src/cli/templates/p5-webgl/index.js +9 -15
  23. package/src/cli/templates/p5-webgl/index.ts +43 -0
  24. package/src/cli/templates/three-fragment/fragment.fs +1 -1
  25. package/src/cli/templates/three-fragment/index.js +10 -4
  26. package/src/cli/templates/three-fragment/index.ts +68 -0
  27. package/src/cli/templates/three-orthographic/index.js +10 -4
  28. package/src/cli/templates/three-orthographic/index.ts +29 -0
  29. package/src/cli/templates/three-perspective/index.js +10 -4
  30. package/src/cli/templates/three-perspective/index.ts +26 -0
  31. package/src/cli/utils.js +3 -0
  32. package/src/client/app/components/HintRecord.svelte +3 -3
  33. package/src/client/app/hooks.js +5 -5
  34. package/src/client/app/lib/canvas-recorder/CanvasRecorder.js +3 -1
  35. package/src/client/app/lib/canvas-recorder/GIFRecorder.js +11 -1
  36. package/src/client/app/lib/canvas-recorder/MediaBunnyRecorder.js +97 -0
  37. package/src/client/app/lib/gl/Renderer.js +1 -1
  38. package/src/client/app/lib/gl/Texture.js +1 -1
  39. package/src/client/app/lib/gl/index.js +2 -2
  40. package/src/client/app/modules/AudioAnalyser/Range.svelte +2 -2
  41. package/src/client/app/modules/AudioAnalyser/Spectrum.svelte +3 -3
  42. package/src/client/app/modules/Console/ConsoleLine.svelte +13 -13
  43. package/src/client/app/modules/Console.svelte +6 -4
  44. package/src/client/app/modules/Exports.svelte +28 -4
  45. package/src/client/app/renderers/2DRenderer.js +6 -3
  46. package/src/client/app/renderers/FragmentRenderer.js +39 -2
  47. package/src/client/app/renderers/P5GLRenderer.js +28 -26
  48. package/src/client/app/renderers/P5Renderer.js +49 -9
  49. package/src/client/app/renderers/THREERenderer.js +64 -12
  50. package/src/client/app/state/exports.svelte.js +40 -2
  51. package/src/client/app/state/rendering.svelte.js +2 -2
  52. package/src/client/app/state/utils.svelte.js +9 -2
  53. package/src/client/app/stores/sketches.js +2 -1
  54. package/src/client/app/ui/ErrorOverlay.svelte +5 -5
  55. package/src/client/app/ui/Field.svelte +12 -8
  56. package/src/client/app/ui/FieldGroup.svelte +5 -5
  57. package/src/client/app/ui/FieldSection.svelte +8 -8
  58. package/src/client/app/ui/FieldSpace.svelte +2 -2
  59. package/src/client/app/ui/FieldTrigger.svelte +6 -6
  60. package/src/client/app/ui/FloatingParams.svelte +1 -1
  61. package/src/client/app/ui/LayoutBuild.svelte +1 -1
  62. package/src/client/app/ui/LayoutComponent.svelte +7 -7
  63. package/src/client/app/ui/LayoutResizer.svelte +1 -1
  64. package/src/client/app/ui/LayoutToolbar.svelte +6 -6
  65. package/src/client/app/ui/Module.svelte +6 -4
  66. package/src/client/app/ui/ModuleRenderer.svelte +3 -3
  67. package/src/client/app/ui/OutputRenderer.svelte +4 -1
  68. package/src/client/app/ui/SketchRenderer.svelte +9 -2
  69. package/src/client/app/ui/fields/ButtonInput.svelte +11 -11
  70. package/src/client/app/ui/fields/CheckboxInput.svelte +27 -19
  71. package/src/client/app/ui/fields/ColorInput.svelte +9 -7
  72. package/src/client/app/ui/fields/ImageInput.svelte +43 -23
  73. package/src/client/app/ui/fields/Input.svelte +13 -13
  74. package/src/client/app/ui/fields/IntervalInput.svelte +11 -14
  75. package/src/client/app/ui/fields/ListInput.svelte +9 -8
  76. package/src/client/app/ui/fields/ProgressInput.svelte +9 -9
  77. package/src/client/app/ui/fields/Select.svelte +13 -12
  78. package/src/client/app/ui/fields/VectorInput.svelte +1 -1
  79. package/src/client/app/utils/canvas.utils.js +21 -19
  80. package/src/client/public/css/global.css +26 -27
  81. package/src/types/client.d.ts +36 -0
  82. package/src/types/gl.d.ts +130 -0
  83. package/src/types/helpers.d.ts +5 -0
  84. package/src/types/hooks.d.ts +14 -0
  85. package/src/types/index.d.ts +8 -0
  86. package/src/types/midi.d.ts +176 -0
  87. package/src/types/props.d.ts +72 -0
  88. package/src/types/renderers.d.ts +100 -0
  89. package/src/types/sketch.d.ts +45 -0
  90. package/src/types/triggers.d.ts +45 -0
  91. package/src/types/utils.ts +11 -0
  92. package/tsconfig.json +38 -0
  93. package/.prettierignore +0 -4
  94. package/.prettierrc +0 -25
  95. package/src/client/app/lib/canvas-recorder/MP4Recorder.js +0 -44
  96. package/src/client/app/lib/canvas-recorder/WebMRecorder.js +0 -29
  97. package/src/client/app/lib/canvas-recorder/mp4.js +0 -1654
  98. package/src/client/app/lib/canvas-recorder/mp4.wasm +0 -0
@@ -110,7 +110,11 @@
110
110
 
111
111
  let backgroundColor = $derived.by(() => {
112
112
  if (layout.previewing) {
113
- return sketch?.buildConfig?.backgroundColor ?? 'inherit';
113
+ return (
114
+ sketch?.buildConfig?.backgroundColor ??
115
+ sketch?.backgroundColor ??
116
+ 'inherit'
117
+ );
114
118
  }
115
119
 
116
120
  return sketch?.backgroundColor ?? 'inherit';
@@ -155,7 +159,10 @@
155
159
  justify-content: center;
156
160
  align-items: center;
157
161
 
158
- background-color: var(--background-color, var(--color-lightblack));
162
+ background-color: var(
163
+ --background-color,
164
+ var(--fragment-color-lightblack)
165
+ );
159
166
 
160
167
  container-type: size;
161
168
  }
@@ -34,39 +34,39 @@
34
34
  .button {
35
35
  display: flex;
36
36
  width: 100%;
37
- min-width: var(--height-input);
38
- height: var(--height-input);
37
+ min-width: var(--fragment-input-height);
38
+ height: var(--fragment-input-height);
39
39
  justify-content: center;
40
40
  align-items: center;
41
41
  padding: 0 4px;
42
42
 
43
- color: var(--color-text-input);
44
- font-size: var(--font-size-input);
43
+ color: var(--text-color, var(--fragment-input-text-color));
44
+ font-size: var(--fragment-input-font-size);
45
45
 
46
- border-radius: var(--border-radius-input);
46
+ border-radius: var(--fragment-input-border-radius);
47
47
  background-color: var(
48
48
  --background-color,
49
- var(--color-background-input)
49
+ var(--fragment-input-background-color)
50
50
  );
51
51
  box-shadow: inset 0 0 0 1px
52
- var(--box-shadow-color, var(--color-border-input));
52
+ var(--box-shadow-color, var(--fragment-input-border-color));
53
53
  outline: 0;
54
54
  }
55
55
 
56
56
  .button:disabled {
57
- color: var(--color-text-input-disabled);
57
+ color: var(--fragment-input-disabled-text-color);
58
58
  }
59
59
 
60
60
  :global(body:not(.fragment-dragging)) .button:not(:disabled):hover {
61
- color: var(--color-text);
61
+ color: var(--text-color, var(--fragment-text-color));
62
62
 
63
63
  box-shadow: inset 0 0 0 1px
64
- var(--box-shadow-color-active, var(--color-active));
64
+ var(--box-shadow-color-active, var(--fragment-accent-color));
65
65
  }
66
66
 
67
67
  :global(body:not(.fragment-dragging)) .button:not(:disabled):active,
68
68
  :global(body:not(.fragment-dragging)) .button:not(:disabled):focus-visible {
69
69
  box-shadow: 0 0 0 2px
70
- var(--box-shadow-color-active, var(--color-active));
70
+ var(--box-shadow-color-active, var(--fragment-accent-color));
71
71
  }
72
72
  </style>
@@ -1,12 +1,18 @@
1
1
  <script>
2
- let { value = $bindable(), context, key = '', disabled = false, onchange } = $props();
2
+ let {
3
+ value = $bindable(),
4
+ context,
5
+ key = '',
6
+ disabled = false,
7
+ onchange,
8
+ } = $props();
3
9
 
4
10
  const handleChange = (event) => {
5
11
  onchange(value);
6
12
  };
7
13
  </script>
8
14
 
9
- <div class="checkbox">
15
+ <div class="checkbox" class:disabled>
10
16
  <input
11
17
  class="input"
12
18
  bind:checked={value}
@@ -14,58 +20,60 @@
14
20
  onchange={handleChange}
15
21
  disabled={disabled ? 'disabled' : null}
16
22
  />
17
- <div class="checked" />
18
23
  </div>
19
24
 
20
25
  <style>
21
26
  .checkbox {
22
27
  position: relative;
23
28
 
24
- width: var(--height-input);
25
- height: var(--height-input);
29
+ width: var(--fragment-input-height);
30
+ height: var(--fragment-input-height);
26
31
  margin-right: calc(var(--padding));
27
- box-shadow: inset 0 0 0 1px var(--color-border-input);
32
+ box-shadow: inset 0 0 0 1px var(--fragment-input-border-color);
28
33
 
29
- border-radius: var(--border-radius-input);
30
- background-color: var(--color-background-input);
34
+ border-radius: var(--fragment-input-border-radius);
35
+ background-color: var(--fragment-input-background-color);
31
36
  }
32
37
 
33
- .checkbox:hover {
34
- box-shadow: inset 0 0 0 1px var(--color-active);
38
+ :global(body:not(.fragment-dragging)) .checkbox:not(.disabled):hover {
39
+ box-shadow: inset 0 0 0 1px var(--fragment-accent-color);
35
40
  }
36
41
 
37
- .checkbox:focus-within {
38
- box-shadow: 0 0 0 2px var(--color-active);
42
+ :global(body:not(.fragment-dragging))
43
+ .checkbox:not(.disabled):focus-within {
44
+ box-shadow: 0 0 0 2px var(--fragment-accent-color);
39
45
  }
40
46
 
41
47
  .input {
42
48
  width: 100%;
43
49
  height: 100%;
44
50
  border: none;
45
- border-radius: var(--border-radius-input);
51
+ border-radius: var(--fragment-input-border-radius);
46
52
  background-color: transparent;
47
53
  outline: 0;
48
54
  }
49
55
 
50
- .checked {
56
+ .checkbox:after {
57
+ content: '';
58
+
51
59
  position: absolute;
52
60
  left: 3px;
53
61
  top: 3px;
54
62
  bottom: 3px;
55
63
  right: 3px;
56
64
 
57
- border-radius: calc(var(--border-radius-input) * 0.5);
58
- background-color: var(--color-active);
65
+ border-radius: calc(var(--fragment-input-border-radius) * 0.5);
66
+ background-color: var(--fragment-accent-color);
59
67
 
60
68
  opacity: 0;
61
69
  pointer-events: none;
62
70
  }
63
71
 
64
- .input:checked + .checked {
72
+ .checkbox:has(.input:checked):after {
65
73
  opacity: 1;
66
74
  }
67
75
 
68
- .input:checked:disabled + .checked {
69
- background-color: var(--color-active-disabled);
76
+ .checkbox:has(.input:checked:disabled):after {
77
+ background-color: var(--fragment-color-disabled);
70
78
  }
71
79
  </style>
@@ -188,16 +188,16 @@
188
188
  right: 1px;
189
189
  bottom: 1px;
190
190
 
191
- border-radius: calc(var(--border-radius-input) * 0.5);
191
+ border-radius: calc(var(--fragment-input-border-radius) * 0.5);
192
192
  }
193
193
 
194
194
  .mirror {
195
195
  position: relative;
196
196
 
197
- height: var(--height-input);
197
+ height: var(--fragment-input-height);
198
198
 
199
- border-radius: var(--border-radius-input);
200
- box-shadow: inset 0 0 0 1px var(--color-border-input);
199
+ border-radius: var(--fragment-input-border-radius);
200
+ box-shadow: inset 0 0 0 1px var(--fragment-input-border-color);
201
201
  }
202
202
 
203
203
  .mirror:after {
@@ -212,7 +212,7 @@
212
212
  bottom: var(--gap);
213
213
 
214
214
  background-color: var(--currentColor);
215
- border-radius: calc(var(--border-radius-input) * 0.5);
215
+ border-radius: calc(var(--fragment-input-border-radius) * 0.5);
216
216
  opacity: var(--opacity, 1);
217
217
  pointer-events: none;
218
218
  }
@@ -220,11 +220,13 @@
220
220
  :global(body:not(.fragment-dragging))
221
221
  .color-input:not(.disabled)
222
222
  .mirror:hover {
223
- box-shadow: inset 0 0 0 1px var(--box-shadow-color, var(--color-active));
223
+ box-shadow: inset 0 0 0 1px
224
+ var(--box-shadow-color, var(--fragment-accent-color));
224
225
  }
225
226
 
226
227
  .mirror:focus-within {
227
- box-shadow: 0 0 0 2px var(--box-shadow-color, var(--color-active));
228
+ box-shadow: 0 0 0 2px
229
+ var(--box-shadow-color, var(--fragment-accent-color));
228
230
  }
229
231
 
230
232
  .input {
@@ -4,7 +4,13 @@
4
4
  import FieldInputRow from './FieldInputRow.svelte';
5
5
  import TextInput from './TextInput.svelte';
6
6
 
7
- let { value, context = null, key = '', disabled = false } = $props();
7
+ let {
8
+ value,
9
+ context = null,
10
+ key = '',
11
+ onchange,
12
+ disabled = false,
13
+ } = $props();
8
14
 
9
15
  /** @type {HTMLImageElement} */
10
16
  let img;
@@ -24,7 +30,7 @@
24
30
  }
25
31
 
26
32
  let reader = new FileReader();
27
- let dragover = false;
33
+ let dragover = $state(false);
28
34
 
29
35
  function handleUpload(event) {
30
36
  event.preventDefault();
@@ -44,6 +50,7 @@
44
50
  reader.onload = null;
45
51
 
46
52
  value = e.target.result;
53
+ onchange(value);
47
54
  };
48
55
  reader.readAsDataURL(file);
49
56
 
@@ -67,33 +74,31 @@
67
74
 
68
75
  <div
69
76
  class="img-container"
77
+ role="group"
78
+ aria-label="Drop an image here to upload"
70
79
  class:dragover
71
- on:dragover={handleDragover}
72
- on:dragleave={handleDragleave}
73
- on:drop={handleUpload}
80
+ ondragover={handleDragover}
81
+ ondragleave={handleDragleave}
82
+ ondrop={handleUpload}
74
83
  >
75
84
  <FieldInputRow --grid-template-columns="1fr 0.5fr">
76
85
  <div class="row">
77
- <div class="preview" on:click={handleClick}>
86
+ <div class="preview">
78
87
  <img class="img" src="" alt="" bind:this={img} />
88
+ <button class="preview-button" onclick={handleClick}>
89
+ <span class="visually-hidden">Upload</span>
90
+ </button>
79
91
  <input
80
92
  class="input"
81
93
  type="file"
82
94
  bind:this={input}
83
- on:change={handleUpload}
95
+ onchange={handleUpload}
84
96
  disabled={disabled ? 'disabled' : null}
85
97
  />
86
98
  </div>
87
99
  <TextInput disabled value={displayUrl} />
88
100
  </div>
89
- <ButtonInput
90
- label="change"
91
- on:click={handleClick}
92
- on:dragover={handleDragover}
93
- on:dragleave={handleDragleave}
94
- on:drop={handleUpload}
95
- {disabled}
96
- />
101
+ <ButtonInput label="change" onclick={handleClick} {disabled} />
97
102
  </FieldInputRow>
98
103
  </div>
99
104
 
@@ -103,19 +108,32 @@
103
108
  }
104
109
 
105
110
  .preview {
106
- width: calc(var(--height-input) * 1);
107
- height: calc(var(--height-input) * 1);
111
+ position: relative;
112
+
113
+ width: calc(var(--fragment-input-height) * 1);
114
+ height: calc(var(--fragment-input-height) * 1);
108
115
  display: grid;
109
116
  place-items: center;
110
117
 
111
- border-radius: var(--border-radius-input);
112
- background-color: var(--color-background-input);
113
- box-shadow: inset 0 0 0 1px var(--color-border-input);
118
+ border-radius: var(--fragment-input-border-radius);
119
+ background-color: var(--fragment-input-background-color);
120
+ box-shadow: inset 0 0 0 1px var(--fragment-input-border-color);
114
121
 
115
122
  cursor: copy;
116
123
  overflow: hidden;
117
124
  }
118
125
 
126
+ .preview-button {
127
+ position: absolute;
128
+ top: 0;
129
+ left: 0;
130
+
131
+ width: 100%;
132
+ height: 100%;
133
+
134
+ opacity: 0;
135
+ }
136
+
119
137
  .row {
120
138
  display: grid;
121
139
  grid-template-columns: 20px auto;
@@ -124,14 +142,16 @@
124
142
  }
125
143
 
126
144
  .preview:hover {
127
- color: var(--color-text);
145
+ color: var(--fragment-text-color);
128
146
 
129
- box-shadow: inset 0 0 0 1px var(--box-shadow-color, var(--color-active));
147
+ box-shadow: inset 0 0 0 1px
148
+ var(--box-shadow-color, var(--fragment-accent-color));
130
149
  }
131
150
 
132
151
  .preview:active,
133
152
  .img-container.dragover .preview {
134
- box-shadow: 0 0 0 2px var(--box-shadow-color, var(--color-active));
153
+ box-shadow: 0 0 0 2px
154
+ var(--box-shadow-color, var(--fragment-accent-color));
135
155
  }
136
156
 
137
157
  .img-container.dragover {
@@ -45,22 +45,22 @@
45
45
  position: relative;
46
46
 
47
47
  display: flex;
48
- height: var(--height-input);
48
+ height: var(--fragment-input-height);
49
49
  margin: 2px 0;
50
50
 
51
- border-radius: var(--border-radius-input);
52
- background-color: var(--color-background-input);
53
- box-shadow: inset 0 0 0 1px var(--color-border-input);
51
+ border-radius: var(--fragment-input-border-radius);
52
+ background-color: var(--fragment-input-background-color);
53
+ box-shadow: inset 0 0 0 1px var(--fragment-input-border-color);
54
54
  }
55
55
 
56
56
  :global(body:not(.fragment-dragging))
57
57
  .input-container:not(.disabled):hover {
58
- box-shadow: inset 0 0 0 1px var(--color-active);
58
+ box-shadow: inset 0 0 0 1px var(--fragment-accent-color);
59
59
  }
60
60
 
61
61
  :global(body:not(.fragment-dragging))
62
62
  .input-container:not(.disabled):focus-within {
63
- box-shadow: 0 0 0 2px var(--color-active);
63
+ box-shadow: 0 0 0 2px var(--fragment-accent-color);
64
64
  }
65
65
 
66
66
  .label {
@@ -73,8 +73,8 @@
73
73
  align-items: center;
74
74
  padding: var(--padding);
75
75
 
76
- color: var(--color-text);
77
- font-size: var(--font-size-input);
76
+ color: var(--fragment-text-color);
77
+ font-size: var(--fragment-input-font-size);
78
78
  font-weight: 600;
79
79
  pointer-events: none;
80
80
  opacity: 0.35;
@@ -89,8 +89,8 @@
89
89
  height: 100%;
90
90
  padding: 0 var(--padding);
91
91
 
92
- color: var(--color-text-input);
93
- font-size: var(--font-size-input);
92
+ color: var(--fragment-input-text-color);
93
+ font-size: var(--fragment-input-font-size);
94
94
  text-align: right;
95
95
 
96
96
  background: transparent;
@@ -98,14 +98,14 @@
98
98
  }
99
99
 
100
100
  .input:disabled {
101
- color: var(--color-text-input-disabled);
101
+ color: var(--fragment-input-disabled-text-color);
102
102
  }
103
103
 
104
104
  .input:focus {
105
- color: var(--color-text);
105
+ color: var(--fragment-text-color);
106
106
  }
107
107
 
108
108
  /* .input:focus {
109
- border: var(--borderWidth) solid var(--color-active);
109
+ border: var(--borderWidth) solid var(--fragment-accent-color);
110
110
  } */
111
111
  </style>
@@ -78,9 +78,6 @@
78
78
  : Math.max(dragValue, value[1]),
79
79
  ];
80
80
 
81
- value[0] = newValues[0];
82
- value[1] = newValues[1];
83
-
84
81
  onchange(newValues);
85
82
  }
86
83
  }
@@ -183,21 +180,21 @@
183
180
  );
184
181
  --tx-max-1: calc(100cqw - var(--padding-h) * 1 - var(--width));
185
182
 
186
- height: var(--height-input);
187
- border-radius: var(--border-radius-input);
188
- box-shadow: inset 0 0 0 1px var(--color-border-input);
183
+ height: var(--fragment-input-height);
184
+ border-radius: var(--fragment-input-border-radius);
185
+ box-shadow: inset 0 0 0 1px var(--fragment-input-border-color);
189
186
 
190
- background: var(--color-background-input);
187
+ background: var(--fragment-input-background-color);
191
188
  cursor: ew-resize;
192
189
  container-type: size;
193
190
  }
194
191
 
195
192
  :global(body:not(.fragment-dragging)) .range:hover {
196
- box-shadow: inset 0 0 0 1px var(--color-active);
193
+ box-shadow: inset 0 0 0 1px var(--fragment-accent-color);
197
194
  }
198
195
 
199
196
  .range.dragging {
200
- box-shadow: 0 0 0 2px var(--color-active);
197
+ box-shadow: 0 0 0 2px var(--fragment-accent-color);
201
198
  }
202
199
 
203
200
  .handler {
@@ -215,9 +212,9 @@
215
212
 
216
213
  background: grey;
217
214
  transform-origin: 0 50%;
218
- border-radius: calc(var(--border-radius-input) * 0.5);
215
+ border-radius: calc(var(--fragment-input-border-radius) * 0.5);
219
216
 
220
- background-color: var(--color-active);
217
+ background-color: var(--fragment-accent-color);
221
218
 
222
219
  transform: translate3d(var(--tx), 0px, 0px);
223
220
  }
@@ -233,7 +230,7 @@
233
230
  }
234
231
 
235
232
  .interval-input.disabled .handler {
236
- background-color: var(--color-active-disabled);
233
+ background-color: var(--fragment-color-disabled);
237
234
  }
238
235
 
239
236
  .filler {
@@ -252,14 +249,14 @@
252
249
  var(--size)
253
250
  );
254
251
  bottom: 3px;
255
- background-color: var(--color-active);
252
+ background-color: var(--fragment-accent-color);
256
253
  opacity: 0.5;
257
254
 
258
255
  transform-origin: 0px 50%;
259
256
  }
260
257
 
261
258
  .interval-input.disabled .filler {
262
- background-color: var(--color-active-disabled);
259
+ background-color: var(--fragment-color-disabled);
263
260
  }
264
261
 
265
262
  .numbers {
@@ -42,8 +42,8 @@
42
42
  height: 80px;
43
43
 
44
44
  background-color: #1d1d1e;
45
- border-radius: var(--border-radius-input);
46
- box-shadow: inset 0 0 0 1px var(--color-border-input);
45
+ border-radius: var(--fragment-input-border-radius);
46
+ box-shadow: inset 0 0 0 1px var(--fragment-input-border-color);
47
47
  overflow-y: scroll;
48
48
  }
49
49
 
@@ -60,12 +60,14 @@
60
60
 
61
61
  .container::-webkit-scrollbar-track {
62
62
  background-color: var(
63
- --color-lightblack
63
+ --fragment-color-lightblack
64
64
  ); /* color of the tracking area */
65
65
  }
66
66
 
67
67
  .container::-webkit-scrollbar-thumb {
68
- background-color: var(--color-active); /* color of the scroll thumb */
68
+ background-color: var(
69
+ --fragment-accent-color
70
+ ); /* color of the scroll thumb */
69
71
  border-radius: 20px; /* roundness of the scroll thumb */
70
72
  }
71
73
 
@@ -75,7 +77,7 @@
75
77
 
76
78
  margin: 0;
77
79
  padding: 0 3px;
78
- color: var(--color-text);
80
+ color: var(--fragment-text-color);
79
81
  font-size: 10px;
80
82
 
81
83
  opacity: 0.35;
@@ -90,15 +92,14 @@
90
92
  }
91
93
 
92
94
  .list:not(.disabled) .label:hover {
93
- box-shadow: inset 0 0 0 1px var(--color-active);
95
+ box-shadow: inset 0 0 0 1px var(--fragment-accent-color);
94
96
  }
95
97
 
96
98
  .list:not(.disabled) .label:active {
97
- box-shadow: 0 0 0 2px var(--color-active);
99
+ box-shadow: 0 0 0 2px var(--fragment-accent-color);
98
100
  }
99
101
 
100
102
  .item:hover {
101
- /* background-color: #0E0E0E; */
102
103
  opacity: 1;
103
104
  }
104
105
 
@@ -101,11 +101,11 @@
101
101
  .progress {
102
102
  position: relative;
103
103
 
104
- height: var(--height-input);
105
- border-radius: var(--border-radius-input);
106
- box-shadow: inset 0 0 0 1px var(--color-border-input);
104
+ height: var(--fragment-input-height);
105
+ border-radius: var(--fragment-input-border-radius);
106
+ box-shadow: inset 0 0 0 1px var(--fragment-input-border-color);
107
107
 
108
- background: var(--color-background-input);
108
+ background: var(--fragment-input-background-color);
109
109
 
110
110
  container-type: size;
111
111
  outline: 0;
@@ -116,13 +116,13 @@
116
116
  }
117
117
 
118
118
  :global(body:not(.fragment-dragging)) .progress:not(.disabled):hover {
119
- box-shadow: inset 0 0 0 1px var(--color-active);
119
+ box-shadow: inset 0 0 0 1px var(--fragment-accent-color);
120
120
  }
121
121
 
122
122
  .progress.dragging,
123
123
  :global(body:not(.fragment-dragging))
124
124
  .progress:not(.disabled):focus-visible {
125
- box-shadow: 0 0 0 2px var(--color-active);
125
+ box-shadow: 0 0 0 2px var(--fragment-accent-color);
126
126
  }
127
127
 
128
128
  .fill {
@@ -145,14 +145,14 @@
145
145
 
146
146
  background: grey;
147
147
  transform-origin: 0 50%;
148
- border-radius: calc(var(--border-radius-input) * 0.5);
148
+ border-radius: calc(var(--fragment-input-border-radius) * 0.5);
149
149
 
150
- background-color: var(--color-active);
150
+ background-color: var(--fragment-accent-color);
151
151
 
152
152
  transform: translate3d(var(--tx), 0px, 0px);
153
153
  }
154
154
 
155
155
  .progress.disabled .fill {
156
- background-color: var(--color-active-disabled);
156
+ background-color: var(--fragment-color-disabled);
157
157
  }
158
158
  </style>
@@ -86,46 +86,47 @@
86
86
  .select-input {
87
87
  width: 100%;
88
88
 
89
- color: var(--color-text-input);
89
+ color: var(--fragment-input-text-color);
90
90
  }
91
91
 
92
92
  .select-input.disabled {
93
- color: var(--color-text-input-disabled);
93
+ color: var(--fragment-input-disabled-text-color);
94
94
  }
95
95
 
96
96
  .container {
97
97
  position: relative;
98
98
 
99
99
  display: flex;
100
- height: var(--height-input);
100
+ height: var(--fragment-input-height);
101
101
  margin: 2px 0;
102
102
 
103
- box-shadow: inset 0 0 0 1px var(--color-border-input);
104
- border-radius: var(--border-radius-input);
105
- background-color: var(--color-background-input);
103
+ box-shadow: inset 0 0 0 1px var(--fragment-input-border-color);
104
+ border-radius: var(--fragment-input-border-radius);
105
+ background-color: var(--fragment-input-background-color);
106
106
  }
107
107
 
108
108
  :global(body:not(.fragment-dragging))
109
109
  .select-input:not(.disabled)
110
110
  .container:hover {
111
- box-shadow: inset 0 0 0 1px var(--color-active);
111
+ box-shadow: inset 0 0 0 1px var(--fragment-accent-color);
112
112
  }
113
113
 
114
114
  .container:focus-within {
115
- box-shadow: 0 0 0 2px var(--color-active);
115
+ box-shadow: 0 0 0 2px var(--fragment-accent-color);
116
116
  }
117
117
 
118
118
  .select {
119
- padding: 0 var(--padding, 6px) 0 var(--padding, 6px);
119
+ padding: 0 18px 0 var(--padding, 6px);
120
120
 
121
121
  width: 100%;
122
122
 
123
123
  color: inherit;
124
- font-size: var(--font-size-input);
124
+ font-size: var(--fragment-input-font-size);
125
125
 
126
126
  outline: 0;
127
127
  background-color: transparent;
128
128
  opacity: 1;
129
+ text-overflow: ellipsis;
129
130
  }
130
131
 
131
132
  .select-input:not(.disabled) .select {
@@ -133,10 +134,10 @@
133
134
  }
134
135
 
135
136
  .select-input .select option {
136
- background-color: var(--color-background);
137
+ background-color: var(--fragment-background-color);
137
138
  }
138
139
 
139
140
  .select-input:not(.disabled) .select:focus {
140
- color: var(--color-text);
141
+ color: var(--fragment-text-color);
141
142
  }
142
143
  </style>
@@ -131,6 +131,6 @@
131
131
  width: var(--column-gap);
132
132
  height: 1px;
133
133
 
134
- background-color: var(--color-border-input);
134
+ background-color: var(--fragment-input-border-color);
135
135
  }
136
136
  </style>