@rogieking/figui3 1.0.17 → 1.0.18

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.
package/example.html CHANGED
@@ -33,6 +33,7 @@
33
33
  <fig-button variant="secondary">Secondary</fig-button>
34
34
  <fig-button variant="ghost">Ghost</fig-button>
35
35
  <fig-button variant="ghost"
36
+ type="toggle"
36
37
  icon="true">
37
38
  <svg class="svg"
38
39
  xmlns="http://www.w3.org/2000/svg"
@@ -49,8 +50,8 @@
49
50
  </fig-button>
50
51
  <fig-tooltip text="Toggle off/on">
51
52
  <fig-button variant="ghost"
52
- icon="true"
53
53
  type="toggle"
54
+ icon="true"
54
55
  selected="true">
55
56
  <svg width="24"
56
57
  height="24"
@@ -123,35 +124,59 @@
123
124
  <fig-input-text value=""
124
125
  placeholder="Field placeholder"></fig-input-text>
125
126
  </fig-field>
126
- <fig-slider></fig-slider>
127
- <br />
128
- <fig-slider text="true"
129
- value="50"></fig-slider>
130
- <br />
131
- <fig-slider type="opacity"
132
- value="0.75"
133
- color="#ff0000"></fig-slider>
134
- <br />
135
- <fig-slider type="hue"
136
- value="55"></fig-slider>
137
- <br />
138
- <fig-slider value="50"
139
- step="25">
140
- <datalist id="markers">
141
- <option value="0"></option>
142
- <option value="25"></option>
143
- <option value="50"></option>
144
- <option value="75"></option>
145
- <option value="100"></option>
146
- </datalist>
147
- </fig-slider>
148
- <br />
149
- <fig-slider type="delta"
150
- value="2"
151
- default="0"
152
- max="5"
153
- min="-5"></fig-slider>
154
- <br />
127
+ <fig-field>
128
+ <label>Default slider</label>
129
+ <fig-slider></fig-slider>
130
+ </fig-field>
131
+
132
+ <fig-field>
133
+ <label>Number slider (with number input)</label>
134
+ <fig-slider text="true"
135
+ value="50"></fig-slider>
136
+ </fig-field>
137
+
138
+ <fig-field>
139
+ <label>Opacity slider</label>
140
+ <fig-slider type="opacity"
141
+ value="0.75"
142
+ color="#ff0000"
143
+ text="true"></fig-slider>
144
+ </fig-field>
145
+
146
+ <fig-field>
147
+ <label>Hue slider</label>
148
+ <fig-slider type="hue"
149
+ value="55"></fig-slider>
150
+ </fig-field>
151
+
152
+ <fig-field>
153
+ <label>Stepper slider</label>
154
+ <fig-slider value="50"
155
+ step="25">
156
+ <datalist id="markers">
157
+ <option value="0"></option>
158
+ <option value="25"></option>
159
+ <option value="50"></option>
160
+ <option value="75"></option>
161
+ <option value="100"></option>
162
+ </datalist>
163
+ </fig-slider>
164
+ </fig-field>
165
+
166
+ <fig-field>
167
+ <label>Delta slider</label>
168
+ <fig-slider type="delta"
169
+ value=".25"
170
+ default="0"
171
+ step="0.25"
172
+ max="5"
173
+ min="-5">
174
+ <datalist id="markers">
175
+ <option value="0"></option>
176
+ </datalist>
177
+ </fig-slider>
178
+ </fig-field>
179
+
155
180
  <fig-spinner></fig-spinner>
156
181
  </fig-content>
157
182
 
package/fig.css CHANGED
@@ -1229,6 +1229,9 @@ fig-slider {
1229
1229
  --width: calc(var(--slider-percent) - var(--start-percent));
1230
1230
  --abs-width: max(var(--width) + var(--slider-height)/2, -1*var(--width) + var(--slider-height)/2);
1231
1231
  width: var(--abs-width);
1232
+ --delta: calc(var(--slider-complete) - var(--default));
1233
+ --abs-delta: max(var(--delta), -1*var(--delta));
1234
+ opacity: calc(var(--abs-delta) * 100);
1232
1235
  }
1233
1236
 
1234
1237
  &::after {
@@ -1285,7 +1288,6 @@ fig-slider {
1285
1288
  aspect-ratio: 1;
1286
1289
  border: none;
1287
1290
  position: relative;
1288
- z-index: 1;
1289
1291
  box-shadow: var(--slider-handle-shadow);
1290
1292
  }
1291
1293
 
@@ -1347,7 +1349,6 @@ fig-slider {
1347
1349
  aspect-ratio: 1;
1348
1350
  border: none;
1349
1351
  position: relative;
1350
- z-index: 1;
1351
1352
  box-shadow: var(--slider-handle-shadow);
1352
1353
  }
1353
1354
 
@@ -1400,7 +1401,7 @@ fig-slider {
1400
1401
  width: var(--slider-tick-size);
1401
1402
  height: var(--slider-tick-size);
1402
1403
  aspect-ratio: 1;
1403
- margin: 0;
1404
+ margin: 0 auto;
1404
1405
  padding: 0;
1405
1406
  border: 0;
1406
1407
  border-radius: 100%;
package/fig.js CHANGED
@@ -574,12 +574,6 @@ class FigSlider extends HTMLElement {
574
574
  this.input.addEventListener("input", this.handleInput.bind(this))
575
575
  this.handleInput()
576
576
 
577
- this.datalist = this.querySelector('datalist')
578
- if (this.datalist) {
579
- this.datalist.setAttribute("id", this.datalist.getAttribute("id") || uniqueId())
580
- this.input.setAttribute('list', this.datalist.getAttribute("id"))
581
- }
582
-
583
577
  if (this.textInput) {
584
578
  this.textInput.addEventListener("input", this.handleTextInput.bind(this))
585
579
  }
@@ -587,6 +581,14 @@ class FigSlider extends HTMLElement {
587
581
  if (this.default) {
588
582
  this.style.setProperty("--default", this.calculateNormal(this.default))
589
583
  }
584
+ //child nodes hack
585
+ requestAnimationFrame(() => {
586
+ this.datalist = this.querySelector('datalist')
587
+ if (this.datalist) {
588
+ this.datalist.setAttribute("id", this.datalist.getAttribute("id") || uniqueId())
589
+ this.input.setAttribute('list', this.datalist.getAttribute("id"))
590
+ }
591
+ })
590
592
  }
591
593
  static get observedAttributes() {
592
594
  return ['value', 'step', 'min', 'max', 'type', 'disabled']
package/package.json CHANGED
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "name": "@rogieking/figui3",
3
- "version": "1.0.17"
3
+ "version": "1.0.18"
4
4
  }