PageSourceSearch

https://hyperice.com/cdn/shop/t/117/assets/core-dialog.q7aM3B-c.min.js

js hyperice.com collected 2026-10-01 11:44:18 UTC 19,432 bytes, 52 lines download raw bytes

1import{a as x}from"./BaseElement.DUV4NqCX.min.js";import{W as k}from"./WithModalDialog.SIEJuGgx.min.js";import{x as m,T as O,r as S}from"./lit-element.mvcqtviJ.min.js";import{t as _}from"./custom-element.BhZVzxrc.min.js";import{e as $}from"./base.CShCMygk.min.js";import{W as T}from"./WithApiClient.DyDsqC0I.min.js";import{h as L,i as I}from"./task.DZFJOXVG.min.js";import{n as d}from"./property.C7OeqhA5.min.js";import{r as M}from"./query-all.D646pH-D.min.js";import{r as R}from"./query-async.BD_BGkJr.min.js";import{o as D}from"./unsafe-html.BnzeGhOW.min.js";import"./modal-context.eEhUllgb.min.js";import"./create-context.89xeped_.min.js";import"./consume.CHsRYPSi.min.js";import"./context-request-event.CcEA9XIP.min.js";import"./index.CKJCYK2x.min.js";import"./directive.C_Rw-dL6.min.js";/**
2 * @license
3 * Copyright 2021 Google LLC
4 * SPDX-License-Identifier: BSD-3-Clause
5 */function A(t){return(a,r)=>{const{slot:i,selector:e}={},l="slot"+(i?`[name=${i}]`:":not([name])");return $(a,r,{get(){var v;const o=(v=this.renderRoot)==null?void 0:v.querySelector(l),u=(o==null?void 0:o.assignedElements(t))??[];return e===void 0?u:u.filter(E=>E.matches(e))}})}}var B=Object.defineProperty,F=Object.getOwnPropertyDescriptor,z=(t,a,r,i)=>{for(var e=i>1?void 0:i?F(a,r):a,l=t.length-1,o;l>=0;l--)(o=t[l])&&(e=(i?o(a,r,e):o(e))||e);return i&&e&&B(a,r,e),e};let b=class extends k(x){constructor(){super(...arguments),this.onClick=t=>{if(!this.modalId)return;t.preventDefault();const a=this.modalId==="mobile-menu-drawer",r=!this.modalIsOpen;if(a&&r){const i=document.getElementById(this.modalId),e=i==null?void 0:i.shadowRoot;if(e){const u=e.querySelector(".drawer");u&&(u.scrollTop=0)}const l=document.querySelector("[data-tabs-root]"),o=l==null?void 0:l.querySelector("tabs-toggle[tab-id]");o==null||o.click()}this.modalIsOpen?this.closeModal():this.openModal()}}updated(t){var a;super.updated(t),this.toggleAttribute("open",this.modalIsOpen),(a=this.assignedElements)==null||a.forEach(r=>{r.toggleAttribute("open",this.modalIsOpen),r.setAttribute("aria-expanded",String(this.modalIsOpen))})}render(){return m`<slot @click=${this.onClick}></slot>`}};z([A()],b.prototype,"assignedElements",2);b=z([_("dialog-toggle")],b);const P='/*! tailwindcss v4.1.8 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-ease:initial}}}.dialog[open]::backdrop{background-color:#000c;display:block}@supports (color:color-mix(in lab,red,red)){.dialog[open]::backdrop{background-color:color-mix(in oklab,var(--color-black,#000)80%,transparent)}}.dialog[open]::backdrop{opacity:1;--tw-backdrop-blur:blur(10px);-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);transition-delay:0s}@starting-style{.dialog[open]::backdrop{opacity:0}
5}.dialog{inset:calc(var(--spacing,.25rem)*0);margin:calc(var(--spacing,.25rem)*0);overscroll-behavior:contain;background-color:unset;opacity:1;width:100dvw;height:100dvh;transition-property:visibility,opacity,display,overlay;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4,0,.2,1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));transition-behavior:allow-discrete;display:block;position:fixed;overflow:hidden}@media (prefers-reduced-motion:reduce){.dialog{transition-property:none}}.dialog:modal{max-height:100dvh}.dialog:modal{max-width:100vw}@media (min-width:768px){.dialog[type=modal]{justify-content:center;align-items:center;display:flex}}.dialog:not([open]){pointer-events:none;visibility:hidden;opacity:0;--tw-duration:var(--transition-duration-slow,1s);transition-delay:.5s;transition-duration:var(--transition-duration-slow,1s)}.dialog:not([open])::backdrop{opacity:0}@starting-style{.dialog[open]{opacity:0}}.modal{--tw-translate-y:100%;width:100%;height:100%;translate:var(--tw-translate-x)var(--tw-translate-y);overscroll-behavior:contain;background-color:var(--color-background,var(--color-white));opacity:0;transition-property:opacity,transform,overlay;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4,0,.2,1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));--tw-duration:var(--transition-duration-fast,.3s);transition-delay:0s;transition-duration:var(--transition-duration-fast,.3s);--tw-ease:var(--ease-in-out,cubic-bezier(.4,0,.2,1));transition-timing-function:var(--ease-in-out,cubic-bezier(.4,0,.2,1));overflow-y:auto}@media (prefers-reduced-motion:reduce){.modal{transition-property:none}}@media (min-width:768px){.modal{--tw-translate-y:calc(var(--spacing,.25rem)*16);width:83.3333%;height:auto;translate:var(--tw-translate-x)var(--tw-translate-y)}}@media (min-width:1024px){.modal{max-height:100dvh;max-width:var(--max-width-2xl,42rem)}}.modal[size=modal-max]{width:100%!important;max-width:100%!important;height:100%!important;max-height:100%!important;max-width:var(--max-width-full,100%)!important;--tw-translate-x:min(max( 0px , 0vw ),0px)!important;--tw-translate-y:min(max( 0px , 0vw ),0px)!important;translate:var(--tw-translate-x)var(--tw-translate-y)!important;translate:none!important}@media not all and (min-width:768px){.modal[size=modal-bis]{border-top-left-radius:4px;border-top-right-radius:4px;width:100%;max-height:347px;overflow:hidden;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important;grid-template-rows:auto auto!important;height:auto!important}}@media (min-width:768px){.modal[size=modal-bis]{border-radius:.25rem;width:100%;height:auto;overflow:hidden}@media (min-width:1024px){.modal[size=modal-bis]{border-radius:.25rem}}}@media (min-width:1024px){.modal[size=modal-bis]{max-width:450px}}@media not all and (min-width:768px){.modal[size=modal-bis]>:nth-child(2){overflow-y:auto}.dialog.bis-modal-dialog[type=modal]{flex-direction:column;justify-content:flex-end;display:flex}}.modal[size=modal-bis]>:first-child{padding-inline:min(max(20px,1.38889vw),20px)!important}@media not all and (min-width:768px){.modal[size=modal-bis]>:first-child{border-top-left-radius:4px;border-top-right-radius:4px;overflow:hidden}}@media (min-width:768px){.modal[size=modal-bis]>:first-child{border-top-left-radius:4px;border-top-right-radius:4px}}.modal[size=modal-bis]>:first-child>button.ml-auto{background-color:var(--color-stroke-light,#dfdfdf);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4,0,.2,1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));--tw-duration:var(--transition-duration-fast,.3s);transition-duration:var(--transition-duration-fast,.3s);border-radius:16px;padding-block:min(max(10px,.694445vw),10px);padding-inline:min(max(15px,1.04167vw),15px)}@media (hover:hover){.modal[size=modal-bis]>:first-child>button.ml-auto:hover{background-color:var(--color-black,#000);color:var(--color-white,#fff)}}.modal[size=modal-bis] ::slotted([slot=close-icon]){height:auto!important;min-height:calc(var(--spacing,.25rem)*0)!important;border-radius:0!important;width:auto!important}@media (min-width:1024px){.modal[size=modal-bis] ::slotted([slot=close-icon]){border-radius:0!important}}.modal[size=modal-bis] ::slotted([slot=close-icon]){padding:calc(var(--spacing,.25rem)*0)!important;background-color:#0000!important;border-radius:0!important}.dialog[open] .modal{--tw-translate-x:min(max( 0px , 0vw ),0px);--tw-translate-y:min(max( 0px , 0vw ),0px);translate:var(--tw-translate-x)var(--tw-translate-y);opacity:1;transition-delay:.1s;translate:none}.drawer{right:calc(var(--spacing,.25rem)*0);position:fixed}.drawer::-webkit-scrollbar-track{background-color:var(--scrollbar-track);border-radius:var(--scrollbar-track-radius)}.drawer::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);border-radius:var(--scrollbar-thumb-radius)}.drawer::-webkit-scrollbar-corner{background-color:var(--scrollbar-corner);border-radius:var(--scrollbar-corner-radius)}.drawer{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb,initial)var(--scrollbar-track,initial)}.drawer::-webkit-scrollbar{width:8px;height:8px;display:block}.drawer{--tw-translate-x:100%;width:100%;height:100%;translate:var(--tw-translate-x)var(--tw-translate-y);overscroll-behavior:contain;background-color:var(--color-background,var(--color-white));transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4,0,.2,1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));--tw-duration:var(--transition-duration-fast,.3s);transition-delay:0s;transition-duration:var(--transition-duration-fast,.3s);--tw-ease:var(--ease-in-out,cubic-bezier(.4,0,.2,1));transition-timing-function:var(--ease-in-out,cubic-bezier(.4,0,.2,1));--scrollbar-thumb:var(--color-white);overflow-y:auto}@media (prefers-reduced-motion:reduce){.drawer{transition-property:none}}@media (min-width:640px){.drawer{max-width:477px}}.drawer[size=modal-size-chart]{background-color:var(--color-cool-grey,#f7f5f5)}@media (min-width:640px){.drawer[size=modal-size-chart]{max-width:500px}}.drawer[anchor=left]{right:auto;left:calc(var(--spacing,.25rem)*0);--tw-translate-x:-100%;translate:var(--tw-translate-x)var(--tw-translate-y)}.drawer[anchor=center]{pointer-events:none;opacity:0;transition-property:transform,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4,0,.2,1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));--tw-duration:var(--transition-duration-fast,.3s);transition-duration:var(--transition-duration-fast,.3s);--tw-ease:var(--ease-in-out,cubic-bezier(.4,0,.2,1));transition-timing-function:var(--ease-in-out,cubic-bezier(.4,0,.2,1));will-change:transform;--tw-translate-x:calc(var(--spacing,.25rem)*0);transform:translate(-50%);translate:var(--tw-translate-x)var(--tw-translate-y);left:50%;right:auto}.dialog[open] .drawer[anchor=center]{pointer-events:auto;opacity:1;transition-delay:.1s}.cart-drawer-dialog .drawer[anchor=right]{left:auto;right:calc(var(--spacing,.25rem)*0)!important}@media (min-width:640px){.cart-drawer-dialog .drawer[anchor=right]{max-width:470px}}.dialog:not([open]) .drawer[anchor=right]{--tw-translate-x:100%;translate:var(--tw-translate-x)var(--tw-translate-y);transition-delay:0s}.dialog:not([open]) .drawer[anchor=left]{--tw-translate-x:-100%;translate:var(--tw-translate-x)var(--tw-translate-y);transition-delay:0s}.dialog[open] .drawer{--tw-translate-x:min(max( 0px , 0vw ),0px);--tw-translate-y:min(max( 0px , 0vw ),0px);translate:var(--tw-translate-x)var(--tw-translate-y);transition-delay:.1s;translate:none}@media not all and (min-width:768px){.dialog.external-site-redirect[type=modal]{justify-content:center;align-items:center;padding-inline:min(max(15px,2.08333vw),30px);
5display:flex}.dialog.external-site-redirect .modal{width:100%;height:auto;max-height:calc(100dvh - 2rem)}}@media (min-width:768px){.dialog.external-site-redirect .modal{width:auto;max-width:min(100%,500px)}}@media (min-width:1024px){.dialog.external-site-redirect .modal{max-width:min(100%,500px)}}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-ease{syntax:"*";inherits:false}';var U=Object.defineProperty,j=Object.getOwnPropertyDescriptor,C=t=>{throw TypeError(t)},s=(t,a,r,i)=>{for(var e=i>1?void 0:i?j(a,r):a,l=t.length-1,o;l>=0;l--)(o=t[l])&&(e=(i?o(a,r,e):o(e))||e);return i&&e&&U(a,r,e),e},f=(t,a,r)=>a.has(t)||C("Cannot "+r),g=(t,a,r)=>(f(t,a,"read from private field"),a.get(t)),y=(t,a,r)=>a.has(t)?C("Cannot add the same private member more than once"):a instanceof WeakSet?a.add(t):a.set(t,r),q=(t,a,r,i)=>(f(t,a,"write to private field"),a.set(t,r),r),h=(t,a,r)=>(f(t,a,"access private method"),r),w,c,p;let n=class extends T(k(x)){constructor(){super(...arguments),y(this,c),this.type="modal",this.anchor="right",this.withoutTitle=!1,this.closeOnBackdropClick=!1,this.class="",this.headerClasses="",this.parentClass="",this.closeIconSize="18",y(this,w,null),this._loadURLContentTask=new L(this,{task:async([t],{signal:a})=>{if(!this.hasToLoadURL)return I;const r=await this.$api.client.fetchClient(t,{method:"GET",signal:a,headers:{"Content-Type":"text/html"}});return a.throwIfAborted(),r},args:()=>[this.url]}),this._handleKeydown=t=>{if(t.key!=="Tab"||!this.modalIsOpen)return;const a=this._getFocusableElements();if(a.length===0){t.preventDefault();return}t.preventDefault();let r=document.activeElement;for(;r&&r.shadowRoot&&r.shadowRoot.activeElement;)r=r.shadowRoot.activeElement;const i=r instanceof HTMLElement?a.indexOf(r):-1;let e;t.shiftKey?e=i<=0?a.length-1:i-1:e=i===-1||i>=a.length-1?0:i+1,a[e].focus()}}_handleBackdropClick(t){this.closeOnBackdropClick&&t.target instanceof HTMLElement&&t.target.tagName==="DIALOG"&&h(this,c,p).call(this)}_handleGenericClick(t){const a=t.target;a.hasAttribute("close-modal")&&(t.preventDefault(),h(this,c,p).call(this)),a.closest("[close-modal]")&&(t.preventDefault(),h(this,c,p).call(this))}_isFocusable(t){if(!(t instanceof HTMLElement)||t.hasAttribute("disabled")||t.getAttribute("aria-hidden")==="true"||t.tabIndex<0)return!1;const a=window.getComputedStyle(t);return!(a.visibility==="hidden"||a.display==="none"||t.getClientRects().length===0)}_getFocusableElements(){const t=[],a=new Set,r=this.querySelector('[slot="close-icon"]'),i=e=>{if(!e)return;e.querySelectorAll(n.FOCUSABLE_SELECTOR).forEach(o=>{o instanceof HTMLElement&&(a.has(o)||this._isFocusable(o)&&(r&&e===this.shadowRoot&&o.querySelector('slot[name="close-icon"]')||(a.add(o),t.push(o))))})};return i(this.shadowRoot),i(this),t}_focusOnFirstElement(){try{setTimeout(()=>{const a=this._getFocusableElements()[0];a&&a.focus()},300)}catch(t){console.error("Error in _focusOnFirstElement",t)}}connectedCallback(){super.connectedCallback(),this.addEventListener("keydown",this._handleKeydown)}disconnectedCallback(){this.removeEventListener("keydown",this._handleKeydown),super.disconnectedCallback()}firstUpdated(t){super.firstUpdated(t),(this.open||this.modalIsOpen&&!this.open)&&this.show()}async show(){const t=await this.dialog;t&&!t.open&&(q(this,w,document.activeElement),t.showModal(),this._focusOnFirstElement(),this.open=!0)}async hide(){const t=await this.dialog;t&&t.open&&(t.close(),this.open=!1),g(this,w)&&g(this,w).focus()}get hasToLoadURL(){const t=this.url;return!(!t||t==="#"||t==="about:blank"||t==="javascript:;"||t==="javascript:void(0)"||t==="")}get dialogContentHTML(){return this.hasToLoadURL?m`
6      ${this._loadURLContentTask.render({pending:()=>m`<p class="caption p-md animate-pulse text-center">
7            Loading...
8          </p>`,complete:t=>t?m`${D(t)}`:O})}
9    `:m`<slot @click=${this._handleGenericClick}></slot>`}
9willUpdate(t){t.has("url")&&this.url!==""&&(this.urlParams=new URL(this.url).searchParams)}render(){return m`
10      <dialog
11        role="dialog"
12        aria-modal="true"
13        type="${this.type}"
14        aria-labelledby="${this.id}-dialogTitle"
15        @modal-close=${h(this,c,p)}
16        @close=${h(this,c,p)}
17        .inert=${!this.modalIsOpen}
18        class="dialog ${this.parentClass}"
19        @click=${this._handleBackdropClick}
20      >
21        <div
22          class="${this.type||"modal"} grid grid-cols-1 grid-rows-[var(--dmn-dialog-header-height,_60px)_minmax(0,_1fr)_auto]"
23          size=${this.size}
24          anchor=${this.anchor}
25        >
26          <div
27            class="${this.headerClasses} bg-background px-sm py-xs sticky top-0 z-50 flex items-center justify-between"
28          >
29            <div
30              class="${this.withoutTitle?"sr-only":""} grow-1"
31              id="${this.id}-dialogTitle"
32            >
33              <slot name="header"></slot>
34            </div>
35
36            <button
37              @click=${h(this,c,p)}
38              class="ml-auto inline-flex leading-none"
39            >
40              <slot name="close-icon">
41                <svg-icon
42                  src="icon-close"
43                  style="font-size: ${this.closeIconSize}px"
44                ></svg-icon>
45                <span class="sr-only">Close</span>
46              </slot>
47            </button>
48          </div>
49          <div>${this.dialogContentHTML}</div>
50        </div>
51      </dialog>
52    `}};w=new WeakMap;c=new WeakSet;p=function(){this.closeModal(),this.open&&(this.open=!1)};n.styles=[S(P)];n.FOCUSABLE_SELECTOR='a[href], area[href], button:not([disabled]), input:not([disabled]):not([type="hidden"]), select:not([disabled]), textarea:not([disabled]), iframe, audio[controls], video[controls], [contenteditable]:not([contenteditable="false"]), [tabindex]:not([tabindex="-1"])';s([d({type:Boolean,reflect:!0})],n.prototype,"open",2);s([d({type:String})],n.prototype,"type",2);s([d({type:String,reflect:!0})],n.prototype,"size",2);s([d({type:String})],n.prototype,"anchor",2);s([d({type:Boolean,reflect:!0,attribute:"without-title"})],n.prototype,"withoutTitle",2);s([d({type:Boolean,attribute:"close-on-backdrop-click"})],n.prototype,"closeOnBackdropClick",2);s([d({type:String,attribute:"class"})],n.prototype,"class",2);s([d({type:String,attribute:"header-classes"})],n.prototype,"headerClasses",2);s([d({type:String,attribute:"parent-class"})],n.prototype,"parentClass",2);s([d({type:String,attribute:"close-icon-size"})],n.prototype,"closeIconSize",2);s([d({type:String,attribute:"url"})],n.prototype,"url",2);s([d({type:Object,reflect:!0,attribute:"url-params"})],n.prototype,"urlParams",2);s([R("dialog")],n.prototype,"dialog",2);s([M("iframe, video")],n.prototype,"iframeOrVideo",2);n=s([_("modal-dialog")],n);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.