@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,43 @@
|
|
|
1
|
+
import{__decorate as t,__metadata as e}from"tslib";import{LitElement as i,css as s,html as o}from"lit";import{property as n,customElement as r}from"lit/decorators.js";import{when as h}from"lit/directives/when.js";import{classMap as c}from"lit/directives/class-map.js";import{styleMap as l}from"lit/directives/style-map.js";import{consume as d}from"@lit/context";import{themeContext as a}from"../sky-theme-provider/sky-theme-provider.js";import{SkyTabButton as p}from"../sky-tab-button/sky-tab-button.js";import{SkyButton as y}from"../sky-button/sky-button.js";import{SkyIcon as m}from"../sky-icon/sky-icon.js";let u=class extends i{constructor(){super(...arguments),this.darkIcon="ion:moon-outline",this.lightIcon="ion:sunny-outline",this.systemIcon="ion:desktop",this.type="button",this.radius="md",this.color="dark",this.disabled=!1,this.size="md",this.variant="transparent",this.iconOnly=!0,this.cycle=["light","system","dark"],this.handleButtonClick=()=>{if(!this.themeCtx)return;const t=this.preference,e=this.nextPref(t);this.themeCtx.setPreference(e),this.requestUpdate(),this.dispatchEvent(new CustomEvent("theme-change",{detail:{preference:e,mode:this.themeCtx.mode??this.mode},bubbles:!0,composed:!0}))}}static{this.dependencies={"sky-tab-button":p,"sky-button":y,"sky-icon":m}}static{this.styles=s`
|
|
2
|
+
:host {
|
|
3
|
+
display: inline-block;
|
|
4
|
+
}
|
|
5
|
+
:host[disabled] {
|
|
6
|
+
pointer-events: none;
|
|
7
|
+
opacity: 0.6;
|
|
8
|
+
}
|
|
9
|
+
.wrap {
|
|
10
|
+
display: inline-flex;
|
|
11
|
+
align-items: center;
|
|
12
|
+
}
|
|
13
|
+
sky-icon{
|
|
14
|
+
display:inline-flex;
|
|
15
|
+
}
|
|
16
|
+
`}get preference(){return this.themeCtx?.preference??"system"}get mode(){return this.themeCtx?.mode??"light"}iconForPref(t){switch(t){case"system":return this.systemIcon;case"dark":return this.darkIcon;default:return this.lightIcon}}nextPref(t){const e=this.cycle.indexOf(t);return this.cycle[(e+1)%this.cycle.length]}toggleTheme(){this.handleButtonClick()}render(){const t=this.preference,e=this.iconForPref(t),i=!this.themeCtx,s=[{value:"light",...this.iconOnly?{}:{label:"Light"},icon:`${this.lightIcon}`},{value:"system",...this.iconOnly?{}:{label:"Auto"},icon:`${this.systemIcon}`},{value:"dark",...this.iconOnly?{}:{label:"Dark"},icon:`${this.darkIcon}`}],n=c({"theme-light":"light"===t,"theme-dark":"dark"===t,"theme-system":"system"===t});return o`
|
|
17
|
+
<div class=${n} style=${l({"--btn-radius":this.radius})}>
|
|
18
|
+
${h("switch"===this.type,()=>o`
|
|
19
|
+
<sky-tab-button
|
|
20
|
+
.value=${t}
|
|
21
|
+
.size=${this.size}
|
|
22
|
+
.states=${s}
|
|
23
|
+
?disabled=${i}
|
|
24
|
+
.radius=${this.radius}
|
|
25
|
+
@state-change=${t=>{this.themeCtx?.setPreference(t.detail.value),this.dispatchEvent(new CustomEvent("theme-change",{detail:{preference:t.detail.value,mode:this.themeCtx?.mode??this.mode},bubbles:!0,composed:!0}))}}
|
|
26
|
+
></sky-tab-button>
|
|
27
|
+
`,()=>o`
|
|
28
|
+
<sky-button
|
|
29
|
+
variant="${this.variant}"
|
|
30
|
+
radius="${this.radius}"
|
|
31
|
+
color="${this.color}"
|
|
32
|
+
.size=${this.size}
|
|
33
|
+
?disabled=${i}
|
|
34
|
+
aria-label=${`Theme: ${t}. Click to change.`}
|
|
35
|
+
title=${`Theme: ${t}. Click to change.`}
|
|
36
|
+
@click=${this.handleButtonClick}
|
|
37
|
+
>
|
|
38
|
+
<sky-icon .icon=${e}></sky-icon>
|
|
39
|
+
</sky-button>
|
|
40
|
+
`)}
|
|
41
|
+
</div>
|
|
42
|
+
`}};t([n({type:String}),e("design:type",Object)],u.prototype,"darkIcon",void 0),t([n({type:String}),e("design:type",Object)],u.prototype,"lightIcon",void 0),t([n({type:String}),e("design:type",Object)],u.prototype,"systemIcon",void 0),t([n({type:String}),e("design:type",String)],u.prototype,"type",void 0),t([n({type:String}),e("design:type",String)],u.prototype,"radius",void 0),t([n({type:String}),e("design:type",String)],u.prototype,"color",void 0),t([n({type:Boolean,reflect:!0}),e("design:type",Boolean)],u.prototype,"disabled",void 0),t([n({type:String}),e("design:type",String)],u.prototype,"size",void 0),t([n({type:String}),e("design:type",String)],u.prototype,"variant",void 0),t([n({type:Boolean}),e("design:type",Boolean)],u.prototype,"iconOnly",void 0),t([d({context:a,subscribe:!0}),e("design:type",Object)],u.prototype,"themeCtx",void 0),u=t([r("sky-theme-switcher")],u);export{u as SkyThemeSwitcher};
|
|
43
|
+
//# sourceMappingURL=sky-theme-switcher.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sky-theme-switcher.js","sources":["../../src/sky-theme-switcher/sky-theme-switcher.ts"],"sourcesContent":[null],"names":["SkyThemeSwitcher","LitElement","constructor","this","darkIcon","lightIcon","systemIcon","type","radius","color","disabled","size","variant","iconOnly","cycle","handleButtonClick","themeCtx","curr","preference","next","nextPref","setPreference","requestUpdate","dispatchEvent","CustomEvent","detail","mode","bubbles","composed","dependencies","SkyTabButton","SkyButton","SkyIcon","styles","css","iconForPref","pref","i","indexOf","length","toggleTheme","render","icon","noProvider","states","value","label","wrapClasses","classMap","html","styleMap","when","e","__decorate","property","String","prototype","Boolean","reflect","consume","context","themeContext","subscribe","customElement"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./sky-tooltip";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './sky-tooltip.js';
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
import { LitElement } from "lit";
|
|
2
|
+
/**
|
|
3
|
+
* Variants supported by <sky-tooltip>.
|
|
4
|
+
* Matches <sky-button> style system for consistency.
|
|
5
|
+
*/
|
|
6
|
+
export type Variant = "solid" | "faded" | "bordered" | "transparent" | "flat" | "ghost" | "relief" | "gradient" | "shadow";
|
|
7
|
+
type Place = "top" | "bottom" | "left" | "right" | "auto";
|
|
8
|
+
export type SkyTooltipPosition = Place;
|
|
9
|
+
export type SkyTooltipTrigger = "hover" | "click" | "both";
|
|
10
|
+
/**
|
|
11
|
+
* `<sky-tooltip>` — A flexible tooltip with auto-repositioning, variants, and gradient support.
|
|
12
|
+
* Supports multiple trigger methods, visual variants, and automatic positioning with fallback.
|
|
13
|
+
*
|
|
14
|
+
* @element sky-tooltip
|
|
15
|
+
* @status stable
|
|
16
|
+
* @since 1.0.0
|
|
17
|
+
*
|
|
18
|
+
* @summary Tooltip component with automatic positioning, variants, and slot content.
|
|
19
|
+
*
|
|
20
|
+
* @documentation https://library.sky-ui.com/components/tooltip
|
|
21
|
+
* @dependency popover-controller
|
|
22
|
+
*
|
|
23
|
+
* @slot - The trigger content to hover/click (e.g., a button or icon).
|
|
24
|
+
* @slot tooltip - Optional tooltip body; if omitted, the `label` property is used.
|
|
25
|
+
*
|
|
26
|
+
* @csspart trigger - Wrapper around the trigger (default slot).
|
|
27
|
+
* @csspart tooltip - Absolutely-positioned tooltip container (positioning shell).
|
|
28
|
+
* @csspart tooltip-inner - Tooltip bubble surface (padding, border, radius, animations).
|
|
29
|
+
* @csspart tooltip-content - Wrapper for the tooltip's slotted content/text.
|
|
30
|
+
*
|
|
31
|
+
* @property {SkyTooltipPosition} position - Preferred tooltip placement.
|
|
32
|
+
* @property {boolean} visible - Current tooltip visibility state.
|
|
33
|
+
* @property {SkyTooltipTrigger} trigger - Visibility trigger behavior.
|
|
34
|
+
* @property {string} label - Fallback tooltip text.
|
|
35
|
+
* @property {Variant} variant - Tooltip visual variant.
|
|
36
|
+
* @property {string} color - Tooltip color token or CSS color.
|
|
37
|
+
* @property {string} colors - Gradient descriptor used by `gradient` variant.
|
|
38
|
+
* @property {boolean} noAutoTrigger - Disables hover/click auto triggers.
|
|
39
|
+
* @property {number} delay - Hover dwell time (ms) before open (native `title`–like). `0` = immediate.
|
|
40
|
+
* @property {number} closeDelay - Ms after pointer leaves before close starts (hover path only). `0` = immediate.
|
|
41
|
+
* @property {boolean} showArrow - Whether the placement arrow is drawn.
|
|
42
|
+
* @property {boolean} interactive - Allows pointer interaction with tooltip content.
|
|
43
|
+
* @method show Shows tooltip programmatically.
|
|
44
|
+
* @method hide Hides tooltip programmatically.
|
|
45
|
+
* @method toggle Toggles tooltip visibility programmatically.
|
|
46
|
+
*
|
|
47
|
+
* @Behavior
|
|
48
|
+
* - Supports programmatic `show`, `hide`, and `toggle`.
|
|
49
|
+
* - Repositions through `PopoverController` when anchors or placement change.
|
|
50
|
+
* - Keeps arrow alignment synchronized with resolved placement.
|
|
51
|
+
*
|
|
52
|
+
* @example
|
|
53
|
+
* ```html
|
|
54
|
+
* <sky-tooltip label="View details" position="top" trigger="hover">
|
|
55
|
+
* <button>Hover me</button>
|
|
56
|
+
* </sky-tooltip>
|
|
57
|
+
* ```
|
|
58
|
+
* ```vue
|
|
59
|
+
* <template>
|
|
60
|
+
* <sky-tooltip trigger="click" interactive variant="gradient" colors="linear@120deg: primary, #0af 70%">
|
|
61
|
+
* <button>Info</button>
|
|
62
|
+
* <div slot="tooltip">Interactive tooltip content</div>
|
|
63
|
+
* </sky-tooltip>
|
|
64
|
+
* </template>
|
|
65
|
+
* ```
|
|
66
|
+
* ```jsx
|
|
67
|
+
* export default function Demo() {
|
|
68
|
+
* return <sky-tooltip trigger="click" interactive label="Pinned tooltip"><button>Click me</button></sky-tooltip>;
|
|
69
|
+
* }
|
|
70
|
+
* ```
|
|
71
|
+
*/
|
|
72
|
+
export declare class SkyTooltip extends LitElement {
|
|
73
|
+
/** Preferred tooltip position relative to trigger. Auto-fallback if not enough space. */
|
|
74
|
+
position: Place;
|
|
75
|
+
/** Whether tooltip is currently visible (controlled internally by triggers). */
|
|
76
|
+
visible: boolean;
|
|
77
|
+
/** Trigger type: "hover", "click", or "both". */
|
|
78
|
+
trigger: SkyTooltipTrigger;
|
|
79
|
+
/** Tooltip text (if no slot content is provided). */
|
|
80
|
+
label: string;
|
|
81
|
+
/** Visual variant (mirrors <sky-button>). */
|
|
82
|
+
variant: Variant;
|
|
83
|
+
/** Base color token or custom CSS color. */
|
|
84
|
+
color: string;
|
|
85
|
+
/**
|
|
86
|
+
* Gradient specification.
|
|
87
|
+
* Format: "<kind>@<args>: stop1, stop2, stop3"
|
|
88
|
+
* Example: "linear@120deg: primary, #0af 70%"
|
|
89
|
+
*/
|
|
90
|
+
colors: string;
|
|
91
|
+
noAutoTrigger: boolean;
|
|
92
|
+
/**
|
|
93
|
+
* How long the pointer must stay on the trigger before the tooltip opens (hover / `both`),
|
|
94
|
+
* similar to the browser’s native `title` tooltip. Moving away before this time elapses
|
|
95
|
+
* cancels the open. Default ~0ms. Set to `0` for an immediate open.
|
|
96
|
+
* Does not apply to `trigger="click"` or programmatic `show()` / `toggle()` from click.
|
|
97
|
+
*/
|
|
98
|
+
delay: number;
|
|
99
|
+
/**
|
|
100
|
+
* Ms to wait after the pointer leaves the trigger (or the interactive tooltip surface)
|
|
101
|
+
* before starting to hide. `0` hides immediately (plus the short exit animation).
|
|
102
|
+
* Programmatic `hide()` is not delayed.
|
|
103
|
+
*/
|
|
104
|
+
closeDelay: number;
|
|
105
|
+
/** Renders the small triangle pointing at the anchor. */
|
|
106
|
+
showArrow: boolean;
|
|
107
|
+
private triggerEl;
|
|
108
|
+
private tooltipEl;
|
|
109
|
+
private _actualPlace;
|
|
110
|
+
private _arrowAlign;
|
|
111
|
+
interactive: boolean;
|
|
112
|
+
private exiting;
|
|
113
|
+
private closeTimer;
|
|
114
|
+
private openTimer;
|
|
115
|
+
private hideDelayTimer;
|
|
116
|
+
private popoverCtrl;
|
|
117
|
+
static styles: import("lit").CSSResult;
|
|
118
|
+
connectedCallback(): void;
|
|
119
|
+
disconnectedCallback(): void;
|
|
120
|
+
firstUpdated(): void;
|
|
121
|
+
private syncArrowAndPlaceFromController;
|
|
122
|
+
willUpdate(_changed: Map<string, unknown>): void;
|
|
123
|
+
updated(changed: Map<string, unknown>): void;
|
|
124
|
+
/** Begin exit animation (keeps popover open briefly so animation is visible). */
|
|
125
|
+
private triggerExit;
|
|
126
|
+
private clearOpenTimer;
|
|
127
|
+
private clearHideDelayTimer;
|
|
128
|
+
/** Pointer leave → hide after `closeDelay` ms (hover path only). */
|
|
129
|
+
private scheduleHideAfterLeave;
|
|
130
|
+
/** Hover in → show only after `delay` ms dwell on the trigger (native `title`–like). */
|
|
131
|
+
private handleMouseEnter;
|
|
132
|
+
/** Hover out → hide tooltip */
|
|
133
|
+
private handleMouseLeave;
|
|
134
|
+
/** Click → toggle tooltip, but not when clicking inside tooltip content */
|
|
135
|
+
private handleClick;
|
|
136
|
+
private handleTooltipMouseEnter;
|
|
137
|
+
private handleTooltipMouseLeave;
|
|
138
|
+
/**
|
|
139
|
+
* Show the tooltip programmatically
|
|
140
|
+
*/
|
|
141
|
+
show(): void;
|
|
142
|
+
/**
|
|
143
|
+
* Hide the tooltip programmatically (immediate; ignores `closeDelay`).
|
|
144
|
+
*/
|
|
145
|
+
hide(): void;
|
|
146
|
+
/**
|
|
147
|
+
* Toggle the tooltip programmatically
|
|
148
|
+
*/
|
|
149
|
+
toggle(): void;
|
|
150
|
+
/**
|
|
151
|
+
* Show tooltip with custom content (optional enhancement)
|
|
152
|
+
*/
|
|
153
|
+
showWithContent(content: string | HTMLElement): void;
|
|
154
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
155
|
+
}
|
|
156
|
+
export {};
|
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
import{__decorate as t,__metadata as o}from"tslib";import{LitElement as e,css as r,html as i}from"lit";import{property as s,query as a,state as n,customElement as l}from"lit/decorators.js";import{classMap as p}from"lit/directives/class-map.js";import{resolveColor as h,resolveTextColorForToken as d,createGradient as c,tuneSurfaceVariantForDefaultColor as g,fadeMix as m}from"../helper/utils/color-resolver.js";import{PopoverController as v}from"../helper/controllers/popover-controller.js";let y=class extends e{constructor(){super(...arguments),this.position="top",this.visible=!1,this.trigger="hover",this.label="tooltip",this.variant="solid",this.color="primary",this.colors="",this.noAutoTrigger=!1,this.delay=0,this.closeDelay=0,this.showArrow=!1,this._actualPlace="top",this._arrowAlign="center",this.interactive=!1,this.exiting=!1,this.closeTimer=null,this.openTimer=null,this.hideDelayTimer=null,this.popoverCtrl=new v(this,{getAnchor:()=>this.triggerEl??null,getPopover:()=>this.tooltipEl??null,cssVarLeft:"--sky-tt-left",cssVarTop:"--sky-tt-top",cssVarWidth:"--sky-tt-width",getPlacement:()=>this.position,getAlign:()=>"center",getGap:()=>6,getPadding:()=>8,getMatchAnchorWidth:()=>!1,getMaxWidthToViewport:()=>!0,getMaxWidthMode:()=>"cap",getFlip:()=>!0,getFlipOrder:()=>[],getPreset:()=>"none",getDuration:()=>220,getCloseDuration:()=>180,getAnimateReposition:()=>!0,getRepositionMs:()=>160,getCloseOnEscape:()=>!0,getCloseOnOutside:()=>!0,getRestoreFocusOnClose:()=>!1,onOpenChange:t=>{t||(this.visible=!1,this.exiting=!1)}}),this.handleTooltipMouseEnter=()=>{},this.handleTooltipMouseLeave=()=>{this.noAutoTrigger||this.interactive&&("hover"!==this.trigger&&"both"!==this.trigger||this.scheduleHideAfterLeave())}}static{this.styles=r`
|
|
2
|
+
:host {
|
|
3
|
+
position: relative;
|
|
4
|
+
font-family: var(--sky-font);
|
|
5
|
+
display: inline-block;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
.tooltip {
|
|
9
|
+
position: fixed;
|
|
10
|
+
visibility: hidden;
|
|
11
|
+
opacity: 0;
|
|
12
|
+
transition: opacity 0.15s ease-out 0.05s;
|
|
13
|
+
z-index: 9999;
|
|
14
|
+
|
|
15
|
+
left: var(--sky-tt-left, 0px);
|
|
16
|
+
top: var(--sky-tt-top, 0px);
|
|
17
|
+
width: var(--sky-tt-width, max-content);
|
|
18
|
+
margin: 0;
|
|
19
|
+
border: none;
|
|
20
|
+
background: transparent; /* reset UA background */
|
|
21
|
+
overflow: visible;
|
|
22
|
+
pointer-events: none;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.tooltip:popover-open {
|
|
26
|
+
visibility: visible;
|
|
27
|
+
opacity: 1;
|
|
28
|
+
transition-delay: 0s;
|
|
29
|
+
pointer-events: auto;
|
|
30
|
+
}
|
|
31
|
+
:host(:not([interactive])) .tooltip:popover-open {
|
|
32
|
+
pointer-events: none;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.tooltip__inner {
|
|
36
|
+
background: var(--tooltip-bg);
|
|
37
|
+
color: var(--tooltip-color);
|
|
38
|
+
border: var(--tooltip-border);
|
|
39
|
+
box-shadow: var(--tooltip-box-shadow);
|
|
40
|
+
padding: 4px 8px;
|
|
41
|
+
border-radius: var(--sky-radius-secondary);
|
|
42
|
+
font-size: 12px;
|
|
43
|
+
width: max-content;
|
|
44
|
+
position: relative;
|
|
45
|
+
max-width: 300px;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.tooltip__inner::after {
|
|
49
|
+
content: "";
|
|
50
|
+
position: absolute;
|
|
51
|
+
border-width: 6px;
|
|
52
|
+
border-style: solid;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
.tooltip__inner.no-arrow::after {
|
|
56
|
+
display: none;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/* Updated positioning for fixed tooltip */
|
|
60
|
+
.tooltip[data-position="top"] {
|
|
61
|
+
transform: scale(0.9);
|
|
62
|
+
transform-origin: bottom center;
|
|
63
|
+
}
|
|
64
|
+
.tooltip[data-position="top"]:popover-open {
|
|
65
|
+
transform: scale(1);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.tooltip[data-position="top"] .tooltip__inner::after {
|
|
69
|
+
top: 100%;
|
|
70
|
+
left: 50%;
|
|
71
|
+
transform: translateX(-50%);
|
|
72
|
+
border-color: var(--tooltip-arrow-color) transparent transparent
|
|
73
|
+
transparent;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
.tooltip[data-position="bottom"] {
|
|
77
|
+
transform: scale(0.9);
|
|
78
|
+
transform-origin: top center;
|
|
79
|
+
}
|
|
80
|
+
.tooltip[data-position="bottom"]:popover-open {
|
|
81
|
+
transform: scale(1);
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
.tooltip[data-position="bottom"] .tooltip__inner::after {
|
|
85
|
+
bottom: 100%;
|
|
86
|
+
left: 50%;
|
|
87
|
+
transform: translateX(-50%);
|
|
88
|
+
border-color: transparent transparent var(--tooltip-arrow-color)
|
|
89
|
+
transparent;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
.tooltip[data-position="left"] {
|
|
93
|
+
transform: scale(0.9);
|
|
94
|
+
transform-origin: center right;
|
|
95
|
+
}
|
|
96
|
+
.tooltip[data-position="left"]:popover-open {
|
|
97
|
+
transform: scale(1);
|
|
98
|
+
}
|
|
99
|
+
.tooltip[data-position="left"] .tooltip__inner::after {
|
|
100
|
+
top: 50%;
|
|
101
|
+
right: -12px;
|
|
102
|
+
transform: translateY(-50%);
|
|
103
|
+
border-color: transparent transparent transparent
|
|
104
|
+
var(--tooltip-arrow-color);
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
.tooltip[data-position="right"] {
|
|
108
|
+
transform: scale(0.9);
|
|
109
|
+
transform-origin: center left;
|
|
110
|
+
}
|
|
111
|
+
.tooltip[data-position="right"]:popover-open {
|
|
112
|
+
transform: scale(1);
|
|
113
|
+
}
|
|
114
|
+
.tooltip[data-position="right"] .tooltip__inner::after {
|
|
115
|
+
top: 50%;
|
|
116
|
+
left: -12px;
|
|
117
|
+
transform: translateY(-50%);
|
|
118
|
+
border-color: transparent var(--tooltip-arrow-color) transparent
|
|
119
|
+
transparent;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
/* Arrow alignment classes */
|
|
123
|
+
.tooltip[data-position="top"] .tooltip__inner.arrow-center::after,
|
|
124
|
+
.tooltip[data-position="bottom"] .tooltip__inner.arrow-center::after {
|
|
125
|
+
left: 50%;
|
|
126
|
+
transform: translateX(-50%);
|
|
127
|
+
}
|
|
128
|
+
.tooltip[data-position="top"] .tooltip__inner.arrow-left::after,
|
|
129
|
+
.tooltip[data-position="bottom"] .tooltip__inner.arrow-left::after {
|
|
130
|
+
left: 15px;
|
|
131
|
+
transform: translateX(0);
|
|
132
|
+
}
|
|
133
|
+
.tooltip[data-position="top"] .tooltip__inner.arrow-right::after,
|
|
134
|
+
.tooltip[data-position="bottom"] .tooltip__inner.arrow-right::after {
|
|
135
|
+
right: 15px;
|
|
136
|
+
left: auto;
|
|
137
|
+
transform: translateX(0);
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
.tooltip[data-position="left"] .tooltip__inner.arrow-center::after,
|
|
141
|
+
.tooltip[data-position="right"] .tooltip__inner.arrow-center::after {
|
|
142
|
+
top: 50%;
|
|
143
|
+
transform: translateY(-50%);
|
|
144
|
+
}
|
|
145
|
+
.tooltip[data-position="left"] .tooltip__inner.arrow-left::after,
|
|
146
|
+
.tooltip[data-position="right"] .tooltip__inner.arrow-left::after {
|
|
147
|
+
top: 15px;
|
|
148
|
+
transform: translateY(0);
|
|
149
|
+
}
|
|
150
|
+
.tooltip[data-position="left"] .tooltip__inner.arrow-right::after,
|
|
151
|
+
.tooltip[data-position="right"] .tooltip__inner.arrow-right::after {
|
|
152
|
+
bottom: 15px;
|
|
153
|
+
top: auto;
|
|
154
|
+
transform: translateY(0);
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
/* Animations */
|
|
158
|
+
@keyframes bounceIn {
|
|
159
|
+
from {
|
|
160
|
+
opacity: 0;
|
|
161
|
+
transform: scale(0.5);
|
|
162
|
+
}
|
|
163
|
+
to {
|
|
164
|
+
transform: scale(1);
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
@keyframes fadeShrinkOut {
|
|
168
|
+
from {
|
|
169
|
+
opacity: 1;
|
|
170
|
+
transform: scale(1);
|
|
171
|
+
}
|
|
172
|
+
to {
|
|
173
|
+
opacity: 0;
|
|
174
|
+
transform: scale(0.8);
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
.tooltip__inner.entering {
|
|
178
|
+
animation: bounceIn 0.2s ease forwards;
|
|
179
|
+
}
|
|
180
|
+
.tooltip__inner.exiting {
|
|
181
|
+
animation: fadeShrinkOut 0.12s ease forwards;
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
/* RTL support */
|
|
185
|
+
:host([dir="rtl"]) .tooltip[data-position="top"] {
|
|
186
|
+
transform: translateX(50%) scale(0.9);
|
|
187
|
+
}
|
|
188
|
+
:host([dir="rtl"]) .tooltip[data-position="top"]:popover-open {
|
|
189
|
+
transform: translateX(50%) scale(1);
|
|
190
|
+
}
|
|
191
|
+
:host([dir="rtl"]) .tooltip[data-position="bottom"] {
|
|
192
|
+
transform: translateX(50%) scale(0.9);
|
|
193
|
+
}
|
|
194
|
+
:host([dir="rtl"]) .tooltip[data-position="bottom"]:popover-open {
|
|
195
|
+
transform: translateX(50%) scale(1);
|
|
196
|
+
}
|
|
197
|
+
:host([dir="rtl"]) .tooltip[data-position="left"] .tooltip__inner::after {
|
|
198
|
+
left: -12px;
|
|
199
|
+
right: auto;
|
|
200
|
+
border-color: transparent var(--tooltip-arrow-color) transparent
|
|
201
|
+
transparent;
|
|
202
|
+
}
|
|
203
|
+
:host([dir="rtl"]) .tooltip[data-position="right"] .tooltip__inner::after {
|
|
204
|
+
right: -12px;
|
|
205
|
+
left: auto;
|
|
206
|
+
border-color: transparent transparent transparent
|
|
207
|
+
var(--tooltip-arrow-color);
|
|
208
|
+
}
|
|
209
|
+
`}connectedCallback(){super.connectedCallback(),"undefined"!=typeof document&&this.setAttribute("dir",document.dir||"ltr")}disconnectedCallback(){this.clearOpenTimer(),this.clearHideDelayTimer(),null!=this.closeTimer&&(clearTimeout(this.closeTimer),this.closeTimer=null),super.disconnectedCallback()}firstUpdated(){this.popoverCtrl.refreshTargets()}syncArrowAndPlaceFromController(){const t=this.popoverCtrl.meta;t?.place&&(this._actualPlace=t.place),t?.arrowAlign&&(this._arrowAlign=t.arrowAlign)}willUpdate(t){const o=h(this.color),e=d(this.color),r={solid:{bg:o,color:e,border:"1px solid transparent",shadow:"none",arrow:o},faded:{bg:"var(--sky-hover-tertiary)",color:o,border:"1px solid var(--sky-text-tertiary)",shadow:"none",arrow:"var(--sky-hover-tertiary)"},bordered:{bg:"var(--sky-surface-primary)",color:o,border:`1px solid ${o}`,shadow:"none",arrow:o},transparent:{bg:"transparent",color:o,border:"1px solid transparent",shadow:"none",arrow:"transparent"},flat:{bg:m(o,12),color:o,border:"1px solid transparent",shadow:"none",arrow:m(o,12)},ghost:{bg:m(o,20),color:o,border:`1px solid ${o}`,shadow:"none",arrow:o},relief:{bg:o,color:e,border:"1px solid transparent",shadow:`inset 0 1px 0 rgba(255,255,255,0.35), 0 6px 14px -8px ${m(o,55)}`,arrow:o},gradient:{bg:c(this.colors,o),color:e,border:"none",shadow:"none",arrow:o},shadow:{bg:"var(--sky-glass-primary)",color:o,border:"1px solid var(--sky-border-light)",shadow:"var(--sky-box-shadow-primary)",arrow:"var(--sky-glass-primary)"}},i=this.variant in r?this.variant:"solid",s=g(this.color,i,r[i]);this.style.setProperty("--tooltip-bg",s.bg),this.style.setProperty("--tooltip-color",s.color),this.style.setProperty("--tooltip-border",s.border),this.style.setProperty("--tooltip-box-shadow",s.shadow||"none"),this.style.setProperty("--tooltip-arrow-color",s.arrow)}updated(t){super.updated(t),t.has("position")&&this.popoverCtrl.open&&(this.popoverCtrl.position(),this.syncArrowAndPlaceFromController()),t.has("visible")&&this.visible&&this.updateComplete.then(()=>{this.popoverCtrl.open||this.popoverCtrl.openPopover(),requestAnimationFrame(()=>{this.popoverCtrl.position(),this.syncArrowAndPlaceFromController()})})}triggerExit(){this.clearOpenTimer(),this.clearHideDelayTimer(),this.closeTimer&&(clearTimeout(this.closeTimer),this.closeTimer=null),this.exiting=!0,this.visible=!1,this.closeTimer=window.setTimeout(()=>{this.exiting=!1,this.popoverCtrl.closePopover("api"),this.closeTimer=null},140)}clearOpenTimer(){null!=this.openTimer&&(clearTimeout(this.openTimer),this.openTimer=null)}clearHideDelayTimer(){null!=this.hideDelayTimer&&(clearTimeout(this.hideDelayTimer),this.hideDelayTimer=null)}scheduleHideAfterLeave(){this.clearHideDelayTimer();const t=Number(this.closeDelay),o=Number.isFinite(t)?Math.max(0,t):0;o>0?this.hideDelayTimer=window.setTimeout(()=>{this.hideDelayTimer=null,this.hide()},o):this.hide()}handleMouseEnter(){if(this.noAutoTrigger)return;if("hover"!==this.trigger&&"both"!==this.trigger)return;if(this.clearHideDelayTimer(),this.visible||this.popoverCtrl.open)return void this.clearOpenTimer();this.clearOpenTimer();const t=Number(this.delay),o=Number.isFinite(t)?Math.max(0,t):0;o>0?this.openTimer=window.setTimeout(()=>{this.openTimer=null,this.show()},o):this.show()}handleMouseLeave(t){if(this.noAutoTrigger)return;const o=t.relatedTarget;this.interactive&&o&&this.tooltipEl?.contains(o)||(this.clearOpenTimer(),"hover"!==this.trigger&&"both"!==this.trigger||this.scheduleHideAfterLeave())}handleClick(t){if(this.noAutoTrigger)return;t.composedPath().some(t=>t instanceof HTMLElement&&(t.classList?.contains("tooltip__inner")||t.getAttribute("part")?.includes("tooltip-content")))?t.stopPropagation():"click"!==this.trigger&&"both"!==this.trigger||this.toggle()}show(){this.clearOpenTimer(),this.clearHideDelayTimer(),this.closeTimer&&(clearTimeout(this.closeTimer),this.closeTimer=null),this.exiting=!1,this.visible=!0}hide(){this.clearHideDelayTimer(),(this.visible||this.popoverCtrl.open)&&this.triggerExit()}toggle(){this.visible?this.hide():this.show()}showWithContent(t){"string"==typeof t&&(this.label=t),this.show()}render(){return i`
|
|
210
|
+
<div
|
|
211
|
+
part="trigger"
|
|
212
|
+
@mouseenter=${this.handleMouseEnter}
|
|
213
|
+
@mouseleave=${this.handleMouseLeave}
|
|
214
|
+
@click=${this.handleClick}
|
|
215
|
+
>
|
|
216
|
+
<slot></slot>
|
|
217
|
+
|
|
218
|
+
<div
|
|
219
|
+
class="tooltip"
|
|
220
|
+
part="tooltip"
|
|
221
|
+
popover="manual"
|
|
222
|
+
data-position="${this._actualPlace||this.position}"
|
|
223
|
+
?visible=${this.visible}
|
|
224
|
+
@toggle=${this.popoverCtrl.onToggle}
|
|
225
|
+
@mouseenter=${this.handleTooltipMouseEnter}
|
|
226
|
+
@mouseleave=${this.handleTooltipMouseLeave}
|
|
227
|
+
>
|
|
228
|
+
<div
|
|
229
|
+
part="tooltip-inner"
|
|
230
|
+
class=${p({tooltip__inner:!0,"no-arrow":!this.showArrow,"arrow-left":this.showArrow&&"start"===this._arrowAlign,"arrow-right":this.showArrow&&"end"===this._arrowAlign,"arrow-center":this.showArrow&&"center"===this._arrowAlign,exiting:this.exiting,entering:!this.exiting})}
|
|
231
|
+
>
|
|
232
|
+
<div
|
|
233
|
+
part="tooltip-content"
|
|
234
|
+
@click=${t=>t.stopPropagation()}
|
|
235
|
+
>
|
|
236
|
+
<slot name="tooltip">${this.label}</slot>
|
|
237
|
+
</div>
|
|
238
|
+
</div>
|
|
239
|
+
</div>
|
|
240
|
+
</div>
|
|
241
|
+
`}};t([s({type:String}),o("design:type",String)],y.prototype,"position",void 0),t([s({type:Boolean}),o("design:type",Boolean)],y.prototype,"visible",void 0),t([s({type:String}),o("design:type",String)],y.prototype,"trigger",void 0),t([s({type:String}),o("design:type",String)],y.prototype,"label",void 0),t([s({type:String}),o("design:type",String)],y.prototype,"variant",void 0),t([s({type:String}),o("design:type",String)],y.prototype,"color",void 0),t([s({type:String}),o("design:type",String)],y.prototype,"colors",void 0),t([s({type:Boolean}),o("design:type",Boolean)],y.prototype,"noAutoTrigger",void 0),t([s({type:Number}),o("design:type",Number)],y.prototype,"delay",void 0),t([s({type:Number}),o("design:type",Number)],y.prototype,"closeDelay",void 0),t([s({type:Boolean,reflect:!0}),o("design:type",Boolean)],y.prototype,"showArrow",void 0),t([a('[part="trigger"]'),o("design:type",HTMLElement)],y.prototype,"triggerEl",void 0),t([a(".tooltip"),o("design:type",HTMLElement)],y.prototype,"tooltipEl",void 0),t([n(),o("design:type",String)],y.prototype,"_actualPlace",void 0),t([n(),o("design:type",String)],y.prototype,"_arrowAlign",void 0),t([s({type:Boolean,reflect:!0}),o("design:type",Boolean)],y.prototype,"interactive",void 0),y=t([l("sky-tooltip")],y);export{y as SkyTooltip};
|
|
242
|
+
//# sourceMappingURL=sky-tooltip.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sky-tooltip.js","sources":["../../src/sky-tooltip/sky-tooltip.ts"],"sourcesContent":[null],"names":["SkyTooltip","LitElement","constructor","this","position","visible","trigger","label","variant","color","colors","noAutoTrigger","delay","closeDelay","showArrow","_actualPlace","_arrowAlign","interactive","exiting","closeTimer","openTimer","hideDelayTimer","popoverCtrl","PopoverController","getAnchor","triggerEl","getPopover","tooltipEl","cssVarLeft","cssVarTop","cssVarWidth","getPlacement","getAlign","getGap","getPadding","getMatchAnchorWidth","getMaxWidthToViewport","getMaxWidthMode","getFlip","getFlipOrder","getPreset","getDuration","getCloseDuration","getAnimateReposition","getRepositionMs","getCloseOnEscape","getCloseOnOutside","getRestoreFocusOnClose","onOpenChange","open","handleTooltipMouseEnter","handleTooltipMouseLeave","scheduleHideAfterLeave","styles","css","connectedCallback","super","document","setAttribute","dir","disconnectedCallback","clearOpenTimer","clearHideDelayTimer","clearTimeout","firstUpdated","refreshTargets","syncArrowAndPlaceFromController","meta","place","arrowAlign","willUpdate","_changed","baseColor","resolveColor","textColor","resolveTextColorForToken","variantDefaults","solid","bg","border","shadow","arrow","faded","bordered","transparent","flat","fadeMix","ghost","relief","gradient","createGradient","key","v","tuneSurfaceVariantForDefaultColor","style","setProperty","updated","changed","has","updateComplete","then","openPopover","requestAnimationFrame","triggerExit","window","setTimeout","closePopover","raw","Number","ms","isFinite","Math","max","hide","handleMouseEnter","show","handleMouseLeave","event","relatedTarget","contains","handleClick","composedPath","some","el","HTMLElement","classList","getAttribute","includes","stopPropagation","toggle","showWithContent","content","render","html","onToggle","classMap","tooltip__inner","entering","e","__decorate","property","type","String","prototype","Boolean","reflect","query","state","customElement"],"mappings":"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"}
|