@cupra/ui-kit 2.0.0-canary.240 → 2.0.0-canary.242
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/dist/cjs/components/ds-media-control/ds-media-control.cjs +6 -9
- package/dist/cjs/components/ds-media-control/styles/common.styles.cjs +18 -10
- package/dist/cjs/components/ds-theme-provider/ds-theme-provider.cjs +1 -1
- package/dist/cjs/decorators/customUiKitElement.cjs +1 -1
- package/dist/cjs/utils/IconsManager.cjs +1 -1
- package/dist/cjs/utils/PubSub.cjs +1 -1
- package/dist/cjs/utils/version.cjs +1 -1
- package/dist/esm/components/ds-media-control/ds-media-control.js +14 -27
- package/dist/esm/components/ds-media-control/styles/common.styles.js +18 -10
- package/dist/esm/components/ds-theme-provider/ds-theme-provider.js +1 -1
- package/dist/esm/decorators/customUiKitElement.js +1 -1
- package/dist/esm/utils/IconsManager.js +1 -1
- package/dist/esm/utils/PubSub.js +1 -1
- package/dist/esm/utils/version.js +1 -1
- package/dist/types/components/ds-media-control/ds-media-control.d.ts +0 -1
- package/dist-react/cjs/components/ds-media-control/ds-media-control.cjs +6 -9
- package/dist-react/cjs/components/ds-media-control/styles/common.styles.cjs +18 -10
- package/dist-react/cjs/components/ds-theme-provider/ds-theme-provider.cjs +1 -1
- package/dist-react/cjs/decorators/customUiKitElement.cjs +1 -1
- package/dist-react/cjs/utils/IconsManager.cjs +1 -1
- package/dist-react/cjs/utils/PubSub.cjs +1 -1
- package/dist-react/cjs/utils/version.cjs +1 -1
- package/dist-react/esm/components/ds-media-control/ds-media-control.js +14 -27
- package/dist-react/esm/components/ds-media-control/styles/common.styles.js +18 -10
- package/dist-react/esm/components/ds-theme-provider/ds-theme-provider.js +1 -1
- package/dist-react/esm/decorators/customUiKitElement.js +1 -1
- package/dist-react/esm/utils/IconsManager.js +1 -1
- package/dist-react/esm/utils/PubSub.js +1 -1
- package/dist-react/esm/utils/version.js +1 -1
- package/dist-react/types/components/ds-media-control/ds-media-control.d.ts +0 -1
- package/package.json +1 -1
|
@@ -1,14 +1,11 @@
|
|
|
1
|
-
const e=require("../../node_modules/.pnpm/lit-html@3.3.3/node_modules/lit-html/lit-html.cjs"),t=require("../../node_modules/.pnpm/lit-element@4.2.2/node_modules/lit-element/lit-element.cjs");require("../../node_modules/.pnpm/lit@3.3.3/node_modules/lit/index.cjs");const n=require("../../node_modules/.pnpm/@lit_reactive-element@2.1.2/node_modules/@lit/reactive-element/decorators/property.cjs"),r=require("../../node_modules/.pnpm/@lit_reactive-element@2.1.2/node_modules/@lit/reactive-element/decorators/state.cjs");require("../../node_modules/.pnpm/lit@3.3.3/node_modules/lit/decorators.cjs");const i=require("../../_virtual/_@oxc-project_runtime@0.152.0/helpers/esm/decorate.cjs"),a=require("../../decorators/customUiKitElement.cjs");require("../ds-icon/ds-icon.cjs");const o=require("../../utils/uiKitHtml.cjs"),s=require("../../node_modules/.pnpm/lit-html@3.3.3/node_modules/lit-html/directives/class-map.cjs");require("../../node_modules/.pnpm/lit@3.3.3/node_modules/lit/directives/class-map.cjs");const c=require("
|
|
2
|
-
<svg part="progress" class="progress"
|
|
1
|
+
const e=require("../../node_modules/.pnpm/lit-html@3.3.3/node_modules/lit-html/lit-html.cjs"),t=require("../../node_modules/.pnpm/lit-element@4.2.2/node_modules/lit-element/lit-element.cjs");require("../../node_modules/.pnpm/lit@3.3.3/node_modules/lit/index.cjs");const n=require("../../node_modules/.pnpm/@lit_reactive-element@2.1.2/node_modules/@lit/reactive-element/decorators/property.cjs"),r=require("../../node_modules/.pnpm/@lit_reactive-element@2.1.2/node_modules/@lit/reactive-element/decorators/state.cjs");require("../../node_modules/.pnpm/lit@3.3.3/node_modules/lit/decorators.cjs");const i=require("../../_virtual/_@oxc-project_runtime@0.152.0/helpers/esm/decorate.cjs"),a=require("../../decorators/customUiKitElement.cjs");require("../ds-icon/ds-icon.cjs");const o=require("../../utils/uiKitHtml.cjs"),s=require("../../node_modules/.pnpm/lit-html@3.3.3/node_modules/lit-html/directives/class-map.cjs");require("../../node_modules/.pnpm/lit@3.3.3/node_modules/lit/directives/class-map.cjs");const c=require("./styles/common.styles.cjs");var l=class extends t.LitElement{constructor(...e){super(...e),this._state=void 0,this._stateValue=`pause`,this.size=`medium`,this.progress=0,this.handleToggle=e=>{e.stopPropagation();let t=this.state===`play`?`pause`:`play`;this._stateValue=t,this._state=void 0;let n=t===`play`?`ds-media-control:play`:`ds-media-control:pause`;this.dispatchEvent(new CustomEvent(n,{bubbles:!0,composed:!0}))},this.onKeyDown=e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),this.handleToggle(e))}}get state(){return this._state??this._stateValue}set state(e){this._state=e}get normalizedProgress(){let e=Number(this.progress??0);return Number.isNaN(e)?0:Math.min(100,Math.max(0,e))}get classes(){return{container:!0,[this.size]:!!this.size,[this.state]:!!this.state}}get iconName(){return this.state===`play`?`pause`:`play`}get iconTemplate(){return o.uiKitHtml`<ds-icon class="icon" icon-name=${this.iconName}></ds-icon>`}get progressTemplate(){let t=(100-this.normalizedProgress).toFixed(3);return e.html`
|
|
2
|
+
<svg part="progress" class="progress" aria-hidden="true" focusable="false">
|
|
3
3
|
<circle
|
|
4
4
|
class="indicator"
|
|
5
|
-
cx="0"
|
|
6
|
-
cy="0"
|
|
7
|
-
r="${r}"
|
|
8
5
|
fill="none"
|
|
9
|
-
|
|
10
|
-
stroke-
|
|
11
|
-
|
|
6
|
+
pathLength="100"
|
|
7
|
+
stroke-dasharray="100"
|
|
8
|
+
stroke-dashoffset="${t}"
|
|
12
9
|
></circle>
|
|
13
10
|
</svg>
|
|
14
11
|
`}render(){let t=this.state===`play`?`pause`:`play`;return e.html`
|
|
@@ -24,4 +21,4 @@ const e=require("../../node_modules/.pnpm/lit-html@3.3.3/node_modules/lit-html/l
|
|
|
24
21
|
${this.progressTemplate}
|
|
25
22
|
${this.iconTemplate}
|
|
26
23
|
</div>
|
|
27
|
-
`}},
|
|
24
|
+
`}},u=(l.styles=[c.commonStyles],l);i.default([n.property({type:String,attribute:`data-aria-label`})],u.prototype,`dataAriaLabel`,void 0),i.default([n.property({type:String,attribute:`state`,reflect:!0})],u.prototype,`_state`,void 0),i.default([r.state()],u.prototype,`_stateValue`,void 0),i.default([n.property({type:String,reflect:!0})],u.prototype,`size`,void 0),i.default([n.property({type:Number,reflect:!0})],u.prototype,`progress`,void 0),u=i.default([a.customUiKitElement(`ds-media-control`)],u),Object.defineProperty(exports,"DsMediaControl",{enumerable:!0,get:function(){return u}});
|
|
@@ -14,21 +14,26 @@ const e=require("../../../node_modules/.pnpm/@lit_reactive-element@2.1.2/node_mo
|
|
|
14
14
|
outline: none;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
+
.container {
|
|
18
|
+
width: var(--media-control-width);
|
|
19
|
+
aspect-ratio: 1;
|
|
20
|
+
--media-control-width: var(--ui-kit-media-control-width, var(--ui-kit-private-media-control-width, 40px));
|
|
21
|
+
--media-control-gap: max(1px, calc(var(--media-control-width) * 2 / 128));
|
|
22
|
+
--media-control-stroke: max(1px, calc(var(--media-control-width) * 3.75 / 128));
|
|
23
|
+
--ui-kit-icon-width: calc(var(--media-control-width) * 0.5);
|
|
24
|
+
--ui-kit-icon-height: var(--ui-kit-icon-width);
|
|
25
|
+
}
|
|
17
26
|
.container.small {
|
|
18
|
-
width: 32px;
|
|
19
|
-
height: 32px;
|
|
27
|
+
--ui-kit-private-media-control-width: 32px;
|
|
20
28
|
}
|
|
21
29
|
.container.medium {
|
|
22
|
-
width: 40px;
|
|
23
|
-
height: 40px;
|
|
30
|
+
--ui-kit-private-media-control-width: 40px;
|
|
24
31
|
}
|
|
25
32
|
.container.large {
|
|
26
|
-
width: 48px;
|
|
27
|
-
height: 48px;
|
|
33
|
+
--ui-kit-private-media-control-width: 48px;
|
|
28
34
|
}
|
|
29
35
|
.container.xlarge {
|
|
30
|
-
width: 72px;
|
|
31
|
-
height: 72px;
|
|
36
|
+
--ui-kit-private-media-control-width: 72px;
|
|
32
37
|
}
|
|
33
38
|
|
|
34
39
|
.progress {
|
|
@@ -37,12 +42,15 @@ const e=require("../../../node_modules/.pnpm/@lit_reactive-element@2.1.2/node_mo
|
|
|
37
42
|
width: 100%;
|
|
38
43
|
height: 100%;
|
|
39
44
|
pointer-events: none;
|
|
45
|
+
transform: rotate(-90deg);
|
|
40
46
|
}
|
|
41
47
|
|
|
42
48
|
.progress .indicator {
|
|
43
49
|
stroke: var(--ds-color-icon-default-subtlest, #d3d6d9);
|
|
44
|
-
stroke-width:
|
|
45
|
-
|
|
50
|
+
stroke-width: var(--media-control-stroke);
|
|
51
|
+
cx: 50%;
|
|
52
|
+
cy: 50%;
|
|
53
|
+
r: calc(50% - var(--media-control-gap) - var(--media-control-stroke) / 2);
|
|
46
54
|
}
|
|
47
55
|
|
|
48
56
|
[part='container']:focus-visible {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
const e=require("../../node_modules/.pnpm/@lit_context@1.1.6/node_modules/@lit/context/lib/decorators/provide.cjs"),t=require("./themeContext.cjs");require("../../core/theme.constants.cjs");const n=require("../../utils/PubSub.cjs"),r=require("../../node_modules/.pnpm/lit-html@3.3.3/node_modules/lit-html/lit-html.cjs"),i=require("../../node_modules/.pnpm/lit-element@4.2.2/node_modules/lit-element/lit-element.cjs");require("../../node_modules/.pnpm/lit@3.3.3/node_modules/lit/index.cjs");const a=require("../../node_modules/.pnpm/@lit_reactive-element@2.1.2/node_modules/@lit/reactive-element/decorators/property.cjs"),o=require("../../node_modules/.pnpm/@lit_reactive-element@2.1.2/node_modules/@lit/reactive-element/decorators/state.cjs");require("../../node_modules/.pnpm/lit@3.3.3/node_modules/lit/decorators.cjs");const s=require("../../_virtual/_@oxc-project_runtime@0.152.0/helpers/esm/decorate.cjs"),c=require("../../decorators/customUiKitElement.cjs"),l=require("../../utils/booleanConverter.cjs"),u=require("../../styles/source/shared/fonts-config.cjs");var d=class extends i.LitElement{constructor(...e){super(...e),this.loadFonts=!0,this.loadStyles=!0,this.loadUnusedStyles=!0,this.cssLoaded=!1,this.loadedFonts=new Set}connectedCallback(){super.connectedCallback(),this.publishDocumentAttributes(),this.observeDocumentAttributes()}disconnectedCallback(){var e;super.disconnectedCallback(),(e=this.documentAttributesObserver)==null||e.disconnect(),this.documentAttributesObserver=void 0}observeDocumentAttributes(){typeof MutationObserver<`u`&&typeof document<`u`&&(this.documentAttributesObserver=new MutationObserver(()=>this.publishDocumentAttributes()),this.documentAttributesObserver.observe(document.documentElement,{attributes:!0,attributeFilter:[`dir`,`lang`]}))}publishDocumentAttributes(){if(typeof document>`u`)return;let{documentElement:e}=document;n.pubSub.publish(`direction`,e.getAttribute(`dir`)===`rtl`?`rtl`:`ltr`),n.pubSub.publish(`lang`,e.getAttribute(`lang`))}updated(e){if(super.updated(e),e.has(`theme`)){var t,r;n.pubSub.publish(`theme`,this.theme),(t=sessionStorage)==null||t.setItem(`@cupra/ui-kit/theme`,this.theme),typeof FontFace<`u`&&(r=document)!=null&&r.fonts&&this.loadThemeFonts(),this.loadThemeStyles().then(()=>{this.cssLoaded=!0,this.dispatchEvent(new CustomEvent(`ui-kit:ready`,{bubbles:!0,composed:!0}))})}}loadThemeFonts(){var e;(e=u.fontsConfig[this.theme])==null||e.fonts.forEach(e=>{this.loadThemeFont(e)})}async loadThemeFont({weight:e,name:t,file:n,unicodeRange:r,display:i}){if(!this.loadFonts)return Promise.resolve();let a=r?`${t}-${e}-${r}`:`${t}-${e}`;if(this.loadedFonts.has(a))return;let o=new FontFace(t,`url('https://ds-assets.cupra.com/fonts/${this.theme}/${n}.woff2') format('woff2'),
|
|
2
2
|
url('https://ds-assets.cupra.com/fonts/${this.theme}/${n}.woff') format('woff'),
|
|
3
3
|
url('https://ds-assets.cupra.com/fonts/${this.theme}/${n}.ttf') format('truetype'),
|
|
4
|
-
url('https://ds-assets.cupra.com/fonts/${this.theme}/${n}.otf') format('opentype')`,{style:`normal`,weight:e,display:i??(r?`swap`:`optional`),...r&&{unicodeRange:r}});try{r||await o.load(),document.fonts.add(o),this.loadedFonts.add(a)}catch(n){console.error(`Error loading "${t}" font with "${e}" weight:`,n)}}loadThemeStyles(){let e=`/2.0.0-canary.
|
|
4
|
+
url('https://ds-assets.cupra.com/fonts/${this.theme}/${n}.otf') format('opentype')`,{style:`normal`,weight:e,display:i??(r?`swap`:`optional`),...r&&{unicodeRange:r}});try{r||await o.load(),document.fonts.add(o),this.loadedFonts.add(a)}catch(n){console.error(`Error loading "${t}" font with "${e}" weight:`,n)}}loadThemeStyles(){let e=`/2.0.0-canary.242`;return this.loadUnusedStyles&&this.applyUnusedStyles(e),this.loadStyles?new Promise((t,n)=>{let r=`https://ds-assets.cupra.com${e}/styles/${this.theme}/theme.css`;if(document.head.querySelector(`link[href="${r}"]`))t();else{let i=`ui-kit-theme-${e}`,a=document.getElementById(i),o=document.createElement(`link`);o.id=i,o.rel=`stylesheet`,o.href=r,o.onload=()=>t(),o.onerror=()=>n(Error(`Failed to load theme CSS: ${r}`)),document.head.appendChild(o),a==null||a.remove()}}):Promise.resolve()}applyUnusedStyles(e){let t=`https://ds-assets.cupra.com${e}/styles/${this.theme}/unused-styles.css`;if(document.head.querySelector(`link[href="${t}"]`))return;let n=`ui-kit-unused-styles-${e}`,r=document.getElementById(n),i=document.createElement(`link`);i.id=n,i.rel=`preload`,i.as=`style`,i.href=t,i.onload=()=>{i.rel=`stylesheet`},document.head.appendChild(i),r==null||r.remove()}render(){return this.cssLoaded?r.html`<slot></slot>`:r.nothing}};s.default([a.property({type:Boolean,converter:l.booleanConverter,attribute:`load-fonts`})],d.prototype,`loadFonts`,void 0),s.default([a.property({type:Boolean,converter:l.booleanConverter,attribute:`load-styles`})],d.prototype,`loadStyles`,void 0),s.default([a.property({type:Boolean,converter:l.booleanConverter,attribute:`load-unused-styles`})],d.prototype,`loadUnusedStyles`,void 0),s.default([e.provide({context:t.themeContext}),a.property({type:String})],d.prototype,`theme`,void 0),s.default([o.state()],d.prototype,`cssLoaded`,void 0),s.default([o.state()],d.prototype,`loadedFonts`,void 0),d=s.default([c.customUiKitElement(`ds-theme-provider`)],d),Object.defineProperty(exports,"DsThemeProvider",{enumerable:!0,get:function(){return d}});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
require("../utils/version.cjs");function e(e){return function(t){var n,r,i;if(!(t!=null&&t.prototype))throw TypeError(`@customUiKitElement requires a class that extends HTMLElement.`);let a=e;(n=globalThis)!=null&&(n=n.customElements)!=null&&n.get(a)||(r=globalThis)==null||(r=r.customElements)==null||(i=r.define)==null||i.call(r,a,class extends t{connectedCallback(){var n;(n=t.prototype.connectedCallback)==null||n.call(this),this.setAttribute(`data-ui-kit-version`,`2.0.0-canary.
|
|
1
|
+
require("../utils/version.cjs");function e(e){return function(t){var n,r,i;if(!(t!=null&&t.prototype))throw TypeError(`@customUiKitElement requires a class that extends HTMLElement.`);let a=e;(n=globalThis)!=null&&(n=n.customElements)!=null&&n.get(a)||(r=globalThis)==null||(r=r.customElements)==null||(i=r.define)==null||i.call(r,a,class extends t{connectedCallback(){var n;(n=t.prototype.connectedCallback)==null||n.call(this),this.setAttribute(`data-ui-kit-version`,`2.0.0-canary.242`),this.setAttribute(`data-ui-kit-component-name`,e)}})}}exports.customUiKitElement=e;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require("../core/theme.constants.cjs"),t=require("./PubSub.cjs");var n=class{constructor(){this.icons={},this.handleChangeTheme=e=>{if(this.theme===e)return;this.theme=e;let t=Object.keys(this.icons);this.icons={},t.forEach(e=>this.fetchIcon(e))},this.fetchIcon=async(t,n={})=>{var r;let i=typeof sessionStorage<`u`?(r=sessionStorage)==null?void 0:r.getItem(e.THEME_STORAGE_KEY):null;!this.theme&&i&&(this.theme=i);let a=this.icons[t];if(a)return await a;let o=this.loadIcon(t,n).catch(e=>{throw delete this.icons[t],e});return this.icons[t]=o,o},this.loadIcon=(e,{cache:t=`force-cache`,...n})=>!this.theme||typeof fetch>`u`?Promise.resolve(`<svg class="ds-icon"></svg>`):fetch(`https://ds-assets.cupra.com/icons/${this.theme}/${e}.svg`,{cache:t,...n}).then(e=>e.text()).catch(t=>{if((t==null?void 0:t.name)===`AbortError`)throw t;return console.error(`Failed to fetch icon "${e}":`,t),``}),t.pubSub.subscribe(`theme`,this.handleChangeTheme)}},r=Symbol.for(`@cupra/ui-kit/icons-manager/2.0.0-canary.
|
|
1
|
+
const e=require("../core/theme.constants.cjs"),t=require("./PubSub.cjs");var n=class{constructor(){this.icons={},this.handleChangeTheme=e=>{if(this.theme===e)return;this.theme=e;let t=Object.keys(this.icons);this.icons={},t.forEach(e=>this.fetchIcon(e))},this.fetchIcon=async(t,n={})=>{var r;let i=typeof sessionStorage<`u`?(r=sessionStorage)==null?void 0:r.getItem(e.THEME_STORAGE_KEY):null;!this.theme&&i&&(this.theme=i);let a=this.icons[t];if(a)return await a;let o=this.loadIcon(t,n).catch(e=>{throw delete this.icons[t],e});return this.icons[t]=o,o},this.loadIcon=(e,{cache:t=`force-cache`,...n})=>!this.theme||typeof fetch>`u`?Promise.resolve(`<svg class="ds-icon"></svg>`):fetch(`https://ds-assets.cupra.com/icons/${this.theme}/${e}.svg`,{cache:t,...n}).then(e=>e.text()).catch(t=>{if((t==null?void 0:t.name)===`AbortError`)throw t;return console.error(`Failed to fetch icon "${e}":`,t),``}),t.pubSub.subscribe(`theme`,this.handleChangeTheme)}},r=Symbol.for(`@cupra/ui-kit/icons-manager/2.0.0-canary.242`),i=globalThis,a=i[r];a||(a=new n,Object.defineProperty(i,r,{value:a,writable:!1,configurable:!1,enumerable:!1}));var o=a;exports.iconsManager=o;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var e=class{constructor(){this.subscribers={},this.lastPublishedData={}}subscribe(e,t){return this.subscribers[e]||(this.subscribers[e]=[]),this.subscribers[e].push(t),this.lastPublishedData[e]}unsubscribe(e,t){this.subscribers[e]&&(this.subscribers[e]=this.subscribers[e].filter(e=>e!==t))}publish(e,t){this.lastPublishedData[e]=t,this.subscribers[e]&&this.subscribers[e].forEach(n=>{try{n(t)}catch(t){console.error(`Error in subscriber for event "${e}":`,t)}})}},t=Symbol.for(`@cupra/ui-kit/pubsub/2.0.0-canary.
|
|
1
|
+
var e=class{constructor(){this.subscribers={},this.lastPublishedData={}}subscribe(e,t){return this.subscribers[e]||(this.subscribers[e]=[]),this.subscribers[e].push(t),this.lastPublishedData[e]}unsubscribe(e,t){this.subscribers[e]&&(this.subscribers[e]=this.subscribers[e].filter(e=>e!==t))}publish(e,t){this.lastPublishedData[e]=t,this.subscribers[e]&&this.subscribers[e].forEach(n=>{try{n(t)}catch(t){console.error(`Error in subscriber for event "${e}":`,t)}})}},t=Symbol.for(`@cupra/ui-kit/pubsub/2.0.0-canary.242`),n=globalThis,r=n[t];r||(r=new e,Object.defineProperty(n,t,{value:r,writable:!1,configurable:!1,enumerable:!1}));var i=r;exports.PubSub=e,exports.pubSub=i;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=`2.0.0-canary.
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=`2.0.0-canary.242`,t=`--v${e.replaceAll(`.`,`-`)}`;exports.VERSION=e,exports.VERSION_TAG_SUFFIX=t;
|
|
@@ -10,11 +10,9 @@ import "../ds-icon/ds-icon.js";
|
|
|
10
10
|
import { uiKitHtml as o } from "../../utils/uiKitHtml.js";
|
|
11
11
|
import { classMap as s } from "../../node_modules/.pnpm/lit-html@3.3.3/node_modules/lit-html/directives/class-map.js";
|
|
12
12
|
import "../../node_modules/.pnpm/lit@3.3.3/node_modules/lit/directives/class-map.js";
|
|
13
|
-
import {
|
|
14
|
-
import "../../node_modules/.pnpm/lit@3.3.3/node_modules/lit/directives/if-defined.js";
|
|
15
|
-
import { commonStyles as l } from "./styles/common.styles.js";
|
|
13
|
+
import { commonStyles as c } from "./styles/common.styles.js";
|
|
16
14
|
//#region src/components/ds-media-control/ds-media-control.ts
|
|
17
|
-
var
|
|
15
|
+
var l = class extends t {
|
|
18
16
|
constructor(...e) {
|
|
19
17
|
super(...e), this._state = void 0, this._stateValue = "pause", this.size = "medium", this.progress = 0, this.handleToggle = (e) => {
|
|
20
18
|
e.stopPropagation();
|
|
@@ -46,33 +44,22 @@ var u = class extends t {
|
|
|
46
44
|
[this.state]: !!this.state
|
|
47
45
|
};
|
|
48
46
|
}
|
|
49
|
-
get iconSize() {
|
|
50
|
-
switch (this.size) {
|
|
51
|
-
case "xlarge": return 40;
|
|
52
|
-
case "large": return 24;
|
|
53
|
-
case "small": return 16;
|
|
54
|
-
default: return 20;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
47
|
get iconName() {
|
|
58
48
|
return this.state === "play" ? "pause" : "play";
|
|
59
49
|
}
|
|
60
50
|
get iconTemplate() {
|
|
61
|
-
return o`<ds-icon class="icon" icon-name=${this.iconName}
|
|
51
|
+
return o`<ds-icon class="icon" icon-name=${this.iconName}></ds-icon>`;
|
|
62
52
|
}
|
|
63
53
|
get progressTemplate() {
|
|
64
|
-
let t =
|
|
54
|
+
let t = (100 - this.normalizedProgress).toFixed(3);
|
|
65
55
|
return e`
|
|
66
|
-
<svg part="progress" class="progress"
|
|
56
|
+
<svg part="progress" class="progress" aria-hidden="true" focusable="false">
|
|
67
57
|
<circle
|
|
68
58
|
class="indicator"
|
|
69
|
-
cx="0"
|
|
70
|
-
cy="0"
|
|
71
|
-
r="${r}"
|
|
72
59
|
fill="none"
|
|
73
|
-
|
|
74
|
-
stroke-
|
|
75
|
-
|
|
60
|
+
pathLength="100"
|
|
61
|
+
stroke-dasharray="100"
|
|
62
|
+
stroke-dashoffset="${t}"
|
|
76
63
|
></circle>
|
|
77
64
|
</svg>
|
|
78
65
|
`;
|
|
@@ -94,20 +81,20 @@ var u = class extends t {
|
|
|
94
81
|
</div>
|
|
95
82
|
`;
|
|
96
83
|
}
|
|
97
|
-
},
|
|
84
|
+
}, u = (l.styles = [c], l);
|
|
98
85
|
i([n({
|
|
99
86
|
type: String,
|
|
100
87
|
attribute: "data-aria-label"
|
|
101
|
-
})],
|
|
88
|
+
})], u.prototype, "dataAriaLabel", void 0), i([n({
|
|
102
89
|
type: String,
|
|
103
90
|
attribute: "state",
|
|
104
91
|
reflect: !0
|
|
105
|
-
})],
|
|
92
|
+
})], u.prototype, "_state", void 0), i([r()], u.prototype, "_stateValue", void 0), i([n({
|
|
106
93
|
type: String,
|
|
107
94
|
reflect: !0
|
|
108
|
-
})],
|
|
95
|
+
})], u.prototype, "size", void 0), i([n({
|
|
109
96
|
type: Number,
|
|
110
97
|
reflect: !0
|
|
111
|
-
})],
|
|
98
|
+
})], u.prototype, "progress", void 0), u = i([a("ds-media-control")], u);
|
|
112
99
|
//#endregion
|
|
113
|
-
export {
|
|
100
|
+
export { u as DsMediaControl };
|
|
@@ -17,21 +17,26 @@ var t = e`
|
|
|
17
17
|
outline: none;
|
|
18
18
|
}
|
|
19
19
|
|
|
20
|
+
.container {
|
|
21
|
+
width: var(--media-control-width);
|
|
22
|
+
aspect-ratio: 1;
|
|
23
|
+
--media-control-width: var(--ui-kit-media-control-width, var(--ui-kit-private-media-control-width, 40px));
|
|
24
|
+
--media-control-gap: max(1px, calc(var(--media-control-width) * 2 / 128));
|
|
25
|
+
--media-control-stroke: max(1px, calc(var(--media-control-width) * 3.75 / 128));
|
|
26
|
+
--ui-kit-icon-width: calc(var(--media-control-width) * 0.5);
|
|
27
|
+
--ui-kit-icon-height: var(--ui-kit-icon-width);
|
|
28
|
+
}
|
|
20
29
|
.container.small {
|
|
21
|
-
width: 32px;
|
|
22
|
-
height: 32px;
|
|
30
|
+
--ui-kit-private-media-control-width: 32px;
|
|
23
31
|
}
|
|
24
32
|
.container.medium {
|
|
25
|
-
width: 40px;
|
|
26
|
-
height: 40px;
|
|
33
|
+
--ui-kit-private-media-control-width: 40px;
|
|
27
34
|
}
|
|
28
35
|
.container.large {
|
|
29
|
-
width: 48px;
|
|
30
|
-
height: 48px;
|
|
36
|
+
--ui-kit-private-media-control-width: 48px;
|
|
31
37
|
}
|
|
32
38
|
.container.xlarge {
|
|
33
|
-
width: 72px;
|
|
34
|
-
height: 72px;
|
|
39
|
+
--ui-kit-private-media-control-width: 72px;
|
|
35
40
|
}
|
|
36
41
|
|
|
37
42
|
.progress {
|
|
@@ -40,12 +45,15 @@ var t = e`
|
|
|
40
45
|
width: 100%;
|
|
41
46
|
height: 100%;
|
|
42
47
|
pointer-events: none;
|
|
48
|
+
transform: rotate(-90deg);
|
|
43
49
|
}
|
|
44
50
|
|
|
45
51
|
.progress .indicator {
|
|
46
52
|
stroke: var(--ds-color-icon-default-subtlest, #d3d6d9);
|
|
47
|
-
stroke-width:
|
|
48
|
-
|
|
53
|
+
stroke-width: var(--media-control-stroke);
|
|
54
|
+
cx: 50%;
|
|
55
|
+
cy: 50%;
|
|
56
|
+
r: calc(50% - var(--media-control-gap) - var(--media-control-stroke) / 2);
|
|
49
57
|
}
|
|
50
58
|
|
|
51
59
|
[part='container']:focus-visible {
|
|
@@ -72,7 +72,7 @@ var f = class extends a {
|
|
|
72
72
|
}
|
|
73
73
|
}
|
|
74
74
|
loadThemeStyles() {
|
|
75
|
-
let e = "/2.0.0-canary.
|
|
75
|
+
let e = "/2.0.0-canary.242";
|
|
76
76
|
return this.loadUnusedStyles && this.applyUnusedStyles(e), this.loadStyles ? new Promise((t, n) => {
|
|
77
77
|
let r = `https://ds-assets.cupra.com${e}/styles/${this.theme}/theme.css`;
|
|
78
78
|
if (document.head.querySelector(`link[href="${r}"]`)) t();
|
|
@@ -8,7 +8,7 @@ function e(e) {
|
|
|
8
8
|
(n = globalThis) != null && (n = n.customElements) != null && n.get(a) || (r = globalThis) == null || (r = r.customElements) == null || (i = r.define) == null || i.call(r, a, class extends t {
|
|
9
9
|
connectedCallback() {
|
|
10
10
|
var n;
|
|
11
|
-
(n = t.prototype.connectedCallback) == null || n.call(this), this.setAttribute("data-ui-kit-version", "2.0.0-canary.
|
|
11
|
+
(n = t.prototype.connectedCallback) == null || n.call(this), this.setAttribute("data-ui-kit-version", "2.0.0-canary.242"), this.setAttribute("data-ui-kit-component-name", e);
|
|
12
12
|
}
|
|
13
13
|
});
|
|
14
14
|
};
|
|
@@ -26,7 +26,7 @@ var n = class {
|
|
|
26
26
|
return console.error(`Failed to fetch icon "${e}":`, t), "";
|
|
27
27
|
}), t.subscribe("theme", this.handleChangeTheme);
|
|
28
28
|
}
|
|
29
|
-
}, r = Symbol.for("@cupra/ui-kit/icons-manager/2.0.0-canary.
|
|
29
|
+
}, r = Symbol.for("@cupra/ui-kit/icons-manager/2.0.0-canary.242"), i = globalThis, a = i[r];
|
|
30
30
|
a || (a = new n(), Object.defineProperty(i, r, {
|
|
31
31
|
value: a,
|
|
32
32
|
writable: !1,
|
package/dist/esm/utils/PubSub.js
CHANGED
|
@@ -18,7 +18,7 @@ var e = class {
|
|
|
18
18
|
}
|
|
19
19
|
});
|
|
20
20
|
}
|
|
21
|
-
}, t = Symbol.for("@cupra/ui-kit/pubsub/2.0.0-canary.
|
|
21
|
+
}, t = Symbol.for("@cupra/ui-kit/pubsub/2.0.0-canary.242"), n = globalThis, r = n[t];
|
|
22
22
|
r || (r = new e(), Object.defineProperty(n, t, {
|
|
23
23
|
value: r,
|
|
24
24
|
writable: !1,
|
|
@@ -12,7 +12,6 @@ export declare class DsMediaControl extends LitElement {
|
|
|
12
12
|
progress: DsMediaControlAttrs['progress'];
|
|
13
13
|
private get normalizedProgress();
|
|
14
14
|
protected get classes(): Record<string, boolean>;
|
|
15
|
-
private get iconSize();
|
|
16
15
|
private get iconName();
|
|
17
16
|
private get iconTemplate();
|
|
18
17
|
private handleToggle;
|
|
@@ -1,14 +1,11 @@
|
|
|
1
|
-
const e=require("../../node_modules/.pnpm/lit-html@3.3.3/node_modules/lit-html/lit-html.cjs"),t=require("../../node_modules/.pnpm/lit-element@4.2.2/node_modules/lit-element/lit-element.cjs");require("../../node_modules/.pnpm/lit@3.3.3/node_modules/lit/index.cjs");const n=require("../../node_modules/.pnpm/@lit_reactive-element@2.1.2/node_modules/@lit/reactive-element/decorators/property.cjs"),r=require("../../node_modules/.pnpm/@lit_reactive-element@2.1.2/node_modules/@lit/reactive-element/decorators/state.cjs");require("../../node_modules/.pnpm/lit@3.3.3/node_modules/lit/decorators.cjs");const i=require("../../_virtual/_@oxc-project_runtime@0.152.0/helpers/esm/decorate.cjs"),a=require("../../decorators/customUiKitElement.cjs");require("../ds-icon/ds-icon.cjs");const o=require("../../utils/uiKitHtml.cjs"),s=require("../../node_modules/.pnpm/lit-html@3.3.3/node_modules/lit-html/directives/class-map.cjs");require("../../node_modules/.pnpm/lit@3.3.3/node_modules/lit/directives/class-map.cjs");const c=require("
|
|
2
|
-
<svg part="progress" class="progress"
|
|
1
|
+
const e=require("../../node_modules/.pnpm/lit-html@3.3.3/node_modules/lit-html/lit-html.cjs"),t=require("../../node_modules/.pnpm/lit-element@4.2.2/node_modules/lit-element/lit-element.cjs");require("../../node_modules/.pnpm/lit@3.3.3/node_modules/lit/index.cjs");const n=require("../../node_modules/.pnpm/@lit_reactive-element@2.1.2/node_modules/@lit/reactive-element/decorators/property.cjs"),r=require("../../node_modules/.pnpm/@lit_reactive-element@2.1.2/node_modules/@lit/reactive-element/decorators/state.cjs");require("../../node_modules/.pnpm/lit@3.3.3/node_modules/lit/decorators.cjs");const i=require("../../_virtual/_@oxc-project_runtime@0.152.0/helpers/esm/decorate.cjs"),a=require("../../decorators/customUiKitElement.cjs");require("../ds-icon/ds-icon.cjs");const o=require("../../utils/uiKitHtml.cjs"),s=require("../../node_modules/.pnpm/lit-html@3.3.3/node_modules/lit-html/directives/class-map.cjs");require("../../node_modules/.pnpm/lit@3.3.3/node_modules/lit/directives/class-map.cjs");const c=require("./styles/common.styles.cjs");var l=class extends t.LitElement{constructor(...e){super(...e),this._state=void 0,this._stateValue=`pause`,this.size=`medium`,this.progress=0,this.handleToggle=e=>{e.stopPropagation();let t=this.state===`play`?`pause`:`play`;this._stateValue=t,this._state=void 0;let n=t===`play`?`ds-media-control:play`:`ds-media-control:pause`;this.dispatchEvent(new CustomEvent(n,{bubbles:!0,composed:!0}))},this.onKeyDown=e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),this.handleToggle(e))}}get state(){return this._state??this._stateValue}set state(e){this._state=e}get normalizedProgress(){let e=Number(this.progress??0);return Number.isNaN(e)?0:Math.min(100,Math.max(0,e))}get classes(){return{container:!0,[this.size]:!!this.size,[this.state]:!!this.state}}get iconName(){return this.state===`play`?`pause`:`play`}get iconTemplate(){return o.uiKitHtml`<ds-icon class="icon" icon-name=${this.iconName}></ds-icon>`}get progressTemplate(){let t=(100-this.normalizedProgress).toFixed(3);return e.html`
|
|
2
|
+
<svg part="progress" class="progress" aria-hidden="true" focusable="false">
|
|
3
3
|
<circle
|
|
4
4
|
class="indicator"
|
|
5
|
-
cx="0"
|
|
6
|
-
cy="0"
|
|
7
|
-
r="${r}"
|
|
8
5
|
fill="none"
|
|
9
|
-
|
|
10
|
-
stroke-
|
|
11
|
-
|
|
6
|
+
pathLength="100"
|
|
7
|
+
stroke-dasharray="100"
|
|
8
|
+
stroke-dashoffset="${t}"
|
|
12
9
|
></circle>
|
|
13
10
|
</svg>
|
|
14
11
|
`}render(){let t=this.state===`play`?`pause`:`play`;return e.html`
|
|
@@ -24,4 +21,4 @@ const e=require("../../node_modules/.pnpm/lit-html@3.3.3/node_modules/lit-html/l
|
|
|
24
21
|
${this.progressTemplate}
|
|
25
22
|
${this.iconTemplate}
|
|
26
23
|
</div>
|
|
27
|
-
`}},
|
|
24
|
+
`}},u=(l.styles=[c.commonStyles],l);i.default([n.property({type:String,attribute:`data-aria-label`})],u.prototype,`dataAriaLabel`,void 0),i.default([n.property({type:String,attribute:`state`,reflect:!0})],u.prototype,`_state`,void 0),i.default([r.state()],u.prototype,`_stateValue`,void 0),i.default([n.property({type:String,reflect:!0})],u.prototype,`size`,void 0),i.default([n.property({type:Number,reflect:!0})],u.prototype,`progress`,void 0),u=i.default([a.customUiKitElement(`ds-media-control`)],u),Object.defineProperty(exports,"DsMediaControl",{enumerable:!0,get:function(){return u}});
|
|
@@ -14,21 +14,26 @@ const e=require("../../../node_modules/.pnpm/@lit_reactive-element@2.1.2/node_mo
|
|
|
14
14
|
outline: none;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
+
.container {
|
|
18
|
+
width: var(--media-control-width);
|
|
19
|
+
aspect-ratio: 1;
|
|
20
|
+
--media-control-width: var(--ui-kit-media-control-width, var(--ui-kit-private-media-control-width, 40px));
|
|
21
|
+
--media-control-gap: max(1px, calc(var(--media-control-width) * 2 / 128));
|
|
22
|
+
--media-control-stroke: max(1px, calc(var(--media-control-width) * 3.75 / 128));
|
|
23
|
+
--ui-kit-icon-width: calc(var(--media-control-width) * 0.5);
|
|
24
|
+
--ui-kit-icon-height: var(--ui-kit-icon-width);
|
|
25
|
+
}
|
|
17
26
|
.container.small {
|
|
18
|
-
width: 32px;
|
|
19
|
-
height: 32px;
|
|
27
|
+
--ui-kit-private-media-control-width: 32px;
|
|
20
28
|
}
|
|
21
29
|
.container.medium {
|
|
22
|
-
width: 40px;
|
|
23
|
-
height: 40px;
|
|
30
|
+
--ui-kit-private-media-control-width: 40px;
|
|
24
31
|
}
|
|
25
32
|
.container.large {
|
|
26
|
-
width: 48px;
|
|
27
|
-
height: 48px;
|
|
33
|
+
--ui-kit-private-media-control-width: 48px;
|
|
28
34
|
}
|
|
29
35
|
.container.xlarge {
|
|
30
|
-
width: 72px;
|
|
31
|
-
height: 72px;
|
|
36
|
+
--ui-kit-private-media-control-width: 72px;
|
|
32
37
|
}
|
|
33
38
|
|
|
34
39
|
.progress {
|
|
@@ -37,12 +42,15 @@ const e=require("../../../node_modules/.pnpm/@lit_reactive-element@2.1.2/node_mo
|
|
|
37
42
|
width: 100%;
|
|
38
43
|
height: 100%;
|
|
39
44
|
pointer-events: none;
|
|
45
|
+
transform: rotate(-90deg);
|
|
40
46
|
}
|
|
41
47
|
|
|
42
48
|
.progress .indicator {
|
|
43
49
|
stroke: var(--ds-color-icon-default-subtlest, #d3d6d9);
|
|
44
|
-
stroke-width:
|
|
45
|
-
|
|
50
|
+
stroke-width: var(--media-control-stroke);
|
|
51
|
+
cx: 50%;
|
|
52
|
+
cy: 50%;
|
|
53
|
+
r: calc(50% - var(--media-control-gap) - var(--media-control-stroke) / 2);
|
|
46
54
|
}
|
|
47
55
|
|
|
48
56
|
[part='container']:focus-visible {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
const e=require("../../node_modules/.pnpm/@lit_context@1.1.6/node_modules/@lit/context/lib/decorators/provide.cjs"),t=require("./themeContext.cjs");require("../../core/theme.constants.cjs");const n=require("../../utils/PubSub.cjs"),r=require("../../node_modules/.pnpm/lit-html@3.3.3/node_modules/lit-html/lit-html.cjs"),i=require("../../node_modules/.pnpm/lit-element@4.2.2/node_modules/lit-element/lit-element.cjs");require("../../node_modules/.pnpm/lit@3.3.3/node_modules/lit/index.cjs");const a=require("../../node_modules/.pnpm/@lit_reactive-element@2.1.2/node_modules/@lit/reactive-element/decorators/property.cjs"),o=require("../../node_modules/.pnpm/@lit_reactive-element@2.1.2/node_modules/@lit/reactive-element/decorators/state.cjs");require("../../node_modules/.pnpm/lit@3.3.3/node_modules/lit/decorators.cjs");const s=require("../../_virtual/_@oxc-project_runtime@0.152.0/helpers/esm/decorate.cjs"),c=require("../../decorators/customUiKitElement.cjs"),l=require("../../utils/booleanConverter.cjs"),u=require("../../styles/source/shared/fonts-config.cjs");var d=class extends i.LitElement{constructor(...e){super(...e),this.loadFonts=!0,this.loadStyles=!0,this.loadUnusedStyles=!0,this.cssLoaded=!1,this.loadedFonts=new Set}connectedCallback(){super.connectedCallback(),this.publishDocumentAttributes(),this.observeDocumentAttributes()}disconnectedCallback(){var e;super.disconnectedCallback(),(e=this.documentAttributesObserver)==null||e.disconnect(),this.documentAttributesObserver=void 0}observeDocumentAttributes(){typeof MutationObserver<`u`&&typeof document<`u`&&(this.documentAttributesObserver=new MutationObserver(()=>this.publishDocumentAttributes()),this.documentAttributesObserver.observe(document.documentElement,{attributes:!0,attributeFilter:[`dir`,`lang`]}))}publishDocumentAttributes(){if(typeof document>`u`)return;let{documentElement:e}=document;n.pubSub.publish(`direction`,e.getAttribute(`dir`)===`rtl`?`rtl`:`ltr`),n.pubSub.publish(`lang`,e.getAttribute(`lang`))}updated(e){if(super.updated(e),e.has(`theme`)){var t,r;n.pubSub.publish(`theme`,this.theme),(t=sessionStorage)==null||t.setItem(`@cupra/ui-kit/theme`,this.theme),typeof FontFace<`u`&&(r=document)!=null&&r.fonts&&this.loadThemeFonts(),this.loadThemeStyles().then(()=>{this.cssLoaded=!0,this.dispatchEvent(new CustomEvent(`ui-kit:ready`,{bubbles:!0,composed:!0}))})}}loadThemeFonts(){var e;(e=u.fontsConfig[this.theme])==null||e.fonts.forEach(e=>{this.loadThemeFont(e)})}async loadThemeFont({weight:e,name:t,file:n,unicodeRange:r,display:i}){if(!this.loadFonts)return Promise.resolve();let a=r?`${t}-${e}-${r}`:`${t}-${e}`;if(this.loadedFonts.has(a))return;let o=new FontFace(t,`url('https://ds-assets.cupra.com/fonts/${this.theme}/${n}.woff2') format('woff2'),
|
|
2
2
|
url('https://ds-assets.cupra.com/fonts/${this.theme}/${n}.woff') format('woff'),
|
|
3
3
|
url('https://ds-assets.cupra.com/fonts/${this.theme}/${n}.ttf') format('truetype'),
|
|
4
|
-
url('https://ds-assets.cupra.com/fonts/${this.theme}/${n}.otf') format('opentype')`,{style:`normal`,weight:e,display:i??(r?`swap`:`optional`),...r&&{unicodeRange:r}});try{r||await o.load(),document.fonts.add(o),this.loadedFonts.add(a)}catch(n){console.error(`Error loading "${t}" font with "${e}" weight:`,n)}}loadThemeStyles(){let e=`/2.0.0-canary.
|
|
4
|
+
url('https://ds-assets.cupra.com/fonts/${this.theme}/${n}.otf') format('opentype')`,{style:`normal`,weight:e,display:i??(r?`swap`:`optional`),...r&&{unicodeRange:r}});try{r||await o.load(),document.fonts.add(o),this.loadedFonts.add(a)}catch(n){console.error(`Error loading "${t}" font with "${e}" weight:`,n)}}loadThemeStyles(){let e=`/2.0.0-canary.242`;return this.loadUnusedStyles&&this.applyUnusedStyles(e),this.loadStyles?new Promise((t,n)=>{let r=`https://ds-assets.cupra.com${e}/styles/${this.theme}/theme.css`;if(document.head.querySelector(`link[href="${r}"]`))t();else{let i=`ui-kit-theme-${e}`,a=document.getElementById(i),o=document.createElement(`link`);o.id=i,o.rel=`stylesheet`,o.href=r,o.onload=()=>t(),o.onerror=()=>n(Error(`Failed to load theme CSS: ${r}`)),document.head.appendChild(o),a==null||a.remove()}}):Promise.resolve()}applyUnusedStyles(e){let t=`https://ds-assets.cupra.com${e}/styles/${this.theme}/unused-styles.css`;if(document.head.querySelector(`link[href="${t}"]`))return;let n=`ui-kit-unused-styles-${e}`,r=document.getElementById(n),i=document.createElement(`link`);i.id=n,i.rel=`preload`,i.as=`style`,i.href=t,i.onload=()=>{i.rel=`stylesheet`},document.head.appendChild(i),r==null||r.remove()}render(){return this.cssLoaded?r.html`<slot></slot>`:r.nothing}};s.default([a.property({type:Boolean,converter:l.booleanConverter,attribute:`load-fonts`})],d.prototype,`loadFonts`,void 0),s.default([a.property({type:Boolean,converter:l.booleanConverter,attribute:`load-styles`})],d.prototype,`loadStyles`,void 0),s.default([a.property({type:Boolean,converter:l.booleanConverter,attribute:`load-unused-styles`})],d.prototype,`loadUnusedStyles`,void 0),s.default([e.provide({context:t.themeContext}),a.property({type:String})],d.prototype,`theme`,void 0),s.default([o.state()],d.prototype,`cssLoaded`,void 0),s.default([o.state()],d.prototype,`loadedFonts`,void 0),d=s.default([c.customUiKitElement(`ds-theme-provider`)],d),Object.defineProperty(exports,"DsThemeProvider",{enumerable:!0,get:function(){return d}});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require("../utils/version.cjs");function t(t){return function(n){var r,i,a;if(!(n!=null&&n.prototype))throw TypeError(`@customUiKitElement requires a class that extends HTMLElement.`);let o=`${t}${e.VERSION_TAG_SUFFIX}`;(r=globalThis)!=null&&(r=r.customElements)!=null&&r.get(o)||(i=globalThis)==null||(i=i.customElements)==null||(a=i.define)==null||a.call(i,o,class extends n{connectedCallback(){var e;(e=n.prototype.connectedCallback)==null||e.call(this),this.setAttribute(`data-ui-kit-version`,`2.0.0-canary.
|
|
1
|
+
const e=require("../utils/version.cjs");function t(t){return function(n){var r,i,a;if(!(n!=null&&n.prototype))throw TypeError(`@customUiKitElement requires a class that extends HTMLElement.`);let o=`${t}${e.VERSION_TAG_SUFFIX}`;(r=globalThis)!=null&&(r=r.customElements)!=null&&r.get(o)||(i=globalThis)==null||(i=i.customElements)==null||(a=i.define)==null||a.call(i,o,class extends n{connectedCallback(){var e;(e=n.prototype.connectedCallback)==null||e.call(this),this.setAttribute(`data-ui-kit-version`,`2.0.0-canary.242`),this.setAttribute(`data-ui-kit-component-name`,t)}})}}exports.customUiKitElement=t;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require("../core/theme.constants.cjs"),t=require("./PubSub.cjs");var n=class{constructor(){this.icons={},this.handleChangeTheme=e=>{if(this.theme===e)return;this.theme=e;let t=Object.keys(this.icons);this.icons={},t.forEach(e=>this.fetchIcon(e))},this.fetchIcon=async(t,n={})=>{var r;let i=typeof sessionStorage<`u`?(r=sessionStorage)==null?void 0:r.getItem(e.THEME_STORAGE_KEY):null;!this.theme&&i&&(this.theme=i);let a=this.icons[t];if(a)return await a;let o=this.loadIcon(t,n).catch(e=>{throw delete this.icons[t],e});return this.icons[t]=o,o},this.loadIcon=(e,{cache:t=`force-cache`,...n})=>!this.theme||typeof fetch>`u`?Promise.resolve(`<svg class="ds-icon"></svg>`):fetch(`https://ds-assets.cupra.com/icons/${this.theme}/${e}.svg`,{cache:t,...n}).then(e=>e.text()).catch(t=>{if((t==null?void 0:t.name)===`AbortError`)throw t;return console.error(`Failed to fetch icon "${e}":`,t),``}),t.pubSub.subscribe(`theme`,this.handleChangeTheme)}},r=Symbol.for(`@cupra/ui-kit/icons-manager/2.0.0-canary.
|
|
1
|
+
const e=require("../core/theme.constants.cjs"),t=require("./PubSub.cjs");var n=class{constructor(){this.icons={},this.handleChangeTheme=e=>{if(this.theme===e)return;this.theme=e;let t=Object.keys(this.icons);this.icons={},t.forEach(e=>this.fetchIcon(e))},this.fetchIcon=async(t,n={})=>{var r;let i=typeof sessionStorage<`u`?(r=sessionStorage)==null?void 0:r.getItem(e.THEME_STORAGE_KEY):null;!this.theme&&i&&(this.theme=i);let a=this.icons[t];if(a)return await a;let o=this.loadIcon(t,n).catch(e=>{throw delete this.icons[t],e});return this.icons[t]=o,o},this.loadIcon=(e,{cache:t=`force-cache`,...n})=>!this.theme||typeof fetch>`u`?Promise.resolve(`<svg class="ds-icon"></svg>`):fetch(`https://ds-assets.cupra.com/icons/${this.theme}/${e}.svg`,{cache:t,...n}).then(e=>e.text()).catch(t=>{if((t==null?void 0:t.name)===`AbortError`)throw t;return console.error(`Failed to fetch icon "${e}":`,t),``}),t.pubSub.subscribe(`theme`,this.handleChangeTheme)}},r=Symbol.for(`@cupra/ui-kit/icons-manager/2.0.0-canary.242`),i=globalThis,a=i[r];a||(a=new n,Object.defineProperty(i,r,{value:a,writable:!1,configurable:!1,enumerable:!1}));var o=a;exports.iconsManager=o;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var e=class{constructor(){this.subscribers={},this.lastPublishedData={}}subscribe(e,t){return this.subscribers[e]||(this.subscribers[e]=[]),this.subscribers[e].push(t),this.lastPublishedData[e]}unsubscribe(e,t){this.subscribers[e]&&(this.subscribers[e]=this.subscribers[e].filter(e=>e!==t))}publish(e,t){this.lastPublishedData[e]=t,this.subscribers[e]&&this.subscribers[e].forEach(n=>{try{n(t)}catch(t){console.error(`Error in subscriber for event "${e}":`,t)}})}},t=Symbol.for(`@cupra/ui-kit/pubsub/2.0.0-canary.
|
|
1
|
+
var e=class{constructor(){this.subscribers={},this.lastPublishedData={}}subscribe(e,t){return this.subscribers[e]||(this.subscribers[e]=[]),this.subscribers[e].push(t),this.lastPublishedData[e]}unsubscribe(e,t){this.subscribers[e]&&(this.subscribers[e]=this.subscribers[e].filter(e=>e!==t))}publish(e,t){this.lastPublishedData[e]=t,this.subscribers[e]&&this.subscribers[e].forEach(n=>{try{n(t)}catch(t){console.error(`Error in subscriber for event "${e}":`,t)}})}},t=Symbol.for(`@cupra/ui-kit/pubsub/2.0.0-canary.242`),n=globalThis,r=n[t];r||(r=new e,Object.defineProperty(n,t,{value:r,writable:!1,configurable:!1,enumerable:!1}));var i=r;exports.PubSub=e,exports.pubSub=i;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=`2.0.0-canary.
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=`2.0.0-canary.242`,t=`--v${e.replaceAll(`.`,`-`)}`;exports.VERSION=e,exports.VERSION_TAG_SUFFIX=t;
|
|
@@ -10,11 +10,9 @@ import "../ds-icon/ds-icon.js";
|
|
|
10
10
|
import { uiKitHtml as o } from "../../utils/uiKitHtml.js";
|
|
11
11
|
import { classMap as s } from "../../node_modules/.pnpm/lit-html@3.3.3/node_modules/lit-html/directives/class-map.js";
|
|
12
12
|
import "../../node_modules/.pnpm/lit@3.3.3/node_modules/lit/directives/class-map.js";
|
|
13
|
-
import {
|
|
14
|
-
import "../../node_modules/.pnpm/lit@3.3.3/node_modules/lit/directives/if-defined.js";
|
|
15
|
-
import { commonStyles as l } from "./styles/common.styles.js";
|
|
13
|
+
import { commonStyles as c } from "./styles/common.styles.js";
|
|
16
14
|
//#region src/components/ds-media-control/ds-media-control.ts
|
|
17
|
-
var
|
|
15
|
+
var l = class extends t {
|
|
18
16
|
constructor(...e) {
|
|
19
17
|
super(...e), this._state = void 0, this._stateValue = "pause", this.size = "medium", this.progress = 0, this.handleToggle = (e) => {
|
|
20
18
|
e.stopPropagation();
|
|
@@ -46,33 +44,22 @@ var u = class extends t {
|
|
|
46
44
|
[this.state]: !!this.state
|
|
47
45
|
};
|
|
48
46
|
}
|
|
49
|
-
get iconSize() {
|
|
50
|
-
switch (this.size) {
|
|
51
|
-
case "xlarge": return 40;
|
|
52
|
-
case "large": return 24;
|
|
53
|
-
case "small": return 16;
|
|
54
|
-
default: return 20;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
47
|
get iconName() {
|
|
58
48
|
return this.state === "play" ? "pause" : "play";
|
|
59
49
|
}
|
|
60
50
|
get iconTemplate() {
|
|
61
|
-
return o`<ds-icon class="icon" icon-name=${this.iconName}
|
|
51
|
+
return o`<ds-icon class="icon" icon-name=${this.iconName}></ds-icon>`;
|
|
62
52
|
}
|
|
63
53
|
get progressTemplate() {
|
|
64
|
-
let t =
|
|
54
|
+
let t = (100 - this.normalizedProgress).toFixed(3);
|
|
65
55
|
return e`
|
|
66
|
-
<svg part="progress" class="progress"
|
|
56
|
+
<svg part="progress" class="progress" aria-hidden="true" focusable="false">
|
|
67
57
|
<circle
|
|
68
58
|
class="indicator"
|
|
69
|
-
cx="0"
|
|
70
|
-
cy="0"
|
|
71
|
-
r="${r}"
|
|
72
59
|
fill="none"
|
|
73
|
-
|
|
74
|
-
stroke-
|
|
75
|
-
|
|
60
|
+
pathLength="100"
|
|
61
|
+
stroke-dasharray="100"
|
|
62
|
+
stroke-dashoffset="${t}"
|
|
76
63
|
></circle>
|
|
77
64
|
</svg>
|
|
78
65
|
`;
|
|
@@ -94,20 +81,20 @@ var u = class extends t {
|
|
|
94
81
|
</div>
|
|
95
82
|
`;
|
|
96
83
|
}
|
|
97
|
-
},
|
|
84
|
+
}, u = (l.styles = [c], l);
|
|
98
85
|
i([n({
|
|
99
86
|
type: String,
|
|
100
87
|
attribute: "data-aria-label"
|
|
101
|
-
})],
|
|
88
|
+
})], u.prototype, "dataAriaLabel", void 0), i([n({
|
|
102
89
|
type: String,
|
|
103
90
|
attribute: "state",
|
|
104
91
|
reflect: !0
|
|
105
|
-
})],
|
|
92
|
+
})], u.prototype, "_state", void 0), i([r()], u.prototype, "_stateValue", void 0), i([n({
|
|
106
93
|
type: String,
|
|
107
94
|
reflect: !0
|
|
108
|
-
})],
|
|
95
|
+
})], u.prototype, "size", void 0), i([n({
|
|
109
96
|
type: Number,
|
|
110
97
|
reflect: !0
|
|
111
|
-
})],
|
|
98
|
+
})], u.prototype, "progress", void 0), u = i([a("ds-media-control")], u);
|
|
112
99
|
//#endregion
|
|
113
|
-
export {
|
|
100
|
+
export { u as DsMediaControl };
|
|
@@ -17,21 +17,26 @@ var t = e`
|
|
|
17
17
|
outline: none;
|
|
18
18
|
}
|
|
19
19
|
|
|
20
|
+
.container {
|
|
21
|
+
width: var(--media-control-width);
|
|
22
|
+
aspect-ratio: 1;
|
|
23
|
+
--media-control-width: var(--ui-kit-media-control-width, var(--ui-kit-private-media-control-width, 40px));
|
|
24
|
+
--media-control-gap: max(1px, calc(var(--media-control-width) * 2 / 128));
|
|
25
|
+
--media-control-stroke: max(1px, calc(var(--media-control-width) * 3.75 / 128));
|
|
26
|
+
--ui-kit-icon-width: calc(var(--media-control-width) * 0.5);
|
|
27
|
+
--ui-kit-icon-height: var(--ui-kit-icon-width);
|
|
28
|
+
}
|
|
20
29
|
.container.small {
|
|
21
|
-
width: 32px;
|
|
22
|
-
height: 32px;
|
|
30
|
+
--ui-kit-private-media-control-width: 32px;
|
|
23
31
|
}
|
|
24
32
|
.container.medium {
|
|
25
|
-
width: 40px;
|
|
26
|
-
height: 40px;
|
|
33
|
+
--ui-kit-private-media-control-width: 40px;
|
|
27
34
|
}
|
|
28
35
|
.container.large {
|
|
29
|
-
width: 48px;
|
|
30
|
-
height: 48px;
|
|
36
|
+
--ui-kit-private-media-control-width: 48px;
|
|
31
37
|
}
|
|
32
38
|
.container.xlarge {
|
|
33
|
-
width: 72px;
|
|
34
|
-
height: 72px;
|
|
39
|
+
--ui-kit-private-media-control-width: 72px;
|
|
35
40
|
}
|
|
36
41
|
|
|
37
42
|
.progress {
|
|
@@ -40,12 +45,15 @@ var t = e`
|
|
|
40
45
|
width: 100%;
|
|
41
46
|
height: 100%;
|
|
42
47
|
pointer-events: none;
|
|
48
|
+
transform: rotate(-90deg);
|
|
43
49
|
}
|
|
44
50
|
|
|
45
51
|
.progress .indicator {
|
|
46
52
|
stroke: var(--ds-color-icon-default-subtlest, #d3d6d9);
|
|
47
|
-
stroke-width:
|
|
48
|
-
|
|
53
|
+
stroke-width: var(--media-control-stroke);
|
|
54
|
+
cx: 50%;
|
|
55
|
+
cy: 50%;
|
|
56
|
+
r: calc(50% - var(--media-control-gap) - var(--media-control-stroke) / 2);
|
|
49
57
|
}
|
|
50
58
|
|
|
51
59
|
[part='container']:focus-visible {
|
|
@@ -72,7 +72,7 @@ var f = class extends a {
|
|
|
72
72
|
}
|
|
73
73
|
}
|
|
74
74
|
loadThemeStyles() {
|
|
75
|
-
let e = "/2.0.0-canary.
|
|
75
|
+
let e = "/2.0.0-canary.242";
|
|
76
76
|
return this.loadUnusedStyles && this.applyUnusedStyles(e), this.loadStyles ? new Promise((t, n) => {
|
|
77
77
|
let r = `https://ds-assets.cupra.com${e}/styles/${this.theme}/theme.css`;
|
|
78
78
|
if (document.head.querySelector(`link[href="${r}"]`)) t();
|
|
@@ -8,7 +8,7 @@ function t(t) {
|
|
|
8
8
|
(r = globalThis) != null && (r = r.customElements) != null && r.get(o) || (i = globalThis) == null || (i = i.customElements) == null || (a = i.define) == null || a.call(i, o, class extends n {
|
|
9
9
|
connectedCallback() {
|
|
10
10
|
var e;
|
|
11
|
-
(e = n.prototype.connectedCallback) == null || e.call(this), this.setAttribute("data-ui-kit-version", "2.0.0-canary.
|
|
11
|
+
(e = n.prototype.connectedCallback) == null || e.call(this), this.setAttribute("data-ui-kit-version", "2.0.0-canary.242"), this.setAttribute("data-ui-kit-component-name", t);
|
|
12
12
|
}
|
|
13
13
|
});
|
|
14
14
|
};
|
|
@@ -26,7 +26,7 @@ var n = class {
|
|
|
26
26
|
return console.error(`Failed to fetch icon "${e}":`, t), "";
|
|
27
27
|
}), t.subscribe("theme", this.handleChangeTheme);
|
|
28
28
|
}
|
|
29
|
-
}, r = Symbol.for("@cupra/ui-kit/icons-manager/2.0.0-canary.
|
|
29
|
+
}, r = Symbol.for("@cupra/ui-kit/icons-manager/2.0.0-canary.242"), i = globalThis, a = i[r];
|
|
30
30
|
a || (a = new n(), Object.defineProperty(i, r, {
|
|
31
31
|
value: a,
|
|
32
32
|
writable: !1,
|
|
@@ -18,7 +18,7 @@ var e = class {
|
|
|
18
18
|
}
|
|
19
19
|
});
|
|
20
20
|
}
|
|
21
|
-
}, t = Symbol.for("@cupra/ui-kit/pubsub/2.0.0-canary.
|
|
21
|
+
}, t = Symbol.for("@cupra/ui-kit/pubsub/2.0.0-canary.242"), n = globalThis, r = n[t];
|
|
22
22
|
r || (r = new e(), Object.defineProperty(n, t, {
|
|
23
23
|
value: r,
|
|
24
24
|
writable: !1,
|
|
@@ -12,7 +12,6 @@ export declare class DsMediaControl extends LitElement {
|
|
|
12
12
|
progress: DsMediaControlAttrs['progress'];
|
|
13
13
|
private get normalizedProgress();
|
|
14
14
|
protected get classes(): Record<string, boolean>;
|
|
15
|
-
private get iconSize();
|
|
16
15
|
private get iconName();
|
|
17
16
|
private get iconTemplate();
|
|
18
17
|
private handleToggle;
|