@bobbykim/manguito-theme 1.2.0 → 1.4.0

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/CHANGELOG.md CHANGED
@@ -1,5 +1,28 @@
1
1
  # Change Log
2
2
 
3
+ ## 1.4.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 2a62c2b: Accessibility fixes from an axe and keyboard audit:
8
+ - Buttons inside `.btn-group` show the standard focus ring again (`outline: none` had removed it), and the focused button is raised so its neighbours don't cover the ring.
9
+ - `Alert`'s dismiss button is named (new `dismissLabel` prop, default "Dismiss"), hides its icon from screen readers, and no longer submits a surrounding form.
10
+ - `HeaderHorizontal`, `HeaderVertical`, `MclHeaderA` and `MclHeaderB` take `navLabel` (default "Main") for their `<nav>` landmarks and `menuLabel` (default "Menu") for the mobile menu button. The button's name no longer flips between "Open" and "Close"; `aria-expanded` carries the state.
11
+ - `MclFooterA` takes `navLabel` (default "Footer"). Its social links are plain links (no `role="button"`), get `rel="noopener noreferrer"`, and are named by site with "(opens in new tab)".
12
+
13
+ - 3a25bb5: `Modal` and `Sidebar` now close on Escape and return focus to the element that opened them. Before, Escape released the focus trap and left the dialog open. They also always get an accessible name: the `#header` slot receives a `titleId` to put on a custom heading, and a new `ariaLabel` prop names a dialog that has no visible title.
14
+
15
+ ## 1.3.0
16
+
17
+ ### Minor Changes
18
+
19
+ - c75a690: `Collapse`'s `visible` prop now works inside `AccordionGroup`: a panel that starts `visible` opens (if several do, the first one wins), and changing `visible` later opens or closes it. `Collapse` also exposes its read-only `isOpen` state through its template ref. `MclCollapseA` and `MclCollapseB` now read their header's `aria-expanded` and chevron from it, so the header no longer reports an item as expanded while its panel is closed.
20
+
21
+ ### Patch Changes
22
+
23
+ - 33b310c: Fix `Sidebar` and `Modal` ignoring backdrop clicks after a prop change re-rendered them. `vClickOutside` no longer re-registers its listener on re-renders that pass the same handler, and the dialogs' focus trap now lets outside clicks through while still trapping Tab focus.
24
+ - 048e61e: `vCollapse` now logs a warning once per page when mounted: it no longer works with any collapse component, including the base `Collapse`. It stays exported until the next major release. The README now documents `Collapse`'s `custom-class` prop (it still said `class-name`) and the `v-collapse` migration.
25
+
3
26
  ## 1.2.0
4
27
 
5
28
  ### Minor Changes
package/README.md CHANGED
@@ -151,14 +151,18 @@ The base `Collapse` component provides an animated height/opacity transition for
151
151
 
152
152
  **Props**
153
153
 
154
- | Prop | Type | Default | Description |
155
- |---|---|---|---|
156
- | `id` | `string` | auto-generated | ID used to identify the panel within an `AccordionGroup`; also rendered as the element's `id` attribute |
157
- | `visible` | `boolean` | `false` | Initial open state; reactive — updating it opens or closes the panel |
158
- | `class-name` | `string \| string[]` | `''` | CSS class(es) applied to the inner content wrapper |
154
+ | Prop | Type | Default | Description |
155
+ | -------------- | -------------------- | -------------- | --------------------------------------------------------------------------------------------------------- |
156
+ | `id` | `string` | auto-generated | ID used to identify the panel within an `AccordionGroup`; also rendered as the element's `id` attribute |
157
+ | `visible` | `boolean` | `false` | Initial open state; reactive — updating it opens or closes the panel. See the `AccordionGroup` note below |
158
+ | `custom-class` | `string \| string[]` | `''` | CSS class(es) applied to the inner content wrapper |
159
159
 
160
160
  **Exposed methods:** `open()`, `close()`, `toggle()`
161
161
 
162
+ **Exposed state:** `isOpen` (read-only `boolean`)
163
+
164
+ Inside an `AccordionGroup`, `visible` works the same way, but only one panel can be open: if several start `visible`, the first one opens. Setting `visible` to `true` later opens that panel and closes the open one.
165
+
162
166
  **Events:** `open(visible: boolean)`, `close(visible: boolean)`
163
167
 
164
168
  ---
@@ -177,7 +181,7 @@ const collapseRef = ref<InstanceType<typeof Collapse>>()
177
181
 
178
182
  <template>
179
183
  <button @click="collapseRef?.toggle()">Toggle</button>
180
- <Collapse ref="collapseRef" id="panel-1" class-name="p-4">
184
+ <Collapse ref="collapseRef" id="panel-1" custom-class="p-4">
181
185
  Collapsible content here.
182
186
  </Collapse>
183
187
  </template>
@@ -187,7 +191,7 @@ const collapseRef = ref<InstanceType<typeof Collapse>>()
187
191
 
188
192
  #### Accordion with `AccordionGroup`
189
193
 
190
- Wrap `Collapse` panels in `AccordionGroup` — each panel's `id` prop is how the group tracks which one is open. Triggers call `toggle()` via a template ref on each panel.
194
+ Wrap `Collapse` panels in `AccordionGroup` — each panel's `id` prop is how the group tracks which one is open. Triggers call `toggle()` via a template ref on each panel. To start with a panel open, set `visible` on it; if several are `visible`, the first one opens.
191
195
 
192
196
  ```vue
193
197
  <script setup lang="ts">
@@ -202,13 +206,13 @@ const panel2 = ref<InstanceType<typeof Collapse>>()
202
206
  <AccordionGroup>
203
207
  <div>
204
208
  <button @click="panel1?.toggle()">Panel 1</button>
205
- <Collapse ref="panel1" id="panel-1" class-name="p-4">
209
+ <Collapse ref="panel1" id="panel-1" custom-class="p-4">
206
210
  Content for panel 1.
207
211
  </Collapse>
208
212
  </div>
209
213
  <div>
210
214
  <button @click="panel2?.toggle()">Panel 2</button>
211
- <Collapse ref="panel2" id="panel-2" class-name="p-4">
215
+ <Collapse ref="panel2" id="panel-2" custom-class="p-4">
212
216
  Content for panel 2.
213
217
  </Collapse>
214
218
  </div>
@@ -241,9 +245,13 @@ const panelRefs = ref<InstanceType<typeof Collapse>[]>([])
241
245
  <div v-for="(item, index) in items" :key="item.id">
242
246
  <button @click="panelRefs[index]?.toggle()">{{ item.title }}</button>
243
247
  <Collapse
244
- :ref="(el) => { if (el) panelRefs[index] = el as InstanceType<typeof Collapse> }"
248
+ :ref="
249
+ (el) => {
250
+ if (el) panelRefs[index] = el as InstanceType<typeof Collapse>
251
+ }
252
+ "
245
253
  :id="item.id"
246
- class-name="p-4"
254
+ custom-class="p-4"
247
255
  >
248
256
  {{ item.content }}
249
257
  </Collapse>
@@ -278,6 +286,23 @@ import { MclCollapseA } from '@bobbykim/mcl-collapse'
278
286
 
279
287
  ### Modal and Sidebar — preferred usage patterns
280
288
 
289
+ **Accessibility.** Both trap Tab focus while open, close on Escape, and return focus to the element that opened them. Each needs an accessible name: pass `title` for the built-in header, put the `titleId` slot prop on your own heading in a custom `#header`, or pass `aria-label`.
290
+
291
+ ```vue
292
+ <Modal ref="modalRef">
293
+ <template #header="{ close, titleId }">
294
+ <h2 :id="titleId">Edit plan</h2>
295
+ <button aria-label="Close" @click="close">✕</button>
296
+ </template>
297
+ </Modal>
298
+
299
+ <Sidebar
300
+ ref="sidebarRef"
301
+ aria-label="Site menu"
302
+ :show-header="false"
303
+ >...</Sidebar>
304
+ ```
305
+
281
306
  **Imperative control via `defineExpose`:**
282
307
 
283
308
  ```vue
@@ -310,14 +335,23 @@ const isOpen = ref(false)
310
335
  </template>
311
336
  ```
312
337
 
313
- ### Deprecated directives
338
+ ### Deprecated and sunsetted directives
339
+
340
+ Both directives are still exported from `@bobbykim/manguito-theme/directives` and will be removed in the next major release.
341
+
342
+ | Directive | Status | Replacement |
343
+ | ------------ | ------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
344
+ | `v-toggle` | Deprecated. Still works on `Modal` and `Sidebar`. | `defineExpose` ref or `:visible` prop |
345
+ | `v-collapse` | **Sunsetted.** No longer works with any collapse component, including the base `Collapse`. Logs a warning once per page when mounted. | `toggle()` on a `Collapse` template ref or `:visible`; `AccordionGroup` for accordions |
346
+
347
+ **Migrating from `v-collapse`**
314
348
 
315
- The following directives are deprecated and will be removed in a future release. They remain functional for `Modal` and `Sidebar` during the transition period but **no longer work** with `MclCollapseA` or `MclCollapseB`.
349
+ | Old | New |
350
+ | ----------------------------------------- | ------------------------------------------------------------ |
351
+ | `v-collapse:<id>` on a trigger | `collapseRef.toggle()` on a template ref, or bind `:visible` |
352
+ | `accordion="<name>"` on `Collapse` panels | wrap the panels in `<AccordionGroup>` |
316
353
 
