@rogieking/figui3 1.0.27 → 1.0.28
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/fig.js +24 -0
- package/package.json +1 -1
package/fig.js
CHANGED
|
@@ -524,6 +524,30 @@ class FigSegment extends HTMLElement {
|
|
|
524
524
|
}
|
|
525
525
|
window.customElements.define("fig-segment", FigSegment);
|
|
526
526
|
|
|
527
|
+
class FigSegmentedControl extends HTMLElement {
|
|
528
|
+
constructor() {
|
|
529
|
+
super();
|
|
530
|
+
}
|
|
531
|
+
connectedCallback() {
|
|
532
|
+
this.name = this.getAttribute("name") || "segmented-control";
|
|
533
|
+
this.addEventListener("click", this.handleClick.bind(this));
|
|
534
|
+
}
|
|
535
|
+
handleClick(event) {
|
|
536
|
+
const target = event.target;
|
|
537
|
+
if (target.nodeName.toLowerCase() === "fig-segment") {
|
|
538
|
+
const segments = this.querySelectorAll("fig-segment");
|
|
539
|
+
for (const segment of segments) {
|
|
540
|
+
if (segment === target) {
|
|
541
|
+
this.selectedSegment = segment;
|
|
542
|
+
} else {
|
|
543
|
+
segment.removeAttribute("selected");
|
|
544
|
+
}
|
|
545
|
+
}
|
|
546
|
+
}
|
|
547
|
+
}
|
|
548
|
+
}
|
|
549
|
+
window.customElements.define("fig-segmented-control", FigSegmentedControl);
|
|
550
|
+
|
|
527
551
|
/* Slider */
|
|
528
552
|
class FigSlider extends HTMLElement {
|
|
529
553
|
#typeDefaults = {
|
package/package.json
CHANGED