@sky.ui/core 0.0.1
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/LICENSE.md +139 -0
- package/README.md +113 -0
- package/auto-import-loader.js +60 -0
- package/auto-import.js +93 -0
- package/dist/custom-elements.json +27051 -0
- package/dist/helper/controllers/animation-controller.d.ts +120 -0
- package/dist/helper/controllers/animation-controller.js +2 -0
- package/dist/helper/controllers/animation-controller.js.map +1 -0
- package/dist/helper/controllers/index.d.ts +2 -0
- package/dist/helper/controllers/popover-controller.d.ts +162 -0
- package/dist/helper/controllers/popover-controller.js +2 -0
- package/dist/helper/controllers/popover-controller.js.map +1 -0
- package/dist/helper/form-control-base.d.ts +1 -0
- package/dist/helper/iconify-offline.d.ts +73 -0
- package/dist/helper/iconify-offline.js +2 -0
- package/dist/helper/iconify-offline.js.map +1 -0
- package/dist/helper/index.d.ts +5 -0
- package/dist/helper/internals/form-control-base.d.ts +81 -0
- package/dist/helper/internals/form-control-base.js +2 -0
- package/dist/helper/internals/form-control-base.js.map +1 -0
- package/dist/helper/internals/index.d.ts +1 -0
- package/dist/helper/utils/color-resolver.d.ts +139 -0
- package/dist/helper/utils/color-resolver.js +2 -0
- package/dist/helper/utils/color-resolver.js.map +1 -0
- package/dist/helper/utils/index.d.ts +2 -0
- package/dist/helper/utils/size-resolver.d.ts +6 -0
- package/dist/helper/utils/size-resolver.js +2 -0
- package/dist/helper/utils/size-resolver.js.map +1 -0
- package/dist/index.d.ts +58 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -0
- package/dist/sky-accordion/index.d.ts +1 -0
- package/dist/sky-accordion/index.js +1 -0
- package/dist/sky-accordion/sky-accordion.d.ts +201 -0
- package/dist/sky-accordion/sky-accordion.js +85 -0
- package/dist/sky-accordion/sky-accordion.js.map +1 -0
- package/dist/sky-accordion-item/index.d.ts +1 -0
- package/dist/sky-accordion-item/index.js +1 -0
- package/dist/sky-accordion-item/sky-accordion-item.d.ts +161 -0
- package/dist/sky-accordion-item/sky-accordion-item.js +191 -0
- package/dist/sky-accordion-item/sky-accordion-item.js.map +1 -0
- package/dist/sky-alert/index.d.ts +1 -0
- package/dist/sky-alert/index.js +1 -0
- package/dist/sky-alert/sky-alert.d.ts +136 -0
- package/dist/sky-alert/sky-alert.js +292 -0
- package/dist/sky-alert/sky-alert.js.map +1 -0
- package/dist/sky-appbar/index.d.ts +1 -0
- package/dist/sky-appbar/index.js +1 -0
- package/dist/sky-appbar/sky-appbar.d.ts +84 -0
- package/dist/sky-appbar/sky-appbar.js +173 -0
- package/dist/sky-appbar/sky-appbar.js.map +1 -0
- package/dist/sky-avatar/index.d.ts +1 -0
- package/dist/sky-avatar/index.js +1 -0
- package/dist/sky-avatar/sky-avatar.d.ts +104 -0
- package/dist/sky-avatar/sky-avatar.js +152 -0
- package/dist/sky-avatar/sky-avatar.js.map +1 -0
- package/dist/sky-badge/index.d.ts +1 -0
- package/dist/sky-badge/index.js +1 -0
- package/dist/sky-badge/sky-badge.d.ts +154 -0
- package/dist/sky-badge/sky-badge.js +148 -0
- package/dist/sky-badge/sky-badge.js.map +1 -0
- package/dist/sky-breadcrumb/index.d.ts +1 -0
- package/dist/sky-breadcrumb/index.js +1 -0
- package/dist/sky-breadcrumb/sky-breadcrumb.d.ts +111 -0
- package/dist/sky-breadcrumb/sky-breadcrumb.js +230 -0
- package/dist/sky-breadcrumb/sky-breadcrumb.js.map +1 -0
- package/dist/sky-button/index.d.ts +1 -0
- package/dist/sky-button/index.js +1 -0
- package/dist/sky-button/sky-button.d.ts +118 -0
- package/dist/sky-button/sky-button.js +172 -0
- package/dist/sky-button/sky-button.js.map +1 -0
- package/dist/sky-button-group/index.d.ts +1 -0
- package/dist/sky-button-group/index.js +1 -0
- package/dist/sky-button-group/sky-button-group.d.ts +93 -0
- package/dist/sky-button-group/sky-button-group.js +281 -0
- package/dist/sky-button-group/sky-button-group.js.map +1 -0
- package/dist/sky-card/index.d.ts +1 -0
- package/dist/sky-card/index.js +1 -0
- package/dist/sky-card/sky-card.d.ts +143 -0
- package/dist/sky-card/sky-card.js +186 -0
- package/dist/sky-card/sky-card.js.map +1 -0
- package/dist/sky-carousel/index.d.ts +1 -0
- package/dist/sky-carousel/index.js +1 -0
- package/dist/sky-carousel/sky-carousel.d.ts +265 -0
- package/dist/sky-carousel/sky-carousel.js +211 -0
- package/dist/sky-carousel/sky-carousel.js.map +1 -0
- package/dist/sky-checkbox/index.d.ts +1 -0
- package/dist/sky-checkbox/index.js +1 -0
- package/dist/sky-checkbox/sky-checkbox.d.ts +165 -0
- package/dist/sky-checkbox/sky-checkbox.js +276 -0
- package/dist/sky-checkbox/sky-checkbox.js.map +1 -0
- package/dist/sky-chip/index.d.ts +1 -0
- package/dist/sky-chip/index.js +1 -0
- package/dist/sky-chip/sky-chip.d.ts +95 -0
- package/dist/sky-chip/sky-chip.js +210 -0
- package/dist/sky-chip/sky-chip.js.map +1 -0
- package/dist/sky-col/index.d.ts +1 -0
- package/dist/sky-col/index.js +1 -0
- package/dist/sky-col/sky-col.d.ts +84 -0
- package/dist/sky-col/sky-col.js +46 -0
- package/dist/sky-col/sky-col.js.map +1 -0
- package/dist/sky-combobox/index.d.ts +1 -0
- package/dist/sky-combobox/index.js +1 -0
- package/dist/sky-combobox/sky-combobox.d.ts +313 -0
- package/dist/sky-combobox/sky-combobox.js +1146 -0
- package/dist/sky-combobox/sky-combobox.js.map +1 -0
- package/dist/sky-counter/index.d.ts +1 -0
- package/dist/sky-counter/index.js +1 -0
- package/dist/sky-counter/sky-counter.d.ts +130 -0
- package/dist/sky-counter/sky-counter.js +101 -0
- package/dist/sky-counter/sky-counter.js.map +1 -0
- package/dist/sky-dialog/index.d.ts +1 -0
- package/dist/sky-dialog/index.js +1 -0
- package/dist/sky-dialog/sky-dialog.d.ts +237 -0
- package/dist/sky-dialog/sky-dialog.js +265 -0
- package/dist/sky-dialog/sky-dialog.js.map +1 -0
- package/dist/sky-divider/index.d.ts +1 -0
- package/dist/sky-divider/index.js +1 -0
- package/dist/sky-divider/sky-divider.d.ts +120 -0
- package/dist/sky-divider/sky-divider.js +42 -0
- package/dist/sky-divider/sky-divider.js.map +1 -0
- package/dist/sky-drawer/index.d.ts +1 -0
- package/dist/sky-drawer/index.js +1 -0
- package/dist/sky-drawer/sky-drawer.d.ts +161 -0
- package/dist/sky-drawer/sky-drawer.js +177 -0
- package/dist/sky-drawer/sky-drawer.js.map +1 -0
- package/dist/sky-dropdown/index.d.ts +1 -0
- package/dist/sky-dropdown/index.js +1 -0
- package/dist/sky-dropdown/sky-dropdown.d.ts +252 -0
- package/dist/sky-dropdown/sky-dropdown.js +58 -0
- package/dist/sky-dropdown/sky-dropdown.js.map +1 -0
- package/dist/sky-dropdown-item/index.d.ts +1 -0
- package/dist/sky-dropdown-item/index.js +1 -0
- package/dist/sky-dropdown-item/sky-dropdown-item.d.ts +207 -0
- package/dist/sky-dropdown-item/sky-dropdown-item.js +341 -0
- package/dist/sky-dropdown-item/sky-dropdown-item.js.map +1 -0
- package/dist/sky-flexbar/index.d.ts +1 -0
- package/dist/sky-flexbar/index.js +1 -0
- package/dist/sky-flexbar/sky-flexbar.d.ts +189 -0
- package/dist/sky-flexbar/sky-flexbar.js +148 -0
- package/dist/sky-flexbar/sky-flexbar.js.map +1 -0
- package/dist/sky-flexbox/index.d.ts +1 -0
- package/dist/sky-flexbox/index.js +1 -0
- package/dist/sky-flexbox/sky-flexbox.d.ts +156 -0
- package/dist/sky-flexbox/sky-flexbox.js +40 -0
- package/dist/sky-flexbox/sky-flexbox.js.map +1 -0
- package/dist/sky-flexcol/index.d.ts +1 -0
- package/dist/sky-flexcol/index.js +1 -0
- package/dist/sky-flexcol/sky-flexcol.d.ts +154 -0
- package/dist/sky-flexcol/sky-flexcol.js +14 -0
- package/dist/sky-flexcol/sky-flexcol.js.map +1 -0
- package/dist/sky-flexitem/index.d.ts +1 -0
- package/dist/sky-flexitem/index.js +1 -0
- package/dist/sky-flexitem/sky-flexitem.d.ts +114 -0
- package/dist/sky-flexitem/sky-flexitem.js +45 -0
- package/dist/sky-flexitem/sky-flexitem.js.map +1 -0
- package/dist/sky-form/index.d.ts +1 -0
- package/dist/sky-form/index.js +1 -0
- package/dist/sky-form/sky-form.d.ts +286 -0
- package/dist/sky-form/sky-form.js +66 -0
- package/dist/sky-form/sky-form.js.map +1 -0
- package/dist/sky-grid/index.d.ts +1 -0
- package/dist/sky-grid/index.js +1 -0
- package/dist/sky-grid/sky-grid.d.ts +78 -0
- package/dist/sky-grid/sky-grid.js +40 -0
- package/dist/sky-grid/sky-grid.js.map +1 -0
- package/dist/sky-icon/index.d.ts +1 -0
- package/dist/sky-icon/index.js +1 -0
- package/dist/sky-icon/ion-local.json.js +2 -0
- package/dist/sky-icon/ion-local.json.js.map +1 -0
- package/dist/sky-icon/sky-icon.d.ts +123 -0
- package/dist/sky-icon/sky-icon.js +40 -0
- package/dist/sky-icon/sky-icon.js.map +1 -0
- package/dist/sky-image/index.d.ts +1 -0
- package/dist/sky-image/index.js +1 -0
- package/dist/sky-image/sky-image.d.ts +102 -0
- package/dist/sky-image/sky-image.js +29 -0
- package/dist/sky-image/sky-image.js.map +1 -0
- package/dist/sky-input/index.d.ts +1 -0
- package/dist/sky-input/index.js +1 -0
- package/dist/sky-input/sky-input.d.ts +345 -0
- package/dist/sky-input/sky-input.js +820 -0
- package/dist/sky-input/sky-input.js.map +1 -0
- package/dist/sky-list/index.d.ts +1 -0
- package/dist/sky-list/index.js +1 -0
- package/dist/sky-list/sky-list.d.ts +85 -0
- package/dist/sky-list/sky-list.js +41 -0
- package/dist/sky-list/sky-list.js.map +1 -0
- package/dist/sky-listitem/index.d.ts +1 -0
- package/dist/sky-listitem/index.js +1 -0
- package/dist/sky-listitem/sky-listitem.d.ts +76 -0
- package/dist/sky-listitem/sky-listitem.js +104 -0
- package/dist/sky-listitem/sky-listitem.js.map +1 -0
- package/dist/sky-navbar/index.d.ts +1 -0
- package/dist/sky-navbar/index.js +1 -0
- package/dist/sky-navbar/sky-navbar.d.ts +207 -0
- package/dist/sky-navbar/sky-navbar.js +521 -0
- package/dist/sky-navbar/sky-navbar.js.map +1 -0
- package/dist/sky-navpanel/index.d.ts +1 -0
- package/dist/sky-navpanel/index.js +1 -0
- package/dist/sky-navpanel/sky-navpanel.d.ts +186 -0
- package/dist/sky-navpanel/sky-navpanel.js +404 -0
- package/dist/sky-navpanel/sky-navpanel.js.map +1 -0
- package/dist/sky-notification/index.d.ts +1 -0
- package/dist/sky-notification/index.js +1 -0
- package/dist/sky-notification/sky-notification.d.ts +152 -0
- package/dist/sky-notification/sky-notification.js +456 -0
- package/dist/sky-notification/sky-notification.js.map +1 -0
- package/dist/sky-otp/index.d.ts +1 -0
- package/dist/sky-otp/index.js +1 -0
- package/dist/sky-otp/sky-otp.d.ts +101 -0
- package/dist/sky-otp/sky-otp.js +96 -0
- package/dist/sky-otp/sky-otp.js.map +1 -0
- package/dist/sky-overlay/index.d.ts +1 -0
- package/dist/sky-overlay/index.js +1 -0
- package/dist/sky-overlay/sky-overlay.d.ts +71 -0
- package/dist/sky-overlay/sky-overlay.js +26 -0
- package/dist/sky-overlay/sky-overlay.js.map +1 -0
- package/dist/sky-pagination/index.d.ts +1 -0
- package/dist/sky-pagination/index.js +1 -0
- package/dist/sky-pagination/sky-pagination.d.ts +167 -0
- package/dist/sky-pagination/sky-pagination.js +453 -0
- package/dist/sky-pagination/sky-pagination.js.map +1 -0
- package/dist/sky-progress/index.d.ts +1 -0
- package/dist/sky-progress/index.js +1 -0
- package/dist/sky-progress/sky-progress.d.ts +70 -0
- package/dist/sky-progress/sky-progress.js +87 -0
- package/dist/sky-progress/sky-progress.js.map +1 -0
- package/dist/sky-radio/index.d.ts +1 -0
- package/dist/sky-radio/index.js +1 -0
- package/dist/sky-radio/sky-radio.d.ts +118 -0
- package/dist/sky-radio/sky-radio.js +109 -0
- package/dist/sky-radio/sky-radio.js.map +1 -0
- package/dist/sky-radio-group/index.d.ts +1 -0
- package/dist/sky-radio-group/index.js +1 -0
- package/dist/sky-radio-group/sky-radio-group.d.ts +186 -0
- package/dist/sky-radio-group/sky-radio-group.js +239 -0
- package/dist/sky-radio-group/sky-radio-group.js.map +1 -0
- package/dist/sky-range/index.d.ts +1 -0
- package/dist/sky-range/index.js +1 -0
- package/dist/sky-range/sky-range.d.ts +110 -0
- package/dist/sky-range/sky-range.js +196 -0
- package/dist/sky-range/sky-range.js.map +1 -0
- package/dist/sky-row/index.d.ts +1 -0
- package/dist/sky-row/index.js +1 -0
- package/dist/sky-row/sky-row.d.ts +57 -0
- package/dist/sky-row/sky-row.js +6 -0
- package/dist/sky-row/sky-row.js.map +1 -0
- package/dist/sky-serial/index.d.ts +1 -0
- package/dist/sky-serial/index.js +1 -0
- package/dist/sky-serial/sky-serial.d.ts +127 -0
- package/dist/sky-serial/sky-serial.js +133 -0
- package/dist/sky-serial/sky-serial.js.map +1 -0
- package/dist/sky-sheet/index.d.ts +1 -0
- package/dist/sky-sheet/index.js +1 -0
- package/dist/sky-sheet/sky-sheet.d.ts +70 -0
- package/dist/sky-sheet/sky-sheet.js +47 -0
- package/dist/sky-sheet/sky-sheet.js.map +1 -0
- package/dist/sky-skeleton/index.d.ts +1 -0
- package/dist/sky-skeleton/index.js +1 -0
- package/dist/sky-skeleton/sky-skeleton.d.ts +80 -0
- package/dist/sky-skeleton/sky-skeleton.js +233 -0
- package/dist/sky-skeleton/sky-skeleton.js.map +1 -0
- package/dist/sky-slider/index.d.ts +1 -0
- package/dist/sky-slider/index.js +1 -0
- package/dist/sky-slider/sky-slider.d.ts +96 -0
- package/dist/sky-slider/sky-slider.js +139 -0
- package/dist/sky-slider/sky-slider.js.map +1 -0
- package/dist/sky-speeddial/index.d.ts +1 -0
- package/dist/sky-speeddial/index.js +1 -0
- package/dist/sky-speeddial/sky-speeddial.d.ts +86 -0
- package/dist/sky-speeddial/sky-speeddial.js +154 -0
- package/dist/sky-speeddial/sky-speeddial.js.map +1 -0
- package/dist/sky-spinner/index.d.ts +1 -0
- package/dist/sky-spinner/index.js +1 -0
- package/dist/sky-spinner/sky-spinner.d.ts +87 -0
- package/dist/sky-spinner/sky-spinner.js +334 -0
- package/dist/sky-spinner/sky-spinner.js.map +1 -0
- package/dist/sky-steps/index.d.ts +1 -0
- package/dist/sky-steps/index.js +1 -0
- package/dist/sky-steps/sky-steps.d.ts +170 -0
- package/dist/sky-steps/sky-steps.js +455 -0
- package/dist/sky-steps/sky-steps.js.map +1 -0
- package/dist/sky-switch/index.d.ts +1 -0
- package/dist/sky-switch/index.js +1 -0
- package/dist/sky-switch/sky-switch.d.ts +116 -0
- package/dist/sky-switch/sky-switch.js +191 -0
- package/dist/sky-switch/sky-switch.js.map +1 -0
- package/dist/sky-tab/index.d.ts +1 -0
- package/dist/sky-tab/index.js +1 -0
- package/dist/sky-tab/sky-tab.d.ts +188 -0
- package/dist/sky-tab/sky-tab.js +390 -0
- package/dist/sky-tab/sky-tab.js.map +1 -0
- package/dist/sky-tab-button/index.d.ts +1 -0
- package/dist/sky-tab-button/index.js +1 -0
- package/dist/sky-tab-button/sky-tab-button.d.ts +114 -0
- package/dist/sky-tab-button/sky-tab-button.js +167 -0
- package/dist/sky-tab-button/sky-tab-button.js.map +1 -0
- package/dist/sky-theme-provider/index.d.ts +1 -0
- package/dist/sky-theme-provider/index.js +1 -0
- package/dist/sky-theme-provider/sky-theme-provider.d.ts +169 -0
- package/dist/sky-theme-provider/sky-theme-provider.js +12 -0
- package/dist/sky-theme-provider/sky-theme-provider.js.map +1 -0
- package/dist/sky-theme-switcher/index.d.ts +1 -0
- package/dist/sky-theme-switcher/index.js +1 -0
- package/dist/sky-theme-switcher/sky-theme-switcher.d.ts +92 -0
- package/dist/sky-theme-switcher/sky-theme-switcher.js +43 -0
- package/dist/sky-theme-switcher/sky-theme-switcher.js.map +1 -0
- package/dist/sky-tooltip/index.d.ts +1 -0
- package/dist/sky-tooltip/index.js +1 -0
- package/dist/sky-tooltip/sky-tooltip.d.ts +156 -0
- package/dist/sky-tooltip/sky-tooltip.js +242 -0
- package/dist/sky-tooltip/sky-tooltip.js.map +1 -0
- package/package.json +475 -0
- package/plugins/rollup-plugin.d.ts +19 -0
- package/plugins/rollup-plugin.js +129 -0
- package/plugins/vite-plugin.d.ts +22 -0
- package/plugins/vite-plugin.js +116 -0
- package/plugins/webpack-plugin.d.ts +12 -0
- package/plugins/webpack-plugin.js +46 -0
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
import{__decorate as t,__metadata as i}from"tslib";import{LitElement as e,css as s,html as r}from"lit";import{property as o,customElement as n}from"lit/decorators.js";import{styleMap as a}from"lit/directives/style-map.js";import{when as l}from"lit/directives/when.js";import{repeat as d}from"lit/directives/repeat.js";import{classMap as p}from"lit/directives/class-map.js";import{SkyIcon as h}from"../sky-icon/sky-icon.js";let c=class extends e{constructor(){super(...arguments),this.currentIndex=0,this.slideCount=0,this.maxWidth="600px",this.showBullets=!0,this.auto=!0,this.showIndex=!1,this.showButton=!1,this.autoSlideInterval=3e3,this.isLoading=!1,this.slidesVisible=1,this.slidesToScroll=1,this.partialVisible=!1,this.slideGap="0",this.isDragging=!1,this.startX=0,this.currentX=0,this.autoSlideTimer=null,this.onPointerDown=t=>{this.isDragging=!0,this.startX=t.clientX,this.currentX=t.clientX},this.onPointerMove=t=>{this.isDragging&&(this.currentX=t.clientX)},this.onPointerUp=()=>{if(!this.isDragging)return;const t=this.currentX-this.startX;t>50?this.prevSlide():t<-50&&this.nextSlide(),this.isDragging=!1,this.startX=0,this.currentX=0},this.nextSlide=()=>{const t=this.currentIndex+this.slidesToScroll,i=t>=this.slideCount-this.slidesVisible+1?0:Math.min(t,this.slideCount-this.slidesVisible);this.currentIndex=i,this.dispatchEvent(new CustomEvent("slide-changed",{detail:{index:this.currentIndex},bubbles:!0,composed:!0}))},this.prevSlide=()=>{const t=this.currentIndex-this.slidesToScroll;this.currentIndex=t<0?this.slideCount-this.slidesVisible:Math.max(t,0),this.dispatchEvent(new CustomEvent("slide-changed",{detail:{index:this.currentIndex},bubbles:!0,composed:!0}))}}static{this.dependencies={"sky-icon":h}}static{this.styles=s`
|
|
2
|
+
:host {
|
|
3
|
+
display: block;
|
|
4
|
+
position: relative;
|
|
5
|
+
overflow: hidden;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
.slider-container {
|
|
9
|
+
display: flex;
|
|
10
|
+
transition: transform 0.5s ease-in-out;
|
|
11
|
+
width: 100%;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
::slotted(*) {
|
|
15
|
+
flex: 0 0 calc(100% / var(--slides-visible));
|
|
16
|
+
padding: 0 calc(var(--slide-gap) / 2);
|
|
17
|
+
box-sizing: border-box;
|
|
18
|
+
opacity: 1;
|
|
19
|
+
transition: opacity 0.3s ease;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
:host([partial-visible]) ::slotted(*) {
|
|
23
|
+
opacity: 0.6;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
:host([partial-visible]) ::slotted(.active) {
|
|
27
|
+
opacity: 1;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.slider-wrapper {
|
|
31
|
+
position: relative;
|
|
32
|
+
width: 100%;
|
|
33
|
+
overflow: hidden;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.nav-button {
|
|
37
|
+
position: absolute;
|
|
38
|
+
top: 50%;
|
|
39
|
+
transform: translateY(-50%);
|
|
40
|
+
background: var(--sky-glass-primary);
|
|
41
|
+
color: var(--sky-active-primary);
|
|
42
|
+
border-radius: var(--sky-radius-full);
|
|
43
|
+
box-shadow: var(--sky-box-shadow-primary);
|
|
44
|
+
border: var(--sky-border-primary);
|
|
45
|
+
display: flex;
|
|
46
|
+
align-items: center;
|
|
47
|
+
justify-content: center;
|
|
48
|
+
padding: 10px;
|
|
49
|
+
cursor: pointer;
|
|
50
|
+
z-index: 1;
|
|
51
|
+
overflow: hidden;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.nav-button::before {
|
|
55
|
+
content: "";
|
|
56
|
+
position: absolute;
|
|
57
|
+
inset: 0;
|
|
58
|
+
backdrop-filter: var(--sky-blur-primary) var(--sky-brightness-primary)
|
|
59
|
+
var(--sky-saturation-primary);
|
|
60
|
+
-webkit-backdrop-filter: var(--sky-blur-primary)
|
|
61
|
+
var(--sky-brightness-primary) var(--sky-saturation-primary);
|
|
62
|
+
border-radius: inherit;
|
|
63
|
+
z-index: -1;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.prev {
|
|
67
|
+
left: 10px;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
.next {
|
|
71
|
+
right: 10px;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.index-display {
|
|
75
|
+
position: absolute;
|
|
76
|
+
bottom: 10px;
|
|
77
|
+
left: 50%;
|
|
78
|
+
transform: translateX(-50%);
|
|
79
|
+
font-size: 10px;
|
|
80
|
+
color: var(--sky-active-primary);
|
|
81
|
+
background: var(--sky-glass-primary);
|
|
82
|
+
backdrop-filter: var(--sky-blur-primary) var(--sky-brightness-primary)
|
|
83
|
+
var(--sky-saturation-primary);
|
|
84
|
+
-webkit-backdrop-filter: var(--sky-blur-primary)
|
|
85
|
+
var(--sky-brightness-primary) var(--sky-saturation-primary);
|
|
86
|
+
padding: 4px 8px;
|
|
87
|
+
border: var(--sky-border-primary);
|
|
88
|
+
border-radius: var(--sky-radius-tertiary);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
.bullet-navigation {
|
|
92
|
+
position: absolute;
|
|
93
|
+
bottom: 20px;
|
|
94
|
+
left: 50%;
|
|
95
|
+
transform: translateX(-50%);
|
|
96
|
+
display: flex;
|
|
97
|
+
gap: 10px;
|
|
98
|
+
padding: 5px 10px;
|
|
99
|
+
border: var(--sky-border-primary);
|
|
100
|
+
border-radius: var(--sky-radius-full);
|
|
101
|
+
box-shadow: var(--sky-box-shadow-primary);
|
|
102
|
+
border: var(--sky-border-primary);
|
|
103
|
+
background: var(--sky-glass-primary);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
.bullet-navigation::before {
|
|
107
|
+
content: "";
|
|
108
|
+
position: absolute;
|
|
109
|
+
inset: 0;
|
|
110
|
+
backdrop-filter: var(--sky-blur-primary) var(--sky-brightness-primary)
|
|
111
|
+
var(--sky-saturation-primary);
|
|
112
|
+
-webkit-backdrop-filter: var(--sky-blur-primary)
|
|
113
|
+
var(--sky-brightness-primary) var(--sky-saturation-primary);
|
|
114
|
+
border-radius: inherit;
|
|
115
|
+
z-index: -1;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
.bullet {
|
|
119
|
+
width: 8px;
|
|
120
|
+
height: 8px;
|
|
121
|
+
border-radius: 50%;
|
|
122
|
+
background: var(--sky-text-secondary);
|
|
123
|
+
box-shadow: var(--sky-box-shadow-primary);
|
|
124
|
+
border: var(--sky-border-primary);
|
|
125
|
+
cursor: pointer;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
.bullet.active {
|
|
129
|
+
background-color: var(--sky-active-primary);
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
.loading-overlay {
|
|
133
|
+
position: absolute;
|
|
134
|
+
inset: 0;
|
|
135
|
+
display: flex;
|
|
136
|
+
align-items: center;
|
|
137
|
+
justify-content: center;
|
|
138
|
+
background: var(--sky-overlay-primary);
|
|
139
|
+
border-radius: inherit;
|
|
140
|
+
z-index: 2;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
.loading-spinner {
|
|
144
|
+
width: 40px;
|
|
145
|
+
height: 40px;
|
|
146
|
+
border: 2px solid var(--sky-text-white);
|
|
147
|
+
border-top-color: var(--sky-active-primary);
|
|
148
|
+
border-radius: 50%;
|
|
149
|
+
animation: spin 0.8s linear infinite;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
@keyframes spin {
|
|
153
|
+
from {
|
|
154
|
+
transform: rotate(0deg);
|
|
155
|
+
}
|
|
156
|
+
to {
|
|
157
|
+
transform: rotate(360deg);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
.no-select {
|
|
162
|
+
user-select: none !important;
|
|
163
|
+
pointer-events: none !important;
|
|
164
|
+
}
|
|
165
|
+
`}connectedCallback(){super.connectedCallback(),this.updateSlideCount(),this.maxWidth&&(this.style.maxWidth=this.maxWidth),this.startAutoSlide(),this.addEventListener("pointerdown",this.onPointerDown),this.addEventListener("pointermove",this.onPointerMove),this.addEventListener("pointerup",this.onPointerUp),this.addEventListener("pointerleave",this.onPointerUp)}disconnectedCallback(){super.disconnectedCallback(),this.stopAutoSlide(),this.removeEventListener("pointerdown",this.onPointerDown),this.removeEventListener("pointermove",this.onPointerMove),this.removeEventListener("pointerup",this.onPointerUp),this.removeEventListener("pointerleave",this.onPointerUp)}willUpdate(t){super.willUpdate(t),t.has("autoSlideInterval")&&this.startAutoSlide()}updateSlideCount(){const t=this.shadowRoot?.querySelector("slot");t&&(this.slideCount=t.assignedElements().length)}startAutoSlide(){this.stopAutoSlide(),this.auto&&this.autoSlideInterval>0&&this.slideCount>this.slidesVisible&&(this.autoSlideTimer=setInterval(()=>this.nextSlide(),this.autoSlideInterval))}stopAutoSlide(){this.autoSlideTimer&&(clearInterval(this.autoSlideTimer),this.autoSlideTimer=null)}setSlide(t){this.currentIndex=Math.min(t,this.slideCount-this.slidesVisible),this.stopAutoSlide(),this.startAutoSlide(),this.dispatchEvent(new CustomEvent("slide-changed",{detail:{index:this.currentIndex},bubbles:!0,composed:!0}))}render(){const t=this.closest('[dir="rtl"]')||"rtl"===document.dir?this.currentIndex*(100/this.slidesVisible)+"%":`-${this.currentIndex*(100/this.slidesVisible)}%`,i=Math.ceil((this.slideCount-this.slidesVisible+1)/this.slidesToScroll),e={transform:`translateX(${t})`,...this.partialVisible&&{margin:`0 calc(${this.slideGap} / -2)`,width:`calc(100% + ${this.slideGap})`},"--slides-visible":`${this.slidesVisible}`,"--slide-gap":this.slideGap},s=Array.from({length:i},(t,i)=>i);return r`
|
|
166
|
+
${l(this.isLoading,()=>r`<div class="loading-overlay" part="loading-overlay">
|
|
167
|
+
<div class="loading-spinner" part="loading-spinner"></div>
|
|
168
|
+
</div>`)}
|
|
169
|
+
<div class="slider-wrapper" part="slider-wrapper">
|
|
170
|
+
<div
|
|
171
|
+
class="slider-container"
|
|
172
|
+
part="slider-container"
|
|
173
|
+
style=${a(e)}
|
|
174
|
+
@slotchange=${this.updateSlideCount}
|
|
175
|
+
>
|
|
176
|
+
<slot></slot>
|
|
177
|
+
</div>
|
|
178
|
+
|
|
179
|
+
${l(this.showButton&&this.slideCount>this.slidesVisible,()=>r`
|
|
180
|
+
<button
|
|
181
|
+
class="nav-button prev"
|
|
182
|
+
part="nav-button nav-button-prev"
|
|
183
|
+
@click=${this.prevSlide}
|
|
184
|
+
>
|
|
185
|
+
<sky-icon icon="ion:chevron-back"></sky-icon>
|
|
186
|
+
</button>
|
|
187
|
+
<button
|
|
188
|
+
class="nav-button next"
|
|
189
|
+
part="nav-button nav-button-next"
|
|
190
|
+
@click=${this.nextSlide}
|
|
191
|
+
>
|
|
192
|
+
<sky-icon icon="ion:chevron-forward"></sky-icon>
|
|
193
|
+
</button>
|
|
194
|
+
`)}
|
|
195
|
+
${l(this.showIndex,()=>r`<div class="index-display" part="index-display">
|
|
196
|
+
${this.slidesVisible>1?`${this.currentIndex+1}-${Math.min(this.currentIndex+this.slidesVisible,this.slideCount)} / ${this.slideCount}`:`${this.currentIndex+1} / ${this.slideCount}`}
|
|
197
|
+
</div>`)}
|
|
198
|
+
${l(this.showBullets&&this.slideCount>this.slidesVisible,()=>r`
|
|
199
|
+
<div class="bullet-navigation" part="bullet-navigation">
|
|
200
|
+
${d(s,t=>String(t),t=>{const i=this.currentIndex===t*this.slidesToScroll;return r`
|
|
201
|
+
<div
|
|
202
|
+
class=${p({bullet:!0,active:i})}
|
|
203
|
+
part=${i?"bullet bullet-active":"bullet"}
|
|
204
|
+
@click=${()=>this.setSlide(t*this.slidesToScroll)}
|
|
205
|
+
></div>
|
|
206
|
+
`})}
|
|
207
|
+
</div>
|
|
208
|
+
`)}
|
|
209
|
+
</div>
|
|
210
|
+
`}};t([o({type:Number,reflect:!0}),i("design:type",Object)],c.prototype,"currentIndex",void 0),t([o({type:Number,reflect:!0}),i("design:type",Object)],c.prototype,"slideCount",void 0),t([o({type:String}),i("design:type",Object)],c.prototype,"maxWidth",void 0),t([o({type:Boolean,reflect:!0}),i("design:type",Object)],c.prototype,"showBullets",void 0),t([o({type:Boolean,reflect:!0}),i("design:type",Object)],c.prototype,"auto",void 0),t([o({type:Boolean,reflect:!0}),i("design:type",Object)],c.prototype,"showIndex",void 0),t([o({type:Boolean,reflect:!0}),i("design:type",Object)],c.prototype,"showButton",void 0),t([o({type:Number}),i("design:type",Object)],c.prototype,"autoSlideInterval",void 0),t([o({type:Boolean,reflect:!0}),i("design:type",Object)],c.prototype,"isLoading",void 0),t([o({type:Number}),i("design:type",Object)],c.prototype,"slidesVisible",void 0),t([o({type:Number}),i("design:type",Object)],c.prototype,"slidesToScroll",void 0),t([o({type:Boolean}),i("design:type",Object)],c.prototype,"partialVisible",void 0),t([o({type:String}),i("design:type",Object)],c.prototype,"slideGap",void 0),c=t([n("sky-carousel")],c);export{c as SkyCarousel};
|
|
211
|
+
//# sourceMappingURL=sky-carousel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sky-carousel.js","sources":["../../src/sky-carousel/sky-carousel.ts"],"sourcesContent":[null],"names":["SkyCarousel","LitElement","constructor","this","currentIndex","slideCount","maxWidth","showBullets","auto","showIndex","showButton","autoSlideInterval","isLoading","slidesVisible","slidesToScroll","partialVisible","slideGap","isDragging","startX","currentX","autoSlideTimer","onPointerDown","e","clientX","onPointerMove","onPointerUp","delta","prevSlide","nextSlide","next","nextIndex","Math","min","dispatchEvent","CustomEvent","detail","index","bubbles","composed","prev","max","dependencies","SkyIcon","styles","css","connectedCallback","super","updateSlideCount","style","startAutoSlide","addEventListener","disconnectedCallback","stopAutoSlide","removeEventListener","willUpdate","changedProps","has","slot","shadowRoot","querySelector","assignedElements","length","setInterval","clearInterval","setSlide","render","translateX","closest","document","dir","bulletCount","ceil","containerStyle","transform","margin","width","bulletIndices","Array","from","_","i","html","when","styleMap","repeat","String","active","classMap","bullet","__decorate","property","type","Number","reflect","prototype","Boolean","customElement"],"mappings":"uaAyFO,IAAMA,EAAN,cAA0BC,EAA1B,WAAAC,uBAOsCC,KAAAC,aAAe,EAGfD,KAAAE,WAAa,EAG5BF,KAAAG,SAAW,QAGKH,KAAAI,aAAc,EAGdJ,KAAAK,MAAO,EAGPL,KAAAM,WAAY,EAGZN,KAAAO,YAAa,EAG7BP,KAAAQ,kBAAoB,IAGJR,KAAAS,WAAY,EAG5BT,KAAAU,cAAgB,EAGhBV,KAAAW,eAAiB,EAGhBX,KAAAY,gBAC3B,EAG0BZ,KAAAa,SAAW,IAC/Bb,KAAAc,YAAa,EACbd,KAAAe,OAAS,EACTf,KAAAgB,SAAW,EACXhB,KAAAiB,eAAwD,KAsOxDjB,KAAAkB,cAAiBC,IACvBnB,KAAKc,YAAa,EAClBd,KAAKe,OAASI,EAAEC,QAChBpB,KAAKgB,SAAWG,EAAEC,SAWZpB,KAAAqB,cAAiBF,IAClBnB,KAAKc,aACVd,KAAKgB,SAAWG,EAAEC,UAgBZpB,KAAAsB,YAAc,KACpB,IAAKtB,KAAKc,WAAY,OAEtB,MAAMS,EAAQvB,KAAKgB,SAAWhB,KAAKe,OAG/BQ,EAFc,GAGhBvB,KAAKwB,YACID,GAJO,IAKhBvB,KAAKyB,YAGPzB,KAAKc,YAAa,EAClBd,KAAKe,OAAS,EACdf,KAAKgB,SAAW,GAqFXhB,KAAAyB,UAAY,KACjB,MAAMC,EAAO1B,KAAKC,aAAeD,KAAKW,eAChCgB,EACJD,GAAQ1B,KAAKE,WAAaF,KAAKU,cAAgB,EAC3C,EACAkB,KAAKC,IAAIH,EAAM1B,KAAKE,WAAaF,KAAKU,eAC5CV,KAAKC,aAAe0B,EACpB3B,KAAK8B,cACH,IAAIC,YAA+B,gBAAiB,CAClDC,OAAQ,CAAEC,MAAOjC,KAAKC,cACtBiC,SAAS,EACTC,UAAU,MAmBTnC,KAAAwB,UAAY,KACjB,MAAMY,EAAOpC,KAAKC,aAAeD,KAAKW,eACtCX,KAAKC,aACHmC,EAAO,EAAIpC,KAAKE,WAAaF,KAAKU,cAAgBkB,KAAKS,IAAID,EAAM,GACnEpC,KAAK8B,cACH,IAAIC,YAA+B,gBAAiB,CAClDC,OAAQ,CAAEC,MAAOjC,KAAKC,cACtBiC,SAAS,EACTC,UAAU,KA2HlB,QAxjBSnC,KAAAsC,aAAyD,CAC9D,WAAYC,EACZ,QA8CcvC,KAAAwC,OAASC,CAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoK1B,CAYO,iBAAAC,GACPC,MAAMD,oBACN1C,KAAK4C,mBACD5C,KAAKG,WAAUH,KAAK6C,MAAM1C,SAAWH,KAAKG,UAC9CH,KAAK8C,iBACL9C,KAAK+C,iBAAiB,cAAe/C,KAAKkB,eAC1ClB,KAAK+C,iBAAiB,cAAe/C,KAAKqB,eAC1CrB,KAAK+C,iBAAiB,YAAa/C,KAAKsB,aACxCtB,KAAK+C,iBAAiB,eAAgB/C,KAAKsB,YAC7C,CAWS,oBAAA0B,GACPL,MAAMK,uBACNhD,KAAKiD,gBAELjD,KAAKkD,oBAAoB,cAAelD,KAAKkB,eAC7ClB,KAAKkD,oBAAoB,cAAelD,KAAKqB,eAC7CrB,KAAKkD,oBAAoB,YAAalD,KAAKsB,aAC3CtB,KAAKkD,oBAAoB,eAAgBlD,KAAKsB,YAChD,CAWS,UAAA6B,CAAWC,GAClBT,MAAMQ,WAAWC,GACbA,EAAaC,IAAI,sBAAsBrD,KAAK8C,gBAClD,CAuEO,gBAAAF,GACL,MAAMU,EAAOtD,KAAKuD,YAAYC,cAAc,QACxCF,IACFtD,KAAKE,WAAaoD,EAAKG,mBAAmBC,OAE9C,CAoBO,cAAAZ,GACL9C,KAAKiD,gBAEHjD,KAAKK,MACLL,KAAKQ,kBAAoB,GACzBR,KAAKE,WAAaF,KAAKU,gBAEvBV,KAAKiB,eAAiB0C,YACpB,IAAM3D,KAAKyB,YACXzB,KAAKQ,mBAGX,CAWO,aAAAyC,GACDjD,KAAKiB,iBACP2C,cAAc5D,KAAKiB,gBACnBjB,KAAKiB,eAAiB,KAE1B,CAyEO,QAAA4C,CAAS5B,GACdjC,KAAKC,aAAe2B,KAAKC,IAAII,EAAOjC,KAAKE,WAAaF,KAAKU,eAC3DV,KAAKiD,gBACLjD,KAAK8C,iBACL9C,KAAK8B,cACH,IAAIC,YAA+B,gBAAiB,CAClDC,OAAQ,CAAEC,MAAOjC,KAAKC,cACtBiC,SAAS,EACTC,UAAU,IAGhB,CAES,MAAA2B,GACP,MACMC,EADQ/D,KAAKgE,QAAQ,gBAAmC,QAAjBC,SAASC,IAE/ClE,KAAKC,cAAgB,IAAMD,KAAKU,eAAnC,IACA,IAAIV,KAAKC,cAAgB,IAAMD,KAAKU,kBAElCyD,EAAcvC,KAAKwC,MACtBpE,KAAKE,WAAaF,KAAKU,cAAgB,GAAKV,KAAKW,gBAG9C0D,EAAiB,CACrBC,UAAW,cAAcP,QACrB/D,KAAKY,gBAAkB,CACzB2D,OAAQ,UAAUvE,KAAKa,iBACvB2D,MAAO,eAAexE,KAAKa,aAE7B,mBAAoB,GAAGb,KAAKU,gBAC5B,cAAeV,KAAKa,UAGhB4D,EAAgBC,MAAMC,KAAK,CAAEjB,OAAQS,GAAe,CAACS,EAAGC,IAAMA,GACpE,OAAOC,CAAI;QACPC,EACF/E,KAAKS,UACL,IAAMqE,CAAI;;;;;;;kBAQEE,EAASX;wBACHrE,KAAK4C;;;;;UAKnBmC,EACJ/E,KAAKO,YAAcP,KAAKE,WAAaF,KAAKU,cAC1C,IAAMoE,CAAI;;;;uBAIO9E,KAAKwB;;;;;;;uBAOLxB,KAAKyB;;;;;UAMlBsD,EACJ/E,KAAKM,UACL,IAAMwE,CAAI;cACF9E,KAAKU,cAAgB,EACvB,GAAGV,KAAKC,aAAe,KAAK2B,KAAKC,IACjC7B,KAAKC,aAAeD,KAAKU,cACzBV,KAAKE,iBACAF,KAAKE,aACV,GAAGF,KAAKC,aAAe,OAAOD,KAAKE;;UAGrC6E,EACJ/E,KAAKI,aAAeJ,KAAKE,WAAaF,KAAKU,cAC3C,IAAMoE,CAAI;;gBAEAG,EACRR,EACCI,GAAMK,OAAOL,GACbA,IACC,MAAMM,EAASnF,KAAKC,eAAiB4E,EAAI7E,KAAKW,eAC9C,OAAOmE,CAAI;;8BAESM,EAAS,CAAEC,QAAQ,EAAMF;6BAC1BA,EAAS,uBAAyB;+BAChC,IAAMnF,KAAK6D,SAASgB,EAAI7E,KAAKW;;;;;;KAU1D,GAljB2C2E,EAAA,CAA1CC,EAAS,CAAEC,KAAMC,OAAQC,SAAS,6BAAyB7F,EAAA8F,UAAA,uBAGjBL,EAAA,CAA1CC,EAAS,CAAEC,KAAMC,OAAQC,SAAS,6BAAuB7F,EAAA8F,UAAA,qBAG9BL,EAAA,CAA3BC,EAAS,CAAEC,KAAMN,kCAA6BrF,EAAA8F,UAAA,mBAGHL,EAAA,CAA3CC,EAAS,CAAEC,KAAMI,QAASF,SAAS,6BAA2B7F,EAAA8F,UAAA,sBAGnBL,EAAA,CAA3CC,EAAS,CAAEC,KAAMI,QAASF,SAAS,6BAAoB7F,EAAA8F,UAAA,eAGZL,EAAA,CAA3CC,EAAS,CAAEC,KAAMI,QAASF,SAAS,6BAA0B7F,EAAA8F,UAAA,oBAGlBL,EAAA,CAA3CC,EAAS,CAAEC,KAAMI,QAASF,SAAS,6BAA2B7F,EAAA8F,UAAA,qBAGnCL,EAAA,CAA3BC,EAAS,CAAEC,KAAMC,kCAAmC5F,EAAA8F,UAAA,4BAGTL,EAAA,CAA3CC,EAAS,CAAEC,KAAMI,QAASF,SAAS,6BAA0B7F,EAAA8F,UAAA,oBAGlCL,EAAA,CAA3BC,EAAS,CAAEC,KAAMC,kCAA4B5F,EAAA8F,UAAA,wBAGlBL,EAAA,CAA3BC,EAAS,CAAEC,KAAMC,kCAA6B5F,EAAA8F,UAAA,yBAGlBL,EAAA,CAA5BC,EAAS,CAAEC,KAAMI,mCACV/F,EAAA8F,UAAA,yBAGoBL,EAAA,CAA3BC,EAAS,CAAEC,KAAMN,kCAAyBrF,EAAA8F,UAAA,mBA5ChC9F,EAAWyF,EAAA,CADvBO,EAAc,iBACFhG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./sky-checkbox";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './sky-checkbox.js';
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
import { FormControlBase, FormState } from "../helper/internals/form-control-base";
|
|
2
|
+
export interface CheckboxProperties {
|
|
3
|
+
label: string;
|
|
4
|
+
checked: boolean;
|
|
5
|
+
disabled: boolean;
|
|
6
|
+
indeterminate: boolean;
|
|
7
|
+
id: string;
|
|
8
|
+
value: string;
|
|
9
|
+
color: string;
|
|
10
|
+
required: boolean;
|
|
11
|
+
validationErrors: string[];
|
|
12
|
+
validationActive: boolean;
|
|
13
|
+
defaultChecked: boolean;
|
|
14
|
+
requiredMessage: string;
|
|
15
|
+
showErrors: boolean;
|
|
16
|
+
prefix: string;
|
|
17
|
+
suffix: string;
|
|
18
|
+
prefixColor: string;
|
|
19
|
+
suffixColor: string;
|
|
20
|
+
}
|
|
21
|
+
/** `checked` is always the boolean model; `value` keeps form/legacy semantics (see `handleChange`). */
|
|
22
|
+
export type SkyCheckboxValueChangedDetail = {
|
|
23
|
+
checked: boolean;
|
|
24
|
+
value: string | boolean | undefined;
|
|
25
|
+
};
|
|
26
|
+
export type SkyCheckboxValidationErrorDetail = {
|
|
27
|
+
errors: string[];
|
|
28
|
+
};
|
|
29
|
+
export type SkyCheckboxValueClearedDetail = {
|
|
30
|
+
value: string;
|
|
31
|
+
checked: boolean;
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* @element sky-checkbox
|
|
35
|
+
*
|
|
36
|
+
* @summary Form-associated checkbox with validation, indeterminate state, and customizable label/prefix/suffix rendering.
|
|
37
|
+
*
|
|
38
|
+
* @status stable
|
|
39
|
+
* @since 1.0.0
|
|
40
|
+
*
|
|
41
|
+
* @documentation https://library.sky-ui.com/components/checkbox
|
|
42
|
+
*
|
|
43
|
+
* @uiVModel checked value-changed detail=checked
|
|
44
|
+
*
|
|
45
|
+
* @slot - Default slot for the checkbox label or other content.
|
|
46
|
+
* @slot prefix - Optional prefix content that can be placed before the label.
|
|
47
|
+
* @slot suffix - Optional suffix content that can be placed after the label.
|
|
48
|
+
*
|
|
49
|
+
* @csspart wrapper - The wrapper element for the checkbox.
|
|
50
|
+
* @csspart input - The native input element used for the checkbox.
|
|
51
|
+
* @csspart label - The label element for the checkbox, used for styling.
|
|
52
|
+
* @csspart box - The visual box for the checkbox, which includes the checkmark and indeterminate state.
|
|
53
|
+
* @csspart checkmark - The checkmark icon that appears when the checkbox is checked.
|
|
54
|
+
* @csspart indeterminate-line - The line representing the indeterminate state of the checkbox.
|
|
55
|
+
* @csspart error-message - The error message displayed if the checkbox is invalid.
|
|
56
|
+
*
|
|
57
|
+
* @property {string} label - The label for the checkbox. Default: `""`.
|
|
58
|
+
* @property {boolean} checked - Whether the checkbox is checked. Default: `false`.
|
|
59
|
+
* @property {boolean} indeterminate - Whether the checkbox is in the indeterminate state. Default: `false`.
|
|
60
|
+
* @property {string} color - The color used for the checkbox and its checkmark. Default: `"primary"`.
|
|
61
|
+
* @property {string} value - The value of the checkbox, which gets submitted with the form. Default: `""`.
|
|
62
|
+
* @property {boolean} showErrors - Whether to display validation error messages. Default: `false`.
|
|
63
|
+
* @property {string} prefix - Optional prefix text or content before the label. Default: `""`.
|
|
64
|
+
* @property {string} suffix - Optional suffix text or content after the label. Default: `""`.
|
|
65
|
+
* @property {string} prefixColor - The color for the prefix text. Default: `""`.
|
|
66
|
+
* @property {string} suffixColor - The color for the suffix text. Default: `""`.
|
|
67
|
+
* @property {boolean} defaultChecked - Default checked state for reset operations. Default: `false`.
|
|
68
|
+
* @method check Sets checked state to `true`.
|
|
69
|
+
* @method uncheck Sets checked state to `false`.
|
|
70
|
+
* @method toggle Toggles checked state.
|
|
71
|
+
* @method reset Resets checkbox state to defaults and clears UI validation state.
|
|
72
|
+
*
|
|
73
|
+
* @fires {CustomEvent<SkyCheckboxValueChangedDetail>} value-changed - Fired when checked state changes; `detail.checked` is always boolean (use for v-model). `detail.value` is the form token when the `value` prop is set, else mirrors `checked`.
|
|
74
|
+
* @fires {CustomEvent<SkyCheckboxValidationErrorDetail>} validation-error - Fired when validation errors are updated.
|
|
75
|
+
* @fires {CustomEvent<SkyCheckboxValueClearedDetail>} value-cleared - Fired when checkbox is reset programmatically.
|
|
76
|
+
*
|
|
77
|
+
* @example
|
|
78
|
+
* ```html
|
|
79
|
+
* <sky-checkbox label="Accept Terms" required showerrors prefix="Legal"></sky-checkbox>
|
|
80
|
+
* ```
|
|
81
|
+
* ```vue
|
|
82
|
+
* <template>
|
|
83
|
+
* <sky-checkbox label="Accept Terms" required showerrors prefix="Legal"></sky-checkbox>
|
|
84
|
+
* </template>
|
|
85
|
+
* ```
|
|
86
|
+
* ```jsx
|
|
87
|
+
* export default function Demo() {
|
|
88
|
+
* return <sky-checkbox label="Accept Terms" required showerrors prefix="Legal"></sky-checkbox>;
|
|
89
|
+
* }
|
|
90
|
+
* ```
|
|
91
|
+
*/
|
|
92
|
+
export declare class SkyCheckbox extends FormControlBase {
|
|
93
|
+
static shadowRootOptions: {
|
|
94
|
+
delegatesFocus: boolean;
|
|
95
|
+
clonable?: boolean;
|
|
96
|
+
customElementRegistry?: CustomElementRegistry;
|
|
97
|
+
mode: ShadowRootMode;
|
|
98
|
+
serializable?: boolean;
|
|
99
|
+
slotAssignment?: SlotAssignmentMode;
|
|
100
|
+
};
|
|
101
|
+
label: string;
|
|
102
|
+
id: string;
|
|
103
|
+
value: string;
|
|
104
|
+
color: string;
|
|
105
|
+
defaultChecked: boolean;
|
|
106
|
+
showErrors: boolean;
|
|
107
|
+
prefix: string;
|
|
108
|
+
suffix: string;
|
|
109
|
+
prefixColor: string;
|
|
110
|
+
suffixColor: string;
|
|
111
|
+
validationActive: boolean;
|
|
112
|
+
invalid: boolean;
|
|
113
|
+
private _checked;
|
|
114
|
+
private _indeterminate;
|
|
115
|
+
private validationErrors;
|
|
116
|
+
private _hasMeaningfulSlot;
|
|
117
|
+
private _inputElement?;
|
|
118
|
+
private _inputId;
|
|
119
|
+
get checked(): boolean;
|
|
120
|
+
set checked(v: boolean);
|
|
121
|
+
get indeterminate(): boolean;
|
|
122
|
+
set indeterminate(v: boolean);
|
|
123
|
+
static styles: import("lit").CSSResult;
|
|
124
|
+
protected getFormValue(): FormState;
|
|
125
|
+
protected setValueFromFormState(state: FormState): void;
|
|
126
|
+
protected getValidityAnchor(): HTMLElement | undefined;
|
|
127
|
+
protected isEmpty(): boolean;
|
|
128
|
+
protected getNativeControl(): HTMLElement | null;
|
|
129
|
+
protected onFormReset(): void;
|
|
130
|
+
willUpdate(changed: Map<string | number | symbol, unknown>): void;
|
|
131
|
+
updated(changed: Map<string, unknown>): void;
|
|
132
|
+
private handleChange;
|
|
133
|
+
private validateInput;
|
|
134
|
+
/**
|
|
135
|
+
* Sets checked state to `true`.
|
|
136
|
+
*
|
|
137
|
+
* @returns {void}
|
|
138
|
+
*/
|
|
139
|
+
check(): void;
|
|
140
|
+
/**
|
|
141
|
+
* Sets checked state to `false`.
|
|
142
|
+
*
|
|
143
|
+
* @returns {void}
|
|
144
|
+
*/
|
|
145
|
+
uncheck(): void;
|
|
146
|
+
/**
|
|
147
|
+
* Toggles checked state.
|
|
148
|
+
*
|
|
149
|
+
* @returns {void}
|
|
150
|
+
*/
|
|
151
|
+
toggle(): void;
|
|
152
|
+
/**
|
|
153
|
+
* Resets checkbox state to defaults and clears UI validation state.
|
|
154
|
+
*
|
|
155
|
+
* @returns {void}
|
|
156
|
+
*/
|
|
157
|
+
reset(): void;
|
|
158
|
+
private _updateVisualState;
|
|
159
|
+
private _slotHasMeaningfulContent;
|
|
160
|
+
private _onSlotChange;
|
|
161
|
+
private get _hasTextContent();
|
|
162
|
+
private handleBlur;
|
|
163
|
+
private _onKeyDown;
|
|
164
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
165
|
+
}
|