317
- | Directive | Status | Replacement |
318
- |---|---|---|
319
- | `v-toggle` | Deprecated, still functional on Modal/Sidebar | `defineExpose` ref or `:visible` prop |
320
- | `v-collapse` | Deprecated, non-functional on collapse components | `AccordionGroup` wrapper |
354
+ See [Standalone collapse](#standalone-collapse) and [Accordion with `AccordionGroup`](#accordion-with-accordiongroup) above for full examples.
321
355
 
322
356
  ## Dependencies
323
357
 
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./useModalScrollLock-BUdEkX4m.cjs");exports.observeVisibleAttr=e.observeVisibleAttr;exports.provideAccordion=e.provideAccordion;exports.useCollapseState=e.useCollapseState;exports.useModalScrollLock=e.useModalScrollLock;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./useModalScrollLock-X2enYbzG.cjs");exports.observeVisibleAttr=e.observeVisibleAttr;exports.provideAccordion=e.provideAccordion;exports.useCollapseState=e.useCollapseState;exports.useModalScrollLock=e.useModalScrollLock;
@@ -1,4 +1,4 @@
1
- import { o as s, p as a, u as r, a as l } from "./useModalScrollLock-CZPywtVE.js";
1
+ import { o as s, p as a, u as r, a as l } from "./useModalScrollLock-ONrBOk5v.js";
2
2
  export {
3
3
  s as observeVisibleAttr,
4
4
  a as provideAccordion,
package/dist/core.cjs CHANGED
@@ -1,2 +1,2 @@
1
- (function(){"use strict";try{if(typeof document<"u"){var a=document.createElement("style");a.appendChild(document.createTextNode(".slide-prev-enter-active[data-v-e9caba8a]{transition:all .5s linear}.slide-prev-leave-active[data-v-e9caba8a]{transition:all .5s}.slide-prev-enter-from[data-v-e9caba8a]{transform:translate(-100%);opacity:0}.slide-prev-leave-to[data-v-e9caba8a]{transform:translate(100%);opacity:0}.slide-next-enter-active[data-v-e9caba8a]{transition:all .5s linear}.slide-next-leave-active[data-v-e9caba8a]{transition:all .5s}.slide-next-enter-from[data-v-e9caba8a]{transform:translate(100%);opacity:0}.slide-next-leave-to[data-v-e9caba8a]{transform:translate(-100%);opacity:0}.collapse-enter-active[data-v-06457b08],.collapse-leave-active[data-v-06457b08]{transition-property:height,opacity;transition-duration:.5s;transition-timing-function:ease}.dropup-bottom[data-v-0cb1bffb]{bottom:var(--button-height)}.dropdown-content-enter-active[data-v-0cb1bffb],.dropdown-content-leave-active[data-v-0cb1bffb]{transition:all .3s}.dropdown-content-enter-from[data-v-0cb1bffb],.dropdown-content-leave-to[data-v-0cb1bffb]{opacity:0;transform:translateY(-10px)}.hamburger__icon[data-v-b0ec6d90]:before,.hamburger__icon[data-v-b0ec6d90]:after{position:absolute;left:0;transition:all .3s linear}.hamburger__icon[data-v-b0ec6d90]:before{top:-.5rem}.hamburger__icon[data-v-b0ec6d90]:after{top:.5rem}.hamburger__button:focus .hamburger__icon[data-v-b0ec6d90],.hamburger__button:hover .hamburger__icon[data-v-b0ec6d90]{scale:1.05}.hamburger__checkbox:checked+.hamburger__icon[data-v-b0ec6d90]{background-color:transparent}.hamburger__checkbox:checked+.hamburger__icon[data-v-b0ec6d90]:before{top:0;transform:rotate(135deg)}.hamburger__checkbox:checked+.hamburger__icon[data-v-b0ec6d90]:after{top:0;transform:rotate(-135deg)}.collapse-enter-active[data-v-c0638fe0]{transition:height .5s ease-in}.collapse-leave-active[data-v-c0638fe0]{transition:height .5s ease-out}.header-desktop[data-v-ebabc502]{width:100%}@media screen and (min-width:1024px){.header-desktop[data-v-ebabc502]{width:var(--header-width)}}.slide-down-enter-active[data-v-ebabc502]{transition:transform .3s ease-in .2s,opacity .5s ease-in}.slide-down-leave-active[data-v-ebabc502]{transition:transform .5s ease-in,opacity .3s ease-in .2s}.slide-down-enter-from[data-v-ebabc502],.slide-down-leave-to[data-v-ebabc502]{opacity:0;transform:translateY(-100%)}.vertical-placement[data-v-db5af4d2]{top:var(--vertical-placement);left:50%;transform:translateY(calc(-1 * var(--vertical-placement))) translate(-50%)}.fade-enter-active[data-v-db5af4d2],.fade-leave-active[data-v-db5af4d2]{transition-property:opacity;transition-duration:.3s;transition-timing-function:linear}.fade-enter-from[data-v-db5af4d2],.fade-leave-to[data-v-db5af4d2]{opacity:0}.slide-down-enter-active[data-v-db5af4d2]{animation:slide-down-db5af4d2 .3s ease}.slide-down-leave-active[data-v-db5af4d2]{animation:slide-down-db5af4d2 reverse .3s ease}@keyframes slide-down-db5af4d2{0%{opacity:0;transform:translateY(-100%) translate(-50%)}to{opacity:1;transform:translateY(calc(-1 * var(--vertical-placement))) translate(-50%)}}.sidebar-body[data-v-93dd8f8e]{width:100%}.sidebar-body-height[data-v-93dd8f8e]{min-height:calc(100vh - var(--header-height) - var(--footer-height))}.fade-enter-active[data-v-93dd8f8e],.fade-leave-active[data-v-93dd8f8e]{transition-property:opacity;transition-duration:.3s;transition-timing-function:linear}.fade-enter-from[data-v-93dd8f8e],.fade-leave-to[data-v-93dd8f8e]{opacity:0}.sidebar-left-enter-active[data-v-93dd8f8e],.sidebar-left-leave-active[data-v-93dd8f8e],.sidebar-right-enter-active[data-v-93dd8f8e],.sidebar-right-leave-active[data-v-93dd8f8e]{transition-property:transform,opacity;transition-duration:.3s;transition-timing-function:linear}.sidebar-left-enter-from[data-v-93dd8f8e],.sidebar-left-leave-to[data-v-93dd8f8e]{transform:translate(-100%)}.sidebar-right-enter-from[data-v-93dd8f8e],.sidebar-right-leave-to[data-v-93dd8f8e]{transform:translate(100%)}@media screen and (min-width:768px){.sidebar-body[data-v-93dd8f8e]{width:var(--sidebar-width)}.sidebar-left-enter-from[data-v-93dd8f8e],.sidebar-left-leave-to[data-v-93dd8f8e]{transform:translate(calc(-1 * var(--sidebar-width)))}.sidebar-right-enter-from[data-v-93dd8f8e],.sidebar-right-leave-to[data-v-93dd8f8e]{transform:translate(var(--sidebar-width))}}.container-hts[data-v-4b028d39]{max-height:var(--container-hts, none)}.slide-prev-enter-active[data-v-4b028d39]{transition:all .5s linear}.slide-prev-leave-active[data-v-4b028d39]{transition:all .5s}.slide-prev-enter-from[data-v-4b028d39]{transform:translate(-100%);opacity:0}.slide-prev-leave-to[data-v-4b028d39]{transform:translate(100%);opacity:0}.slide-next-enter-active[data-v-4b028d39]{transition:all .5s linear}.slide-next-leave-active[data-v-4b028d39]{transition:all .5s}.slide-next-enter-from[data-v-4b028d39]{transform:translate(100%);opacity:0}.slide-next-leave-to[data-v-4b028d39]{transform:translate(-100%);opacity:0}")),document.head.appendChild(a)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}})();
2
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const a=require("./index-CsKLajvY.cjs"),e=require("vue"),R=require("@vueuse/core"),E=require("./useModalScrollLock-BUdEkX4m.cjs"),G=require("./getGlassmorphismClass-DqCdKnYl.cjs"),D=require("./index-CKV6der_.cjs"),I=require("@vueuse/integrations/useFocusTrap"),_=(t,o)=>{switch(t){case"BGCOLOR":return a.bgColorVariant({color:o});case"HVBGCOLOR":return a.hoverBgColorVariant({color:o});case"FCBGCOLOR":return a.focusBgColorVariant({color:o});case"BEFOREBG":return a.beforeBgColorVariant({color:o});case"AFTERBG":return a.afterBgColorVariant({color:o});case"ACTIVEBG":return a.activeBgColorVariant({color:o});case"TEXTCOLOR":return a.textColorVariant({color:o});case"HVTEXTCOLOR":return a.hoverTextColorVariant({color:o});case"FCTEXTCOLOR":return a.focusTextColorVariant({color:o});case"DISABLEDTEXTCOLOR":return a.disabledTextColorVariant({color:o});case"SVGFILL":return a.svgFillColorVariant({color:o});case"RINGCOLOR":return a.ringColorVariant({color:o});case"FOCUSRING":return a.focusRingColorVariant({color:o});case"ACTIVERING":return a.activeRingColorVariant({color:o});case"OFFSETRING":return a.ringOffsetColorVariant({color:o});case"OUTLINE":return a.outlineColorVariant({color:o});case"FOCUSOUTLINE":return a.focusOutlineColorVariant({color:o});case"ACTIVEOUTLINE":return a.activeOutlineColorVariant({color:o});case"BTNCOLOR":return a.btnColorVariant({color:o});case"LISTCOLOR":return a.listColorVariant({color:o});case"BORDER":return a.borderColorVariant({color:o});case"BORDERX":return a.borderXColorVariant({color:o});case"BORDERY":return a.borderYColorVariant({color:o});case"BORDERT":return a.borderTopColorVariant({color:o});case"BORDERB":return a.borderBottomColorVariant({color:o});case"BORDERL":return a.borderLeftColorVariant({color:o});case"BORDERR":return a.borderRightColorVariant({color:o});case"H1":return a.h1Variant({size:o});case"H2":return a.h2Variant({size:o});case"H3":return a.h3Variant({size:o});case"H4":return a.h4Variant({size:o});case"BODYTEXT":return a.bodyTextVariant({size:o});case"FONTWEIGHT":return a.fontWeightVariant({weight:o});case"TEXTALIGN":return a.textAlignVariant({align:o});case"BORDERW":return a.borderWidthVariant({width:o});case"BORDERXW":return a.borderXWidthVariant({width:o});case"BORDERYW":return a.borderYWidthVariant({width:o});case"BORDERTW":return a.borderTopWidthVariant({width:o});case"BORDERBW":return a.borderBottomWidthVariant({width:o});case"BORDERLW":return a.borderLeftWidthVariant({width:o});case"BORDERRW":return a.borderRightWidthVariant({width:o});case"OPACITY":return a.opacityVariant({opacity:o});case"BGOPACITY":return a.bgOpacityVariant({opacity:o});case"OUTLINEOPACITY":return a.outlineOpacityVariant({opacity:o});case"MARGIN":return a.marginVariant({spacing:o});case"MARGINX":return a.marginXVariant({spacing:o});case"MARGINY":return a.marginYVariant({spacing:o});case"MARGINT":return a.marginTopVariant({spacing:o});case"MARGINB":return a.marginBottomVariant({spacing:o});case"MARGINL":return a.marginLeftVariant({spacing:o});case"MARGINR":return a.marginRightVariant({spacing:o});case"PADDING":return a.paddingVariant({spacing:o});case"PADDINGX":return a.paddingXVariant({spacing:o});case"PADDINGY":return a.paddingYVariant({spacing:o});case"PADDINGT":return a.paddingTopVariant({spacing:o});case"PADDINGB":return a.paddingBottomVariant({spacing:o});case"PADDINGL":return a.paddingLeftVariant({spacing:o});case"PADDINGR":return a.paddingRightVariant({spacing:o});case"GAP":return a.gapVariant({spacing:o});default:return""}},M=e.defineComponent({__name:"AccordionGroup",setup(t){return E.provideAccordion(),(o,u)=>(e.openBlock(),e.createElementBlock("div",null,[e.renderSlot(o.$slots,"default")]))}}),j={class:"flex w-full justify-between gap-2xs"},W={class:"w-full"},F=e.defineComponent({__name:"Alert",props:{color:{default:"danger"},rounded:{type:Boolean,default:!0},shadow:{type:Boolean,default:!0},show:{type:Boolean,default:!1},dismissible:{type:Boolean,default:!1}},emits:["close"],setup(t,{expose:o,emit:u}){const i=t;e.useSlots();const n=u,d=e.ref(i.show),r=e.computed(()=>{const{color:s,rounded:m,shadow:C}=i,g=[a.generateClass.bgColorVariant({color:s})];return m&&g.push("rounded-md"),C&&g.push("drop-shadow-md"),g.join(" ")}),c=s=>{d.value=!1,n("close",s)},l=()=>{d.value=!1};return e.watch(()=>i.show,s=>{d.value=s}),o({close:l}),(s,m)=>d.value?(e.openBlock(),e.createElementBlock("div",{key:0,role:"alert","aria-live":"polite","aria-atomic":"true",class:e.normalizeClass(["relative px-[1.25rem] py-[0.75rem]",[r.value]])},[e.createElementVNode("div",j,[e.createElementVNode("div",W,[e.renderSlot(s.$slots,"default")]),t.dismissible?(e.openBlock(),e.createElementBlock("button",{key:0,onClick:c,class:"flex items-center opacity-60 transition-opacity duration-300 ease-linear hover:opacity-40"},[...m[0]||(m[0]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 384 512",fill:"currentColor",class:"h-xs"},[e.createElementVNode("path",{d:"M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z"})],-1)])])):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0)}}),P=["src","alt"],X={key:2,class:"flex-1 px-xs pt-xs pb-2xs"},Y={key:3,class:"flex-1"},q=e.defineComponent({__name:"Card",props:{variant:{default:"light-1"},border:{type:Boolean,default:!1},borderVariant:{default:"light-4"},rounded:{type:Boolean,default:!1},shadow:{type:Boolean,default:!1},glass:{type:Boolean,default:!1},glassBlur:{default:"sm"},glassOpacity:{default:10},imageSrc:{},imageAlt:{},noImage:{type:Boolean,default:!1},noBody:{type:Boolean,default:!1},header:{},footer:{},title:{},titleVariant:{default:"dark-4"},titleSize:{default:"md"},cardClass:{default:""}},setup(t){const o=t,u=e.useSlots(),i=e.computed(()=>{const{variant:c,rounded:l,shadow:s,border:m,borderVariant:C,glass:g,glassBlur:f,glassOpacity:k}=o;return[a.generateClass.bgColorVariant({color:c}),l?"rounded-lg":"rounded-sm",s&&"drop-shadow-md",m&&"border",m&&a.generateClass.borderColorVariant({color:C}),g&&G.getGlassmorphismClass(c,f,k)].filter(Boolean).join(" ")}),n=e.computed(()=>{const{titleVariant:c,titleSize:l}=o;return[a.generateClass.textColorVariant({color:c}),a.generateClass.h3Variant({size:l})].join(" ")}),d=e.computed(()=>{const{border:c,borderVariant:l,titleVariant:s}=o;return[a.generateClass.textColorVariant({color:s}),c&&"border-b",a.generateClass.borderColorVariant({color:l})].filter(Boolean).join(" ")}),r=e.computed(()=>{const{border:c,borderVariant:l}=o;return[c&&"border-t",c&&a.generateClass.borderColorVariant({color:l})].filter(Boolean).join(" ")});return(c,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["flex h-full w-full flex-col overflow-hidden",[i.value,t.cardClass]])},[t.header||u.header?e.renderSlot(c.$slots,"header",{key:0},()=>[e.createElementVNode("div",{class:e.normalizeClass([[d.value],"px-xs py-2xs font-bold"])},[e.createElementVNode("p",null,e.toDisplayString(t.header),1)],2)]):e.createCommentVNode("",!0),t.imageSrc&&!t.noImage?(e.openBlock(),e.createElementBlock("img",{key:1,src:t.imageSrc,alt:t.imageAlt,class:"aspect-video min-w-full object-cover object-top"},null,8,P)):e.createCommentVNode("",!0),t.noBody?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",X,[e.createElementVNode("h3",{class:e.normalizeClass([[n.value],"mb-xs"])},e.toDisplayString(t.title),3),u.body?e.renderSlot(c.$slots,"body",{key:0}):e.createCommentVNode("",!0)])),t.noBody&&u.default?(e.openBlock(),e.createElementBlock("div",Y,[e.renderSlot(c.$slots,"default")])):e.createCommentVNode("",!0),t.footer||u.footer?e.renderSlot(c.$slots,"footer",{key:4},()=>[e.createElementVNode("div",{class:e.normalizeClass(["px-xs py-2xs",[r.value]])},[e.createElementVNode("p",null,e.toDisplayString(t.footer),1)],2)]):e.createCommentVNode("",!0)],2))}}),L=Symbol(),U=e.defineComponent({__name:"CarouselContainer",props:{bodyClass:{default:""},contentContainerClass:{default:""},controllerTopClass:{default:""},controllerBottomClass:{default:""},loop:{type:Boolean,default:!1}},setup(t,{expose:o}){const u=t,i=e.useSlots(),n=e.ref(0),d=e.ref([]),r=e.ref(0),c=e.ref("slide-next"),l=g=>{d.value.push(g),r.value=[...new Set(d.value)].length},s=g=>{n.value=g};e.provide(L,{activeIdx:n,setSlide:l});const m=()=>{const{loop:g}=u;g&&n.value===r.value-1?n.value=0:n.value<r.value-1&&(n.value=n.value+1)},C=()=>{const{loop:g}=u;g&&n.value===0?n.value=r.value-1:n.value>0&&(n.value=n.value-1)};return e.watch(()=>n.value,(g,f)=>{g>f||g===0&&f===r.value-1?c.value="slide-next":c.value="slide-prev"}),o({numberOfSlides:r,prev:C,next:m,setActive:s}),(g,f)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([t.bodyClass,"relative overflow-x-hidden"])},[i["controller-top"]?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(t.controllerTopClass)},[e.renderSlot(g.$slots,"controller-top",{next:m,prev:C,setActive:s,activeSlide:n.value,numberOfSlides:r.value},void 0,!0)],2)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["grid grid-cols-1 grid-rows-1",t.contentContainerClass])},[e.createVNode(e.Transition,{name:c.value},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock("div",{key:n.value,class:"col-start-1 col-end-1 row-start-1 row-end-1"},[e.renderSlot(g.$slots,"content",{},void 0,!0)]))]),_:3},8,["name"])],2),i["controller-bottom"]?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(t.controllerBottomClass)},[e.renderSlot(g.$slots,"controller-bottom",{next:m,prev:C,setActive:s,activeSlide:n.value,numberOfSlides:r.value},void 0,!0)],2)):e.createCommentVNode("",!0)],2))}}),w=(t,o)=>{const u=t.__vccOpts||t;for(const[i,n]of o)u[i]=n;return u},K=w(U,[["__scopeId","data-v-e9caba8a"]]),J=["id"],Q=e.defineComponent({__name:"CarouselContent",props:{slideNumber:{},id:{},slideClass:{default:""}},setup(t){const o=t,{activeIdx:u,setSlide:i}=e.inject(L),n=e.ref(null);i(o.slideNumber),e.useSlots();const d=e.computed(()=>{const{slideNumber:r}=o;return u.value===r});return(r,c)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{ref_key:"slideRef",ref:n,id:t.id,class:e.normalizeClass([t.slideClass,"w-full"]),role:"tabpanel",tabindex:"-1"},[e.renderSlot(r.$slots,"default")],10,J)),[[e.vShow,d.value]])}}),Z=["id"],ee=e.defineComponent({__name:"Collapse",props:{id:{},customClass:{default:""},visible:{type:Boolean,default:!1}},emits:["open","close"],setup(t,{expose:o,emit:u}){const i=t;e.useSlots();const n=u,d=i.id??e.useId(),{isOpen:r,toggle:c,open:l,close:s}=E.useCollapseState(d,e.toRef(i,"visible")),m=f=>{f.style.height="auto",f.style.opacity="0";const k=getComputedStyle(f).height;f.style.height="0px",f.offsetHeight,f.style.height=k,f.style.opacity="1"},C=f=>{f.style.height="auto",f.style.opacity="1"},g=f=>{f.style.height=getComputedStyle(f).height,f.offsetHeight,f.style.height="0px",f.style.opacity="0"};return e.watch(r,f=>{f?n("open",!0):n("close",!1)}),o({toggle:c,open:l,close:s}),(f,k)=>(e.openBlock(),e.createElementBlock("div",{id:e.unref(d)},[e.createVNode(e.Transition,{name:"collapse",tag:"div",onEnter:m,onAfterEnter:C,onLeave:g,class:"overflow-y-clip"},{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",null,[e.createElementVNode("div",{class:e.normalizeClass(t.customClass)},[e.renderSlot(f.$slots,"default",{},void 0,!0)],2)],512),[[e.vShow,e.unref(r)]])]),_:3})],8,Z))}}),te=w(ee,[["__scopeId","data-v-06457b08"]]),A=Symbol(),oe=e.defineComponent({__name:"DropdownContainer",emits:["click-outside","toggle"],setup(t,{emit:o}){e.useSlots();const u=o,i=e.ref(),n=e.ref(!1),d=e.ref(0),r=()=>{n.value=!1};e.provide(A,{active:n,buttonHeight:d,closeDropdown:r});const c=m=>{n.value=!n.value,u("toggle",m)},l=m=>{n.value=!1,u("click-outside",m)},s=()=>{n.value=!1};return e.onMounted(()=>{d.value=i.value.scrollHeight}),(m,C)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{class:"relative",ref_key:"dropdownTarget",ref:i,onKeyup:e.withKeys(s,["esc"])},[e.renderSlot(m.$slots,"toggler",{toggle:c,dropdownState:n.value}),e.renderSlot(m.$slots,"default")],32)),[[e.unref(D.vClickOutside),l]])}}),ae=e.defineComponent({__name:"DropdownContent",props:{customClass:{default:""}},setup(t){const{height:o}=R.useWindowSize();e.useSlots();const u=e.ref(),{active:i,buttonHeight:n,closeDropdown:d}=e.inject(A),r=e.computed(()=>({"--button-height":`${n}px`})),c=e.computed(()=>{if(!(!i||!u.value)&&o.value-u.value.getBoundingClientRect().bottom<0)return"dropup-bottom"});return(l,s)=>(e.openBlock(),e.createBlock(e.Transition,{name:"dropdown-content"},{default:e.withCtx(()=>[e.unref(i)?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"contentRef",ref:u,class:e.normalizeClass(["absolute my-2xs w-max max-w-[14rem] overflow-hidden",[c.value,t.customClass]]),style:e.normalizeStyle(r.value)},[e.renderSlot(l.$slots,"default",{itemClick:e.unref(d)},void 0,!0)],6)):e.createCommentVNode("",!0)]),_:3}))}}),re=w(ae,[["__scopeId","data-v-0cb1bffb"]]),le=["aria-label","aria-expanded"],ne=e.defineComponent({__name:"NavDrawer",props:{color:{default:"dark-2"},showBorder:{type:Boolean,default:!0},toggle:{type:Boolean},bgColor:{}},emits:["hbg-click"],setup(t,{emit:o}){const u=t,i=o,n=l=>{i("hbg-click",l)},d=e.computed({get(){return u.toggle},set(l){return l}}),r=(l,s,m)=>{const C=[a.generateClass.ringColorVariant({color:l}),a.generateClass.ringOffsetColorVariant({color:m})];return s&&(C.push(a.generateClass.borderColorVariant({color:l})),C.push("border")),C.join(" ")},c=l=>[a.generateClass.bgColorVariant({color:l}),a.generateClass.beforeBgColorVariant({color:l}),a.generateClass.afterBgColorVariant({color:l})].join(" ");return(l,s)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["hamburger__button aspect-square rounded-md p-3xs ring-offset-2 transition-all duration-300 ease-linear outline-none hover:opacity-70 focus:opacity-70 focus:ring-4",r(t.color,t.showBorder,t.bgColor)]),onClick:n,"aria-label":t.toggle?"Close":"Open","aria-expanded":t.toggle},[e.withDirectives(e.createElementVNode("input",{type:"checkbox","onUpdate:modelValue":s[0]||(s[0]=m=>d.value=m),class:"hamburger__checkbox hidden"},null,512),[[e.vModelCheckbox,d.value]]),e.createElementVNode("div",{class:e.normalizeClass(["hamburger__icon relative h-[3px] w-sm transition-all duration-300 ease-linear before:h-[3px] before:w-sm after:h-[3px] after:w-sm",c(t.color)])},null,2)],10,le))}}),z=w(ne,[["__scopeId","data-v-b0ec6d90"]]),se={class:"mx-xs flex flex-wrap items-center justify-between py-xs align-middle sm:max-w-[640px] md:mx-sm md:max-w-[768px] md:py-2xs lg:max-w-[1024px] xl:max-w-[1280px] 2xl:max-w-[1536px]"},ce={class:"min-h-[24px]"},ie={class:"ml-auto"},de={key:0,class:"hidden lg:block"},ue={class:"overflow-hidden lg:hidden"},me={key:0,class:"overflow-hidden"},fe={key:0},ge=e.defineComponent({__name:"HeaderHorizontal",props:{bgColor:{default:"light-1"},mobileMenuBgColor:{default:"light-2"},drawerBtnColor:{default:"dark-1"},showDrawerBorder:{type:Boolean,default:!0},fadeInOnScroll:{type:Boolean,default:!0},scrollDistance:{default:50},sticky:{default:"all"}},emits:["toggle-drawer"],setup(t,{expose:o,emit:u}){const i=t,n=e.useSlots(),d=e.ref(!1),{y:r}=R.useWindowScroll(),c=u,l=()=>{d.value=!1},s=h=>{d.value=!d.value,c("toggle-drawer",h,d.value)},m=h=>{h.style.height="auto";const p=getComputedStyle(h).height;h.style.height="0px",h.offsetHeight,h.style.height=p},C=h=>{h.style.height="auto"},g=h=>{h.style.height=getComputedStyle(h).height,h.offsetHeight,h.style.height="0px"},f=e.computed(()=>{const{bgColor:h,sticky:p}=i,y=[a.generateClass.bgColorVariant({color:h})];return p==="all"?(y.push("sticky top-0"),y.join(" ")):p==="tablet"?(y.push("md:sticky top-0"),y.join(" ")):(p==="pc"&&y.push("lg:sticky top-0"),y.join(" "))}),k=e.computed(()=>{const{fadeInOnScroll:h,scrollDistance:p}=i;return h?r.value>=p?"lg:shadow-md bg-opacity-70":"bg-opacity-100":""});return o({headerClose:l}),(h,p)=>(e.openBlock(),e.createElementBlock("header",{class:e.normalizeClass(["z-50 w-full items-center transition delay-150 duration-500 ease-in",[k.value,f.value]])},[e.createElementVNode("nav",se,[e.createElementVNode("div",ce,[e.renderSlot(h.$slots,"content",{},void 0,!0)]),e.createElementVNode("div",ie,[e.createVNode(z,{color:t.drawerBtnColor,"show-border":t.showDrawerBorder,class:"block lg:hidden",onHbgClick:s,toggle:d.value,"bg-color":t.bgColor},null,8,["color","show-border","toggle","bg-color"]),n["content-right"]?(e.openBlock(),e.createElementBlock("div",de,[e.renderSlot(h.$slots,"content-right",{},void 0,!0)])):e.createCommentVNode("",!0)])]),e.createElementVNode("div",ue,[e.createVNode(e.Transition,{name:"collapse",onEnter:m,onAfterEnter:C,onLeave:g},{default:e.withCtx(()=>[d.value?(e.openBlock(),e.createElementBlock("div",me,[e.createElementVNode("div",{class:e.normalizeClass(["mx-xs my-2xs overflow-hidden rounded-md bg-opacity-80",e.unref(a.generateClass).bgColorVariant({color:t.mobileMenuBgColor})])},[n["mobile-content"]?(e.openBlock(),e.createElementBlock("div",fe,[e.renderSlot(h.$slots,"mobile-content",{headerClose:l},void 0,!0)])):e.createCommentVNode("",!0)],2)])):e.createCommentVNode("",!0)]),_:3})])],2))}}),Ce=w(ge,[["__scopeId","data-v-c0638fe0"]]),he={class:"flex h-full flex-col justify-between"},pe={key:0},ve={key:0,class:"fixed top-0 right-0 z-50 mt-xs mr-xs block lg:hidden"},be={class:"relative z-40 block lg:hidden"},ye={key:0,class:"fixed top-0 right-0 z-50 mt-xs mr-xs block lg:hidden"},ke={key:0,class:"h-full"},Be=e.defineComponent({__name:"HeaderVertical",props:{bgColor:{default:"light-1"},drawerBtnColor:{default:"dark-1"},showDrawerBorder:{type:Boolean,default:!0},headerWidth:{default:160}},emits:["toggle-drawer"],setup(t,{expose:o,emit:u}){const i=t,n=e.useSlots(),d=u,r=e.ref(!1),c=e.ref(!1),l=C=>{r.value=!r.value,d("toggle-drawer",C,r.value)},s=()=>{r.value=!1},m=e.computed(()=>({"--header-width":`${i.headerWidth}px`}));return e.onMounted(()=>{c.value=!0;const C=R.useScrollLock(document);e.watch(r,g=>{C.value=g})}),o({headerClose:s}),(C,g)=>(e.openBlock(),e.createElementBlock("header",{class:"relative",style:e.normalizeStyle(m.value)},[e.createElementVNode("nav",{class:e.normalizeClass(["header-desktop hidden overflow-y-scroll overscroll-contain py-sm lg:sticky lg:top-0 lg:left-0 lg:block lg:h-[100vh]",[e.unref(a.generateClass).bgColorVariant({color:t.bgColor})]])},[e.createElementVNode("div",he,[e.createElementVNode("div",null,[e.renderSlot(C.$slots,"content",{},void 0,!0)]),n["content-bottom"]?(e.openBlock(),e.createElementBlock("div",pe,[e.renderSlot(C.$slots,"content-bottom",{},void 0,!0)])):e.createCommentVNode("",!0)])],2),n["mobile-content"]&&!c.value?(e.openBlock(),e.createElementBlock("div",ve,[e.createVNode(z,{color:t.drawerBtnColor,"show-border":t.showDrawerBorder,class:"relative block lg:hidden",onHbgClick:l,toggle:r.value,"bg-color":t.bgColor},null,8,["color","show-border","toggle","bg-color"])])):e.createCommentVNode("",!0),c.value?(e.openBlock(),e.createBlock(e.Teleport,{key:1,to:"body"},[e.createElementVNode("div",be,[n["mobile-content"]?(e.openBlock(),e.createElementBlock("div",ye,[e.createVNode(z,{color:t.drawerBtnColor,"show-border":t.showDrawerBorder,class:"relative block lg:hidden",onHbgClick:l,toggle:r.value,"bg-color":t.bgColor},null,8,["color","show-border","toggle","bg-color"])])):e.createCommentVNode("",!0),e.createVNode(e.Transition,{name:"slide-down",appear:""},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createElementBlock("nav",{key:0,class:e.normalizeClass(["fixed inset-0 overflow-y-scroll overscroll-contain px-sm py-lg",e.unref(a.generateClass).bgColorVariant({color:t.bgColor})])},[n["mobile-content"]?(e.openBlock(),e.createElementBlock("div",ke,[e.renderSlot(C.$slots,"mobile-content",{headerClose:s},void 0,!0)])):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0)]),_:3})])])):e.createCommentVNode("",!0)],4))}}),Ve=w(Be,[["__scopeId","data-v-ebabc502"]]),we=["visible"],xe=["aria-labelledby"],Ee={key:0,class:"sticky top-0"},Ne=["id"],Se={key:1,class:"sticky bottom-0"},Re=e.defineComponent({__name:"Modal",props:{title:{},titleColor:{default:"dark-3"},customClass:{default:""},visible:{type:Boolean,default:!1},showBackdrop:{type:Boolean,default:!0},showHeader:{type:Boolean,default:!0},color:{default:"light-1"},backdropColor:{default:"dark-4"},placement:{default:"center"},width:{default:"small"}},emits:["open","close"],setup(t,{expose:o,emit:u}){const i=t,n=e.useSlots(),d=u,r=e.ref(),c=e.ref(),l=e.ref(i.visible),s=e.ref(!1),m=e.useId();let C=null;const{activate:g,deactivate:f}=I.useFocusTrap(c,{immediate:!1}),k=()=>{l.value=!l.value},h=()=>{l.value=!0},p=()=>{s.value===!0&&(l.value=!1)},y=()=>{d("open",!0)},B=()=>{d("close",!1)},O=e.computed(()=>{const v={top:25,center:50,bottom:75},{placement:V}=i;return{"--vertical-placement":(v[V]??v.center)+"%"}}),$=e.computed(()=>{const{width:v}=i,V={small:"max-w-[28rem]",medium:"max-w-[28rem] md:max-w-[36rem]",large:"max-w-[28rem] md:max-w-[56rem]"};return V[v]??V.small}),N=()=>{s.value=!0,c.value&&g()},T=()=>{s.value=!1};e.onMounted(()=>{l.value&&!s.value&&N()});const S=(v=!1)=>{l.value=v};return E.observeVisibleAttr(r,S),e.watch(()=>i.visible,v=>{l.value=v}),e.watch(l,v=>{v===!0?(typeof document<"u"&&(C=document.activeElement),y()):v===!1&&(f(),C?.focus(),C=null,s.value===!0&&B())}),E.useModalScrollLock(l),o({toggle:k,close:p,open:h}),(v,V)=>(e.openBlock(),e.createElementBlock("div",{style:e.normalizeStyle(O.value),visible:l.value,ref_key:"modalRef",ref:r},[t.showBackdrop?(e.openBlock(),e.createBlock(e.Transition,{key:0,name:"fade",appear:"",tag:"div"},{default:e.withCtx(()=>[l.value?(e.openBlock(),e.createElementBlock("section",{key:0,onClick:p,"aria-hidden":"true",class:e.normalizeClass(["fixed inset-0 z-[100] overflow-y-auto backdrop-blur bg-opacity-70",e.unref(a.generateClass).bgColorVariant({color:t.backdropColor})])},null,2)):e.createCommentVNode("",!0)]),_:1})):e.createCommentVNode("",!0),e.createVNode(e.Transition,{name:"slide-down",tag:"div",onAfterEnter:N,onAfterLeave:T,appear:""},{default:e.withCtx(()=>[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["vertical-placement fixed z-[110] w-full px-xs",$.value])},[e.withDirectives((e.openBlock(),e.createElementBlock("div",{ref_key:"dialogRef",ref:c,role:"dialog","aria-modal":"true","aria-labelledby":t.title?e.unref(m):void 0,class:e.normalizeClass([[e.unref(a.generateClass).bgColorVariant({color:t.color}),t.customClass],"relative max-h-[80vh] overflow-y-scroll overscroll-contain md:max-h-[60vh]"])},[t.showHeader?(e.openBlock(),e.createElementBlock("div",Ee,[e.renderSlot(v.$slots,"header",{close:p,status:l.value},()=>[e.createElementVNode("div",{class:e.normalizeClass(["flex items-center justify-between border-b-2 border-b-light-4 p-xs",e.unref(a.generateClass).bgColorVariant({color:t.color})])},[t.title?(e.openBlock(),e.createElementBlock("h3",{key:0,id:e.unref(m),class:e.normalizeClass(["h3-md",e.unref(a.generateClass).textColorVariant({color:t.titleColor})])},e.toDisplayString(t.title),11,Ne)):e.createCommentVNode("",!0),e.createElementVNode("button",{type:"button","aria-label":"Close",onClick:p},[(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 384 512","aria-hidden":"true",class:e.normalizeClass(["h-sm transition-opacity duration-300 ease-in hover:opacity-75 focus:opacity-75",[e.unref(a.generateClass).svgFillColorVariant({color:t.titleColor})]])},[...V[0]||(V[0]=[e.createElementVNode("path",{d:"M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z"},null,-1)])],2))])],2)],!0)])):e.createCommentVNode("",!0),e.renderSlot(v.$slots,"body",{close:p,status:l.value},void 0,!0),n.footer?(e.openBlock(),e.createElementBlock("div",Se,[e.renderSlot(v.$slots,"footer",{close:p,status:l.value},void 0,!0)])):e.createCommentVNode("",!0)],10,xe)),[[e.unref(D.vClickOutside),p]])],2)):e.createCommentVNode("",!0)]),_:3})],12,we))}}),Oe=w(Re,[["__scopeId","data-v-db5af4d2"]]),$e=["visible"],Te=["aria-labelledby"],ze=["id"],De={class:"sidebar-body-height"},Ie=e.defineComponent({__name:"Sidebar",props:{title:{},titleColor:{default:"dark-3"},customClass:{default:""},visible:{type:Boolean,default:!1},showBackdrop:{type:Boolean,default:!0},showHeader:{type:Boolean,default:!0},color:{default:"light-1"},backdropColor:{default:"dark-4"},placement:{default:"left"},width:{default:300}},emits:["open","close"],setup(t,{expose:o,emit:u}){const i=t,n=e.useSlots(),d=u,r=e.ref(i.visible),c=e.ref(!1),l=e.ref(),s=e.ref(),m=e.ref(),C=e.ref(),g=e.useId();let f=null;const{activate:k,deactivate:h}=I.useFocusTrap(s,{immediate:!1}),p=()=>{r.value=!r.value},y=()=>{r.value=!0},B=()=>{c.value===!0&&(r.value=!1)},O=()=>{d("open",!0)},$=()=>{d("close",!1)},N=e.computed(()=>{const b=x=>x&&r.value?`${x.scrollHeight}px`:"0px";return{"--sidebar-width":`${i.width}px`,"--header-height":b(m.value),"--footer-height":b(C.value)}}),T=e.computed(()=>i.placement==="left"?"sidebar-left":"sidebar-right"),S=()=>{c.value=!0,s.value&&k()},v=()=>{c.value=!1};e.onMounted(()=>{r.value&&!c.value&&S()});const V=(b=!1)=>{r.value=b};return E.observeVisibleAttr(l,V),e.watch(()=>i.visible,b=>{r.value=b}),e.watch(r,b=>{b===!0?(typeof document<"u"&&(f=document.activeElement),O()):b===!1&&(h(),f?.focus(),f=null,c.value===!0&&$())}),E.useModalScrollLock(r),o({toggle:p,open:y,close:B}),(b,x)=>(e.openBlock(),e.createElementBlock("div",{style:e.normalizeStyle(N.value),visible:r.value,ref_key:"sidebarRef",ref:l},[t.showBackdrop?(e.openBlock(),e.createBlock(e.Transition,{key:0,name:"fade",appear:"",tag:"div"},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createElementBlock("section",{key:0,onClick:B,"aria-hidden":"true",class:e.normalizeClass(["fixed inset-0 z-[100] overflow-y-auto backdrop-blur bg-opacity-70",e.unref(a.generateClass).bgColorVariant({color:t.backdropColor})])},null,2)):e.createCommentVNode("",!0)]),_:1})):e.createCommentVNode("",!0),e.createVNode(e.Transition,{name:T.value,onAfterEnter:S,onAfterLeave:v,appear:""},{default:e.withCtx(()=>[r.value?e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"dialogRef",ref:s,role:"dialog","aria-modal":"true","aria-labelledby":t.title?e.unref(g):void 0,class:e.normalizeClass(["sidebar-body fixed inset-y-0 z-[110] h-full overflow-hidden shadow",[t.placement==="left"?"left-0":"right-0"]])},[e.createElementVNode("div",{class:e.normalizeClass(["relative h-full overflow-y-scroll overscroll-contain",[e.unref(a.generateClass).bgColorVariant({color:t.color}),t.customClass]])},[t.showHeader?(e.openBlock(),e.createElementBlock("div",{key:0,class:"sticky top-0 z-10",ref_key:"headerRef",ref:m},[e.renderSlot(b.$slots,"header",{close:B,status:r.value},()=>[e.createElementVNode("div",{class:e.normalizeClass(["flex items-center justify-between p-xs",e.unref(a.generateClass).bgColorVariant({color:t.color})])},[t.placement==="right"?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button","aria-label":"Close",onClick:B},[(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 384 512","aria-hidden":"true",class:e.normalizeClass(["h-sm transition-opacity duration-300 ease-in hover:opacity-75 focus:opacity-75",[e.unref(a.generateClass).svgFillColorVariant({color:t.titleColor})]])},[...x[0]||(x[0]=[e.createElementVNode("path",{d:"M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z"},null,-1)])],2))])):e.createCommentVNode("",!0),t.title?(e.openBlock(),e.createElementBlock("h3",{key:1,id:e.unref(g),class:e.normalizeClass(["h3-md",e.unref(a.generateClass).textColorVariant({color:t.titleColor})])},e.toDisplayString(t.title),11,ze)):e.createCommentVNode("",!0),t.placement==="left"?(e.openBlock(),e.createElementBlock("button",{key:2,type:"button","aria-label":"Close",onClick:B},[(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 384 512","aria-hidden":"true",class:e.normalizeClass(["h-sm transition-opacity duration-300 ease-in hover:opacity-75 focus:opacity-75",[e.unref(a.generateClass).svgFillColorVariant({color:t.titleColor})]])},[...x[1]||(x[1]=[e.createElementVNode("path",{d:"M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z"},null,-1)])],2))])):e.createCommentVNode("",!0)],2)],!0)],512)):e.createCommentVNode("",!0),e.createElementVNode("div",De,[e.renderSlot(b.$slots,"body",{close:B,status:r.value},void 0,!0)]),n.footer?(e.openBlock(),e.createElementBlock("div",{key:1,class:"sticky bottom-0",ref_key:"footerRef",ref:C},[e.renderSlot(b.$slots,"footer",{close:B,status:r.value},void 0,!0)],512)):e.createCommentVNode("",!0)],2)],10,Te)),[[e.unref(D.vClickOutside),B]]):e.createCommentVNode("",!0)]),_:3},8,["name"])],12,$e))}}),Le=w(Ie,[["__scopeId","data-v-93dd8f8e"]]),H=Symbol(),Ae={class:"container-hts grid grid-cols-1 grid-rows-1 transition-[max-height] duration-300"},He=e.defineComponent({__name:"TabContainer",props:{bodyClass:{default:""},btnContainerClass:{default:""},contentContainerClass:{default:""}},setup(t,{expose:o}){e.useSlots();const u=e.ref(0),i=e.ref(0),n=e.ref(!1),d=e.ref("slide-next"),r=s=>{s>0&&(n.value=!0),i.value=s};e.provide(H,{activeTabIdx:u,containerHeight:i,updateHeight:r});const c=s=>{u.value=s},l=e.computed(()=>n.value?{"--container-hts":`${i.value}px`}:void 0);return o({update:c}),e.watch(()=>u.value,(s,m)=>{s>m?d.value="slide-next":d.value="slide-prev"}),(s,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.bodyClass),style:e.normalizeStyle(l.value)},[e.createElementVNode("div",{class:e.normalizeClass(t.btnContainerClass),role:"tablist"},[e.renderSlot(s.$slots,"tab-button",{update:c,activeTab:u.value},void 0,!0)],2),e.createElementVNode("div",{class:e.normalizeClass(t.contentContainerClass)},[e.createElementVNode("div",Ae,[e.createVNode(e.Transition,{name:d.value},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock("div",{key:u.value,class:"relative col-start-1 col-end-1 row-start-1 row-end-1"},[e.renderSlot(s.$slots,"tab-content",{},void 0,!0)]))]),_:3},8,["name"])])],2)],6))}}),Ge=w(He,[["__scopeId","data-v-4b028d39"]]),_e=["id"],Me=e.defineComponent({__name:"TabContent",props:{tabNumber:{},id:{},tabClass:{default:""}},setup(t){const o=t,{activeTabIdx:u,updateHeight:i}=e.inject(H),n=e.ref(null),{height:d}=R.useElementSize(n),r=e.computed(()=>u.value===o.tabNumber?(i(d.value),!0):!1);return(c,l)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{ref_key:"slotRef",ref:n,id:t.id,class:e.normalizeClass([t.tabClass,"w-full"]),role:"tabpanel",tabindex:"-1"},[e.renderSlot(c.$slots,"default")],10,_e)),[[e.vShow,r.value]])}});exports.generateClass=a.generateClass;exports.AccordionGroup=M;exports.Alert=F;exports.Card=q;exports.CarouselContainer=K;exports.CarouselContent=Q;exports.Collapse=te;exports.DropdownContainer=oe;exports.DropdownContent=re;exports.HeaderHorizontal=Ce;exports.HeaderVertical=Ve;exports.Modal=Oe;exports.Sidebar=Le;exports.TabContainer=Ge;exports.TabContent=Me;exports.default=_;
1
+ (function(){"use strict";try{if(typeof document<"u"){var a=document.createElement("style");a.appendChild(document.createTextNode(".slide-prev-enter-active[data-v-e9caba8a]{transition:all .5s linear}.slide-prev-leave-active[data-v-e9caba8a]{transition:all .5s}.slide-prev-enter-from[data-v-e9caba8a]{transform:translate(-100%);opacity:0}.slide-prev-leave-to[data-v-e9caba8a]{transform:translate(100%);opacity:0}.slide-next-enter-active[data-v-e9caba8a]{transition:all .5s linear}.slide-next-leave-active[data-v-e9caba8a]{transition:all .5s}.slide-next-enter-from[data-v-e9caba8a]{transform:translate(100%);opacity:0}.slide-next-leave-to[data-v-e9caba8a]{transform:translate(-100%);opacity:0}.collapse-enter-active[data-v-7c910f65],.collapse-leave-active[data-v-7c910f65]{transition-property:height,opacity;transition-duration:.5s;transition-timing-function:ease}.dropup-bottom[data-v-dd0b7b7b]{bottom:var(--button-height)}.dropdown-content-enter-active[data-v-dd0b7b7b],.dropdown-content-leave-active[data-v-dd0b7b7b]{transition:all .3s}.dropdown-content-enter-from[data-v-dd0b7b7b],.dropdown-content-leave-to[data-v-dd0b7b7b]{opacity:0;transform:translateY(-10px)}.hamburger__icon[data-v-5904b04a]:before,.hamburger__icon[data-v-5904b04a]:after{position:absolute;left:0;transition:all .3s linear}.hamburger__icon[data-v-5904b04a]:before{top:-.5rem}.hamburger__icon[data-v-5904b04a]:after{top:.5rem}.hamburger__button:focus .hamburger__icon[data-v-5904b04a],.hamburger__button:hover .hamburger__icon[data-v-5904b04a]{scale:1.05}.hamburger__checkbox:checked+.hamburger__icon[data-v-5904b04a]{background-color:transparent}.hamburger__checkbox:checked+.hamburger__icon[data-v-5904b04a]:before{top:0;transform:rotate(135deg)}.hamburger__checkbox:checked+.hamburger__icon[data-v-5904b04a]:after{top:0;transform:rotate(-135deg)}.collapse-enter-active[data-v-fb1e97dd]{transition:height .5s ease-in}.collapse-leave-active[data-v-fb1e97dd]{transition:height .5s ease-out}.header-desktop[data-v-a2d7d11b]{width:100%}@media screen and (min-width:1024px){.header-desktop[data-v-a2d7d11b]{width:var(--header-width)}}.slide-down-enter-active[data-v-a2d7d11b]{transition:transform .3s ease-in .2s,opacity .5s ease-in}.slide-down-leave-active[data-v-a2d7d11b]{transition:transform .5s ease-in,opacity .3s ease-in .2s}.slide-down-enter-from[data-v-a2d7d11b],.slide-down-leave-to[data-v-a2d7d11b]{opacity:0;transform:translateY(-100%)}.vertical-placement[data-v-9730e4f1]{top:var(--vertical-placement);left:50%;transform:translateY(calc(-1 * var(--vertical-placement))) translate(-50%)}.fade-enter-active[data-v-9730e4f1],.fade-leave-active[data-v-9730e4f1]{transition-property:opacity;transition-duration:.3s;transition-timing-function:linear}.fade-enter-from[data-v-9730e4f1],.fade-leave-to[data-v-9730e4f1]{opacity:0}.slide-down-enter-active[data-v-9730e4f1]{animation:slide-down-9730e4f1 .3s ease}.slide-down-leave-active[data-v-9730e4f1]{animation:slide-down-9730e4f1 reverse .3s ease}@keyframes slide-down-9730e4f1{0%{opacity:0;transform:translateY(-100%) translate(-50%)}to{opacity:1;transform:translateY(calc(-1 * var(--vertical-placement))) translate(-50%)}}.sidebar-body[data-v-658499cf]{width:100%}.sidebar-body-height[data-v-658499cf]{min-height:calc(100vh - var(--header-height) - var(--footer-height))}.fade-enter-active[data-v-658499cf],.fade-leave-active[data-v-658499cf]{transition-property:opacity;transition-duration:.3s;transition-timing-function:linear}.fade-enter-from[data-v-658499cf],.fade-leave-to[data-v-658499cf]{opacity:0}.sidebar-left-enter-active[data-v-658499cf],.sidebar-left-leave-active[data-v-658499cf],.sidebar-right-enter-active[data-v-658499cf],.sidebar-right-leave-active[data-v-658499cf]{transition-property:transform,opacity;transition-duration:.3s;transition-timing-function:linear}.sidebar-left-enter-from[data-v-658499cf],.sidebar-left-leave-to[data-v-658499cf]{transform:translate(-100%)}.sidebar-right-enter-from[data-v-658499cf],.sidebar-right-leave-to[data-v-658499cf]{transform:translate(100%)}@media screen and (min-width:768px){.sidebar-body[data-v-658499cf]{width:var(--sidebar-width)}.sidebar-left-enter-from[data-v-658499cf],.sidebar-left-leave-to[data-v-658499cf]{transform:translate(calc(-1 * var(--sidebar-width)))}.sidebar-right-enter-from[data-v-658499cf],.sidebar-right-leave-to[data-v-658499cf]{transform:translate(var(--sidebar-width))}}.container-hts[data-v-2d9322d9]{max-height:var(--container-hts, none)}.slide-prev-enter-active[data-v-2d9322d9]{transition:all .5s linear}.slide-prev-leave-active[data-v-2d9322d9]{transition:all .5s}.slide-prev-enter-from[data-v-2d9322d9]{transform:translate(-100%);opacity:0}.slide-prev-leave-to[data-v-2d9322d9]{transform:translate(100%);opacity:0}.slide-next-enter-active[data-v-2d9322d9]{transition:all .5s linear}.slide-next-leave-active[data-v-2d9322d9]{transition:all .5s}.slide-next-enter-from[data-v-2d9322d9]{transform:translate(100%);opacity:0}.slide-next-leave-to[data-v-2d9322d9]{transform:translate(-100%);opacity:0}")),document.head.appendChild(a)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}})();
2
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const a=require("./index-CsKLajvY.cjs"),e=require("vue"),R=require("@vueuse/core"),E=require("./useModalScrollLock-X2enYbzG.cjs"),G=require("./getGlassmorphismClass-DqCdKnYl.cjs"),z=require("./index-BjeE_nEZ.cjs"),I=require("@vueuse/integrations/useFocusTrap"),j=(t,o)=>{switch(t){case"BGCOLOR":return a.bgColorVariant({color:o});case"HVBGCOLOR":return a.hoverBgColorVariant({color:o});case"FCBGCOLOR":return a.focusBgColorVariant({color:o});case"BEFOREBG":return a.beforeBgColorVariant({color:o});case"AFTERBG":return a.afterBgColorVariant({color:o});case"ACTIVEBG":return a.activeBgColorVariant({color:o});case"TEXTCOLOR":return a.textColorVariant({color:o});case"HVTEXTCOLOR":return a.hoverTextColorVariant({color:o});case"FCTEXTCOLOR":return a.focusTextColorVariant({color:o});case"DISABLEDTEXTCOLOR":return a.disabledTextColorVariant({color:o});case"SVGFILL":return a.svgFillColorVariant({color:o});case"RINGCOLOR":return a.ringColorVariant({color:o});case"FOCUSRING":return a.focusRingColorVariant({color:o});case"ACTIVERING":return a.activeRingColorVariant({color:o});case"OFFSETRING":return a.ringOffsetColorVariant({color:o});case"OUTLINE":return a.outlineColorVariant({color:o});case"FOCUSOUTLINE":return a.focusOutlineColorVariant({color:o});case"ACTIVEOUTLINE":return a.activeOutlineColorVariant({color:o});case"BTNCOLOR":return a.btnColorVariant({color:o});case"LISTCOLOR":return a.listColorVariant({color:o});case"BORDER":return a.borderColorVariant({color:o});case"BORDERX":return a.borderXColorVariant({color:o});case"BORDERY":return a.borderYColorVariant({color:o});case"BORDERT":return a.borderTopColorVariant({color:o});case"BORDERB":return a.borderBottomColorVariant({color:o});case"BORDERL":return a.borderLeftColorVariant({color:o});case"BORDERR":return a.borderRightColorVariant({color:o});case"H1":return a.h1Variant({size:o});case"H2":return a.h2Variant({size:o});case"H3":return a.h3Variant({size:o});case"H4":return a.h4Variant({size:o});case"BODYTEXT":return a.bodyTextVariant({size:o});case"FONTWEIGHT":return a.fontWeightVariant({weight:o});case"TEXTALIGN":return a.textAlignVariant({align:o});case"BORDERW":return a.borderWidthVariant({width:o});case"BORDERXW":return a.borderXWidthVariant({width:o});case"BORDERYW":return a.borderYWidthVariant({width:o});case"BORDERTW":return a.borderTopWidthVariant({width:o});case"BORDERBW":return a.borderBottomWidthVariant({width:o});case"BORDERLW":return a.borderLeftWidthVariant({width:o});case"BORDERRW":return a.borderRightWidthVariant({width:o});case"OPACITY":return a.opacityVariant({opacity:o});case"BGOPACITY":return a.bgOpacityVariant({opacity:o});case"OUTLINEOPACITY":return a.outlineOpacityVariant({opacity:o});case"MARGIN":return a.marginVariant({spacing:o});case"MARGINX":return a.marginXVariant({spacing:o});case"MARGINY":return a.marginYVariant({spacing:o});case"MARGINT":return a.marginTopVariant({spacing:o});case"MARGINB":return a.marginBottomVariant({spacing:o});case"MARGINL":return a.marginLeftVariant({spacing:o});case"MARGINR":return a.marginRightVariant({spacing:o});case"PADDING":return a.paddingVariant({spacing:o});case"PADDINGX":return a.paddingXVariant({spacing:o});case"PADDINGY":return a.paddingYVariant({spacing:o});case"PADDINGT":return a.paddingTopVariant({spacing:o});case"PADDINGB":return a.paddingBottomVariant({spacing:o});case"PADDINGL":return a.paddingLeftVariant({spacing:o});case"PADDINGR":return a.paddingRightVariant({spacing:o});case"GAP":return a.gapVariant({spacing:o});default:return""}},W=e.defineComponent({__name:"AccordionGroup",setup(t){return E.provideAccordion(),(o,u)=>(e.openBlock(),e.createElementBlock("div",null,[e.renderSlot(o.$slots,"default")]))}}),_={class:"flex w-full justify-between gap-2xs"},F={class:"w-full"},P=["aria-label"],X=e.defineComponent({__name:"Alert",props:{color:{default:"danger"},rounded:{type:Boolean,default:!0},shadow:{type:Boolean,default:!0},show:{type:Boolean,default:!1},dismissible:{type:Boolean,default:!1},dismissLabel:{default:"Dismiss"}},emits:["close"],setup(t,{expose:o,emit:u}){const s=t,l=u,d=e.ref(s.show),r=e.computed(()=>{const{color:c,rounded:m,shadow:h}=s,f=[a.generateClass.bgColorVariant({color:c})];return m&&f.push("rounded-md"),h&&f.push("drop-shadow-md"),f.join(" ")}),i=c=>{d.value=!1,l("close",c)},n=()=>{d.value=!1};return e.watch(()=>s.show,c=>{d.value=c}),o({close:n}),(c,m)=>d.value?(e.openBlock(),e.createElementBlock("div",{key:0,role:"alert","aria-live":"polite","aria-atomic":"true",class:e.normalizeClass(["relative px-[1.25rem] py-[0.75rem]",[r.value]])},[e.createElementVNode("div",_,[e.createElementVNode("div",F,[e.renderSlot(c.$slots,"default")]),t.dismissible?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button","aria-label":t.dismissLabel,onClick:i,class:"flex items-center opacity-60 transition-opacity duration-300 ease-linear hover:opacity-40"},[...m[0]||(m[0]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 384 512",fill:"currentColor","aria-hidden":"true",focusable:"false",class:"h-xs"},[e.createElementVNode("path",{d:"M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z"})],-1)])],8,P)):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0)}}),Y=["src","alt"],q={key:2,class:"flex-1 px-xs pt-xs pb-2xs"},U={key:3,class:"flex-1"},K=e.defineComponent({__name:"Card",props:{variant:{default:"light-1"},border:{type:Boolean,default:!1},borderVariant:{default:"light-4"},rounded:{type:Boolean,default:!1},shadow:{type:Boolean,default:!1},glass:{type:Boolean,default:!1},glassBlur:{default:"sm"},glassOpacity:{default:10},imageSrc:{},imageAlt:{},noImage:{type:Boolean,default:!1},noBody:{type:Boolean,default:!1},header:{},footer:{},title:{},titleVariant:{default:"dark-4"},titleSize:{default:"md"},cardClass:{default:""}},setup(t){const o=t,u=e.useSlots(),s=e.computed(()=>{const{variant:i,rounded:n,shadow:c,border:m,borderVariant:h,glass:f,glassBlur:g,glassOpacity:y}=o;return[a.generateClass.bgColorVariant({color:i}),n?"rounded-lg":"rounded-sm",c&&"drop-shadow-md",m&&"border",m&&a.generateClass.borderColorVariant({color:h}),f&&G.getGlassmorphismClass(i,g,y)].filter(Boolean).join(" ")}),l=e.computed(()=>{const{titleVariant:i,titleSize:n}=o;return[a.generateClass.textColorVariant({color:i}),a.generateClass.h3Variant({size:n})].join(" ")}),d=e.computed(()=>{const{border:i,borderVariant:n,titleVariant:c}=o;return[a.generateClass.textColorVariant({color:c}),i&&"border-b",a.generateClass.borderColorVariant({color:n})].filter(Boolean).join(" ")}),r=e.computed(()=>{const{border:i,borderVariant:n}=o;return[i&&"border-t",i&&a.generateClass.borderColorVariant({color:n})].filter(Boolean).join(" ")});return(i,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["flex h-full w-full flex-col overflow-hidden",[s.value,t.cardClass]])},[t.header||u.header?e.renderSlot(i.$slots,"header",{key:0},()=>[e.createElementVNode("div",{class:e.normalizeClass([[d.value],"px-xs py-2xs font-bold"])},[e.createElementVNode("p",null,e.toDisplayString(t.header),1)],2)]):e.createCommentVNode("",!0),t.imageSrc&&!t.noImage?(e.openBlock(),e.createElementBlock("img",{key:1,src:t.imageSrc,alt:t.imageAlt,class:"aspect-video min-w-full object-cover object-top"},null,8,Y)):e.createCommentVNode("",!0),t.noBody?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",q,[e.createElementVNode("h3",{class:e.normalizeClass([[l.value],"mb-xs"])},e.toDisplayString(t.title),3),u.body?e.renderSlot(i.$slots,"body",{key:0}):e.createCommentVNode("",!0)])),t.noBody&&u.default?(e.openBlock(),e.createElementBlock("div",U,[e.renderSlot(i.$slots,"default")])):e.createCommentVNode("",!0),t.footer||u.footer?e.renderSlot(i.$slots,"footer",{key:4},()=>[e.createElementVNode("div",{class:e.normalizeClass(["px-xs py-2xs",[r.value]])},[e.createElementVNode("p",null,e.toDisplayString(t.footer),1)],2)]):e.createCommentVNode("",!0)],2))}}),A=Symbol(),J=e.defineComponent({__name:"CarouselContainer",props:{bodyClass:{default:""},contentContainerClass:{default:""},controllerTopClass:{default:""},controllerBottomClass:{default:""},loop:{type:Boolean,default:!1}},setup(t,{expose:o}){const u=t,s=e.useSlots(),l=e.ref(0),d=e.ref([]),r=e.ref(0),i=e.ref("slide-next"),n=f=>{d.value.push(f),r.value=[...new Set(d.value)].length},c=f=>{l.value=f};e.provide(A,{activeIdx:l,setSlide:n});const m=()=>{const{loop:f}=u;f&&l.value===r.value-1?l.value=0:l.value<r.value-1&&(l.value=l.value+1)},h=()=>{const{loop:f}=u;f&&l.value===0?l.value=r.value-1:l.value>0&&(l.value=l.value-1)};return e.watch(()=>l.value,(f,g)=>{f>g||f===0&&g===r.value-1?i.value="slide-next":i.value="slide-prev"}),o({numberOfSlides:r,prev:h,next:m,setActive:c}),(f,g)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([t.bodyClass,"relative overflow-x-hidden"])},[s["controller-top"]?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(t.controllerTopClass)},[e.renderSlot(f.$slots,"controller-top",{next:m,prev:h,setActive:c,activeSlide:l.value,numberOfSlides:r.value},void 0,!0)],2)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["grid grid-cols-1 grid-rows-1",t.contentContainerClass])},[e.createVNode(e.Transition,{name:i.value},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock("div",{key:l.value,class:"col-start-1 col-end-1 row-start-1 row-end-1"},[e.renderSlot(f.$slots,"content",{},void 0,!0)]))]),_:3},8,["name"])],2),s["controller-bottom"]?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(t.controllerBottomClass)},[e.renderSlot(f.$slots,"controller-bottom",{next:m,prev:h,setActive:c,activeSlide:l.value,numberOfSlides:r.value},void 0,!0)],2)):e.createCommentVNode("",!0)],2))}}),w=(t,o)=>{const u=t.__vccOpts||t;for(const[s,l]of o)u[s]=l;return u},Q=w(J,[["__scopeId","data-v-e9caba8a"]]),Z=["id"],ee=e.defineComponent({__name:"CarouselContent",props:{slideNumber:{},id:{},slideClass:{default:""}},setup(t){const o=t,{activeIdx:u,setSlide:s}=e.inject(A);s(o.slideNumber);const l=e.computed(()=>{const{slideNumber:d}=o;return u.value===d});return(d,r)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{ref:"slideRef",id:t.id,class:e.normalizeClass([t.slideClass,"w-full"]),role:"tabpanel",tabindex:"-1"},[e.renderSlot(d.$slots,"default")],10,Z)),[[e.vShow,l.value]])}}),te=["id"],oe=e.defineComponent({__name:"Collapse",props:{id:{},customClass:{default:""},visible:{type:Boolean,default:!1}},emits:["open","close"],setup(t,{expose:o,emit:u}){const s=t,l=u,d=s.id??e.useId(),{isOpen:r,toggle:i,open:n,close:c}=E.useCollapseState(d,e.toRef(s,"visible")),m=g=>{g.style.height="auto",g.style.opacity="0";const y=getComputedStyle(g).height;g.style.height="0px",g.offsetHeight,g.style.height=y,g.style.opacity="1"},h=g=>{g.style.height="auto",g.style.opacity="1"},f=g=>{g.style.height=getComputedStyle(g).height,g.offsetHeight,g.style.height="0px",g.style.opacity="0"};return e.watch(r,g=>{g?l("open",!0):l("close",!1)}),o({isOpen:r,toggle:i,open:n,close:c}),(g,y)=>(e.openBlock(),e.createElementBlock("div",{id:e.unref(d)},[e.createVNode(e.Transition,{name:"collapse",tag:"div",onEnter:m,onAfterEnter:h,onLeave:f,class:"overflow-y-clip"},{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",null,[e.createElementVNode("div",{class:e.normalizeClass(t.customClass)},[e.renderSlot(g.$slots,"default",{},void 0,!0)],2)],512),[[e.vShow,e.unref(r)]])]),_:3})],8,te))}}),ae=w(oe,[["__scopeId","data-v-7c910f65"]]),H=Symbol(),le=e.defineComponent({__name:"DropdownContainer",emits:["click-outside","toggle"],setup(t,{emit:o}){const u=o,s=e.ref(),l=e.ref(!1),d=e.ref(0),r=()=>{l.value=!1};e.provide(H,{active:l,buttonHeight:d,closeDropdown:r});const i=m=>{l.value=!l.value,u("toggle",m)},n=m=>{l.value=!1,u("click-outside",m)},c=()=>{l.value=!1};return e.onMounted(()=>{d.value=s.value.scrollHeight}),(m,h)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{class:"relative",ref_key:"dropdownTarget",ref:s,onKeyup:e.withKeys(c,["esc"])},[e.renderSlot(m.$slots,"toggler",{toggle:i,dropdownState:l.value}),e.renderSlot(m.$slots,"default")],32)),[[e.unref(z.vClickOutside),n]])}}),re=e.defineComponent({__name:"DropdownContent",props:{customClass:{default:""}},setup(t){const{height:o}=R.useWindowSize(),u=e.ref(),{active:s,buttonHeight:l,closeDropdown:d}=e.inject(H),r=e.computed(()=>({"--button-height":`${l}px`})),i=e.computed(()=>{if(!(!s||!u.value)&&o.value-u.value.getBoundingClientRect().bottom<0)return"dropup-bottom"});return(n,c)=>(e.openBlock(),e.createBlock(e.Transition,{name:"dropdown-content"},{default:e.withCtx(()=>[e.unref(s)?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"contentRef",ref:u,class:e.normalizeClass(["absolute my-2xs w-max max-w-[14rem] overflow-hidden",[i.value,t.customClass]]),style:e.normalizeStyle(r.value)},[e.renderSlot(n.$slots,"default",{itemClick:e.unref(d)},void 0,!0)],6)):e.createCommentVNode("",!0)]),_:3}))}}),ne=w(re,[["__scopeId","data-v-dd0b7b7b"]]),se=["aria-label","aria-expanded"],ce=e.defineComponent({__name:"NavDrawer",props:{color:{default:"dark-2"},showBorder:{type:Boolean,default:!0},toggle:{type:Boolean},bgColor:{},label:{default:"Menu"}},emits:["hbg-click"],setup(t,{emit:o}){const u=t,s=o,l=n=>{s("hbg-click",n)},d=e.computed({get(){return u.toggle},set(n){return n}}),r=(n,c,m)=>{const h=[a.generateClass.ringColorVariant({color:n}),a.generateClass.ringOffsetColorVariant({color:m})];return c&&(h.push(a.generateClass.borderColorVariant({color:n})),h.push("border")),h.join(" ")},i=n=>[a.generateClass.bgColorVariant({color:n}),a.generateClass.beforeBgColorVariant({color:n}),a.generateClass.afterBgColorVariant({color:n})].join(" ");return(n,c)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["hamburger__button aspect-square rounded-md p-3xs ring-offset-2 transition-all duration-300 ease-linear outline-none hover:opacity-70 focus:opacity-70 focus:ring-4",r(t.color,t.showBorder,t.bgColor)]),onClick:l,"aria-label":t.label,"aria-expanded":t.toggle},[e.withDirectives(e.createElementVNode("input",{type:"checkbox","onUpdate:modelValue":c[0]||(c[0]=m=>d.value=m),class:"hamburger__checkbox hidden"},null,512),[[e.vModelCheckbox,d.value]]),e.createElementVNode("div",{class:e.normalizeClass(["hamburger__icon relative h-[3px] w-sm transition-all duration-300 ease-linear before:h-[3px] before:w-sm after:h-[3px] after:w-sm",i(t.color)])},null,2)],10,se))}}),D=w(ce,[["__scopeId","data-v-5904b04a"]]),ie=["aria-label"],de={class:"min-h-[24px]"},ue={class:"ml-auto"},me={key:0,class:"hidden lg:block"},fe={class:"overflow-hidden lg:hidden"},ge={key:0,class:"overflow-hidden"},he={key:0},Ce=e.defineComponent({__name:"HeaderHorizontal",props:{bgColor:{default:"light-1"},navLabel:{default:"Main"},menuLabel:{default:"Menu"},mobileMenuBgColor:{default:"light-2"},drawerBtnColor:{default:"dark-1"},showDrawerBorder:{type:Boolean,default:!0},fadeInOnScroll:{type:Boolean,default:!0},scrollDistance:{default:50},sticky:{default:"all"}},emits:["toggle-drawer"],setup(t,{expose:o,emit:u}){const s=t,l=e.useSlots(),d=e.ref(!1),{y:r}=R.useWindowScroll(),i=u,n=()=>{d.value=!1},c=C=>{d.value=!d.value,i("toggle-drawer",C,d.value)},m=C=>{C.style.height="auto";const k=getComputedStyle(C).height;C.style.height="0px",C.offsetHeight,C.style.height=k},h=C=>{C.style.height="auto"},f=C=>{C.style.height=getComputedStyle(C).height,C.offsetHeight,C.style.height="0px"},g=e.computed(()=>{const{bgColor:C,sticky:k}=s,v=[a.generateClass.bgColorVariant({color:C})];return k==="all"?(v.push("sticky top-0"),v.join(" ")):k==="tablet"?(v.push("md:sticky top-0"),v.join(" ")):(k==="pc"&&v.push("lg:sticky top-0"),v.join(" "))}),y=e.computed(()=>{const{fadeInOnScroll:C,scrollDistance:k}=s;return C?r.value>=k?"lg:shadow-md bg-opacity-70":"bg-opacity-100":""});return o({headerClose:n}),(C,k)=>(e.openBlock(),e.createElementBlock("header",{class:e.normalizeClass(["z-50 w-full items-center transition delay-150 duration-500 ease-in",[y.value,g.value]])},[e.createElementVNode("nav",{"aria-label":t.navLabel,class:"mx-xs flex flex-wrap items-center justify-between py-xs align-middle sm:max-w-[640px] md:mx-sm md:max-w-[768px] md:py-2xs lg:max-w-[1024px] xl:max-w-[1280px] 2xl:max-w-[1536px]"},[e.createElementVNode("div",de,[e.renderSlot(C.$slots,"content",{},void 0,!0)]),e.createElementVNode("div",ue,[e.createVNode(D,{label:t.menuLabel,color:t.drawerBtnColor,"show-border":t.showDrawerBorder,class:"block lg:hidden",onHbgClick:c,toggle:d.value,"bg-color":t.bgColor},null,8,["label","color","show-border","toggle","bg-color"]),l["content-right"]?(e.openBlock(),e.createElementBlock("div",me,[e.renderSlot(C.$slots,"content-right",{},void 0,!0)])):e.createCommentVNode("",!0)])],8,ie),e.createElementVNode("div",fe,[e.createVNode(e.Transition,{name:"collapse",onEnter:m,onAfterEnter:h,onLeave:f},{default:e.withCtx(()=>[d.value?(e.openBlock(),e.createElementBlock("div",ge,[e.createElementVNode("div",{class:e.normalizeClass(["mx-xs my-2xs overflow-hidden rounded-md bg-opacity-80",e.unref(a.generateClass).bgColorVariant({color:t.mobileMenuBgColor})])},[l["mobile-content"]?(e.openBlock(),e.createElementBlock("div",he,[e.renderSlot(C.$slots,"mobile-content",{headerClose:n},void 0,!0)])):e.createCommentVNode("",!0)],2)])):e.createCommentVNode("",!0)]),_:3})])],2))}}),ve=w(Ce,[["__scopeId","data-v-fb1e97dd"]]),pe=["aria-label"],be={class:"flex h-full flex-col justify-between"},ye={key:0},ke={key:0,class:"fixed top-0 right-0 z-50 mt-xs mr-xs block lg:hidden"},Be={class:"relative z-40 block lg:hidden"},Ve={key:0,class:"fixed top-0 right-0 z-50 mt-xs mr-xs block lg:hidden"},we=["aria-label"],xe={key:0,class:"h-full"},Ee=e.defineComponent({__name:"HeaderVertical",props:{bgColor:{default:"light-1"},navLabel:{default:"Main"},menuLabel:{default:"Menu"},drawerBtnColor:{default:"dark-1"},showDrawerBorder:{type:Boolean,default:!0},headerWidth:{default:160}},emits:["toggle-drawer"],setup(t,{expose:o,emit:u}){const s=t,l=e.useSlots(),d=u,r=e.ref(!1),i=e.ref(!1),n=h=>{r.value=!r.value,d("toggle-drawer",h,r.value)},c=()=>{r.value=!1},m=e.computed(()=>({"--header-width":`${s.headerWidth}px`}));return e.onMounted(()=>{i.value=!0;const h=R.useScrollLock(document);e.watch(r,f=>{h.value=f})}),o({headerClose:c}),(h,f)=>(e.openBlock(),e.createElementBlock("header",{class:"relative",style:e.normalizeStyle(m.value)},[e.createElementVNode("nav",{"aria-label":t.navLabel,class:e.normalizeClass(["header-desktop hidden overflow-y-scroll overscroll-contain py-sm lg:sticky lg:top-0 lg:left-0 lg:block lg:h-[100vh]",[e.unref(a.generateClass).bgColorVariant({color:t.bgColor})]])},[e.createElementVNode("div",be,[e.createElementVNode("div",null,[e.renderSlot(h.$slots,"content",{},void 0,!0)]),l["content-bottom"]?(e.openBlock(),e.createElementBlock("div",ye,[e.renderSlot(h.$slots,"content-bottom",{},void 0,!0)])):e.createCommentVNode("",!0)])],10,pe),l["mobile-content"]&&!i.value?(e.openBlock(),e.createElementBlock("div",ke,[e.createVNode(D,{label:t.menuLabel,color:t.drawerBtnColor,"show-border":t.showDrawerBorder,class:"relative block lg:hidden",onHbgClick:n,toggle:r.value,"bg-color":t.bgColor},null,8,["label","color","show-border","toggle","bg-color"])])):e.createCommentVNode("",!0),i.value?(e.openBlock(),e.createBlock(e.Teleport,{key:1,to:"body"},[e.createElementVNode("div",Be,[l["mobile-content"]?(e.openBlock(),e.createElementBlock("div",Ve,[e.createVNode(D,{label:t.menuLabel,color:t.drawerBtnColor,"show-border":t.showDrawerBorder,class:"relative block lg:hidden",onHbgClick:n,toggle:r.value,"bg-color":t.bgColor},null,8,["label","color","show-border","toggle","bg-color"])])):e.createCommentVNode("",!0),e.createVNode(e.Transition,{name:"slide-down",appear:""},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createElementBlock("nav",{key:0,"aria-label":t.navLabel,class:e.normalizeClass(["fixed inset-0 overflow-y-scroll overscroll-contain px-sm py-lg",e.unref(a.generateClass).bgColorVariant({color:t.bgColor})])},[l["mobile-content"]?(e.openBlock(),e.createElementBlock("div",xe,[e.renderSlot(h.$slots,"mobile-content",{headerClose:c},void 0,!0)])):e.createCommentVNode("",!0)],10,we)):e.createCommentVNode("",!0)]),_:3})])])):e.createCommentVNode("",!0)],4))}}),Ne=w(Ee,[["__scopeId","data-v-a2d7d11b"]]),Se=["visible"],Re={key:0,class:"sticky top-0"},Oe=["id"],$e={key:1,class:"sticky bottom-0"},Le=e.defineComponent({__name:"Modal",props:{title:{},ariaLabel:{},titleColor:{default:"dark-3"},customClass:{default:""},visible:{type:Boolean,default:!1},showBackdrop:{type:Boolean,default:!0},showHeader:{type:Boolean,default:!0},color:{default:"light-1"},backdropColor:{default:"dark-4"},placement:{default:"center"},width:{default:"small"}},emits:["open","close"],setup(t,{expose:o,emit:u}){const s=t,l=e.useSlots(),d=u,r=e.ref(),i=e.ref(),n=e.ref(s.visible),c=e.ref(!1),m=e.useId(),h=()=>s.showHeader&&(l.header?!s.ariaLabel:!!s.title)?{"aria-labelledby":m}:{"aria-label":s.ariaLabel};let f=null;const{activate:g,deactivate:y}=I.useFocusTrap(i,{immediate:!1,allowOutsideClick:!0,escapeDeactivates:()=>(v(),!1)}),C=()=>{n.value=!n.value},k=()=>{n.value=!0},v=()=>{c.value===!0&&(n.value=!1)},O=()=>{d("open",!0)},B=()=>{d("close",!1)},$=e.computed(()=>{const p={top:25,center:50,bottom:75},{placement:V}=s;return{"--vertical-placement":(p[V]??p.center)+"%"}}),L=e.computed(()=>{const{width:p}=s,V={small:"max-w-[28rem]",medium:"max-w-[28rem] md:max-w-[36rem]",large:"max-w-[28rem] md:max-w-[56rem]"};return V[p]??V.small}),N=()=>{c.value=!0,i.value&&g()},T=()=>{c.value=!1};e.onMounted(()=>{n.value&&!c.value&&N()});const S=(p=!1)=>{n.value=p};return E.observeVisibleAttr(r,S),e.watch(()=>s.visible,p=>{n.value=p}),e.watch(n,p=>{p===!0?(typeof document<"u"&&(f=document.activeElement),O()):p===!1&&(y(),f?.focus(),f=null,c.value===!0&&B())}),E.useModalScrollLock(n),o({toggle:C,close:v,open:k}),(p,V)=>(e.openBlock(),e.createElementBlock("div",{style:e.normalizeStyle($.value),visible:n.value,ref_key:"modalRef",ref:r},[t.showBackdrop?(e.openBlock(),e.createBlock(e.Transition,{key:0,name:"fade",appear:"",tag:"div"},{default:e.withCtx(()=>[n.value?(e.openBlock(),e.createElementBlock("section",{key:0,onClick:v,"aria-hidden":"true",class:e.normalizeClass(["fixed inset-0 z-[100] overflow-y-auto backdrop-blur bg-opacity-70",e.unref(a.generateClass).bgColorVariant({color:t.backdropColor})])},null,2)):e.createCommentVNode("",!0)]),_:1})):e.createCommentVNode("",!0),e.createVNode(e.Transition,{name:"slide-down",tag:"div",onAfterEnter:N,onAfterLeave:T,appear:""},{default:e.withCtx(()=>[n.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["vertical-placement fixed z-[110] w-full px-xs",L.value])},[e.withDirectives((e.openBlock(),e.createElementBlock("div",e.mergeProps({ref_key:"dialogRef",ref:i,role:"dialog","aria-modal":"true"},h(),{class:[[e.unref(a.generateClass).bgColorVariant({color:t.color}),t.customClass],"relative max-h-[80vh] overflow-y-scroll overscroll-contain md:max-h-[60vh]"]}),[t.showHeader?(e.openBlock(),e.createElementBlock("div",Re,[e.renderSlot(p.$slots,"header",{close:v,status:n.value,titleId:e.unref(m)},()=>[e.createElementVNode("div",{class:e.normalizeClass(["flex items-center justify-between border-b-2 border-b-light-4 p-xs",e.unref(a.generateClass).bgColorVariant({color:t.color})])},[t.title?(e.openBlock(),e.createElementBlock("h3",{key:0,id:e.unref(m),class:e.normalizeClass(["h3-md",e.unref(a.generateClass).textColorVariant({color:t.titleColor})])},e.toDisplayString(t.title),11,Oe)):e.createCommentVNode("",!0),e.createElementVNode("button",{type:"button","aria-label":"Close",onClick:v},[(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 384 512","aria-hidden":"true",class:e.normalizeClass(["h-sm transition-opacity duration-300 ease-in hover:opacity-75 focus:opacity-75",[e.unref(a.generateClass).svgFillColorVariant({color:t.titleColor})]])},[...V[0]||(V[0]=[e.createElementVNode("path",{d:"M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z"},null,-1)])],2))])],2)],!0)])):e.createCommentVNode("",!0),e.renderSlot(p.$slots,"body",{close:v,status:n.value},void 0,!0),l.footer?(e.openBlock(),e.createElementBlock("div",$e,[e.renderSlot(p.$slots,"footer",{close:v,status:n.value},void 0,!0)])):e.createCommentVNode("",!0)],16)),[[e.unref(z.vClickOutside),v]])],2)):e.createCommentVNode("",!0)]),_:3})],12,Se))}}),Te=w(Le,[["__scopeId","data-v-9730e4f1"]]),De=["visible"],ze=["id"],Ie={class:"sidebar-body-height"},Ae=e.defineComponent({__name:"Sidebar",props:{title:{},ariaLabel:{},titleColor:{default:"dark-3"},customClass:{default:""},visible:{type:Boolean,default:!1},showBackdrop:{type:Boolean,default:!0},showHeader:{type:Boolean,default:!0},color:{default:"light-1"},backdropColor:{default:"dark-4"},placement:{default:"left"},width:{default:300}},emits:["open","close"],setup(t,{expose:o,emit:u}){const s=t,l=e.useSlots(),d=u,r=e.ref(s.visible),i=e.ref(!1),n=e.ref(),c=e.ref(),m=e.ref(),h=e.ref(),f=e.useId(),g=()=>s.showHeader&&(l.header?!s.ariaLabel:!!s.title)?{"aria-labelledby":f}:{"aria-label":s.ariaLabel};let y=null;const{activate:C,deactivate:k}=I.useFocusTrap(c,{immediate:!1,allowOutsideClick:!0,escapeDeactivates:()=>(B(),!1)}),v=()=>{r.value=!r.value},O=()=>{r.value=!0},B=()=>{i.value===!0&&(r.value=!1)},$=()=>{d("open",!0)},L=()=>{d("close",!1)},N=e.computed(()=>{const b=x=>x&&r.value?`${x.scrollHeight}px`:"0px";return{"--sidebar-width":`${s.width}px`,"--header-height":b(m.value),"--footer-height":b(h.value)}}),T=e.computed(()=>s.placement==="left"?"sidebar-left":"sidebar-right"),S=()=>{i.value=!0,c.value&&C()},p=()=>{i.value=!1};e.onMounted(()=>{r.value&&!i.value&&S()});const V=(b=!1)=>{r.value=b};return E.observeVisibleAttr(n,V),e.watch(()=>s.visible,b=>{r.value=b}),e.watch(r,b=>{b===!0?(typeof document<"u"&&(y=document.activeElement),$()):b===!1&&(k(),y?.focus(),y=null,i.value===!0&&L())}),E.useModalScrollLock(r),o({toggle:v,open:O,close:B}),(b,x)=>(e.openBlock(),e.createElementBlock("div",{style:e.normalizeStyle(N.value),visible:r.value,ref_key:"sidebarRef",ref:n},[t.showBackdrop?(e.openBlock(),e.createBlock(e.Transition,{key:0,name:"fade",appear:"",tag:"div"},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createElementBlock("section",{key:0,onClick:B,"aria-hidden":"true",class:e.normalizeClass(["fixed inset-0 z-[100] overflow-y-auto backdrop-blur bg-opacity-70",e.unref(a.generateClass).bgColorVariant({color:t.backdropColor})])},null,2)):e.createCommentVNode("",!0)]),_:1})):e.createCommentVNode("",!0),e.createVNode(e.Transition,{name:T.value,onAfterEnter:S,onAfterLeave:p,appear:""},{default:e.withCtx(()=>[r.value?e.withDirectives((e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,ref_key:"dialogRef",ref:c,role:"dialog","aria-modal":"true"},g(),{class:["sidebar-body fixed inset-y-0 z-[110] h-full overflow-hidden shadow",[t.placement==="left"?"left-0":"right-0"]]}),[e.createElementVNode("div",{class:e.normalizeClass(["relative h-full overflow-y-scroll overscroll-contain",[e.unref(a.generateClass).bgColorVariant({color:t.color}),t.customClass]])},[t.showHeader?(e.openBlock(),e.createElementBlock("div",{key:0,class:"sticky top-0 z-10",ref_key:"headerRef",ref:m},[e.renderSlot(b.$slots,"header",{close:B,status:r.value,titleId:e.unref(f)},()=>[e.createElementVNode("div",{class:e.normalizeClass(["flex items-center justify-between p-xs",e.unref(a.generateClass).bgColorVariant({color:t.color})])},[t.placement==="right"?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button","aria-label":"Close",onClick:B},[(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 384 512","aria-hidden":"true",class:e.normalizeClass(["h-sm transition-opacity duration-300 ease-in hover:opacity-75 focus:opacity-75",[e.unref(a.generateClass).svgFillColorVariant({color:t.titleColor})]])},[...x[0]||(x[0]=[e.createElementVNode("path",{d:"M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z"},null,-1)])],2))])):e.createCommentVNode("",!0),t.title?(e.openBlock(),e.createElementBlock("h3",{key:1,id:e.unref(f),class:e.normalizeClass(["h3-md",e.unref(a.generateClass).textColorVariant({color:t.titleColor})])},e.toDisplayString(t.title),11,ze)):e.createCommentVNode("",!0),t.placement==="left"?(e.openBlock(),e.createElementBlock("button",{key:2,type:"button","aria-label":"Close",onClick:B},[(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 384 512","aria-hidden":"true",class:e.normalizeClass(["h-sm transition-opacity duration-300 ease-in hover:opacity-75 focus:opacity-75",[e.unref(a.generateClass).svgFillColorVariant({color:t.titleColor})]])},[...x[1]||(x[1]=[e.createElementVNode("path",{d:"M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z"},null,-1)])],2))])):e.createCommentVNode("",!0)],2)],!0)],512)):e.createCommentVNode("",!0),e.createElementVNode("div",Ie,[e.renderSlot(b.$slots,"body",{close:B,status:r.value},void 0,!0)]),l.footer?(e.openBlock(),e.createElementBlock("div",{key:1,class:"sticky bottom-0",ref_key:"footerRef",ref:h},[e.renderSlot(b.$slots,"footer",{close:B,status:r.value},void 0,!0)],512)):e.createCommentVNode("",!0)],2)],16)),[[e.unref(z.vClickOutside),B]]):e.createCommentVNode("",!0)]),_:3},8,["name"])],12,De))}}),He=w(Ae,[["__scopeId","data-v-658499cf"]]),M=Symbol(),Me={class:"container-hts grid grid-cols-1 grid-rows-1 transition-[max-height] duration-300"},Ge=e.defineComponent({__name:"TabContainer",props:{bodyClass:{default:""},btnContainerClass:{default:""},contentContainerClass:{default:""}},setup(t,{expose:o}){const u=e.ref(0),s=e.ref(0),l=e.ref(!1),d=e.ref("slide-next"),r=c=>{c>0&&(l.value=!0),s.value=c};e.provide(M,{activeTabIdx:u,containerHeight:s,updateHeight:r});const i=c=>{u.value=c},n=e.computed(()=>l.value?{"--container-hts":`${s.value}px`}:void 0);return o({update:i}),e.watch(()=>u.value,(c,m)=>{c>m?d.value="slide-next":d.value="slide-prev"}),(c,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.bodyClass),style:e.normalizeStyle(n.value)},[e.createElementVNode("div",{class:e.normalizeClass(t.btnContainerClass),role:"tablist"},[e.renderSlot(c.$slots,"tab-button",{update:i,activeTab:u.value},void 0,!0)],2),e.createElementVNode("div",{class:e.normalizeClass(t.contentContainerClass)},[e.createElementVNode("div",Me,[e.createVNode(e.Transition,{name:d.value},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock("div",{key:u.value,class:"relative col-start-1 col-end-1 row-start-1 row-end-1"},[e.renderSlot(c.$slots,"tab-content",{},void 0,!0)]))]),_:3},8,["name"])])],2)],6))}}),je=w(Ge,[["__scopeId","data-v-2d9322d9"]]),We=["id"],_e=e.defineComponent({__name:"TabContent",props:{tabNumber:{},id:{},tabClass:{default:""}},setup(t){const o=t,{activeTabIdx:u,updateHeight:s}=e.inject(M),l=e.ref(null),{height:d}=R.useElementSize(l),r=e.computed(()=>u.value===o.tabNumber?(s(d.value),!0):!1);return(i,n)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{ref_key:"slotRef",ref:l,id:t.id,class:e.normalizeClass([t.tabClass,"w-full"]),role:"tabpanel",tabindex:"-1"},[e.renderSlot(i.$slots,"default")],10,We)),[[e.vShow,r.value]])}});exports.generateClass=a.generateClass;exports.AccordionGroup=W;exports.Alert=X;exports.Card=K;exports.CarouselContainer=Q;exports.CarouselContent=ee;exports.Collapse=ae;exports.DropdownContainer=le;exports.DropdownContent=ne;exports.HeaderHorizontal=ve;exports.HeaderVertical=Ne;exports.Modal=Te;exports.Sidebar=He;exports.TabContainer=je;exports.TabContent=_e;exports.default=j;
package/dist/core.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import { ClassProp } from 'class-variance-authority/types';
2
2
  import { ComponentOptionsMixin } from 'vue';
