import{f as L,D as x,r as p,E as z,h as w,s as N,g as y,i as ,ドルC as j,b as F,j as t,o as s,a as _,w as M,c as r,m as k,n,y as O,d as i,F as V,u as f,t as Z,e as S,T as A,G}from"./BVo-4L0X.js";import{z as I,D as J,F as Q,G as R,Z as W}from"./CfjfYOu4.js";import{s as X}from"./lGy7RumW.js";const Y=["src","alt"],H=["src","alt"],K={key:1,id:"modalTitle","data-test-id":"s-base-modal__title",class:"s-text-title-large ml-[16px] select-none"},P=["aria-label"],U={key:0,class:"s-modal__footer pt-[16px] lg:pt-[32px]"},ee="s-base-modal",ae=L({__name:"SBaseModal",props:{...I(),active:{required:!0,type:Boolean,default:!1},modalTitle:String,logo:{type:Boolean,default:!0},backdrop:Boolean,closeButton:{type:Boolean,default:!0,required:!1},_class:String,focusOnElementSelector:String,teleportDisabled:{type:Boolean,default:!1},closeBtnAriaLabel:{type:String,required:!1,default:"Close dialog"},wrapperClass:{type:String,required:!1},headerClass:{type:String,required:!1},contentClass:{type:String,required:!1}},emits:["close"],setup(e,{emit:B}){const v=x("schoolName"),o=p(null),g=p(!1),C=z(),l=e,T=x("siteBucket"),E=B,c=p(l.active);w(()=>l.active,async a=>{c.value=a,await N(),l.focusOnElementSelector&&o.value&&a&&setTimeout(()=>{var m,d;(d=(m=o==null?void 0:o.value)==null?void 0:m.querySelector(`${l.focusOnElementSelector}`))==null||d.focus()},300)});const u=()=>{E("close")},{themeClasses:q}=J(l,ee),D=y(()=>[q.value,{"s-base-modal--backdrop":l.backdrop,"s-base-modal--title":l.modalTitle}]),b=y(()=>Q([T,"/images/logos/site/site.png?width=120&height=120"]));$(()=>{g.value=!0});const h=a=>{(a.key==="Escape"||a.which==27)&&u()};return R()&&w(c,a=>{a?window.addEventListener("keydown",h):window.removeEventListener("keydown",h)},{immediate:!0}),(a,m)=>{const d=j("focus-trap");return g.value?(s(),F(G,{key:0,to:"body",disabled:e.teleportDisabled},[_(A,{name:"modal-fade"},{default:M(()=>[c.value?(s(),r("div",{key:0,ref_key:"componentRef",ref:o,"data-test-id":"s-base-modal__root",class:n(["s-base-modal fixed inset-0 top-0 left-0 z-[10000] flex h-full w-screen items-center justify-center",...D.value,e._class]),role:"dialog","aria-labelledby":"modalTitle",onClick:k(u,["self"])},[O(i("div",{class:n(["s-base-modal__wrapper flex flex-col bg-default-white shadow-level-3 relative z-10 m-1 max-h-full w-[96%] max-w-2xl divide-y overflow-hidden rounded-[10px] p-[16px] md:w-full lg:max-w-4xl lg:p-[32px]",e.wrapperClass])},[i("div",{class:n(["s-modal__header flex items-center pb-[16px] lg:pb-[32px]",e.headerClass])},[e.logo?(s(),r(V,{key:0},[i("img",{src:b.value,class:"!hidden h-[48px] w-[48px] lg:!block",alt:f(v)??"Site Logo"},null,8,Y),i("img",{src:b.value,class:"!block h-[24px] w-[24px] lg:!hidden",alt:f(v)??"Site Logo"},null,8,H)],64)):t("",!0),e.modalTitle?(s(),r("div",K,Z(e.modalTitle),1)):t("",!0),e.closeButton?(s(),r("button",{key:2,"data-test-id":"s-base-modal__close-button-control",class:"s-modal__header-close-button ml-auto","aria-label":e.closeBtnAriaLabel,onClick:k(u,["prevent"])},[_(W,{name:"icon-close",size:"regular"})],8,P)):t("",!0)],2),i("div",{class:n(["s-modal__content max-h-[70vh] overflow-auto py-[16px] lg:max-h-[90vh] lg:py-[32px]",e.contentClass])},[S(a.$slots,"default",{},void 0,!0)],2),f(C).footer?(s(),r("div",U,[S(a.$slots,"footer",{},void 0,!0)])):t("",!0)],2),[[d]])],2)):t("",!0)]),_:3})],8,["disabled"])):t("",!0)}}}),oe=X(ae,[["__scopeId","data-v-986d4750"]]);export{oe as default};

AltStyle によって変換されたページ (->オリジナル) /