@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,233 @@
|
|
|
1
|
+
import{__decorate as e,__metadata as t}from"tslib";import{LitElement as i,css as s,html as r}from"lit";import{property as a,customElement as d}from"lit/decorators.js";import{resolveRadius as l}from"../helper/utils/size-resolver.js";import{classMap as n}from"lit/directives/class-map.js";import{repeat as m}from"lit/directives/repeat.js";let o=class extends i{constructor(){super(...arguments),this.type="default",this.loading=!1,this.width="100%",this.height="40px",this.radius="md"}connectedCallback(){super.connectedCallback(),this.setAttribute("aria-busy",String(this.loading))}static{this.styles=s`
|
|
2
|
+
:host {
|
|
3
|
+
display: block;
|
|
4
|
+
width: 100%;
|
|
5
|
+
height: 100%;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
.container {
|
|
9
|
+
display: block;
|
|
10
|
+
height: 100%;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.skeleton-wrapper,
|
|
14
|
+
.slot-wrapper {
|
|
15
|
+
transition:
|
|
16
|
+
opacity 0.4s ease,
|
|
17
|
+
visibility 0.4s ease;
|
|
18
|
+
height: 100%;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.visible {
|
|
22
|
+
opacity: 1;
|
|
23
|
+
pointer-events: auto;
|
|
24
|
+
visibility: visible;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.hidden {
|
|
28
|
+
opacity: 0;
|
|
29
|
+
pointer-events: none;
|
|
30
|
+
visibility: hidden;
|
|
31
|
+
display: none;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.skeleton-container {
|
|
35
|
+
display: flex;
|
|
36
|
+
flex-direction: column;
|
|
37
|
+
justify-content: center;
|
|
38
|
+
align-items: center;
|
|
39
|
+
gap: 8px;
|
|
40
|
+
|
|
41
|
+
box-sizing: border-box;
|
|
42
|
+
height: 100%;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.skeleton {
|
|
46
|
+
position: relative;
|
|
47
|
+
overflow: hidden;
|
|
48
|
+
background-color: var(--sky-hover-tertiary);
|
|
49
|
+
width: 100%;
|
|
50
|
+
height: 100%;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.skeleton::after {
|
|
54
|
+
content: "";
|
|
55
|
+
position: absolute;
|
|
56
|
+
top: 0;
|
|
57
|
+
left: 0;
|
|
58
|
+
width: 100%;
|
|
59
|
+
height: 100%;
|
|
60
|
+
background-image: linear-gradient(
|
|
61
|
+
90deg,
|
|
62
|
+
rgba(255, 255, 255, 0),
|
|
63
|
+
var(--sky-hover-primary),
|
|
64
|
+
rgba(255, 255, 255, 0)
|
|
65
|
+
);
|
|
66
|
+
animation: shimmer 1.5s infinite;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
@keyframes shimmer {
|
|
70
|
+
0% {
|
|
71
|
+
transform: translateX(-100%);
|
|
72
|
+
}
|
|
73
|
+
100% {
|
|
74
|
+
transform: translateX(100%);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.circle {
|
|
79
|
+
border-radius: 50%;
|
|
80
|
+
}
|
|
81
|
+
.text {
|
|
82
|
+
height: 0.8em;
|
|
83
|
+
margin-bottom: 0.1em;
|
|
84
|
+
border-radius: 4px;
|
|
85
|
+
}
|
|
86
|
+
.text.short {
|
|
87
|
+
width: 60%;
|
|
88
|
+
}
|
|
89
|
+
.text.medium {
|
|
90
|
+
width: 80%;
|
|
91
|
+
}
|
|
92
|
+
.text.long {
|
|
93
|
+
width: 100%;
|
|
94
|
+
}
|
|
95
|
+
.chip {
|
|
96
|
+
border-radius: var(--sky-radius-secondary);
|
|
97
|
+
height: 24px;
|
|
98
|
+
width: 80px;
|
|
99
|
+
}
|
|
100
|
+
.button {
|
|
101
|
+
height: 36px;
|
|
102
|
+
width: 90px;
|
|
103
|
+
border-radius: var(--sky-radius-secondary);
|
|
104
|
+
}
|
|
105
|
+
.avatar {
|
|
106
|
+
height: 50px;
|
|
107
|
+
width: 50px;
|
|
108
|
+
border-radius: 50%;
|
|
109
|
+
}
|
|
110
|
+
.divider {
|
|
111
|
+
height: 1px;
|
|
112
|
+
width: 100%;
|
|
113
|
+
margin: 8px 0;
|
|
114
|
+
border-radius: 0px;
|
|
115
|
+
}
|
|
116
|
+
.image {
|
|
117
|
+
height: 150px;
|
|
118
|
+
width: 100%;
|
|
119
|
+
border-radius: var(--sky-radius-primary);
|
|
120
|
+
}
|
|
121
|
+
`}updated(e){super.updated(e),e.has("loading")&&this.setAttribute("aria-busy",String(this.loading))}render(){const e=this.type?this.type.split(",").map(e=>e.trim()):[],t=n({"skeleton-wrapper":!0,visible:this.loading,hidden:!this.loading}),i=n({"slot-wrapper":!0,visible:!this.loading,hidden:this.loading});return r`
|
|
122
|
+
<div class="container" part="container">
|
|
123
|
+
<div class=${t} part="skeleton-wrapper">
|
|
124
|
+
<div class="skeleton-container">
|
|
125
|
+
${m(e,e=>e,e=>this.renderSkeleton(e))}
|
|
126
|
+
</div>
|
|
127
|
+
</div>
|
|
128
|
+
<div class=${i} part="slot-wrapper">
|
|
129
|
+
<slot></slot>
|
|
130
|
+
</div>
|
|
131
|
+
</div>
|
|
132
|
+
`}renderSkeleton(e){switch(e){case"avatar":return r`<div class="skeleton avatar" part="item shimmer"></div>`;case"button":return r`<div class="skeleton button" part="item shimmer"></div>`;case"chip":return r`<div class="skeleton chip" part="item shimmer"></div>`;case"divider":return r`<div class="skeleton divider" part="item shimmer"></div>`;case"image":return r`<div class="skeleton image" part="item shimmer"></div>`;case"heading":return r`<div
|
|
133
|
+
class="skeleton text long"
|
|
134
|
+
style="height:2.5em;"
|
|
135
|
+
part="item shimmer"
|
|
136
|
+
></div>`;case"text":return r`<div class="skeleton text long" part="item shimmer"></div>`;case"paragraph":case"list-item-three-line":return r`<div
|
|
137
|
+
style="display:flex;flex-direction:column;gap:5px;width:100%"
|
|
138
|
+
>
|
|
139
|
+
<div class="skeleton text long" part="item shimmer"></div>
|
|
140
|
+
<div class="skeleton text medium" part="item shimmer"></div>
|
|
141
|
+
<div class="skeleton text short" part="item shimmer"></div>
|
|
142
|
+
</div>`;case"list-item-avatar":return r`<div
|
|
143
|
+
style="display:flex;align-items:center;gap:5px;width:100%"
|
|
144
|
+
>
|
|
145
|
+
<div class="skeleton avatar" part="item shimmer"></div>
|
|
146
|
+
<div class="skeleton text medium" part="item shimmer"></div>
|
|
147
|
+
</div>`;case"list-item-avatar-two-line":return r`<div
|
|
148
|
+
style="display:flex;align-items:center;gap:5px;width:100%"
|
|
149
|
+
>
|
|
150
|
+
<div class="skeleton avatar" part="item shimmer"></div>
|
|
151
|
+
<div style="flex:1">
|
|
152
|
+
<div class="skeleton text long" part="item shimmer"></div>
|
|
153
|
+
<div class="skeleton text medium" part="item shimmer"></div>
|
|
154
|
+
</div>
|
|
155
|
+
</div>`;case"list-item-avatar-three-line":return r`<div
|
|
156
|
+
style="display:flex;align-items:center;gap:5px;width:100%"
|
|
157
|
+
>
|
|
158
|
+
<div class="skeleton avatar" part="item shimmer"></div>
|
|
159
|
+
<div style="flex:1">
|
|
160
|
+
<div class="skeleton text long" part="item shimmer"></div>
|
|
161
|
+
<div class="skeleton text medium" part="item shimmer"></div>
|
|
162
|
+
<div class="skeleton text short" part="item shimmer"></div>
|
|
163
|
+
</div>
|
|
164
|
+
</div>`;case"list-item-two-line":return r`<div
|
|
165
|
+
style="display:flex;flex-direction:column;gap:5px;width:100%"
|
|
166
|
+
>
|
|
167
|
+
<div class="skeleton text long" part="item shimmer"></div>
|
|
168
|
+
<div class="skeleton text medium" part="item shimmer"></div>
|
|
169
|
+
</div>`;case"card":return r`<div
|
|
170
|
+
style="display:flex;flex-direction:column;gap:5px;width:100%"
|
|
171
|
+
>
|
|
172
|
+
<div class="skeleton image" part="item shimmer"></div>
|
|
173
|
+
<div style="padding:10px;">
|
|
174
|
+
<div class="skeleton text long" part="item shimmer"></div>
|
|
175
|
+
</div>
|
|
176
|
+
</div>`;case"actions":return r`<div style="display:flex;gap:5px;">
|
|
177
|
+
<div class="skeleton button" part="item shimmer"></div>
|
|
178
|
+
<div class="skeleton button" part="item shimmer"></div>
|
|
179
|
+
</div>`;case"table-row":return r`<div
|
|
180
|
+
style="display:flex;gap:2px;justify-content:space-between;padding:10px;width:100%"
|
|
181
|
+
>
|
|
182
|
+
<div class="skeleton text short" part="item shimmer"></div>
|
|
183
|
+
<div class="skeleton text long" part="item shimmer"></div>
|
|
184
|
+
<div class="skeleton text medium" part="item shimmer"></div>
|
|
185
|
+
</div>`;case"menu-item":return r`<div
|
|
186
|
+
style="display:flex;align-items:center;padding:10px;width:100%"
|
|
187
|
+
>
|
|
188
|
+
<div
|
|
189
|
+
class="skeleton circle"
|
|
190
|
+
style="width:0.8rem;height:0.8rem;"
|
|
191
|
+
part="item shimmer"
|
|
192
|
+
></div>
|
|
193
|
+
<div
|
|
194
|
+
class="skeleton text long"
|
|
195
|
+
style="margin-left:10px;margin-bottom:unset"
|
|
196
|
+
part="item shimmer"
|
|
197
|
+
></div>
|
|
198
|
+
</div>`;case"checkbox":return r`<div
|
|
199
|
+
style="display:flex;align-items:center;padding:10px;width:100%"
|
|
200
|
+
>
|
|
201
|
+
<div
|
|
202
|
+
class="skeleton"
|
|
203
|
+
style="width:0.8rem;height:0.8rem;border-radius:4px;"
|
|
204
|
+
part="item shimmer"
|
|
205
|
+
></div>
|
|
206
|
+
<div
|
|
207
|
+
class="skeleton text medium"
|
|
208
|
+
style="margin-left:10px;margin-bottom:unset"
|
|
209
|
+
part="item shimmer"
|
|
210
|
+
></div>
|
|
211
|
+
</div>`;case"switch":return r`<div
|
|
212
|
+
style="display:flex;align-items:center;padding:10px;width:100%"
|
|
213
|
+
>
|
|
214
|
+
<div
|
|
215
|
+
class="skeleton"
|
|
216
|
+
style="width:34px;height:14px;border-radius:8px;"
|
|
217
|
+
part="item shimmer"
|
|
218
|
+
></div>
|
|
219
|
+
<div
|
|
220
|
+
class="skeleton text medium"
|
|
221
|
+
style="margin-left:10px;margin-bottom:unset"
|
|
222
|
+
part="item shimmer"
|
|
223
|
+
></div>
|
|
224
|
+
</div>`;case"tabs":return r`<div style="display:flex;gap:5px;width:100%">
|
|
225
|
+
<div class="skeleton text medium" part="item shimmer"></div>
|
|
226
|
+
<div class="skeleton text medium" part="item shimmer"></div>
|
|
227
|
+
<div class="skeleton text medium" part="item shimmer"></div>
|
|
228
|
+
</div>`;default:return r`<div
|
|
229
|
+
class="skeleton"
|
|
230
|
+
part="item shimmer"
|
|
231
|
+
style="width:${this.width};height:${this.height};border-radius:${l(this.radius)}"
|
|
232
|
+
></div>`}}};e([a({type:String}),t("design:type",Object)],o.prototype,"type",void 0),e([a({type:Boolean}),t("design:type",Object)],o.prototype,"loading",void 0),e([a({type:String}),t("design:type",Object)],o.prototype,"width",void 0),e([a({type:String}),t("design:type",Object)],o.prototype,"height",void 0),e([a({type:String}),t("design:type",Object)],o.prototype,"radius",void 0),o=e([d("sky-skeleton")],o);export{o as SkySkeleton};
|
|
233
|
+
//# sourceMappingURL=sky-skeleton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sky-skeleton.js","sources":["../../src/sky-skeleton/sky-skeleton.ts"],"sourcesContent":[null],"names":["SkySkeleton","LitElement","constructor","this","type","loading","width","height","radius","connectedCallback","super","setAttribute","String","styles","css","updated","changed","has","render","types","split","map","t","trim","skeletonClasses","classMap","visible","hidden","slotClasses","html","repeat","renderSkeleton","resolveRadius","__decorate","property","prototype","Boolean","customElement"],"mappings":"iVAoEO,IAAMA,EAAN,cAA0BC,EAA1B,WAAAC,uBAEuBC,KAAAC,KAAO,UAEND,KAAAE,SAAU,EAEXF,KAAAG,MAAQ,OAERH,KAAAI,OAAS,OAETJ,KAAAK,OAAS,IA6TvC,CA3TW,iBAAAC,GACPC,MAAMD,oBACNN,KAAKQ,aAAa,YAAaC,OAAOT,KAAKE,SAC7C,QAEgBF,KAAAU,OAASC,CAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwH1B,CAEiB,OAAAC,CAAQC,GACzBN,MAAMK,QAAQC,GACVA,EAAQC,IAAI,YACdd,KAAKQ,aAAa,YAAaC,OAAOT,KAAKE,SAE/C,CAES,MAAAa,GACP,MAAMC,EAAQhB,KAAKC,KAAOD,KAAKC,KAAKgB,MAAM,KAAKC,IAAKC,GAAMA,EAAEC,QAAU,GAChEC,EAAkBC,EAAS,CAC/B,oBAAoB,EACpBC,QAASvB,KAAKE,QACdsB,QAASxB,KAAKE,UAEVuB,EAAcH,EAAS,CAC3B,gBAAgB,EAChBC,SAAUvB,KAAKE,QACfsB,OAAQxB,KAAKE,UAEf,OAAOwB,CAAI;;qBAEML;;cAEPM,EAAOX,EAAQf,GAASA,EAAOA,GAASD,KAAK4B,eAAe3B;;;qBAGrDwB;;;;KAKnB,CAGQ,cAAAG,CAAe3B,GACrB,OAAQA,GACN,IAAK,SACH,OAAOyB,CAAI,0DACb,IAAK,SACH,OAAOA,CAAI,0DACb,IAAK,OACH,OAAOA,CAAI,wDACb,IAAK,UACH,OAAOA,CAAI,2DACb,IAAK,QACH,OAAOA,CAAI,yDACb,IAAK,UACH,OAAOA,CAAI;;;;iBAKb,IAAK,OACH,OAAOA,CAAI,6DACb,IAAK,YA2CL,IAAK,uBACH,OAAOA,CAAI;;;;;;gBApCb,IAAK,mBACH,OAAOA,CAAI;;;;;gBAMb,IAAK,4BACH,OAAOA,CAAI;;;;;;;;gBASb,IAAK,8BACH,OAAOA,CAAI;;;;;;;;;gBAUb,IAAK,qBACH,OAAOA,CAAI;;;;;gBAcb,IAAK,OACH,OAAOA,CAAI;;;;;;;gBAQb,IAAK,UACH,OAAOA,CAAI;;;gBAIb,IAAK,YACH,OAAOA,CAAI;;;;;;gBAOb,IAAK,YACH,OAAOA,CAAI;;;;;;;;;;;;;gBAcb,IAAK,WACH,OAAOA,CAAI;;;;;;;;;;;;;gBAcb,IAAK,SACH,OAAOA,CAAI;;;;;;;;;;;;;gBAcb,IAAK,OACH,OAAOA,CAAI;;;;gBAKb,QACE,OAAOA,CAAI;;;yBAGM1B,KAAKG,gBAAgBH,KAAKI,wBAAwByB,EAC/D7B,KAAKK;iBAIf,GApU4ByB,EAAA,CAA3BC,EAAS,CAAE9B,KAAMQ,kCAA2BZ,EAAAmC,UAAA,eAEhBF,EAAA,CAA5BC,EAAS,CAAE9B,KAAMgC,mCAA2BpC,EAAAmC,UAAA,kBAEjBF,EAAA,CAA3BC,EAAS,CAAE9B,KAAMQ,kCAAyBZ,EAAAmC,UAAA,gBAEfF,EAAA,CAA3BC,EAAS,CAAE9B,KAAMQ,kCAA0BZ,EAAAmC,UAAA,iBAEhBF,EAAA,CAA3BC,EAAS,CAAE9B,KAAMQ,kCAAwBZ,EAAAmC,UAAA,iBAV/BnC,EAAWiC,EAAA,CADvBI,EAAc,iBACFrC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./sky-slider";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './sky-slider.js';
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { LitElement, PropertyValues } from "lit";
|
|
2
|
+
export type SkySliderValueChangedDetail = {
|
|
3
|
+
value: number;
|
|
4
|
+
};
|
|
5
|
+
/**
|
|
6
|
+
* @element sky-slider
|
|
7
|
+
*
|
|
8
|
+
* @summary Accessible range slider with optional commit-only behavior.
|
|
9
|
+
*
|
|
10
|
+
* @status stable
|
|
11
|
+
* @since 1.0.0
|
|
12
|
+
*
|
|
13
|
+
* @documentation https://library.sky-ui.com/components/slider
|
|
14
|
+
*
|
|
15
|
+
* @uiVModel value value-changed
|
|
16
|
+
*
|
|
17
|
+
* @slot - (No slots) — All content is internally rendered.
|
|
18
|
+
*
|
|
19
|
+
* @csspart container - The outer card-like wrapper.
|
|
20
|
+
* @csspart label - The text label shown at the top-left.
|
|
21
|
+
* @csspart value - The formatted value (prefix + number + suffix) shown at the top-right.
|
|
22
|
+
* @csspart slider-container - The wrapper around the range control.
|
|
23
|
+
* @csspart slider - The native `<input type="range">` element.
|
|
24
|
+
*
|
|
25
|
+
* @property {number} min - Minimum slider value.
|
|
26
|
+
* @property {number} max - Maximum slider value.
|
|
27
|
+
* @property {number} step - Step interval for value snapping.
|
|
28
|
+
* @property {number} value - Snapped component value.
|
|
29
|
+
* @property {number} displayValue - Live visual value while dragging.
|
|
30
|
+
* @property {string} label - Optional label shown above slider.
|
|
31
|
+
* @property {boolean} disabled - Disables slider interaction.
|
|
32
|
+
* @property {string} prefix - Text shown before formatted value.
|
|
33
|
+
* @property {string} suffix - Text shown after formatted value.
|
|
34
|
+
* @property {boolean} shadow - Adds glass border/shadow styling.
|
|
35
|
+
* @property {boolean} commitOnly - Emits changes only on commit.
|
|
36
|
+
* @property {boolean} showValue - Toggles value text visibility.
|
|
37
|
+
*
|
|
38
|
+
* @fires {CustomEvent<SkySliderValueChangedDetail>} value-changed - Fired when slider value changes.
|
|
39
|
+
* @method setValue Sets slider value programmatically.
|
|
40
|
+
*
|
|
41
|
+
* @Behavior
|
|
42
|
+
* - Uses `displayValue` for smooth dragging feedback.
|
|
43
|
+
* - Snaps emitted values to nearest step.
|
|
44
|
+
* - Supports live or commit-only updates via `commitOnly`.
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* ```html
|
|
48
|
+
* <sky-slider label="CPU Limit" min="0" max="100" step="5" value="65" suffix="%" show-value shadow commit-only></sky-slider>
|
|
49
|
+
* ```
|
|
50
|
+
* ```vue
|
|
51
|
+
* <template>
|
|
52
|
+
* <sky-slider label="CPU Limit" :min="0" :max="100" :step="5" :value="65" suffix="%" show-value shadow commit-only></sky-slider>
|
|
53
|
+
* </template>
|
|
54
|
+
* ```
|
|
55
|
+
* ```jsx
|
|
56
|
+
* export default function Demo() {
|
|
57
|
+
* return <sky-slider label="CPU Limit" min={0} max={100} step={5} value={65} suffix="%" show-value shadow commit-only></sky-slider>;
|
|
58
|
+
* }
|
|
59
|
+
* ```
|
|
60
|
+
*/
|
|
61
|
+
export declare class SkySlider extends LitElement {
|
|
62
|
+
/** Minimum value for the range slider. */
|
|
63
|
+
min: number;
|
|
64
|
+
/** Maximum value for the range slider. */
|
|
65
|
+
max: number;
|
|
66
|
+
/** Step interval for the range slider. */
|
|
67
|
+
step: number;
|
|
68
|
+
/** Current snapped value of the range slider. */
|
|
69
|
+
value: number;
|
|
70
|
+
/**
|
|
71
|
+
* Continuous visual value for smoother interaction.
|
|
72
|
+
* Mirrors `value` until the user drags the thumb.
|
|
73
|
+
*/
|
|
74
|
+
displayValue: number;
|
|
75
|
+
/** Label for the range slider. */
|
|
76
|
+
label: string;
|
|
77
|
+
/** Disables the range slider when true. */
|
|
78
|
+
disabled: boolean;
|
|
79
|
+
/** Prefix to display before the value. */
|
|
80
|
+
prefix: string;
|
|
81
|
+
/** Suffix to display after the value. */
|
|
82
|
+
suffix: string;
|
|
83
|
+
/** Whether to show shadow/glass border on the container. */
|
|
84
|
+
shadow: boolean;
|
|
85
|
+
/** If true, only updates `value` on commit (not during drag). */
|
|
86
|
+
commitOnly: boolean;
|
|
87
|
+
/** If true, shows the value label; otherwise hides it. */
|
|
88
|
+
showValue: boolean;
|
|
89
|
+
constructor();
|
|
90
|
+
static styles: import("lit").CSSResult;
|
|
91
|
+
willUpdate(changedProps: PropertyValues): void;
|
|
92
|
+
private handleInput;
|
|
93
|
+
private handleChange;
|
|
94
|
+
setValue(nextValue: number): void;
|
|
95
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
96
|
+
}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
import{__decorate as e,__metadata as t}from"tslib";import{LitElement as i,css as s,html as a}from"lit";import{property as r,customElement as o}from"lit/decorators.js";import{when as n}from"lit/directives/when.js";let l=class extends i{constructor(){super(),this.min=0,this.max=100,this.step=1,this.value=50,this.displayValue=this.value,this.label="",this.disabled=!1,this.prefix="",this.suffix="",this.shadow=!1,this.commitOnly=!1,this.showValue=!0,this.displayValue=this.value}static{this.styles=s`
|
|
2
|
+
:host {
|
|
3
|
+
display: block;
|
|
4
|
+
font-family: var(--sky-font);
|
|
5
|
+
width: 100%;
|
|
6
|
+
font-weight: 400;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.range-container {
|
|
10
|
+
display: flex;
|
|
11
|
+
flex-direction: column;
|
|
12
|
+
align-items: flex-start;
|
|
13
|
+
width: 100%;
|
|
14
|
+
padding: 8px;
|
|
15
|
+
gap: 4px;
|
|
16
|
+
box-sizing: border-box;
|
|
17
|
+
position: relative;
|
|
18
|
+
border-radius: var(--sky-radius-primary);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/* When shadow=true, apply glass styling */
|
|
22
|
+
.range-container[shadow] {
|
|
23
|
+
background: var(--sky-glass-primary);
|
|
24
|
+
box-shadow: var(--sky-box-shadow-primary);
|
|
25
|
+
border: var(--sky-border-primary);
|
|
26
|
+
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.range-container[shadow]::before {
|
|
30
|
+
content: "";
|
|
31
|
+
position: absolute;
|
|
32
|
+
inset: 0;
|
|
33
|
+
z-index: -1;
|
|
34
|
+
border-radius: inherit;
|
|
35
|
+
backdrop-filter: var(--sky-blur-primary) var(--sky-brightness-primary)
|
|
36
|
+
var(--sky-saturation-primary);
|
|
37
|
+
-webkit-backdrop-filter: var(--sky-blur-primary)
|
|
38
|
+
var(--sky-brightness-primary) var(--sky-saturation-primary);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.range-label {
|
|
42
|
+
font-size: 14px;
|
|
43
|
+
color: var(--sky-text-primary);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
input[type="range"] {
|
|
47
|
+
-webkit-appearance: none;
|
|
48
|
+
appearance: none;
|
|
49
|
+
width: 100%;
|
|
50
|
+
height: 3px;
|
|
51
|
+
background: var(--sky-hover-primary);
|
|
52
|
+
border-radius: 6px;
|
|
53
|
+
outline: none;
|
|
54
|
+
margin: 0;
|
|
55
|
+
padding: 0;
|
|
56
|
+
cursor: pointer;
|
|
57
|
+
transition: background 0.3s ease;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
input[type="range"]::-webkit-slider-thumb {
|
|
61
|
+
-webkit-appearance: none;
|
|
62
|
+
appearance: none;
|
|
63
|
+
width: 14px;
|
|
64
|
+
height: 14px;
|
|
65
|
+
background: var(--sky-glass-solid);
|
|
66
|
+
border: 5px solid var(--sky-active-primary-dark);
|
|
67
|
+
border-radius: 50%;
|
|
68
|
+
cursor: pointer;
|
|
69
|
+
box-shadow: var(--sky-box-shadow-primary);
|
|
70
|
+
transition:
|
|
71
|
+
transform 0.3s ease,
|
|
72
|
+
box-shadow 0.3s ease;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
input[type="range"]:hover::-webkit-slider-thumb {
|
|
76
|
+
transform: scale(1.1);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
.prefix,
|
|
80
|
+
.suffix {
|
|
81
|
+
color: var(--sky-text-secondary);
|
|
82
|
+
font-size: 14px;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
.range-value {
|
|
86
|
+
font-size: 14px;
|
|
87
|
+
color: var(--sky-text-primary);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
.range-container[disabled] {
|
|
91
|
+
pointer-events: none;
|
|
92
|
+
opacity: 0.6;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
.slider-container {
|
|
96
|
+
display: flex;
|
|
97
|
+
align-items: center;
|
|
98
|
+
width: 100%;
|
|
99
|
+
height: 14px;
|
|
100
|
+
}
|
|
101
|
+
`}willUpdate(e){e.has("value")&&this.displayValue!==this.value&&(this.displayValue=this.value)}handleInput(e){const t=Number(e.target.value);if(this.displayValue!==t&&(this.displayValue=t),!this.commitOnly){const e=this.step>0?this.step:1,i=Math.round(t/e)*e;this.value!==i&&(this.value=i,this.dispatchEvent(new CustomEvent("value-changed",{detail:{value:this.value},bubbles:!0,composed:!0})))}}handleChange(e){if(this.commitOnly){const t=Number(e.target.value),i=this.step>0?this.step:1,s=Math.round(t/i)*i;this.value!==s&&(this.value=s,this.displayValue=this.value,this.dispatchEvent(new CustomEvent("value-changed",{detail:{value:this.value},bubbles:!0,composed:!0})))}}setValue(e){const t=Math.min(this.max,Math.max(this.min,e)),i=this.step>0?this.step:1,s=Math.round(t/i)*i;this.value===s&&this.displayValue===s||(this.value=s,this.displayValue=s,this.dispatchEvent(new CustomEvent("value-changed",{detail:{value:this.value},bubbles:!0,composed:!0})))}render(){const e=this.displayValue.toFixed(this.step<1?2:0);return a`
|
|
102
|
+
<div
|
|
103
|
+
class="range-container"
|
|
104
|
+
part="container"
|
|
105
|
+
?disabled="${this.disabled}"
|
|
106
|
+
?shadow="${this.shadow}"
|
|
107
|
+
aria-disabled="${this.disabled?"true":"false"}"
|
|
108
|
+
>
|
|
109
|
+
${n(this.showValue||""!==this.label,()=>a`
|
|
110
|
+
<div
|
|
111
|
+
style="display:flex;align-items:center;gap:5px;justify-content:space-between;width:100%;"
|
|
112
|
+
>
|
|
113
|
+
${n(this.label,()=>a`<div class="range-label" part="label">${this.label}</div>`)}
|
|
114
|
+
${n(this.showValue,()=>a`
|
|
115
|
+
<div class="range-value" part="value">
|
|
116
|
+
<span class="prefix"> ${this.prefix} </span>
|
|
117
|
+
${e}
|
|
118
|
+
<span class="suffix"> ${this.suffix} </span>
|
|
119
|
+
</div>
|
|
120
|
+
`)}
|
|
121
|
+
</div>
|
|
122
|
+
`)}
|
|
123
|
+
<div class="slider-container" part="slider-container">
|
|
124
|
+
<input
|
|
125
|
+
part="slider"
|
|
126
|
+
type="range"
|
|
127
|
+
min="${this.min}"
|
|
128
|
+
max="${this.max}"
|
|
129
|
+
step="${this.step}"
|
|
130
|
+
.value="${String(this.displayValue)}"
|
|
131
|
+
@input="${this.handleInput}"
|
|
132
|
+
@change="${this.handleChange}"
|
|
133
|
+
?disabled="${this.disabled}"
|
|
134
|
+
aria-label="${this.label||"Slider"}"
|
|
135
|
+
/>
|
|
136
|
+
</div>
|
|
137
|
+
</div>
|
|
138
|
+
`}};e([r({type:Number}),t("design:type",Object)],l.prototype,"min",void 0),e([r({type:Number}),t("design:type",Object)],l.prototype,"max",void 0),e([r({type:Number}),t("design:type",Object)],l.prototype,"step",void 0),e([r({type:Number}),t("design:type",Object)],l.prototype,"value",void 0),e([r({type:Number}),t("design:type",Number)],l.prototype,"displayValue",void 0),e([r({type:String}),t("design:type",Object)],l.prototype,"label",void 0),e([r({type:Boolean,reflect:!0}),t("design:type",Object)],l.prototype,"disabled",void 0),e([r({type:String}),t("design:type",Object)],l.prototype,"prefix",void 0),e([r({type:String}),t("design:type",Object)],l.prototype,"suffix",void 0),e([r({type:Boolean,reflect:!0}),t("design:type",Object)],l.prototype,"shadow",void 0),e([r({type:Boolean,reflect:!0}),t("design:type",Object)],l.prototype,"commitOnly",void 0),e([r({type:Boolean,reflect:!0}),t("design:type",Object)],l.prototype,"showValue",void 0),l=e([o("sky-slider"),t("design:paramtypes",[])],l);export{l as SkySlider};
|
|
139
|
+
//# sourceMappingURL=sky-slider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sky-slider.js","sources":["../../src/sky-slider/sky-slider.ts"],"sourcesContent":[null],"names":["SkySlider","LitElement","constructor","super","this","min","max","step","value","displayValue","label","disabled","prefix","suffix","shadow","commitOnly","showValue","styles","css","willUpdate","changedProps","has","handleInput","event","rawValue","Number","target","snapped","Math","round","dispatchEvent","CustomEvent","detail","bubbles","composed","handleChange","newValue","setValue","nextValue","clamped","render","formatted","toFixed","html","when","String","__decorate","property","type","prototype","Boolean","reflect","customElement"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./sky-speeddial";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './sky-speeddial.js';
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { LitElement } from "lit";
|
|
2
|
+
export type SkySpeeddialDirection = "top" | "bottom" | "left" | "right";
|
|
3
|
+
export type SkySpeeddialToggleChangedDetail = {
|
|
4
|
+
open: boolean;
|
|
5
|
+
direction: SkySpeeddialDirection;
|
|
6
|
+
};
|
|
7
|
+
/**
|
|
8
|
+
* @element sky-speeddial
|
|
9
|
+
*
|
|
10
|
+
* @summary Floating action button that expands into contextual quick actions.
|
|
11
|
+
*
|
|
12
|
+
* @status stable
|
|
13
|
+
* @since 1.0.0
|
|
14
|
+
*
|
|
15
|
+
* @documentation https://library.sky-ui.com/components/speeddial
|
|
16
|
+
* @dependency sky-icon
|
|
17
|
+
*
|
|
18
|
+
* @uiVModel open toggle-changed
|
|
19
|
+
*
|
|
20
|
+
* @slot - Action buttons that appear when the speed dial is opened.
|
|
21
|
+
*
|
|
22
|
+
* @csspart fab - The circular FAB button that toggles the speed dial.
|
|
23
|
+
* @csspart actions - The container that holds the slotted action buttons.
|
|
24
|
+
*
|
|
25
|
+
* @property {boolean} open - Whether the action cluster is open.
|
|
26
|
+
* @property {SkySpeeddialDirection} direction - Preferred expansion direction.
|
|
27
|
+
* @property {string} fabIcon - Iconify icon used by the FAB button.
|
|
28
|
+
*
|
|
29
|
+
* @fires {CustomEvent<SkySpeeddialToggleChangedDetail>} toggle-changed - Fired when the dial open state changes.
|
|
30
|
+
* @method openMenu Opens the speed dial.
|
|
31
|
+
* @method closeMenu Closes the speed dial.
|
|
32
|
+
* @method toggleMenuState Toggles the speed dial state.
|
|
33
|
+
*
|
|
34
|
+
* @Behavior
|
|
35
|
+
* - Expands slotted actions around a central FAB.
|
|
36
|
+
* - Adjusts direction to keep action cluster in viewport.
|
|
37
|
+
* - Handles RTL-aware left/right direction transforms.
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* ```html
|
|
41
|
+
* <sky-speeddial direction="top" fab-icon="material-symbols:add-rounded">
|
|
42
|
+
* <button aria-label="Create ticket">T</button>
|
|
43
|
+
* <button aria-label="Schedule deploy">D</button>
|
|
44
|
+
* <button aria-label="Open runbook">R</button>
|
|
45
|
+
* </sky-speeddial>
|
|
46
|
+
* ```
|
|
47
|
+
* ```vue
|
|
48
|
+
* <template>
|
|
49
|
+
* <sky-speeddial direction="top" fab-icon="material-symbols:add-rounded">
|
|
50
|
+
* <button aria-label="Create ticket">T</button>
|
|
51
|
+
* <button aria-label="Schedule deploy">D</button>
|
|
52
|
+
* <button aria-label="Open runbook">R</button>
|
|
53
|
+
* </sky-speeddial>
|
|
54
|
+
* </template>
|
|
55
|
+
* ```
|
|
56
|
+
* ```jsx
|
|
57
|
+
* export default function Demo() {
|
|
58
|
+
* return (
|
|
59
|
+
* <sky-speeddial direction="top" fab-icon="material-symbols:add-rounded">
|
|
60
|
+
* <button aria-label="Create ticket">T</button>
|
|
61
|
+
* <button aria-label="Schedule deploy">D</button>
|
|
62
|
+
* <button aria-label="Open runbook">R</button>
|
|
63
|
+
* </sky-speeddial>
|
|
64
|
+
* );
|
|
65
|
+
* }
|
|
66
|
+
* ```
|
|
67
|
+
*/
|
|
68
|
+
export declare class SkySpeeddial extends LitElement {
|
|
69
|
+
static dependencies: Record<string, CustomElementConstructor>;
|
|
70
|
+
/** Whether the action cluster is open. */
|
|
71
|
+
open: boolean;
|
|
72
|
+
/** Preferred expansion direction. May auto-adjust based on viewport. */
|
|
73
|
+
direction: SkySpeeddialDirection;
|
|
74
|
+
/** Iconify name for the FAB icon. */
|
|
75
|
+
fabIcon: string;
|
|
76
|
+
static styles: import("lit").CSSResult;
|
|
77
|
+
firstUpdated(): void;
|
|
78
|
+
/** Ensure the chosen direction keeps actions within the viewport. */
|
|
79
|
+
private adjustDirection;
|
|
80
|
+
/** Toggle open/closed and emit lifecycle events. */
|
|
81
|
+
private toggleMenu;
|
|
82
|
+
openMenu(): void;
|
|
83
|
+
closeMenu(): void;
|
|
84
|
+
toggleMenuState(): void;
|
|
85
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
86
|
+
}
|