3
3
  import { ComponentProvideOptions } from 'vue';
4
+ import { ComputedRef } from 'vue';
4
5
  import { DefineComponent } from 'vue';
5
6
  import { PublicProps } from 'vue';
6
7
  import { Ref } from 'vue';
@@ -15,6 +16,8 @@ headerClose: () => void;
15
16
  "onToggle-drawer"?: ((event: Event, open: boolean) => any) | undefined;
16
17
  }>, {
17
18
  bgColor: ColorPalette;
19
+ navLabel: string;
20
+ menuLabel: string;
18
21
  drawerBtnColor: ColorPalette;
19
22
  showDrawerBorder: boolean;
20
23
  headerWidth: number;
@@ -98,6 +101,7 @@ rounded: boolean;
98
101
  shadow: boolean;
99
102
  show: boolean;
100
103
  dismissible: boolean;
104
+ dismissLabel: string;
101
105
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
102
106
 
103
107
  declare const __VLS_component_3: DefineComponent<__VLS_Props_2, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_2> & Readonly<{}>, {
@@ -136,6 +140,8 @@ slideRef: HTMLDivElement;
136
140
  }, HTMLDivElement>;
137
141
 
138
142
  declare const __VLS_component_6: DefineComponent<__VLS_Props_5, {
143
+ /** Whether the panel is open. Read-only; use open/close/toggle to change it. */
144
+ isOpen: typeof isOpen;
139
145
  toggle: () => void;
140
146
  open: () => void;
141
147
  close: () => void;
@@ -174,6 +180,8 @@ headerClose: () => void;
174
180
  "onToggle-drawer"?: ((event: Event, open: boolean) => any) | undefined;
175
181
  }>, {
176
182
  bgColor: ColorPalette;
183
+ navLabel: string;
184
+ menuLabel: string;
177
185
  mobileMenuBgColor: ColorPalette;
178
186
  drawerBtnColor: ColorPalette;
179
187
  showDrawerBorder: boolean;
@@ -188,10 +196,14 @@ declare type __VLS_Props = {
188
196
  shadow?: boolean;
189
197
  show?: boolean;
190
198
  dismissible?: boolean;
199
+ /** Accessible name of the dismiss button. */
200
+ dismissLabel?: string;
191
201
  };
192
202
 
193
203
  declare type __VLS_Props_10 = {
194
204
  title?: string;
205
+ /** Accessible name when there is no visible title. A visible title wins. */
206
+ ariaLabel?: string;
195
207
  titleColor?: ColorPalette;
196
208
  customClass?: string | string[];
197
209
  visible?: boolean;
@@ -262,6 +274,10 @@ declare type __VLS_Props_6 = {
262
274
 
263
275
  declare type __VLS_Props_7 = {
264
276
  bgColor?: ColorPalette;
277
+ /** aria-label of the header's nav landmark(s). */
278
+ navLabel?: string;
279
+ /** Accessible name of the mobile menu button. */
280
+ menuLabel?: string;
265
281
  mobileMenuBgColor?: ColorPalette;
266
282
  drawerBtnColor?: ColorPalette;
267
283
  showDrawerBorder?: boolean;
@@ -272,6 +288,10 @@ declare type __VLS_Props_7 = {
272
288
 
273
289
  declare type __VLS_Props_8 = {
274
290
  bgColor?: ColorPalette;
291
+ /** aria-label of the header's nav landmark(s). */
292
+ navLabel?: string;
293
+ /** Accessible name of the mobile menu button. */
294
+ menuLabel?: string;
275
295
  drawerBtnColor?: ColorPalette;
276
296
  showDrawerBorder?: boolean;
277
297
  headerWidth?: number;
@@ -279,6 +299,8 @@ declare type __VLS_Props_8 = {
279
299
 
280
300
  declare type __VLS_Props_9 = {
281
301
  title?: string;
302
+ /** Accessible name when there is no visible title. A visible title wins. */
303
+ ariaLabel?: string;
282
304
  titleColor?: ColorPalette;
283
305
  customClass?: string | string[];
284
306
  visible?: boolean;
@@ -323,9 +345,10 @@ declare function __VLS_template_10(): {
323
345
  declare function __VLS_template_11(): {
324
346
  attrs: Partial<{}>;
325
347
  slots: Readonly<{
326
- header(props: {
348
+ header?(props: {
327
349
  close: () => void;
328
350
  status: boolean;
351
+ titleId: string;
329
352
  }): any;
330
353
  body(props: {
331
354
  close: () => void;
@@ -336,9 +359,10 @@ declare function __VLS_template_11(): {
336
359
  status: boolean;
337
360
  }): any;
338
361
  }> & {
339
- header(props: {
362
+ header?(props: {
340
363
  close: () => void;
341
364
  status: boolean;
365
+ titleId: string;
342
366
  }): any;
343
367
  body(props: {
344
368
  close: () => void;
@@ -359,9 +383,10 @@ declare function __VLS_template_11(): {
359
383
  declare function __VLS_template_12(): {
360
384
  attrs: Partial<{}>;
361
385
  slots: Readonly<{
362
- header(props: {
386
+ header?(props: {
363
387
  close: () => void;
364
388
  status: boolean;
389
+ titleId: string;
365
390
  }): any;
366
391
  body(props: {
367
392
  close: () => void;
@@ -372,9 +397,10 @@ declare function __VLS_template_12(): {
372
397
  status: boolean;
373
398
  }): any;
374
399
  }> & {
375
- header(props: {
400
+ header?(props: {
376
401
  close: () => void;
377
402
  status: boolean;
403
+ titleId: string;
378
404
  }): any;
379
405
  body(props: {
380
406
  close: () => void;
@@ -939,6 +965,8 @@ declare type InputType_2<T extends ClassType> = T extends ColorClassType ? Color
939
965
 
940
966
  declare type IntRange<T extends number[], E extends number, R extends number = never> = T['length'] extends E ? R | E : IntRange<[...T, 1], E, R | T['length']>;
941
967
 
968
+ declare const isOpen: ComputedRef<boolean>;
969
+
942
970
  export declare const Modal: __VLS_WithTemplateSlots_11<typeof __VLS_component_11, __VLS_TemplateResult_11["slots"]>;
943
971
 
944
972
  export declare type OpacityRange = 10 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | 90 | 100;