@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 +55 -30
- package/fig.css +4 -3
- package/fig.js +8 -6
- package/package.json +1 -1
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-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
<fig-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
<
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
</
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
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