iobroker.lovelace
Version:
With this adapter you can build visualization for ioBroker with Home Assistant Lovelace UI
1 lines • 19.6 kB
JavaScript
export const __rspack_esm_id=90577;export const __rspack_esm_ids=[90577];export const __webpack_modules__={76774(e,t,a){a.d(t,{q:()=>i});const i=(e,t)=>{const a=e.area_id;return a?t[a]:void 0}},60353(e,t,a){a.d(t,{u:()=>i});class i{start(e){const t=Date.now();this._startY=e,this._startTime=t,this._lastY=e,this._lastTime=t,this._delta=0}move(e){const t=Date.now();return this._delta=this._startY-e,this._lastY=e,this._lastTime=t,this._delta}end(){const e=this.getVelocity(),t=Math.abs(e)>this._velocityThreshold;return{velocity:e,delta:this._delta,isSwipe:t,isDownwardSwipe:e>0}}getDelta(){return this._delta}getVelocity(){if(Date.now()-this._lastTime>=this._movementTimeThreshold)return 0;const e=this._lastTime-this._startTime;return e>0?(this._lastY-this._startY)/e:0}reset(){this._startY=0,this._delta=0,this._startTime=0,this._lastY=0,this._lastTime=0}constructor(e={}){this._startY=0,this._delta=0,this._startTime=0,this._lastY=0,this._lastTime=0,this._velocityThreshold=e.velocitySwipeThreshold??.5,this._movementTimeThreshold=e.movementTimeThreshold??100}}},5745(e,t,a){var i=a(62826),s=a(99731),o=a(22441);class r extends s.Y{}r=(0,i.Cg)([(0,o.EM)("ha-chip-set")],r)},1798(e,t,a){a.a(e,async function(e,t){try{a(18111),a(61701);var i=a(62826),s=a(5124),o=a(22441),r=a(22786),c=a(1087),d=a(65522),n=a(37981),l=a(76774),h=a(77423),f=a(31422),b=a(44144),p=a(38508),u=e([p]);p=(u.then?(await u)():u)[0];class v extends s.WF{firstUpdated(e){super.firstUpdated(e),this._loadConfigEntries()}async _loadConfigEntries(){const e=await(0,h.VN)(this.hass);this._configEntryLookup=Object.fromEntries(e.map(e=>[e.entry_id,e]))}render(){const e=this.placeholder??this.hass.localize("ui.components.device-picker.placeholder"),t=this._valueRenderer(this._configEntryLookup);return s.qy` <ha-generic-picker .hass="${this.hass}" .autofocus="${this.autofocus}" .disabled="${this.disabled}" .helper="${this.helper}" .label="${this.label}" .searchLabel="${this.searchLabel}" .notFoundLabel="${this._notFoundLabel}" .emptyLabel="${this.hass.localize("ui.components.device-picker.no_devices")}" .placeholder="${e}" .value="${this.value}" .rowRenderer="${this._rowRenderer}" .getItems="${this._getItems}" .hideClearIcon="${this.hideClearIcon}" .valueRenderer="${t}" .searchKeys="${f._o}" .unknownItemText="${this.hass.localize("ui.components.device-picker.unknown")}" -changed="${this._valueChanged}"> </ha-generic-picker> `}async open(){await this.updateComplete,await(this._picker?.open())}_valueChanged(e){e.stopPropagation();const t=e.detail.value;this.value=t,(0,c.r)(this,"value-changed",{value:t})}constructor(...e){super(...e),this.autofocus=!1,this.disabled=!1,this.required=!1,this.hideClearIcon=!1,this._configEntryLookup={},this._getDevicesMemoized=(0,r.A)((e,t,a,i,s,o,r,c,d)=>(0,f.oG)(this.hass,t,a,i,s,o,r,c,d)),this._getItems=()=>this._getDevicesMemoized(this.hass.devices,this._configEntryLookup,this.includeDomains,this.excludeDomains,this.includeDeviceClasses,this.deviceFilter,this.entityFilter,this.excludeDevices,this.value),this._valueRenderer=(0,r.A)(e=>t=>{const a=t,i=this.hass.devices[a];if(!i)return s.qy`<span slot="headline">${a}</span>`;const o=(0,l.q)(i,this.hass.areas),r=i?(0,n.xn)(i):void 0,c=o?(0,d.A)(o):void 0,h=i.primary_config_entry?e[i.primary_config_entry]:void 0;return s.qy` ${h?s.qy`<img slot="start" alt="" crossorigin="anonymous" referrerpolicy="no-referrer" src="${(0,b.MR)({domain:h.domain,type:"icon",darkOptimized:this.hass.themes?.darkMode},this.hass.auth.data.hassUrl)}">`:s.s6} <span slot="headline">${r}</span> <span slot="supporting-text">${c}</span> `}),this._rowRenderer=e=>s.qy` <ha-combo-box-item type="button"> ${e.domain?s.qy` <img slot="start" alt="" crossorigin="anonymous" referrerpolicy="no-referrer" src="${(0,b.MR)({domain:e.domain,type:"icon",darkOptimized:this.hass.themes.darkMode},this.hass.auth.data.hassUrl)}"> `:s.s6} <span slot="headline">${e.primary}</span> ${e.secondary?s.qy`<span slot="supporting-text">${e.secondary}</span>`:s.s6} ${e.domain_name?s.qy` <div slot="trailing-supporting-text" class="domain"> ${e.domain_name} </div> `:s.s6} </ha-combo-box-item> `,this._notFoundLabel=e=>this.hass.localize("ui.components.device-picker.no_match",{term:s.qy`<b>‘${e}’</b>`})}}(0,i.Cg)([(0,o.MZ)({attribute:!1})],v.prototype,"hass",void 0),(0,i.Cg)([(0,o.MZ)({type:Boolean})],v.prototype,"autofocus",void 0),(0,i.Cg)([(0,o.MZ)({type:Boolean})],v.prototype,"disabled",void 0),(0,i.Cg)([(0,o.MZ)({type:Boolean})],v.prototype,"required",void 0),(0,i.Cg)([(0,o.MZ)()],v.prototype,"label",void 0),(0,i.Cg)([(0,o.MZ)()],v.prototype,"value",void 0),(0,i.Cg)([(0,o.MZ)()],v.prototype,"helper",void 0),(0,i.Cg)([(0,o.MZ)()],v.prototype,"placeholder",void 0),(0,i.Cg)([(0,o.MZ)({type:String,attribute:"search-label"})],v.prototype,"searchLabel",void 0),(0,i.Cg)([(0,o.MZ)({attribute:!1})],v.prototype,"createDomains",void 0),(0,i.Cg)([(0,o.MZ)({type:Array,attribute:"include-domains"})],v.prototype,"includeDomains",void 0),(0,i.Cg)([(0,o.MZ)({type:Array,attribute:"exclude-domains"})],v.prototype,"excludeDomains",void 0),(0,i.Cg)([(0,o.MZ)({type:Array,attribute:"include-device-classes"})],v.prototype,"includeDeviceClasses",void 0),(0,i.Cg)([(0,o.MZ)({type:Array,attribute:"exclude-devices"})],v.prototype,"excludeDevices",void 0),(0,i.Cg)([(0,o.MZ)({attribute:!1})],v.prototype,"deviceFilter",void 0),(0,i.Cg)([(0,o.MZ)({attribute:!1})],v.prototype,"entityFilter",void 0),(0,i.Cg)([(0,o.MZ)({attribute:"hide-clear-icon",type:Boolean})],v.prototype,"hideClearIcon",void 0),(0,i.Cg)([(0,o.P)("ha-generic-picker")],v.prototype,"_picker",void 0),(0,i.Cg)([(0,o.wk)()],v.prototype,"_configEntryLookup",void 0),v=(0,i.Cg)([(0,o.EM)("ha-device-picker")],v),t()}catch(e){t(e)}})},47680(e,t,a){a.r(t),a.d(t,{HaIcon:()=>C});a(74423);var i=a(62826),s=a(5124),o=a(22441),r=a(1087),c=a(9899),d=a(700),n=(a(44114),a(18111),a(7588),a(95192)),l=a(7553);const h=JSON.parse('{"version":"7.4.47","parts":[{"file":"7a7139d465f1f41cb26ab851a17caa21a9331234"},{"start":"account-supervisor-circle-","file":"9561286c4c1021d46b9006596812178190a7cc1c"},{"start":"alpha-r-c","file":"eb466b7087fb2b4d23376ea9bc86693c45c500fa"},{"start":"arrow-decision-o","file":"4b3c01b7e0723b702940c5ac46fb9e555646972b"},{"start":"baby-f","file":"2611401d85450b95ab448ad1d02c1a432b409ed2"},{"start":"battery-hi","file":"89bcd31855b34cd9d31ac693fb073277e74f1f6a"},{"start":"blur-r","file":"373709cd5d7e688c2addc9a6c5d26c2d57c02c48"},{"start":"briefcase-account-","file":"a75956cf812ee90ee4f656274426aafac81e1053"},{"start":"calendar-question-","file":"3253f2529b5ebdd110b411917bacfacb5b7063e6"},{"start":"car-lig","file":"74566af3501ad6ae58ad13a8b6921b3cc2ef879d"},{"start":"cellphone-co","file":"7677f1cfb2dd4f5562a2aa6d3ae43a2e6997b21a"},{"start":"circle-slice-2","file":"70d08c50ec4522dd75d11338db57846588263ee2"},{"start":"cloud-co","file":"141d2bfa55ca4c83f4bae2812a5da59a84fec4ff"},{"start":"cog-s","file":"5a640365f8e47c609005d5e098e0e8104286d120"},{"start":"cookie-l","file":"dd85b8eb8581b176d3acf75d1bd82e61ca1ba2fc"},{"start":"currency-eur-","file":"15362279f4ebfc3620ae55f79d2830ad86d5213e"},{"start":"delete-o","file":"239434ab8df61237277d7599ebe066c55806c274"},{"start":"draw-","file":"5605918a592070803ba2ad05a5aba06263da0d70"},{"start":"emoticon-po","file":"a838cfcec34323946237a9f18e66945f55260f78"},{"start":"fan","file":"effd56103b37a8c7f332e22de8e4d67a69b70db7"},{"start":"file-question-","file":"b2424b50bd465ae192593f1c3d086c5eec893af8"},{"start":"flask-off-","file":"3b76295cde006a18f0301dd98eed8c57e1d5a425"},{"start":"food-s","file":"1c6941474cbeb1755faaaf5771440577f4f1f9c6"},{"start":"gamepad-u","file":"c6efe18db6bc9654ae3540c7dee83218a5450263"},{"start":"google-f","file":"df341afe6ad4437457cf188499cb8d2df8ac7b9e"},{"start":"head-c","file":"282121c9e45ed67f033edcc1eafd279334c00f46"},{"start":"home-pl","file":"27e8e38fc7adcacf2a210802f27d841b49c8c508"},{"start":"inbox-","file":"0f0316ec7b1b7f7ce3eaabce26c9ef619b5a1694"},{"start":"key-v","file":"ea33462be7b953ff1eafc5dac2d166b210685a60"},{"start":"leaf-circle-","file":"33db9bbd66ce48a2db3e987fdbd37fb0482145a4"},{"start":"lock-p","file":"b89e27ed39e9d10c44259362a4b57f3c579d3ec8"},{"start":"message-s","file":"7b5ab5a5cadbe06e3113ec148f044aa701eac53a"},{"start":"moti","file":"01024d78c248d36805b565e343dd98033cc3bcaf"},{"start":"newspaper-variant-o","file":"22a6ec4a4fdd0a7c0acaf805f6127b38723c9189"},{"start":"on","file":"c73d55b412f394e64632e2011a59aa05e5a1f50d"},{"start":"paw-ou","file":"3f669bf26d16752dc4a9ea349492df93a13dcfbf"},{"start":"pigg","file":"0c24edb27eb1c90b6e33fc05f34ef3118fa94256"},{"start":"printer-pos-sy","file":"41a55cda866f90b99a64395c3bb18c14983dcf0a"},{"start":"read","file":"c7ed91552a3a64c9be88c85e807404cf705b7edf"},{"start":"robot-vacuum-variant-o","file":"917d2a35d7268c0ea9ad9ecab2778060e19d90e0"},{"start":"sees","file":"6e82d9861d8fac30102bafa212021b819f303bdb"},{"start":"shoe-f","file":"e2fe7ce02b5472301418cc90a0e631f187b9f238"},{"start":"snowflake-m","file":"a28ba9f5309090c8b49a27ca20ff582a944f6e71"},{"start":"st","file":"7e92d03f095ec27e137b708b879dfd273bd735ab"},{"start":"su","file":"61c74913720f9de59a379bdca37f1d2f0dc1f9db"},{"start":"tag-plus-","file":"8f3184156a4f38549cf4c4fffba73a6a941166ae"},{"start":"timer-a","file":"baab470d11cfb3a3cd3b063ee6503a77d12a80d0"},{"start":"transit-d","file":"8561c0d9b1ac03fab360fd8fe9729c96e8693239"},{"start":"vector-arrange-b","file":"c9a3439257d4bab33d3355f1f2e11842e8171141"},{"start":"water-ou","file":"02dbccfb8ca35f39b99f5a085b095fc1275005a0"},{"start":"webc","file":"57bafd4b97341f4f2ac20a609d023719f23a619c"},{"start":"zip","file":"65ae094e8263236fa50486584a08c03497a38d93"}]}');let f;const b=()=>(f||(f=p().catch(e=>{throw f=void 0,e})),f),p=async()=>{const e=(0,n.y$)("hass-icon-db","mdi-icon-store"),t=await(0,n.Jt)("_version",e);return t?t!==h.version&&(await(0,n.IU)(e),(0,n.hZ)("_version",h.version,e)):(0,n.hZ)("_version",h.version,e),e},u=["mdi","hass","hassio","hademo"];let v=[];a(67094);const m={},_={},y=(0,c.s)(()=>(async e=>{const t=Object.keys(e),a=await Promise.allSettled(Object.values(e));(await b())("readwrite",i=>{a.forEach((a,s)=>{"fulfilled"===a.status&&Object.entries(a.value).forEach(([e,t])=>{i.put(t,e)}),delete e[t[s]]})})})(_),2e3),g={},w={"home-assistant":()=>a.e(58781).then(a.bind(a,53580)).then(e=>e.mdiHomeAssistant),"music-assistant":()=>a.e(56009).then(a.bind(a,10576)).then(e=>e.mdiMusicAssistant),esphome:()=>a.e(88800).then(a.bind(a,45091)).then(e=>e.mdiEsphomeLogo)};class C extends s.WF{willUpdate(e){super.willUpdate(e),e.has("icon")&&(this._path=void 0,this._secondaryPath=void 0,this._viewBox=void 0,this._loadIcon())}render(){return this.icon?this._legacy?s.qy` <iron-icon .icon="${this.icon}"></iron-icon>`:s.qy`<ha-svg-icon .path="${this._path}" .secondaryPath="${this._secondaryPath}" .viewBox="${this._viewBox}"></ha-svg-icon>`:s.s6}async _loadIcon(){if(!this.icon)return;const e=this.icon,[t,a]=this.icon.split(":",2);let i,s=a;if(!t||!s)return;if(!u.includes(t)){const a=d.y[t];return a?void(a&&"function"==typeof a.getIcon&&this._setCustomPath(a.getIcon(s),e)):void(this._legacy=!0)}if(this._legacy=!1,s in m){const e=m[s];let a;e.newName?(a=`Icon ${t}:${s} was renamed to ${t}:${e.newName}, please change your config, it will be removed in version ${e.removeIn}.`,s=e.newName):a=`Icon ${t}:${s} was removed from MDI, please replace this icon with an other icon in your config, it will be removed in version ${e.removeIn}.`,console.warn(a),(0,r.r)(this,"write_log",{level:"warning",message:a})}if(s in g)return void(this._path=g[s]);if(s in w){const t=await w[s]();return this.icon===e&&(this._path=t),void(g[s]=t)}try{i=await(e=>new Promise((t,a)=>{if(v.push([e,t,a]),v.length>1)return;const i=b();(0,l.h)(1e3,(async()=>{(await i)("readonly",e=>{for(const[t,a,i]of v)(0,n.Yd)(e.get(t)).then(e=>a(e)).catch(e=>i(e));v=[]})})()).catch(e=>{for(const[,,t]of v)t(e);v=[]})}))(s)}catch(e){i=void 0}if(i)return this.icon===e&&(this._path=i),void(g[s]=i);const o=(e=>{let t;for(const a of h.parts){if(void 0!==a.start&&e<a.start)break;t=a}return t.file})(s);if(o in _)return void this._setPath(_[o],s,e);const c=fetch(`/static/mdi/${o}.json`).then(e=>e.json());_[o]=c,this._setPath(c,s,e),c.catch(()=>{delete _[o]}),y()}async _setCustomPath(e,t){const a=await e;this.icon===t&&(this._path=a.path,this._secondaryPath=a.secondaryPath,this._viewBox=a.viewBox)}async _setPath(e,t,a){try{const i=await e;this.icon===a&&(this._path=i[t]),g[t]=i[t]}catch(e){}}constructor(...e){super(...e),this._legacy=!1}}C.styles=s.AH`:host{fill:currentcolor}`,(0,i.Cg)([(0,o.MZ)()],C.prototype,"icon",void 0),(0,i.Cg)([(0,o.wk)()],C.prototype,"_path",void 0),(0,i.Cg)([(0,o.wk)()],C.prototype,"_secondaryPath",void 0),(0,i.Cg)([(0,o.wk)()],C.prototype,"_viewBox",void 0),(0,i.Cg)([(0,o.wk)()],C.prototype,"_legacy",void 0),C=(0,i.Cg)([(0,o.EM)("ha-icon")],C)},36866(e,t,a){a.a(e,async function(e,t){try{var i=a(62826),s=a(5124),o=a(22441),r=a(91485),c=e([r]);r=(c.then?(await c)():c)[0];const d="M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z";class n extends r.U{willUpdate(e){super.willUpdate(e),this.label||this.placeholder||this.hasUpdated&&!e.has("_i18n")||(this.placeholder=this.i18n?.localize?.("ui.common.search")||"Search")}renderStartDefault(){return s.qy`<ha-svg-icon slot="start" .path="${d}"></ha-svg-icon>`}constructor(){super(),this.withClear=!0,this.autocomplete=this.autocomplete||"off"}}n.styles=[...r.U.styles,s.AH`:host([appearance=outlined]) wa-input.no-label::part(base){height:40px}`],n=(0,i.Cg)([(0,o.EM)("ha-input-search")],n),t()}catch(e){t(e)}})},700(e,t,a){a.d(t,{y:()=>r});const i=window;"customIconsets"in i||(i.customIconsets={});const s=i.customIconsets,o=window;"customIcons"in o||(o.customIcons={});const r=new Proxy(o.customIcons,{get:(e,t)=>e[t]??(s[t]?{getIcon:s[t]}:void 0)})},31422(e,t,a){a.d(t,{_o:()=>h,oG:()=>f,pq:()=>l});a(74423),a(18111),a(81148),a(22489),a(61701),a(13579);var i=a(65522),s=a(37981),o=a(71727),r=a(76774),c=a(15638),d=a(95350),n=a(58594);const l=(e,t,a,o,d,n,l,h)=>{const f=(0,r.q)(e,t),b=e.via_device_id?a[e.via_device_id]:void 0,p=b?(0,s.T)(b,d,o,h):void 0,u=b?(0,r.q)(b,t):void 0,v=u?(0,i.A)(u):void 0,m=(0,c.qC)(n,l.translations);return{areaName:f?(0,i.A)(f):v?`${v}${m?" ◂ ":" ▸ "}${p}`:p||void 0,viaDeviceName:p,viaDeviceAreaName:v}},h=[{name:"search_labels.deviceName",weight:10},{name:"search_labels.areaName",weight:8},{name:"search_labels.domainName",weight:4},{name:"search_labels.domain",weight:4},{name:"search_labels.viaDeviceName",weight:3},{name:"search_labels.viaDeviceArea",weight:3}],f=(e,t,a,i,r,c,h,f,b,p="")=>{const u=Object.values(e.devices),v=Object.values(e.entities);let m={};(a||i||r||h)&&(m=(0,n.g2)(v));let _=u.filter(e=>e.id===b||!e.disabled_by);a&&(_=_.filter(e=>{const t=m[e.id];return!(!t||!t.length)&&m[e.id].some(e=>a.includes((0,o.m)(e.entity_id)))})),i&&(_=_.filter(e=>{const t=m[e.id];return!t||!t.length||v.every(e=>!i.includes((0,o.m)(e.entity_id)))})),f&&(_=_.filter(e=>!f.includes(e.id))),r&&(_=_.filter(t=>{const a=m[t.id];return!(!a||!a.length)&&m[t.id].some(t=>{const a=e.states[t.entity_id];return!!a&&(a.attributes.device_class&&r.includes(a.attributes.device_class))})})),h&&(_=_.filter(t=>{const a=m[t.id];return!(!a||!a.length)&&a.some(t=>{const a=e.states[t.entity_id];return!!a&&h(a)})})),c&&(_=_.filter(e=>e.id===b||c(e)));return _.map(a=>{const i=(0,s.T)(a,e.localize,e.states,m[a.id]),{areaName:o,viaDeviceName:r,viaDeviceAreaName:c}=l(a,e.areas,e.devices,e.states,e.localize,e.language,e.translationMetadata,a.via_device_id?m[a.via_device_id]:void 0),n=a.primary_config_entry?t?.[a.primary_config_entry]:void 0,h=n?.domain,f=h?(0,d.p$)(e.localize,h):void 0,b=i||e.localize("ui.components.device-picker.unnamed_device");return{id:`${p}${a.id}`,label:"",primary:b,secondary:o,domain:n?.domain,domain_name:f,search_labels:{deviceName:i,areaName:o||null,domain:h||null,domainName:f||null,viaDeviceName:r||null,viaDeviceArea:c||null},sorting_label:[b,o,f].filter(Boolean).join("_")}})}},59992(e,t,a){a.d(t,{V:()=>d});var i=a(62826),s=a(88696),o=a(5124),r=a(6412),c=a(22441);const d=e=>{class t extends e{get scrollableElement(){return t.DEFAULT_SCROLLABLE_ELEMENT}firstUpdated(e){super.firstUpdated?.(e),this.scrollableElement&&this._updateScrollableState(this.scrollableElement),this._attachScrollableElement()}updated(e){super.updated?.(e),this._attachScrollableElement()}disconnectedCallback(){this._detachScrollableElement(),this._contentScrolled=!1,this._contentScrollable=!1,super.disconnectedCallback()}renderScrollableFades(e=!1){return o.qy` <div class="${(0,r.H)({"fade-top":!0,rounded:e,visible:this._contentScrolled})}"></div> <div class="${(0,r.H)({"fade-bottom":!0,rounded:e,visible:this._contentScrollable})}"></div> `}static get styles(){const e=Object.getPrototypeOf(this);var t;return[...void 0===(t=e?.styles??[])?[]:Array.isArray(t)?t:[t],o.AH`.fade-bottom,.fade-top{position:absolute;left:0;right:0;height:var(--ha-space-2);pointer-events:none;transition:opacity 180ms ease-in-out;border-radius:var(--ha-border-radius-square);opacity:0;background:linear-gradient(to bottom,var(--ha-color-shadow-scrollable-fade),transparent)}.fade-top{top:0}.fade-bottom{bottom:0;transform:rotate(180deg)}.fade-bottom.visible,.fade-top.visible{opacity:1}.fade-bottom.rounded,.fade-top.rounded{border-radius:var(--ha-card-border-radius,var(--ha-border-radius-lg));border-bottom-left-radius:var(--ha-border-radius-square);border-bottom-right-radius:var(--ha-border-radius-square)}.fade-top.rounded{border-top-left-radius:var(--ha-border-radius-square);border-top-right-radius:var(--ha-border-radius-square)}.fade-bottom.rounded{border-bottom-left-radius:var(--ha-border-radius-square);border-bottom-right-radius:var(--ha-border-radius-square)}`]}_attachScrollableElement(){const e=this.scrollableElement;e!==this._scrollTarget&&(this._detachScrollableElement(),e&&(this._scrollTarget=e,e.addEventListener("scroll",this._onScroll,{passive:!0}),this._resize.observe(e),this._updateScrollableState(e)))}_detachScrollableElement(){this._scrollTarget&&(this._scrollTarget.removeEventListener("scroll",this._onScroll),this._resize.unobserve?.(this._scrollTarget),this._scrollTarget=void 0)}_updateScrollableState(e){const t=parseFloat(getComputedStyle(e).getPropertyValue("--safe-area-inset-bottom"))||0,{scrollHeight:a=0,clientHeight:i=0,scrollTop:s=0}=e;this._contentScrollable=a-i>s+t+this.scrollFadeSafeAreaPadding}constructor(...e){super(...e),this._contentScrolled=!1,this._contentScrollable=!1,this._onScroll=e=>{const t=e.currentTarget;this._contentScrolled=(t.scrollTop??0)>this.scrollFadeThreshold,this._updateScrollableState(t)},this._resize=new s.P(this,{target:null,callback:e=>{const t=e[0]?.target;t&&this._updateScrollableState(t)}}),this.scrollFadeSafeAreaPadding=4,this.scrollFadeThreshold=4}}return t.DEFAULT_SCROLLABLE_ELEMENT=null,(0,i.Cg)([(0,c.wk)()],t.prototype,"_contentScrolled",void 0),(0,i.Cg)([(0,c.wk)()],t.prototype,"_contentScrollable",void 0),t}},85614(e,t,a){a.d(t,{i:()=>i});const i=async()=>{await Promise.all([a.e(69139),a.e(22309)]).then(a.bind(a,46974))}},22348(e,t,a){a.d(t,{V:()=>s});var i=a(37177);const s=e=>!!e&&i.n},37177(e,t,a){a.d(t,{n:()=>i});const i=/^((?!chrome|android).)*safari/i.test(navigator.userAgent)},88438(e,t,a){a.d(t,{C:()=>i});const i="ontouchstart"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0}};