@paperless/core 1.3.0 → 1.3.2
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 +19 -0
- package/dist/{paperless/p-b2bc1d2a.entry.js → build/p-178a9622.entry.js} +2 -2
- package/dist/build/p-178a9622.entry.js.map +1 -0
- package/dist/build/{p-a1c1d95b.entry.js → p-231959ae.entry.js} +2 -2
- package/dist/build/p-231959ae.entry.js.map +1 -0
- package/dist/build/{p-36967a97.entry.js → p-23f19585.entry.js} +2 -2
- package/dist/build/p-23f19585.entry.js.map +1 -0
- package/dist/{paperless/p-6124f388.entry.js → build/p-2db30595.entry.js} +2 -2
- package/dist/build/{p-6124f388.entry.js.map → p-2db30595.entry.js.map} +1 -1
- package/dist/build/{p-ec850aca.entry.js → p-32e40e8a.entry.js} +2 -2
- package/dist/build/p-32e40e8a.entry.js.map +1 -0
- package/dist/{paperless/p-1630e39b.entry.js → build/p-36705eff.entry.js} +2 -2
- package/dist/{paperless/p-b92dd098.entry.js → build/p-3774ce4c.entry.js} +2 -2
- package/dist/build/p-3774ce4c.entry.js.map +1 -0
- package/dist/{paperless/p-6d5aa646.entry.js → build/p-6a30c500.entry.js} +2 -2
- package/dist/build/{p-6d5aa646.entry.js.map → p-6a30c500.entry.js.map} +1 -1
- package/dist/build/{p-12171df4.entry.js → p-6cb21186.entry.js} +2 -2
- package/dist/build/p-6cb21186.entry.js.map +1 -0
- package/dist/{paperless/p-b9f742e0.entry.js → build/p-7caa2463.entry.js} +2 -2
- package/dist/build/{p-b9f742e0.entry.js.map → p-7caa2463.entry.js.map} +1 -1
- package/dist/{paperless/p-26da620b.entry.js → build/p-89dd1b98.entry.js} +2 -2
- package/dist/build/p-89dd1b98.entry.js.map +1 -0
- package/dist/{paperless/p-350d452b.entry.js → build/p-bd08b944.entry.js} +2 -2
- package/dist/build/{p-350d452b.entry.js.map → p-bd08b944.entry.js.map} +1 -1
- package/dist/build/p-c6be1eab.entry.js +2 -0
- package/dist/build/p-c6be1eab.entry.js.map +1 -0
- package/dist/{paperless/p-18c0dd17.entry.js → build/p-dbadeb2a.entry.js} +2 -2
- package/dist/build/{p-946286e2.entry.js → p-e28c262e.entry.js} +2 -2
- package/dist/build/{p-946286e2.entry.js.map → p-e28c262e.entry.js.map} +1 -1
- package/dist/build/{p-da6e5abd.entry.js → p-e3143372.entry.js} +2 -2
- package/dist/build/p-e3143372.entry.js.map +1 -0
- package/dist/{paperless/p-2a668e75.entry.js → build/p-e5023a73.entry.js} +2 -2
- package/dist/build/p-e5023a73.entry.js.map +1 -0
- package/dist/build/{p-1f55126f.entry.js → p-e508900b.entry.js} +2 -2
- package/dist/build/{p-1f55126f.entry.js.map → p-e508900b.entry.js.map} +1 -1
- package/dist/build/{p-b0398d3b.entry.js → p-e6b0dbdc.entry.js} +2 -2
- package/dist/build/p-e6b0dbdc.entry.js.map +1 -0
- package/dist/{paperless/p-3d8b2178.entry.js → build/p-f8aa1cac.entry.js} +2 -2
- package/dist/build/p-f8aa1cac.entry.js.map +1 -0
- package/dist/build/paperless.esm.js +1 -1
- package/dist/cjs/p-accordion.cjs.entry.js +1 -1
- package/dist/cjs/p-accordion.cjs.entry.js.map +1 -1
- package/dist/cjs/p-attachment.cjs.entry.js +2 -2
- package/dist/cjs/p-attachment.cjs.entry.js.map +1 -1
- package/dist/cjs/p-backdrop.cjs.entry.js +1 -1
- package/dist/cjs/p-backdrop.cjs.entry.js.map +1 -1
- package/dist/cjs/p-button_3.cjs.entry.js +3 -3
- package/dist/cjs/p-button_3.cjs.entry.js.map +1 -1
- package/dist/cjs/p-calendar.cjs.entry.js +1 -1
- package/dist/cjs/p-calendar.cjs.entry.js.map +1 -1
- package/dist/cjs/p-datepicker.cjs.entry.js +1 -1
- package/dist/cjs/p-datepicker.cjs.entry.js.map +1 -1
- package/dist/cjs/p-drawer-body_3.cjs.entry.js +1 -1
- package/dist/cjs/p-drawer-body_3.cjs.entry.js.map +1 -1
- package/dist/cjs/p-drawer.cjs.entry.js +2 -2
- package/dist/cjs/p-drawer.cjs.entry.js.map +1 -1
- package/dist/cjs/p-dropdown-menu-container.cjs.entry.js +1 -1
- package/dist/cjs/p-dropdown_2.cjs.entry.js +3 -3
- package/dist/cjs/p-dropdown_2.cjs.entry.js.map +1 -1
- package/dist/cjs/p-helper_3.cjs.entry.js +2 -2
- package/dist/cjs/p-illustration_6.cjs.entry.js +44 -8
- package/dist/cjs/p-illustration_6.cjs.entry.js.map +1 -1
- package/dist/cjs/p-layout.cjs.entry.js +1 -1
- package/dist/cjs/p-layout.cjs.entry.js.map +1 -1
- package/dist/cjs/p-modal-body_4.cjs.entry.js +1 -1
- package/dist/cjs/p-modal-body_4.cjs.entry.js.map +1 -1
- package/dist/cjs/p-modal.cjs.entry.js +2 -2
- package/dist/cjs/p-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/p-page-size-select_3.cjs.entry.js +2 -2
- package/dist/cjs/p-page-size-select_3.cjs.entry.js.map +1 -1
- package/dist/cjs/p-select.cjs.entry.js +3 -3
- package/dist/cjs/p-select.cjs.entry.js.map +1 -1
- package/dist/cjs/p-table.cjs.entry.js +13 -13
- package/dist/cjs/p-table.cjs.entry.js.map +1 -1
- package/dist/cjs/p-toast.cjs.entry.js +1 -1
- package/dist/cjs/p-toast.cjs.entry.js.map +1 -1
- package/dist/cjs/p-tooltip.cjs.entry.js +2 -2
- package/dist/cjs/p-tooltip.cjs.entry.js.map +1 -1
- package/dist/collection/components/atoms/backdrop/backdrop.component.js +2 -2
- package/dist/collection/components/atoms/backdrop/backdrop.component.js.map +1 -1
- package/dist/collection/components/atoms/button/button.component.js +2 -2
- package/dist/collection/components/atoms/button/button.component.js.map +1 -1
- package/dist/collection/components/atoms/drawer-header/drawer-header.component.js +1 -1
- package/dist/collection/components/atoms/drawer-header/drawer-header.component.js.map +1 -1
- package/dist/collection/components/atoms/dropdown-menu-container/dropdown-menu-container.component.css +1 -1
- package/dist/collection/components/atoms/dropdown-menu-item/dropdown-menu-item.component.css +1 -1
- package/dist/collection/components/atoms/helper/helper.component.css +1 -1
- package/dist/collection/components/atoms/icon/icon.component.css +1 -1
- package/dist/collection/components/atoms/layout/layout.component.css +1 -1
- package/dist/collection/components/atoms/layout/layout.component.js +2 -2
- package/dist/collection/components/atoms/layout/layout.component.js.map +1 -1
- package/dist/collection/components/atoms/loader/loader.component.css +1 -1
- package/dist/collection/components/atoms/modal-header/modal-header.component.js +1 -1
- package/dist/collection/components/atoms/modal-header/modal-header.component.js.map +1 -1
- package/dist/collection/components/atoms/tooltip/tooltip.component.css +1 -1
- package/dist/collection/components/atoms/tooltip/tooltip.component.js +3 -3
- package/dist/collection/components/atoms/tooltip/tooltip.component.js.map +1 -1
- package/dist/collection/components/molecules/accordion/accordion.component.js +1 -1
- package/dist/collection/components/molecules/accordion/accordion.component.js.map +1 -1
- package/dist/collection/components/molecules/attachment/attachment.component.js +2 -2
- package/dist/collection/components/molecules/attachment/attachment.component.js.map +1 -1
- package/dist/collection/components/molecules/calendar/calendar.component.js +3 -3
- package/dist/collection/components/molecules/calendar/calendar.component.js.map +1 -1
- package/dist/collection/components/molecules/datepicker/datepicker.component.js +3 -3
- package/dist/collection/components/molecules/datepicker/datepicker.component.js.map +1 -1
- package/dist/collection/components/molecules/dropdown/dropdown.component.css +1 -1
- package/dist/collection/components/molecules/dropdown/dropdown.component.js +3 -3
- package/dist/collection/components/molecules/dropdown/dropdown.component.js.map +1 -1
- package/dist/collection/components/molecules/input-group/input-group.component.css +1 -1
- package/dist/collection/components/molecules/page-size-select/page-size-select.component.js +3 -3
- package/dist/collection/components/molecules/page-size-select/page-size-select.component.js.map +1 -1
- package/dist/collection/components/molecules/pagination/pagination.component.js +2 -2
- package/dist/collection/components/molecules/pagination/pagination.component.js.map +1 -1
- package/dist/collection/components/molecules/select/select.component.js +4 -4
- package/dist/collection/components/molecules/select/select.component.js.map +1 -1
- package/dist/collection/components/molecules/table-footer/table-footer.component.js +5 -5
- package/dist/collection/components/molecules/table-footer/table-footer.component.js.map +1 -1
- package/dist/collection/components/molecules/table-header/table-header.component.js +8 -8
- package/dist/collection/components/molecules/table-header/table-header.component.js.map +1 -1
- package/dist/collection/components/molecules/toast/toast.component.js +1 -1
- package/dist/collection/components/molecules/toast/toast.component.js.map +1 -1
- package/dist/collection/components/organisms/drawer/drawer.component.js +3 -3
- package/dist/collection/components/organisms/drawer/drawer.component.js.map +1 -1
- package/dist/collection/components/organisms/modal/modal.component.js +2 -2
- package/dist/collection/components/organisms/modal/modal.component.js.map +1 -1
- package/dist/collection/components/organisms/table/table.component.js +15 -15
- package/dist/collection/components/organisms/table/table.component.js.map +1 -1
- package/dist/collection/tailwind/width.js +1 -2
- package/dist/components/backdrop.component.js +1 -1
- package/dist/components/backdrop.component.js.map +1 -1
- package/dist/components/button.component.js +1 -1
- package/dist/components/button.component.js.map +1 -1
- package/dist/components/calendar.component.js +1 -1
- package/dist/components/calendar.component.js.map +1 -1
- package/dist/components/drawer-header.component.js +1 -1
- package/dist/components/drawer-header.component.js.map +1 -1
- package/dist/components/dropdown-menu-container.component.js +1 -1
- package/dist/components/dropdown-menu-item.component.js +1 -1
- package/dist/components/dropdown.component.js +2 -2
- package/dist/components/dropdown.component.js.map +1 -1
- package/dist/components/helper.component.js +1 -1
- package/dist/components/icon.component.js +1 -1
- package/dist/components/input-group.component.js +1 -1
- package/dist/components/loader.component.js +1 -1
- package/dist/components/modal-header.component.js +1 -1
- package/dist/components/modal-header.component.js.map +1 -1
- package/dist/components/p-accordion.js +1 -1
- package/dist/components/p-accordion.js.map +1 -1
- package/dist/components/p-attachment.js +2 -2
- package/dist/components/p-attachment.js.map +1 -1
- package/dist/components/p-datepicker.js +1 -1
- package/dist/components/p-datepicker.js.map +1 -1
- package/dist/components/p-drawer.js +2 -2
- package/dist/components/p-drawer.js.map +1 -1
- package/dist/components/p-layout.js +1 -1
- package/dist/components/p-layout.js.map +1 -1
- package/dist/components/p-modal.js +2 -2
- package/dist/components/p-modal.js.map +1 -1
- package/dist/components/p-select.js +3 -3
- package/dist/components/p-select.js.map +1 -1
- package/dist/components/p-table.js +13 -13
- package/dist/components/p-table.js.map +1 -1
- package/dist/components/p-toast.js +1 -1
- package/dist/components/p-toast.js.map +1 -1
- package/dist/components/page-size-select.component.js +1 -1
- package/dist/components/page-size-select.component.js.map +1 -1
- package/dist/components/pagination.component.js +1 -1
- package/dist/components/pagination.component.js.map +1 -1
- package/dist/components/table-footer.component.js +3 -3
- package/dist/components/table-footer.component.js.map +1 -1
- package/dist/components/table-header.component.js +41 -5
- package/dist/components/table-header.component.js.map +1 -1
- package/dist/components/tooltip.component.js +2 -2
- package/dist/components/tooltip.component.js.map +1 -1
- package/dist/esm/p-accordion.entry.js +1 -1
- package/dist/esm/p-accordion.entry.js.map +1 -1
- package/dist/esm/p-attachment.entry.js +2 -2
- package/dist/esm/p-attachment.entry.js.map +1 -1
- package/dist/esm/p-backdrop.entry.js +1 -1
- package/dist/esm/p-backdrop.entry.js.map +1 -1
- package/dist/esm/p-button_3.entry.js +3 -3
- package/dist/esm/p-button_3.entry.js.map +1 -1
- package/dist/esm/p-calendar.entry.js +1 -1
- package/dist/esm/p-calendar.entry.js.map +1 -1
- package/dist/esm/p-datepicker.entry.js +1 -1
- package/dist/esm/p-datepicker.entry.js.map +1 -1
- package/dist/esm/p-drawer-body_3.entry.js +1 -1
- package/dist/esm/p-drawer-body_3.entry.js.map +1 -1
- package/dist/esm/p-drawer.entry.js +2 -2
- package/dist/esm/p-drawer.entry.js.map +1 -1
- package/dist/esm/p-dropdown-menu-container.entry.js +1 -1
- package/dist/esm/p-dropdown_2.entry.js +3 -3
- package/dist/esm/p-dropdown_2.entry.js.map +1 -1
- package/dist/esm/p-helper_3.entry.js +2 -2
- package/dist/esm/p-illustration_6.entry.js +44 -8
- package/dist/esm/p-illustration_6.entry.js.map +1 -1
- package/dist/esm/p-layout.entry.js +1 -1
- package/dist/esm/p-layout.entry.js.map +1 -1
- package/dist/esm/p-modal-body_4.entry.js +1 -1
- package/dist/esm/p-modal-body_4.entry.js.map +1 -1
- package/dist/esm/p-modal.entry.js +2 -2
- package/dist/esm/p-modal.entry.js.map +1 -1
- package/dist/esm/p-page-size-select_3.entry.js +2 -2
- package/dist/esm/p-page-size-select_3.entry.js.map +1 -1
- package/dist/esm/p-select.entry.js +3 -3
- package/dist/esm/p-select.entry.js.map +1 -1
- package/dist/esm/p-table.entry.js +13 -13
- package/dist/esm/p-table.entry.js.map +1 -1
- package/dist/esm/p-toast.entry.js +1 -1
- package/dist/esm/p-toast.entry.js.map +1 -1
- package/dist/esm/p-tooltip.entry.js +2 -2
- package/dist/esm/p-tooltip.entry.js.map +1 -1
- package/dist/index.html +1 -1
- package/dist/{build/p-b2bc1d2a.entry.js → paperless/p-178a9622.entry.js} +2 -2
- package/dist/paperless/p-178a9622.entry.js.map +1 -0
- package/dist/paperless/{p-a1c1d95b.entry.js → p-231959ae.entry.js} +2 -2
- package/dist/paperless/p-231959ae.entry.js.map +1 -0
- package/dist/paperless/{p-36967a97.entry.js → p-23f19585.entry.js} +2 -2
- package/dist/paperless/p-23f19585.entry.js.map +1 -0
- package/dist/{build/p-6124f388.entry.js → paperless/p-2db30595.entry.js} +2 -2
- package/dist/paperless/{p-6124f388.entry.js.map → p-2db30595.entry.js.map} +1 -1
- package/dist/paperless/{p-ec850aca.entry.js → p-32e40e8a.entry.js} +2 -2
- package/dist/paperless/p-32e40e8a.entry.js.map +1 -0
- package/dist/{build/p-1630e39b.entry.js → paperless/p-36705eff.entry.js} +2 -2
- package/dist/{build/p-b92dd098.entry.js → paperless/p-3774ce4c.entry.js} +2 -2
- package/dist/paperless/p-3774ce4c.entry.js.map +1 -0
- package/dist/{build/p-6d5aa646.entry.js → paperless/p-6a30c500.entry.js} +2 -2
- package/dist/paperless/{p-6d5aa646.entry.js.map → p-6a30c500.entry.js.map} +1 -1
- package/dist/paperless/{p-12171df4.entry.js → p-6cb21186.entry.js} +2 -2
- package/dist/paperless/p-6cb21186.entry.js.map +1 -0
- package/dist/{build/p-b9f742e0.entry.js → paperless/p-7caa2463.entry.js} +2 -2
- package/dist/paperless/{p-b9f742e0.entry.js.map → p-7caa2463.entry.js.map} +1 -1
- package/dist/{build/p-26da620b.entry.js → paperless/p-89dd1b98.entry.js} +2 -2
- package/dist/paperless/p-89dd1b98.entry.js.map +1 -0
- package/dist/{build/p-350d452b.entry.js → paperless/p-bd08b944.entry.js} +2 -2
- package/dist/paperless/{p-350d452b.entry.js.map → p-bd08b944.entry.js.map} +1 -1
- package/dist/paperless/p-c6be1eab.entry.js +2 -0
- package/dist/paperless/p-c6be1eab.entry.js.map +1 -0
- package/dist/{build/p-18c0dd17.entry.js → paperless/p-dbadeb2a.entry.js} +2 -2
- package/dist/paperless/{p-946286e2.entry.js → p-e28c262e.entry.js} +2 -2
- package/dist/paperless/{p-946286e2.entry.js.map → p-e28c262e.entry.js.map} +1 -1
- package/dist/paperless/{p-da6e5abd.entry.js → p-e3143372.entry.js} +2 -2
- package/dist/paperless/p-e3143372.entry.js.map +1 -0
- package/dist/{build/p-2a668e75.entry.js → paperless/p-e5023a73.entry.js} +2 -2
- package/dist/paperless/p-e5023a73.entry.js.map +1 -0
- package/dist/paperless/{p-1f55126f.entry.js → p-e508900b.entry.js} +2 -2
- package/dist/paperless/{p-1f55126f.entry.js.map → p-e508900b.entry.js.map} +1 -1
- package/dist/paperless/{p-b0398d3b.entry.js → p-e6b0dbdc.entry.js} +2 -2
- package/dist/paperless/p-e6b0dbdc.entry.js.map +1 -0
- package/dist/{build/p-3d8b2178.entry.js → paperless/p-f8aa1cac.entry.js} +2 -2
- package/dist/paperless/p-f8aa1cac.entry.js.map +1 -0
- package/dist/paperless/paperless.esm.js +1 -1
- package/dist/sw.js +1 -1
- package/dist/sw.js.map +1 -1
- package/dist/tailwind/width.js +1 -2
- package/dist/types/components/atoms/layout/layout.component.d.ts +1 -1
- package/dist/types/components.d.ts +2 -2
- package/hydrate/index.js +87 -51
- package/package.json +1 -1
- package/dist/build/p-12171df4.entry.js.map +0 -1
- package/dist/build/p-26da620b.entry.js.map +0 -1
- package/dist/build/p-2a668e75.entry.js.map +0 -1
- package/dist/build/p-36967a97.entry.js.map +0 -1
- package/dist/build/p-3d8b2178.entry.js.map +0 -1
- package/dist/build/p-a1c1d95b.entry.js.map +0 -1
- package/dist/build/p-b0398d3b.entry.js.map +0 -1
- package/dist/build/p-b2bc1d2a.entry.js.map +0 -1
- package/dist/build/p-b92dd098.entry.js.map +0 -1
- package/dist/build/p-da6e5abd.entry.js.map +0 -1
- package/dist/build/p-ec850aca.entry.js.map +0 -1
- package/dist/build/p-f47247a6.entry.js +0 -2
- package/dist/build/p-f47247a6.entry.js.map +0 -1
- package/dist/paperless/p-12171df4.entry.js.map +0 -1
- package/dist/paperless/p-26da620b.entry.js.map +0 -1
- package/dist/paperless/p-2a668e75.entry.js.map +0 -1
- package/dist/paperless/p-36967a97.entry.js.map +0 -1
- package/dist/paperless/p-3d8b2178.entry.js.map +0 -1
- package/dist/paperless/p-a1c1d95b.entry.js.map +0 -1
- package/dist/paperless/p-b0398d3b.entry.js.map +0 -1
- package/dist/paperless/p-b2bc1d2a.entry.js.map +0 -1
- package/dist/paperless/p-b92dd098.entry.js.map +0 -1
- package/dist/paperless/p-da6e5abd.entry.js.map +0 -1
- package/dist/paperless/p-ec850aca.entry.js.map +0 -1
- package/dist/paperless/p-f47247a6.entry.js +0 -2
- package/dist/paperless/p-f47247a6.entry.js.map +0 -1
- /package/dist/build/{p-1630e39b.entry.js.map → p-36705eff.entry.js.map} +0 -0
- /package/dist/build/{p-18c0dd17.entry.js.map → p-dbadeb2a.entry.js.map} +0 -0
- /package/dist/paperless/{p-1630e39b.entry.js.map → p-36705eff.entry.js.map} +0 -0
- /package/dist/paperless/{p-18c0dd17.entry.js.map → p-dbadeb2a.entry.js.map} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["icons","arrow","attachment","bread","calendar","camera","car","checklist","checkmark","chevron","clock","cogs","comment","document","download","envelope","explanation","eye","faBuilding","faBuildings","faPiggy","filter","folder","grid","headset","integration","list","location","megaphone","menu","minus","more","negative","notification","pagination","payment","pencil","person","plus","question","reload","receipt","report","search","settings","sick","signout","switch","switchIcon","tachometer","task","template","tool","trash","turn","upload","warning","buttonComponentCss","Button","render","loaderColor","this","variant","VariableTag","h","Host","class","size","iconOnly","iconPosition","chevronPosition","inheritText","disabled","href","target","rotate","icon","loading","_getIcon","color","handleClick","ev","preventDefault","onClick","emit","flip","iconFlip","iconRotate","iconComponentCss","Icon","styles","transform","innerHTML","loaderComponentCss","Loader","_show","show","_loader","componentWillRender","_checkShow","componentShouldUpdate","_showSubscriber","unsubscribe","_a","subscribe"],"sources":["./src/utils/icons.ts","./src/components/atoms/button/button.component.scss?tag=p-button","./src/components/atoms/button/button.component.tsx","./src/components/atoms/icon/icon.component.scss?tag=p-icon","./src/components/atoms/icon/icon.component.tsx","./src/components/atoms/loader/loader.component.scss?tag=p-loader&encapsulation=shadow","./src/components/atoms/loader/loader.component.tsx"],"sourcesContent":["import arrow from '../assets/icons/arrow.svg';\nimport attachment from '../assets/icons/attachment.svg';\nimport bread from '../assets/icons/bread.svg';\nimport calendar from '../assets/icons/calendar.svg';\nimport camera from '../assets/icons/camera.svg';\nimport car from '../assets/icons/car.svg';\nimport checklist from '../assets/icons/checklist.svg';\nimport checkmark from '../assets/icons/checkmark.svg';\nimport chevron from '../assets/icons/chevron.svg';\nimport clock from '../assets/icons/clock.svg';\nimport cogs from '../assets/icons/cogs.svg';\nimport comment from '../assets/icons/comment.svg';\nimport document from '../assets/icons/document.svg';\nimport download from '../assets/icons/download.svg';\nimport envelope from '../assets/icons/envelope.svg';\nimport explanation from '../assets/icons/explanation.svg';\nimport eye from '../assets/icons/eye.svg';\nimport faBuilding from '../assets/icons/fa/building.svg';\nimport faBuildings from '../assets/icons/fa/buildings.svg';\nimport faPiggy from '../assets/icons/fa/piggy.svg';\nimport filter from '../assets/icons/filter.svg';\nimport folder from '../assets/icons/folder.svg';\nimport grid from '../assets/icons/grid.svg';\nimport headset from '../assets/icons/headset.svg';\nimport integration from '../assets/icons/integration.svg';\nimport list from '../assets/icons/list.svg';\nimport location from '../assets/icons/location.svg';\nimport megaphone from '../assets/icons/megaphone.svg';\nimport menu from '../assets/icons/menu.svg';\nimport minus from '../assets/icons/minus.svg';\nimport more from '../assets/icons/more.svg';\nimport negative from '../assets/icons/negative.svg';\nimport notification from '../assets/icons/notification.svg';\nimport pagination from '../assets/icons/pagination.svg';\nimport payment from '../assets/icons/payment.svg';\nimport pencil from '../assets/icons/pencil.svg';\nimport person from '../assets/icons/person.svg';\nimport plus from '../assets/icons/plus.svg';\nimport question from '../assets/icons/question.svg';\nimport receipt from '../assets/icons/receipt.svg';\nimport reload from '../assets/icons/reload.svg';\nimport report from '../assets/icons/report.svg';\nimport search from '../assets/icons/search.svg';\nimport settings from '../assets/icons/settings.svg';\nimport sick from '../assets/icons/sick.svg';\nimport signout from '../assets/icons/signout.svg';\nimport switchIcon from '../assets/icons/switch.svg';\nimport tachometer from '../assets/icons/tachometer.svg';\nimport task from '../assets/icons/task.svg';\nimport template from '../assets/icons/template.svg';\nimport tool from '../assets/icons/tool.svg';\nimport trash from '../assets/icons/trash.svg';\nimport turn from '../assets/icons/turn.svg';\nimport upload from '../assets/icons/upload.svg';\nimport warning from '../assets/icons/warning.svg';\n\nexport default {\n arrow,\n attachment,\n bread,\n calendar,\n camera,\n car,\n checklist,\n checkmark,\n chevron,\n clock,\n cogs,\n comment,\n document,\n download,\n envelope,\n explanation,\n eye,\n faBuilding,\n faBuildings,\n faPiggy,\n filter,\n folder,\n grid,\n headset,\n integration,\n list,\n location,\n megaphone,\n menu,\n minus,\n more,\n negative,\n notification,\n pagination,\n payment,\n pencil,\n person,\n plus,\n question,\n reload,\n receipt,\n report,\n search,\n settings,\n sick,\n signout,\n switch: switchIcon,\n tachometer,\n task,\n template,\n tool,\n trash,\n turn,\n upload,\n warning,\n};\n","p-button {\n @apply flex h-10 w-auto text-base;\n\n button,\n a {\n outline: 0;\n border: 0;\n @apply h-full w-full;\n @apply rounded-large #{!important};\n @apply font-semibold leading-4;\n @apply flex items-center justify-center;\n @apply cursor-pointer text-base;\n\n will-change: filter;\n\n > p-loader {\n @apply ml-2;\n }\n\n // Icon positions\n &.icon-position-end {\n > p-icon:not(.chevron) {\n @apply ml-2;\n }\n }\n\n &.icon-position-start {\n > p-icon:not(.chevron) {\n @apply mr-2;\n }\n }\n\n // Variants\n &.variant-primary,\n &.variant-secondary {\n @apply px-4 filter;\n }\n\n &.variant-primary,\n &.variant-secondary {\n &:active,\n &.active {\n @apply drop-shadow-transparent;\n }\n }\n\n &.variant-primary {\n @apply bg-indigo text-white;\n\n &:active,\n &.active {\n &:not([disabled]) {\n @apply bg-indigo-dark;\n }\n }\n\n @media (pointer: fine) {\n &:hover:not([disabled]) {\n @apply drop-shadow-button-primary-hover;\n }\n }\n }\n\n &.variant-secondary {\n @apply border border-solid border-mystic-dark #{!important};\n @apply bg-white text-storm;\n\n &:active,\n &.active {\n &:not([disabled]) {\n @apply bg-mystic;\n }\n }\n\n @media (pointer: fine) {\n &:hover:not([disabled]) {\n @apply drop-shadow-button-secondary-hover;\n }\n }\n }\n\n &.variant-text {\n @apply text-indigo;\n\n &:hover:not([disabled]) {\n @apply text-indigo-dark;\n }\n }\n\n &[disabled] {\n @apply opacity-40;\n }\n\n // chevron\n &.has-chevron {\n &.chevron-position-start {\n @apply pl-2;\n\n > p-icon.chevron {\n @apply mr-2;\n }\n }\n\n &.chevron-position-end {\n @apply pr-2;\n\n > p-icon.chevron {\n @apply ml-2;\n }\n }\n\n &.variant-secondary:hover:not([disabled]) p-icon:last-child {\n @apply text-indigo;\n }\n }\n\n &.should-inherit-text {\n color: inherit #{!important};\n font-size: inherit #{!important};\n font-weight: inherit #{!important};\n }\n }\n\n &.has-icon-only {\n @apply w-10;\n\n a,\n button {\n @apply p-0;\n\n > p-icon:first-child {\n @apply mx-0;\n }\n\n > p-loader {\n @apply ml-0;\n }\n }\n }\n\n // sizes\n &.size-small {\n @apply h-8;\n\n button,\n a {\n @apply text-sm;\n\n > p-icon {\n @apply text-base;\n }\n }\n\n &.has-icon-only {\n @apply w-8;\n }\n }\n}\n","import {\n Component,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Prop,\n} from '@stencil/core';\nimport { RotateOptions } from '../../../types/tailwind';\nimport { IconFlipOptions, IconVariant } from '../icon/icon.component';\n\n@Component({\n tag: 'p-button',\n styleUrl: 'button.component.scss',\n // shadow: true,\n})\nexport class Button {\n /**\n * The variant of the button\n */\n @Prop() variant: 'primary' | 'secondary' | 'text' = 'primary';\n\n /**\n * Href in case of \"text\" version\n */\n @Prop() href: string;\n\n /**\n * Target in case of \"text\" version\n */\n @Prop() target: string;\n\n /**\n * The size of the button\n */\n @Prop() size: 'small' | 'medium' = 'medium';\n\n /**\n * Wether to show a loader or not\n */\n @Prop() loading: boolean = false;\n\n /**\n * Wether to show a chevron or not\n */\n @Prop() chevron: boolean | 'up' | 'down' = false;\n\n /**\n * Chevron position\n */\n @Prop() chevronPosition: 'start' | 'end' = 'end';\n\n /**\n * Wether the button is disabled\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Icon to show on the button\n */\n @Prop() icon: IconVariant;\n\n /**\n * Wether the button is icon only\n */\n @Prop() iconOnly: boolean = false;\n\n /**\n * Icon position\n */\n @Prop() iconPosition: 'start' | 'end' = 'end';\n\n /**\n * Icon flip\n */\n @Prop() iconFlip: IconFlipOptions;\n\n /**\n * Icon rotate\n */\n @Prop() iconRotate: RotateOptions;\n\n /**\n * Wether the button should inherit text styles\n */\n @Prop() inheritText: boolean = false;\n\n /**\n * Button click event\n */\n @Event() onClick: EventEmitter<MouseEvent>;\n\n render() {\n let loaderColor: 'white' | 'storm' | 'indigo' = 'white';\n switch (this.variant) {\n case 'secondary':\n loaderColor = 'storm';\n break;\n case 'text':\n loaderColor = 'indigo';\n break;\n }\n\n const VariableTag = this.variant === 'text' ? 'a' : 'button';\n\n return (\n <Host\n class={`p-button size-${this.size} ${\n this.iconOnly && 'has-icon-only'\n } `}\n >\n <VariableTag\n class={`variant-${this.variant} icon-position-${\n this.iconPosition\n } ${this.chevron && 'has-chevron'} chevron-position-${\n this.chevronPosition\n } ${this.inheritText && 'should-inherit-text'}`}\n disabled={this.disabled}\n href={this.href}\n target={this.target}\n >\n {this.chevron && this.chevronPosition === 'start' && (\n <p-icon\n class=\"chevron\"\n variant=\"chevron\"\n rotate={this.chevron === 'up' ? 180 : 0}\n />\n )}\n\n {this.icon &&\n this.iconPosition === 'start' &&\n !(this.iconOnly && this.loading) &&\n this._getIcon()}\n\n <slot />\n\n {this.icon &&\n this.iconPosition === 'end' &&\n !(this.iconOnly && this.loading) &&\n this._getIcon()}\n\n {this.loading && <p-loader color={loaderColor} />}\n\n {this.chevron && this.chevronPosition === 'end' && (\n <p-icon\n class=\"chevron\"\n variant=\"chevron\"\n rotate={this.chevron === 'up' ? 180 : 0}\n />\n )}\n </VariableTag>\n </Host>\n );\n }\n\n @Listen('click', { capture: true })\n handleClick(ev: MouseEvent) {\n if (this.loading || this.disabled) {\n ev.preventDefault();\n return;\n }\n\n this.onClick.emit(ev);\n }\n\n private _getIcon() {\n if (!this.icon) {\n return;\n }\n\n return (\n <p-icon\n variant={this.icon}\n flip={this.iconFlip}\n rotate={this.iconRotate}\n />\n );\n }\n}\n",":host {\n}\n","import { Component, h, Host, Prop } from '@stencil/core';\nimport { RotateOptions, TextSizeOptions } from '../../../types/tailwind';\nimport icons from '../../../utils/icons';\n\nexport type IconVariant = keyof typeof icons;\nexport type IconFlipOptions = 'horizontal' | 'vertical';\n\n@Component({\n tag: 'p-icon',\n styleUrl: 'icon.component.scss',\n // shadow: true,\n})\nexport class Icon {\n /**\n * The icon the be displayed\n */\n @Prop() variant!: IconVariant;\n\n /**\n * The size of the icon, using tailwind sizes\n */\n @Prop() size: TextSizeOptions = 'auto';\n\n /**\n * Wether to rotate the icon x degrees\n */\n @Prop() rotate: RotateOptions = 0;\n\n /**\n * Wether to flip the icon horizontally or vertically\n */\n @Prop() flip: IconFlipOptions = null;\n\n render() {\n const icon = icons[this.variant];\n\n const styles = {\n 'p-icon flex': true,\n 'text-auto': this.size === 'auto',\n 'text-xxs': this.size === 'xxs',\n 'text-xs': this.size === 'xs',\n 'text-sm': this.size === 'sm',\n 'text-base': this.size === 'base',\n 'text-lg': this.size === 'lg',\n 'text-xl': this.size === 'xl',\n 'text-2xl': this.size === '2xl',\n 'text-3xl': this.size === '3xl',\n 'text-4xl': this.size === '4xl',\n 'text-5xl': this.size === '5xl',\n 'text-6xl': this.size === '6xl',\n transform: !!this.rotate || !!this.flip,\n 'scale-x-flip': this.flip === 'horizontal',\n 'scale-y-flip': this.flip === 'vertical',\n 'rotate-0': this.rotate === 0,\n 'rotate-25': this.rotate === 25,\n 'rotate-45': this.rotate === 45,\n 'rotate-90': this.rotate === 90,\n 'rotate-135': this.rotate === 135,\n 'rotate-180': this.rotate === 180,\n 'rotate-225': this.rotate === 225,\n 'rotate-270': this.rotate === 270,\n 'rotate-315': this.rotate === 315,\n '-rotate-0': this.rotate === -0,\n '-rotate-25': this.rotate === -25,\n '-rotate-45': this.rotate === -45,\n '-rotate-90': this.rotate === -90,\n '-rotate-135': this.rotate === -135,\n '-rotate-180': this.rotate === -180,\n '-rotate-225': this.rotate === -225,\n '-rotate-270': this.rotate === -270,\n '-rotate-315': this.rotate === -315,\n };\n\n return <Host class={styles} innerHTML={icon}></Host>;\n }\n}\n",":host {\n .loader {\n @apply inline-block h-[1em] w-[1em] rounded-round;\n @apply border-2 border-solid border-indigo-light border-t-indigo;\n animation: 500ms spin linear infinite;\n\n will-change: transform;\n\n &.color-storm {\n @apply border-storm-light/40 border-t-storm #{!important};\n }\n\n &.color-white {\n @apply border-indigo-light/40 border-t-white #{!important};\n }\n }\n\n .loading-screen {\n @apply w-screen-safe h-screen-safe fixed top-0 left-0;\n @apply flex items-center justify-center;\n @apply bg-mystic;\n\n z-index: 1001;\n\n .content {\n @apply max-w-xs;\n\n .loader-wrapper {\n @apply flex w-full justify-center;\n\n .loader {\n @apply text-4xl;\n }\n }\n }\n }\n}\n\n:host(.variant-ghost) {\n @apply box-border block;\n\n will-change: background, background-position-x, background-color;\n\n min-height: 1em;\n min-width: 1em;\n\n --loading-bg: #f7fafc;\n --loading-stripe: rgba(252, 253, 254, 1);\n\n background-color: var(--loading-bg);\n background: linear-gradient(\n 100deg,\n rgba(255, 255, 255, 0) 40%,\n var(--loading-stripe) 50%,\n rgba(255, 255, 255, 0) 60%\n )\n var(--loading-bg);\n background-size: 200% 100%;\n background-position-x: 180%;\n animation: 1s loading ease-in-out infinite;\n}\n\n@keyframes loading {\n to {\n background-position-x: -20%;\n }\n}\n\n@keyframes spin {\n 100% {\n transform: rotate(1turn);\n }\n}\n","import { Component, h, Host, Prop } from '@stencil/core';\nimport { Observable, Subscription } from 'rxjs';\n\n@Component({\n tag: 'p-loader',\n styleUrl: 'loader.component.scss',\n shadow: true,\n})\nexport class Loader {\n /**\n * Wether to show or hide the loader\n */\n @Prop() show: boolean | Observable<boolean> = true;\n\n /**\n * Variant of loader\n */\n @Prop() variant:\n | 'inline'\n | 'full-width'\n | 'full-screen'\n | 'modal'\n | 'ghost' = 'inline';\n\n /**\n * Color of the loader\n */\n @Prop() color: 'indigo' | 'white' | 'storm' = 'indigo';\n\n /**\n * !NOT IMPLEMENTED! Modal title for modal variant\n */\n @Prop() modalTitle: string;\n\n /**\n * !NOT IMPLEMENTED! Modal description for modal variant\n */\n @Prop() modalDescription: string;\n\n private _show = this.show;\n private _showSubscriber: Subscription;\n\n private _loader = (<div class={`loader color-${this.color}`}></div>);\n\n componentWillRender() {\n this._checkShow();\n }\n\n componentShouldUpdate() {\n this._checkShow();\n }\n\n render() {\n if (!this._show) {\n return;\n }\n\n if (this.variant === 'ghost') {\n return <Host class=\"p-loader variant-ghost\"></Host>;\n }\n\n if (this.variant === 'full-screen') {\n return (\n <Host class=\"p-loader variant-full-screen\">\n <div class=\"loading-screen\">\n <div class=\"content\">\n <slot />\n\n <div class=\"loader-wrapper\">{this._loader}</div>\n </div>\n </div>\n </Host>\n );\n }\n\n return (\n <Host\n class={`p-loader variant-default flex ${\n this.variant === 'full-width' &&\n 'w-full flex justify-center text-4xl'\n }`}\n >\n {this._loader}\n </Host>\n );\n }\n\n private _checkShow() {\n if (this._showSubscriber) {\n this._showSubscriber.unsubscribe();\n this._showSubscriber = null;\n }\n\n if (typeof this.show !== 'boolean') {\n this._showSubscriber = this.show?.subscribe(\n (show) => (this._show = show)\n );\n return;\n }\n\n this._show = this.show;\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["backdropComponentCss","Backdrop","componentWillLoad","this","scrollLock","document","querySelector","classList","add","disconnectedCallback","remove","render","h","Host","class","variant","applyBlur","closing","handleClick","ev","target","_el","clicked","emit"],"sources":["./src/components/atoms/backdrop/backdrop.component.scss?tag=p-backdrop&encapsulation=shadow","./src/components/atoms/backdrop/backdrop.component.tsx"],"sourcesContent":[":host {\n @apply flex;\n @apply fixed left-0 top-0 z-backdrop;\n @apply h-full w-full;\n @apply overflow-hidden;\n @apply animate-fade-in bg-storm-dark/50;\n @apply max-h-screen max-w-screen;\n\n .content-container {\n @apply h-full w-full overflow-y-auto overflow-x-hidden;\n @apply tablet:px-16 desktop-xs:p-16;\n @apply flex items-end justify-center desktop-xs:items-center;\n @apply max-h-screen max-w-screen;\n }\n}\n\n:host(.blurred) {\n @apply backdrop-blur-xs;\n}\n\n:host(.closing) {\n @apply animate-fade-out;\n\n .content-container {\n @apply overflow-hidden;\n }\n}\n\n:host(.variant-drawer) {\n .content-container {\n @apply items-start justify-end;\n @apply p-0 tablet:p-0 desktop-xs:p-0;\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Prop,\n} from '@stencil/core';\n\n@Component({\n tag: 'p-backdrop',\n styleUrl: 'backdrop.component.scss',\n shadow: true,\n})\nexport class Backdrop {\n /**\n * The variant of the backdrop\n */\n @Prop() variant: 'modal' | 'drawer' = 'modal';\n\n /**\n * Wether to apply blur on the background of the backdrop\n */\n @Prop() applyBlur: boolean = false;\n\n /**\n * Wether the backdrop is closing\n */\n @Prop() closing: boolean = false;\n\n /**\n * Wether we should scroll lock the body\n */\n @Prop() scrollLock: boolean = true;\n\n /**\n * When the backdrop is clicked\n */\n @Event() clicked: EventEmitter<MouseEvent>;\n\n /**\n * The host element\n */\n @Element() private _el: HTMLElement;\n\n componentWillLoad() {\n if (this.scrollLock) {\n document.querySelector(':root').classList.add('scroll-lock');\n }\n }\n\n disconnectedCallback() {\n if (this.scrollLock) {\n document.querySelector(':root').classList.remove('scroll-lock');\n }\n }\n\n render() {\n return (\n <Host\n class={`p-backdrop variant-${this.variant} ${\n this.applyBlur && 'blurred'\n } ${this.closing && 'closing'}`}\n >\n <div class=\"content-container\">\n <slot />\n </div>\n </Host>\n );\n }\n\n @Listen('click', { capture: true })\n handleClick(ev: MouseEvent) {\n if (ev.target !== this._el) {\n return;\n }\n\n this.clicked.emit(ev);\n }\n}\n"],"mappings":"gEAAA,MAAMA,EAAuB,i4N,MCgBhBC,EAAQ,M,uEAIqB,Q,eAKT,M,aAKF,M,gBAKG,I,CAY9BC,oBACI,GAAIC,KAAKC,WAAY,CACjBC,SAASC,cAAc,SAASC,UAAUC,IAAI,c,EAItDC,uBACI,GAAIN,KAAKC,WAAY,CACjBC,SAASC,cAAc,SAASC,UAAUG,OAAO,c,EAIzDC,SACI,OACIC,EAACC,EAAI,CACDC,MAAO,sBAAsBX,KAAKY,WAC9BZ,KAAKa,WAAa,aAClBb,KAAKc,SAAW,aAEpBL,EAAA,OAAKE,MAAM,qBACPF,EAAA,c,CAOhBM,YAAYC,GACR,GAAIA,EAAGC,SAAWjB,KAAKkB,IAAK,CACxB,M,CAGJlB,KAAKmB,QAAQC,KAAKJ,E"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["accordionComponentCss","Accordion","render","h","Host","class","onClick","this","_onClick","variant","rotate","open","header","closeable","openable","isOpen","emit"],"sources":["./src/components/molecules/accordion/accordion.component.scss?tag=p-accordion&encapsulation=shadow","./src/components/molecules/accordion/accordion.component.tsx"],"sourcesContent":[":host {\n @apply block mb-6;\n}\n","import { Component, Event, EventEmitter, h, Host, Prop } from '@stencil/core';\n\n@Component({\n tag: 'p-accordion',\n styleUrl: 'accordion.component.scss',\n shadow: true,\n})\nexport class Accordion {\n /**\n * Header of the accordion\n */\n @Prop() header!: string;\n\n /**\n * Wether the accordion is open\n */\n @Prop() open: boolean = false;\n\n /**\n * Wether the accordion can be closed\n */\n @Prop() closeable: boolean = true;\n\n /**\n * Wether the accordion can be opened\n */\n @Prop() openable: boolean = true;\n\n /**\n * Open change event\n */\n @Event() isOpen: EventEmitter<boolean>;\n\n render() {\n return (\n <Host class=\"p-accordion\">\n <div\n class=\"flex items-center gap-3 text-storm-vague cursor-pointer\"\n onClick={() => this._onClick()}\n >\n <p-icon\n class=\"flex\"\n variant=\"chevron\"\n rotate={this.open ? 0 : -90}\n />\n <p class=\"m-0 font-medium text-lg whitespace-nowrap\">\n {this.header}\n </p>\n <p-divider />\n </div>\n {this.open && (\n <div class=\"mt-6\">\n <slot />\n </div>\n )}\n </Host>\n );\n }\n\n private _onClick() {\n if (!this.closeable && this.open) {\n return;\n }\n\n if (!this.openable && !this.open) {\n return;\n }\n\n this.open = !this.open;\n this.isOpen.emit(this.open);\n }\n}\n"],"mappings":"yDAAA,MAAMA,EAAwB,g8I,MCOjBC,EAAS,M,wFASM,M,eAKK,K,cAKD,I,CAO5BC,SACI,OACIC,EAACC,EAAI,CAACC,MAAM,eACRF,EAAA,OACIE,MAAM,0DACNC,QAAS,IAAMC,KAAKC,YAEpBL,EAAA,UACIE,MAAM,OACNI,QAAQ,UACRC,OAAQH,KAAKI,KAAO,GAAK,KAE7BR,EAAA,KAAGE,MAAM,6CACJE,KAAKK,QAEVT,EAAA,mBAEHI,KAAKI,MACFR,EAAA,OAAKE,MAAM,QACPF,EAAA,c,CAOZK,WACJ,IAAKD,KAAKM,WAAaN,KAAKI,KAAM,CAC9B,M,CAGJ,IAAKJ,KAAKO,WAAaP,KAAKI,KAAM,CAC9B,M,CAGJJ,KAAKI,MAAQJ,KAAKI,KAClBJ,KAAKQ,OAAOC,KAAKT,KAAKI,K"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["selectComponentCss","Select","_items","this","items","loading","JSON","parse","displayKey","valueKey","map","str","value","text","_isAutoCompleting","_a","query","length","_b","_selectedItem","asyncFilter","filter","item","queryKey","_checkvalue","_identifierKey","slice","maxDisplayedItems","_displayValue","_placeholder","autocompletePlaceholder","placeholder","identifierKey","componentDidLoad","Error","_valueChange","itemChanges","render","h","Host","class","_showDropdown","disableTriggerClick","calculateWidth","insideClick","show","slot","icon","size","prefix","label","helper","required","error","disabled","focused","focusMethod","enableAutocomplete","type","onFocus","ev","_onFocus","onMouseDown","_onMouseDown","onClick","_onClick","onInput","_onChange","showChevron","variant","_getLoadingItems","_getItems","documentClickHandler","target","childOf","_el","_preselectItem","_showDropdownChanges","dropdownShown","emit","autoSelectFirst","identifier","parsedValue","stringify","currentValue","currentParsedValue","_c","_selectValue","find","i","itemIdentifier","parsedItemIdentifier","keepQuery","valueChange","_onBlur","preventDefault","stopPropogation","force","queryChange","key","toString","toLowerCase","indexOf","active","enableHover"],"sources":["./src/components/molecules/select/select.component.scss?tag=p-select","./src/components/molecules/select/select.component.tsx"],"sourcesContent":["p-select {\n @apply flex w-full flex-col;\n\n input.read-only {\n @apply text-ellipsis;\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport { childOf } from '../../../utils';\nimport { IconVariant } from '../../atoms/icon/icon.component';\n\n@Component({\n tag: 'p-select',\n styleUrl: 'select.component.scss',\n shadow: false,\n})\nexport class Select {\n /**\n * The items to show in the dropdown\n */\n @Prop() items: string | any[];\n\n /**\n * Icon of the select box\n */\n @Prop() icon: IconVariant;\n\n /**\n * The current query\n */\n @Prop() query: string;\n\n /**\n * The placeholder of the input\n */\n @Prop() placeholder: string;\n\n /**\n * The placeholder of the input when auto completing\n */\n @Prop() autocompletePlaceholder: string;\n\n /**\n * The current value\n */\n @Prop() value: any;\n\n /**\n * The key of the object to display\n */\n @Prop() displayKey: string = 'text';\n\n /**\n * The key of the object to return\n */\n @Prop() valueKey: string;\n\n /**\n * The key to identify an object\n */\n @Prop() identifierKey: string;\n\n /**\n * The key of the object to display\n */\n @Prop() queryKey?: string;\n\n /**\n * Wether to automatically select the first item\n */\n @Prop() autoSelectFirst: boolean = true;\n\n /**\n * Wether to show the chevron or not\n */\n @Prop() showChevron: boolean = true;\n\n /**\n * The maximum amount of items to display\n */\n @Prop() maxDisplayedItems: number = 10;\n\n /**\n * Wether to enable autocomplete\n */\n @Prop() enableAutocomplete: boolean = true;\n\n /**\n * Wether to keep the query or not\n */\n @Prop() keepQuery: boolean = true;\n\n /**\n * Wether the input uses async filtering\n */\n @Prop() asyncFilter: boolean = false;\n\n /**\n * Wether to show loading items\n */\n @Prop() loading: boolean = false;\n\n /**\n * Event when the query of the autocomplete changes\n */\n @Event() queryChange: EventEmitter<string>;\n\n /**\n * Event when the value changes\n */\n @Event() valueChange: EventEmitter<any>;\n\n /**\n * Event when the dropdown shows\n */\n @Event() dropdownShown: EventEmitter<any>;\n\n /**\n * The size of the input group used by the select\n */\n @Prop() size: 'small' | 'medium' = 'medium';\n\n /**\n * The prefix of the input group used by the select\n */\n @Prop() prefix: string;\n\n /**\n * The label of the input group used by the select\n */\n @Prop() label: string;\n\n /**\n * The helper of the input group used by the select\n */\n @Prop() helper: string;\n\n /**\n * Wether the field is required\n */\n @Prop({ reflect: true }) required: boolean;\n\n /**\n * The helper of the input group used by the select\n */\n @Prop({ reflect: true }) error: string;\n\n /**\n * Wether the input group is disabled used by the select\n */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /**\n * The host element\n */\n @Element() private _el: HTMLElement;\n\n @State() private _showDropdown: any = false;\n @State() private _selectedItem: any = null;\n\n @State() private _isAutoCompleting: boolean = false;\n\n get _items() {\n if (!this.items || this.loading) {\n return [];\n }\n\n let items =\n typeof this.items === 'string'\n ? JSON.parse(this.items)\n : this.items;\n\n if (typeof items?.[0] === 'string') {\n this.displayKey = 'text';\n this.valueKey = 'value';\n\n items = items.map((str) => ({\n value: str,\n text: str,\n }));\n }\n\n if (\n this._isAutoCompleting &&\n this.query?.length &&\n this.query !== this._selectedItem?.[this.displayKey] &&\n !this.asyncFilter\n ) {\n items = items.filter((item) => {\n if (this.queryKey) {\n return this._checkvalue(this.queryKey, item);\n }\n\n return (\n this._checkvalue(this._identifierKey, item) ||\n this._checkvalue(this.displayKey, item)\n );\n });\n }\n\n return items?.slice(0, this.maxDisplayedItems);\n }\n\n get _displayValue() {\n if (this._isAutoCompleting) {\n return this.query;\n }\n\n return this._selectedItem?.[this.displayKey];\n }\n\n get _placeholder() {\n return this._isAutoCompleting && this.autocompletePlaceholder?.length\n ? this.autocompletePlaceholder\n : this.placeholder;\n }\n\n get _identifierKey() {\n return this.identifierKey ?? this.valueKey ?? 'value';\n }\n\n componentDidLoad() {\n if (!this.valueKey && !this.identifierKey) {\n throw new Error('You must provide a valueKey or identifierKey');\n }\n\n if (this.value) {\n this._valueChange();\n return;\n }\n\n this.itemChanges();\n }\n\n render() {\n return (\n <Host class=\"p-select\">\n {this._showDropdown && (!!this._items.length || this.loading)}\n {this._isAutoCompleting}\n <p-dropdown\n disableTriggerClick={true}\n calculateWidth={true}\n insideClick={true}\n show={\n this._showDropdown &&\n (!!this._items.length || this.loading)\n }\n >\n <p-input-group\n slot=\"trigger\"\n icon={this.icon}\n size={this.size}\n prefix={this.prefix}\n label={this.label}\n helper={this.helper}\n required={this.required}\n error={this.error}\n disabled={this.disabled}\n focused={this._showDropdown}\n focusMethod={\n this.enableAutocomplete ? 'focus' : 'click'\n }\n >\n <input\n slot=\"input\"\n type=\"text\"\n placeholder={this._placeholder}\n value={this._displayValue}\n class={`p-input cursor-pointer ${\n !this._isAutoCompleting && 'read-only'\n }`}\n onFocus={(ev) => this._onFocus(ev)}\n onMouseDown={(ev) => this._onMouseDown(ev)}\n onClick={() => this._onClick()}\n onInput={(ev) => this._onChange(ev)}\n />\n\n {this.showChevron && (\n <p-icon variant=\"chevron\" slot=\"suffix\" />\n )}\n </p-input-group>\n <div slot=\"items\">\n {this.loading\n ? this._getLoadingItems()\n : this._getItems()}\n </div>\n </p-dropdown>\n </Host>\n );\n }\n\n @Listen('click', { target: 'document', capture: true })\n protected documentClickHandler({ target }) {\n if (!this._showDropdown || childOf(target, this._el)) {\n return;\n }\n\n this._showDropdown = false;\n this._isAutoCompleting = false;\n }\n\n @Watch('value')\n private _valueChange() {\n this._preselectItem();\n }\n\n @Watch('items')\n public itemChanges() {\n this._preselectItem();\n }\n\n @Watch('_showDropdown')\n public _showDropdownChanges() {\n this.dropdownShown.emit({\n value: this._showDropdown,\n query: this.query,\n });\n }\n\n private _preselectItem() {\n if (this._isAutoCompleting && this.query?.length) {\n return;\n }\n\n let value = this.value;\n\n if (!this._selectedItem && !value && this.autoSelectFirst) {\n value = this._items[0];\n }\n\n // if (!value) {\n // this._selectValue(null);\n // return;\n // }\n\n const identifier =\n typeof value === 'object' && value !== null\n ? value[this._identifierKey]\n : value;\n const parsedValue =\n typeof identifier === 'string' || typeof identifier === 'number'\n ? identifier\n : JSON.stringify(identifier);\n\n const currentValue = this._selectedItem\n ? this._selectedItem?.[this._identifierKey]\n : null;\n const currentParsedValue =\n typeof currentValue === 'string' || typeof currentValue === 'number'\n ? currentValue\n : JSON.stringify(currentValue);\n\n if (this._selectedItem && currentParsedValue === parsedValue) {\n return;\n }\n\n if (!this._items?.length && value) {\n this._selectValue(value);\n return;\n }\n\n const item = this._items.find((i) => {\n const itemIdentifier = i?.[this._identifierKey];\n const parsedItemIdentifier =\n typeof itemIdentifier === 'string' ||\n typeof itemIdentifier === 'number'\n ? itemIdentifier\n : JSON.stringify(itemIdentifier);\n\n return parsedItemIdentifier === parsedValue;\n });\n\n this._selectValue(!!item ? item : value);\n }\n\n private _selectValue(item) {\n this._selectedItem = item;\n const value =\n !!this.valueKey && this.valueKey !== 'false' && item !== null\n ? item?.[this.valueKey]\n : item;\n\n this.query = this.keepQuery ? item?.[this.displayKey] : null;\n this.value = value;\n this.valueChange.emit(value);\n\n this._onBlur(true);\n }\n\n private _onFocus(ev) {\n if (!this.enableAutocomplete) {\n ev.preventDefault();\n ev.stopPropogation();\n\n if (!this._showDropdown) {\n this._showDropdown = true;\n }\n return;\n }\n\n this._showDropdown = true;\n this._isAutoCompleting = true;\n }\n\n private _onMouseDown(ev) {\n if (this.enableAutocomplete) {\n return;\n }\n\n ev.preventDefault();\n }\n\n private _onClick() {\n if (this.enableAutocomplete) {\n return;\n }\n\n this._showDropdown = !this._showDropdown;\n }\n\n private _onBlur(force = false) {\n if (!this.enableAutocomplete && !force) {\n return;\n }\n\n this._isAutoCompleting = false;\n this._showDropdown = false;\n }\n\n private _onChange(ev) {\n if (!this.enableAutocomplete) {\n return;\n }\n\n if (!this._isAutoCompleting) {\n this._isAutoCompleting = true;\n this._showDropdown = true;\n }\n\n this.query = ev.target.value;\n this.queryChange.emit(ev.target.value);\n }\n\n private _checkvalue(key, item) {\n return (\n item?.[key]\n ?.toString()\n ?.toLowerCase()\n .indexOf(this.query?.toLowerCase()) >= 0\n );\n }\n\n private _getItems() {\n return this._items.map((item) => (\n <p-dropdown-menu-item\n onClick={() => this._selectValue(item)}\n active={\n item[this._identifierKey] ===\n this._selectedItem?.[this._identifierKey]\n }\n >\n {item[this.displayKey]}\n </p-dropdown-menu-item>\n ));\n }\n\n private _getLoadingItems() {\n return [0, 0, 0].map(() => (\n <p-dropdown-menu-item enableHover={false}>\n <p-loader variant=\"ghost\" class=\"h-6 w-full rounded\" />\n </p-dropdown-menu-item>\n ));\n }\n}\n"],"mappings":"oGAAA,MAAMA,EAAqB,mlL,MCoBdC,EAAM,M,6TAkCc,O,kGAoBM,K,iBAKJ,K,uBAKK,G,wBAKE,K,eAKT,K,iBAKE,M,aAKJ,M,UAoBQ,S,4HA8BU,M,mBAOP,M,mBACA,K,uBAEQ,K,CAE1CC,a,QACA,IAAKC,KAAKC,OAASD,KAAKE,QAAS,CAC7B,MAAO,E,CAGX,IAAID,SACOD,KAAKC,QAAU,SAChBE,KAAKC,MAAMJ,KAAKC,OAChBD,KAAKC,MAEf,UAAWA,IAAK,MAALA,SAAK,SAALA,EAAQ,MAAO,SAAU,CAChCD,KAAKK,WAAa,OAClBL,KAAKM,SAAW,QAEhBL,EAAQA,EAAMM,KAAKC,IAAG,CAClBC,MAAOD,EACPE,KAAMF,K,CAId,GACIR,KAAKW,qBACLC,EAAAZ,KAAKa,SAAK,MAAAD,SAAA,SAAAA,EAAEE,SACZd,KAAKa,UAAUE,EAAAf,KAAKgB,iBAAa,MAAAD,SAAA,SAAAA,EAAGf,KAAKK,eACxCL,KAAKiB,YACR,CACEhB,EAAQA,EAAMiB,QAAQC,IAClB,GAAInB,KAAKoB,SAAU,CACf,OAAOpB,KAAKqB,YAAYrB,KAAKoB,SAAUD,E,CAG3C,OACInB,KAAKqB,YAAYrB,KAAKsB,eAAgBH,IACtCnB,KAAKqB,YAAYrB,KAAKK,WAAYc,EAAK,G,CAKnD,OAAOlB,IAAK,MAALA,SAAK,SAALA,EAAOsB,MAAM,EAAGvB,KAAKwB,kB,CAG5BC,oB,MACA,GAAIzB,KAAKW,kBAAmB,CACxB,OAAOX,KAAKa,K,CAGhB,OAAOD,EAAAZ,KAAKgB,iBAAa,MAAAJ,SAAA,SAAAA,EAAGZ,KAAKK,W,CAGjCqB,mB,MACA,OAAO1B,KAAKW,qBAAqBC,EAAAZ,KAAK2B,2BAAuB,MAAAf,SAAA,SAAAA,EAAEE,QACzDd,KAAK2B,wBACL3B,KAAK4B,W,CAGXN,qB,QACA,OAAOP,GAAAH,EAAAZ,KAAK6B,iBAAa,MAAAjB,SAAA,EAAAA,EAAIZ,KAAKM,YAAQ,MAAAS,SAAA,EAAAA,EAAI,O,CAGlDe,mBACI,IAAK9B,KAAKM,WAAaN,KAAK6B,cAAe,CACvC,MAAM,IAAIE,MAAM,+C,CAGpB,GAAI/B,KAAKS,MAAO,CACZT,KAAKgC,eACL,M,CAGJhC,KAAKiC,a,CAGTC,SACI,OACIC,EAACC,EAAI,CAACC,MAAM,YACPrC,KAAKsC,kBAAoBtC,KAAKD,OAAOe,QAAUd,KAAKE,SACpDF,KAAKW,kBACNwB,EAAA,cACII,oBAAqB,KACrBC,eAAgB,KAChBC,YAAa,KACbC,KACI1C,KAAKsC,kBACFtC,KAAKD,OAAOe,QAAUd,KAAKE,UAGlCiC,EAAA,iBACIQ,KAAK,UACLC,KAAM5C,KAAK4C,KACXC,KAAM7C,KAAK6C,KACXC,OAAQ9C,KAAK8C,OACbC,MAAO/C,KAAK+C,MACZC,OAAQhD,KAAKgD,OACbC,SAAUjD,KAAKiD,SACfC,MAAOlD,KAAKkD,MACZC,SAAUnD,KAAKmD,SACfC,QAASpD,KAAKsC,cACde,YACIrD,KAAKsD,mBAAqB,QAAU,SAGxCnB,EAAA,SACIQ,KAAK,QACLY,KAAK,OACL3B,YAAa5B,KAAK0B,aAClBjB,MAAOT,KAAKyB,cACZY,MAAO,2BACFrC,KAAKW,mBAAqB,cAE/B6C,QAAUC,GAAOzD,KAAK0D,SAASD,GAC/BE,YAAcF,GAAOzD,KAAK4D,aAAaH,GACvCI,QAAS,IAAM7D,KAAK8D,WACpBC,QAAUN,GAAOzD,KAAKgE,UAAUP,KAGnCzD,KAAKiE,aACF9B,EAAA,UAAQ+B,QAAQ,UAAUvB,KAAK,YAGvCR,EAAA,OAAKQ,KAAK,SACL3C,KAAKE,QACAF,KAAKmE,mBACLnE,KAAKoE,c,CAQrBC,sBAAqBC,OAAEA,IAC7B,IAAKtE,KAAKsC,eAAiBiC,EAAQD,EAAQtE,KAAKwE,KAAM,CAClD,M,CAGJxE,KAAKsC,cAAgB,MACrBtC,KAAKW,kBAAoB,K,CAIrBqB,eACJhC,KAAKyE,gB,CAIFxC,cACHjC,KAAKyE,gB,CAIFC,uBACH1E,KAAK2E,cAAcC,KAAK,CACpBnE,MAAOT,KAAKsC,cACZzB,MAAOb,KAAKa,O,CAIZ4D,iB,UACJ,GAAIzE,KAAKW,qBAAqBC,EAAAZ,KAAKa,SAAK,MAAAD,SAAA,SAAAA,EAAEE,QAAQ,CAC9C,M,CAGJ,IAAIL,EAAQT,KAAKS,MAEjB,IAAKT,KAAKgB,gBAAkBP,GAAST,KAAK6E,gBAAiB,CACvDpE,EAAQT,KAAKD,OAAO,E,CAQxB,MAAM+E,SACKrE,IAAU,UAAYA,IAAU,KACjCA,EAAMT,KAAKsB,gBACXb,EACV,MAAMsE,SACKD,IAAe,iBAAmBA,IAAe,SAClDA,EACA3E,KAAK6E,UAAUF,GAEzB,MAAMG,EAAejF,KAAKgB,eACpBD,EAAAf,KAAKgB,iBAAa,MAAAD,SAAA,SAAAA,EAAGf,KAAKsB,gBAC1B,KACN,MAAM4D,SACKD,IAAiB,iBAAmBA,IAAiB,SACtDA,EACA9E,KAAK6E,UAAUC,GAEzB,GAAIjF,KAAKgB,eAAiBkE,IAAuBH,EAAa,CAC1D,M,CAGJ,MAAKI,EAAAnF,KAAKD,UAAM,MAAAoF,SAAA,SAAAA,EAAErE,SAAUL,EAAO,CAC/BT,KAAKoF,aAAa3E,GAClB,M,CAGJ,MAAMU,EAAOnB,KAAKD,OAAOsF,MAAMC,IAC3B,MAAMC,EAAiBD,IAAC,MAADA,SAAC,SAADA,EAAItF,KAAKsB,gBAChC,MAAMkE,SACKD,IAAmB,iBACnBA,IAAmB,SACpBA,EACApF,KAAK6E,UAAUO,GAEzB,OAAOC,IAAyBT,CAAW,IAG/C/E,KAAKoF,eAAejE,EAAOA,EAAOV,E,CAG9B2E,aAAajE,GACjBnB,KAAKgB,cAAgBG,EACrB,MAAMV,IACAT,KAAKM,UAAYN,KAAKM,WAAa,SAAWa,IAAS,KACnDA,IAAI,MAAJA,SAAI,SAAJA,EAAOnB,KAAKM,UACZa,EAEVnB,KAAKa,MAAQb,KAAKyF,UAAYtE,IAAI,MAAJA,SAAI,SAAJA,EAAOnB,KAAKK,YAAc,KACxDL,KAAKS,MAAQA,EACbT,KAAK0F,YAAYd,KAAKnE,GAEtBT,KAAK2F,QAAQ,K,CAGTjC,SAASD,GACb,IAAKzD,KAAKsD,mBAAoB,CAC1BG,EAAGmC,iBACHnC,EAAGoC,kBAEH,IAAK7F,KAAKsC,cAAe,CACrBtC,KAAKsC,cAAgB,I,CAEzB,M,CAGJtC,KAAKsC,cAAgB,KACrBtC,KAAKW,kBAAoB,I,CAGrBiD,aAAaH,GACjB,GAAIzD,KAAKsD,mBAAoB,CACzB,M,CAGJG,EAAGmC,gB,CAGC9B,WACJ,GAAI9D,KAAKsD,mBAAoB,CACzB,M,CAGJtD,KAAKsC,eAAiBtC,KAAKsC,a,CAGvBqD,QAAQG,EAAQ,OACpB,IAAK9F,KAAKsD,qBAAuBwC,EAAO,CACpC,M,CAGJ9F,KAAKW,kBAAoB,MACzBX,KAAKsC,cAAgB,K,CAGjB0B,UAAUP,GACd,IAAKzD,KAAKsD,mBAAoB,CAC1B,M,CAGJ,IAAKtD,KAAKW,kBAAmB,CACzBX,KAAKW,kBAAoB,KACzBX,KAAKsC,cAAgB,I,CAGzBtC,KAAKa,MAAQ4C,EAAGa,OAAO7D,MACvBT,KAAK+F,YAAYnB,KAAKnB,EAAGa,OAAO7D,M,CAG5BY,YAAY2E,EAAK7E,G,UACrB,QACIJ,GAAAH,EAAAO,IAAI,MAAJA,SAAI,SAAJA,EAAO6E,MAAI,MAAApF,SAAA,SAAAA,EACLqF,cAAU,MAAAlF,SAAA,SAAAA,EACVmF,cACDC,SAAQhB,EAAAnF,KAAKa,SAAK,MAAAsE,SAAA,SAAAA,EAAEe,iBAAkB,C,CAI3C9B,YACJ,OAAOpE,KAAKD,OAAOQ,KAAKY,I,MAAS,OAC7BgB,EAAA,wBACI0B,QAAS,IAAM7D,KAAKoF,aAAajE,GACjCiF,OACIjF,EAAKnB,KAAKsB,oBACVV,EAAAZ,KAAKgB,iBAAa,MAAAJ,SAAA,SAAAA,EAAGZ,KAAKsB,kBAG7BH,EAAKnB,KAAKK,YACQ,G,CAIvB8D,mBACJ,MAAO,CAAC,EAAG,EAAG,GAAG5D,KAAI,IACjB4B,EAAA,wBAAsBkE,YAAa,OAC/BlE,EAAA,YAAU+B,QAAQ,QAAQ7B,MAAM,yB"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as t,c as r,h as a,H as e,g as o}from"./p-6ccf5cdd.js";import{a as i,c as n,o as s,f as w,s as p}from"./p-fef32402.js";import{c as m}from"./p-8a6728d5.js";const d=".fixed{position:fixed!important}.absolute{position:absolute!important}.relative{position:relative!important}.left-0{left:0!important}.top-0{top:0!important}.z-dropdown{z-index:200!important}.block{display:block!important}.flex{display:flex!important}.hidden{display:none!important}.h-auto{height:auto!important}*{box-sizing:border-box}:host{display:block;position:relative}:host .trigger{display:block;height:auto;position:relative;width:auto}:host p-dropdown-menu-container{display:none;left:0;top:0;z-index:200}:host p-dropdown-menu-container[data-show]{display:flex}:host p-dropdown-menu-container[data-strategy=absolute]{position:absolute}:host p-dropdown-menu-container[data-strategy=fixed]{position:fixed}.static{position:static!important}.cursor-pointer{cursor:pointer!important}.blur{--tw-blur:blur(8px)!important}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}.visible{visibility:visible!important}.-rotate-0{--tw-rotate:-0deg!important}.-rotate-0,.-rotate-135{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.-rotate-135{--tw-rotate:-135deg!important}.-rotate-180{--tw-rotate:-180deg!important}.-rotate-180,.-rotate-225{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.-rotate-225{--tw-rotate:-225deg!important}.-rotate-25{--tw-rotate:-25deg!important}.-rotate-25,.-rotate-270{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.-rotate-270{--tw-rotate:-270deg!important}.-rotate-315{--tw-rotate:-315deg!important}.-rotate-315,.-rotate-45{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.-rotate-45{--tw-rotate:-45deg!important}.-rotate-90{--tw-rotate:-90deg!important}.-rotate-90,.rotate-0{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.rotate-0{--tw-rotate:0deg!important}.rotate-135{--tw-rotate:135deg!important}.rotate-135,.rotate-180{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.rotate-180{--tw-rotate:180deg!important}.rotate-225{--tw-rotate:225deg!important}.rotate-225,.rotate-25{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.rotate-25{--tw-rotate:25deg!important}.rotate-270{--tw-rotate:270deg!important}.rotate-270,.rotate-315{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.rotate-315{--tw-rotate:315deg!important}.rotate-45{--tw-rotate:45deg!important}.rotate-45,.rotate-90{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.rotate-90{--tw-rotate:90deg!important}.scale-x-flip{--tw-scale-x:-1!important}.scale-x-flip,.scale-y-flip{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.scale-y-flip{--tw-scale-y:-1!important}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.text-2xl{font-size:1.5rem!important;line-height:2rem!important}.text-3xl{font-size:1.875rem!important;line-height:2.25rem!important}.text-4xl{font-size:2.25rem!important;line-height:2.5rem!important}.text-5xl{font-size:3rem!important}.text-5xl,.text-6xl{line-height:1!important}.text-6xl{font-size:3.75rem!important}.text-base{font-size:1rem!important;line-height:1.5rem!important}.text-lg{font-size:1.125rem!important;line-height:1.75rem!important}.text-sm{font-size:.875rem!important;line-height:1.25rem!important}.text-xl{font-size:1.25rem!important;line-height:1.75rem!important}.text-xs{font-size:.75rem!important;line-height:1rem!important}.text-xxs{font-size:.6875rem!important}.text-negative{--tw-text-opacity:1!important;color:rgb(185 30 40/var(--tw-text-opacity))!important}.text-negative-light{--tw-text-opacity:1!important;color:rgb(255 204 211/var(--tw-text-opacity))!important}.hover\\:text-negative:hover{--tw-text-opacity:1!important;color:rgb(185 30 40/var(--tw-text-opacity))!important}.ml-1{margin-left:.25rem!important}.ml-2{margin-left:.5rem!important}.w-full{width:100%!important}.items-end{align-items:flex-end!important}.justify-between{justify-content:space-between!important}.rounded-bl-none{border-bottom-left-radius:0!important}.rounded-br-none{border-bottom-right-radius:0!important}.rounded-tl-none{border-top-left-radius:0!important}.rounded-tr-none{border-top-right-radius:0!important}.border-l-0{border-left-width:0!important}.border-r-0{border-right-width:0!important}.pl-0{padding-left:0!important}.pr-0{padding-right:0!important}.col-start-1{grid-column-start:1!important}.col-start-2{grid-column-start:2!important}.col-start-3{grid-column-start:3!important}.col-start-4{grid-column-start:4!important}.col-start-5{grid-column-start:5!important}.col-start-6{grid-column-start:6!important}.col-start-7{grid-column-start:7!important}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}.ml-auto{margin-left:auto!important}.min-w-0{min-width:0!important}.h-6{height:1.5rem!important}.rounded{border-radius:.25rem!important}.inline{display:inline!important}.justify-center{justify-content:center!important}.mb-14{margin-bottom:3.5rem!important}.mb-6{margin-bottom:1.5rem!important}.table{display:table!important}.w-6{width:1.5rem!important}.max-w-\\[20rem\\]{max-width:20rem!important}.flex-col{flex-direction:column!important}.items-center{align-items:center!important}.self-center{align-self:center!important}.py-24{padding-bottom:6rem!important;padding-top:6rem!important}.text-center{text-align:center!important}.font-semibold{font-weight:600!important}.text-storm-medium{--tw-text-opacity:1!important;color:rgb(128 130 158/var(--tw-text-opacity))!important}.table-cell{display:table-cell!important}.w-1\\/12{width:8.333333%!important}.w-10\\/12{width:83.333333%!important}.w-11\\/12{width:91.666667%!important}.w-2\\/12{width:16.666667%!important}.w-3\\/12{width:25%!important}.w-4\\/12{width:33.333333%!important}.w-5\\/12{width:41.666667%!important}.w-6\\/12{width:50%!important}.w-7\\/12{width:58.333333%!important}.w-8\\/12{width:66.666667%!important}.w-9\\/12{width:75%!important}.w-auto{width:auto!important}.flex-1{flex:1 1 0%!important}.justify-start{justify-content:flex-start!important}.justify-end{justify-content:flex-end!important}.pr-4{padding-right:1rem!important}.text-storm-dark{--tw-text-opacity:1!important;color:rgb(39 40 56/var(--tw-text-opacity))!important}@media (min-width:40rem){.tablet\\:w-1\\/12{width:8.333333%!important}.tablet\\:w-10\\/12{width:83.333333%!important}.tablet\\:w-11\\/12{width:91.666667%!important}.tablet\\:w-2\\/12{width:16.666667%!important}.tablet\\:w-3\\/12{width:25%!important}.tablet\\:w-4\\/12{width:33.333333%!important}.tablet\\:w-5\\/12{width:41.666667%!important}.tablet\\:w-6\\/12{width:50%!important}.tablet\\:w-7\\/12{width:58.333333%!important}.tablet\\:w-8\\/12{width:66.666667%!important}.tablet\\:w-9\\/12{width:75%!important}}@media (min-width:64rem){.desktop-xs\\:w-1\\/12{width:8.333333%!important}.desktop-xs\\:w-10\\/12{width:83.333333%!important}.desktop-xs\\:w-11\\/12{width:91.666667%!important}.desktop-xs\\:w-2\\/12{width:16.666667%!important}.desktop-xs\\:w-3\\/12{width:25%!important}.desktop-xs\\:w-4\\/12{width:33.333333%!important}.desktop-xs\\:w-5\\/12{width:41.666667%!important}.desktop-xs\\:w-6\\/12{width:50%!important}.desktop-xs\\:w-7\\/12{width:58.333333%!important}.desktop-xs\\:w-8\\/12{width:66.666667%!important}.desktop-xs\\:w-9\\/12{width:75%!important}}@media (min-width:80rem){.desktop-sm\\:w-1\\/12{width:8.333333%!important}.desktop-sm\\:w-10\\/12{width:83.333333%!important}.desktop-sm\\:w-11\\/12{width:91.666667%!important}.desktop-sm\\:w-2\\/12{width:16.666667%!important}.desktop-sm\\:w-3\\/12{width:25%!important}.desktop-sm\\:w-4\\/12{width:33.333333%!important}.desktop-sm\\:w-5\\/12{width:41.666667%!important}.desktop-sm\\:w-6\\/12{width:50%!important}.desktop-sm\\:w-7\\/12{width:58.333333%!important}.desktop-sm\\:w-8\\/12{width:66.666667%!important}.desktop-sm\\:w-9\\/12{width:75%!important}}@media (min-width:85.375rem){.desktop\\:w-1\\/12{width:8.333333%!important}.desktop\\:w-10\\/12{width:83.333333%!important}.desktop\\:w-11\\/12{width:91.666667%!important}.desktop\\:w-2\\/12{width:16.666667%!important}.desktop\\:w-3\\/12{width:25%!important}.desktop\\:w-4\\/12{width:33.333333%!important}.desktop\\:w-5\\/12{width:41.666667%!important}.desktop\\:w-6\\/12{width:50%!important}.desktop\\:w-7\\/12{width:58.333333%!important}.desktop\\:w-8\\/12{width:66.666667%!important}.desktop\\:w-9\\/12{width:75%!important}}@media (min-width:90rem){.desktop-lg\\:w-1\\/12{width:8.333333%!important}.desktop-lg\\:w-10\\/12{width:83.333333%!important}.desktop-lg\\:w-11\\/12{width:91.666667%!important}.desktop-lg\\:w-2\\/12{width:16.666667%!important}.desktop-lg\\:w-3\\/12{width:25%!important}.desktop-lg\\:w-4\\/12{width:33.333333%!important}.desktop-lg\\:w-5\\/12{width:41.666667%!important}.desktop-lg\\:w-6\\/12{width:50%!important}.desktop-lg\\:w-7\\/12{width:58.333333%!important}.desktop-lg\\:w-8\\/12{width:66.666667%!important}.desktop-lg\\:w-9\\/12{width:75%!important}}@media (min-width:120rem){.desktop-xl\\:w-1\\/12{width:8.333333%!important}.desktop-xl\\:w-10\\/12{width:83.333333%!important}.desktop-xl\\:w-11\\/12{width:91.666667%!important}.desktop-xl\\:w-2\\/12{width:16.666667%!important}.desktop-xl\\:w-3\\/12{width:25%!important}.desktop-xl\\:w-4\\/12{width:33.333333%!important}.desktop-xl\\:w-5\\/12{width:41.666667%!important}.desktop-xl\\:w-6\\/12{width:50%!important}.desktop-xl\\:w-7\\/12{width:58.333333%!important}.desktop-xl\\:w-8\\/12{width:66.666667%!important}.desktop-xl\\:w-9\\/12{width:75%!important}}.h-8{height:2rem!important}@media (min-width:64rem){.desktop-xs\\:flex{display:flex!important}}.bottom-0{bottom:0!important}.w-3\\/4{width:75%!important}.gap-4{gap:1rem!important}.border{border-width:1px!important}.border-solid{border-style:solid!important}.border-transparent{border-color:transparent!important}.border-t-mystic-dark{--tw-border-opacity:1!important;border-top-color:rgb(218 230 240/var(--tw-border-opacity))!important}.bg-white{--tw-bg-opacity:1!important;background-color:rgb(255 255 255/var(--tw-bg-opacity))!important}.p-4{padding:1rem!important}@media (min-width:64rem){.desktop-xs\\:hidden{display:none!important}.desktop-xs\\:w-48{width:12rem!important}.desktop-xs\\:w-auto{width:auto!important}.desktop-xs\\:flex-row{flex-direction:row!important}}.m-0{margin:0!important}.table-row{display:table-row!important}.px-2{padding-left:.5rem!important;padding-right:.5rem!important}";const l=class{constructor(a){t(this,a);this.isOpen=r(this,"isOpen",7);this._loaded=false;this.placement="bottom-start";this.strategy="absolute";this.show=false;this.calculateWidth=false;this.applyMaxWidth=true;this.applyFullWidth=true;this.insideClick=false;this.disableTriggerClick=false;this.chevronPosition="end";this.chevronDirection=undefined}componentShouldUpdate(){this._update()}disconnectedCallback(){if(this._cleanup){this._cleanup();this._cleanup=null}}render(){return a(e,{class:"p-dropdown"},a("div",{class:"trigger",ref:t=>this._trigger=t,onClick:()=>this._triggerClickHandler()},a("slot",{onSlotchange:t=>this._checkButton(t),name:"trigger"})),a("p-dropdown-menu-container",{role:"popover",maxWidth:!this.calculateWidth&&this.applyMaxWidth,fullWidth:this.applyFullWidth&&!this.applyMaxWidth,ref:t=>this._load(t),"data-placement":this.placement,"data-strategy":this.strategy,onClick:()=>this._containerClickHandler()},a("slot",{name:"items"})))}_checkButton({target:t}){const r=t;const a=r.assignedElements();for(let t of a){if(t.nodeName==="P-BUTTON"){t.chevronPosition=this.chevronPosition;t.chevron=this.chevronDirection?this.chevronDirection:this.placement.indexOf("top")>=0?"up":"down"}}}onShowChange(t){if(!this._loaded){return}if(!t){this._hide();return}this._show()}documentClickHandler({target:t}){if(!this._menu.hasAttribute("data-show")||m(t,this._el)){return}this._hide()}_containerClickHandler(){if(this.insideClick){return}if(this._menu.hasAttribute("data-show")){this._hide()}}_triggerClickHandler(){if(this.disableTriggerClick){return}if(this._menu.hasAttribute("data-show")){this._hide();return}this._show()}_load(t){this._menu=t;if(t){this._update();this._loaded=true;if(this.show){setTimeout((()=>this._show()),100)}}}_show(){if(!this._loaded){return}if(this.calculateWidth){this._menu.style.width=`${this._trigger.clientWidth}px`}this._cleanup=i(this._el,this._menu,(()=>this._update()));this._menu.setAttribute("data-show","");this.isOpen.emit(true)}_hide(){if(!this._loaded||this.show){return}if(this._cleanup){this._cleanup();this._cleanup=null}this._menu.removeAttribute("data-show");this.isOpen.emit(false)}_update(){if(!this._menu){return}n(this._el,this._menu,{placement:this.placement,strategy:this.strategy,middleware:[s(8),w(),p()]}).then((({x:t,y:r,placement:a})=>{this._menu.dataset.placement=a;Object.assign(this._menu.style,{top:`${r}px`,left:`${t}px`})}))}get _el(){return o(this)}static get watchers(){return{show:["onShowChange"]}}};l.style=d;const h=".block{display:block!important}.flex{display:flex!important}.h-8{height:2rem!important}.w-full{width:100%!important}.items-center{align-items:center!important}.gap-2{gap:.5rem!important}.overflow-hidden{overflow:hidden!important}.text-ellipsis{text-overflow:ellipsis!important}.rounded{border-radius:.25rem!important}.bg-indigo-light{--tw-bg-opacity:1!important;background-color:rgb(241 246 255/var(--tw-bg-opacity))!important}.text-sm{font-size:.875rem!important;line-height:1.25rem!important}.font-semibold{font-weight:600!important}*{box-sizing:border-box}:host{--tw-text-opacity:1;align-items:center;border-radius:.25rem;color:rgb(81 83 107/var(--tw-text-opacity));cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;height:2rem;line-height:1.25rem;padding-left:.5rem;padding-right:.5rem;width:100%}:host .text-container{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}:host(.hover:hover){--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(241 246 255/var(--tw-bg-opacity));color:rgb(81 83 107/var(--tw-text-opacity))}:host(.active){--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(241 246 255/var(--tw-bg-opacity));color:rgb(82 138 250/var(--tw-text-opacity))}.static{position:static!important}.h-6{height:1.5rem!important}.cursor-pointer{cursor:pointer!important}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}.visible{visibility:visible!important}.absolute{position:absolute!important}.blur{--tw-blur:blur(8px)!important;filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}.-rotate-0{--tw-rotate:-0deg!important}.-rotate-0,.-rotate-135{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.-rotate-135{--tw-rotate:-135deg!important}.-rotate-180{--tw-rotate:-180deg!important}.-rotate-180,.-rotate-225{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.-rotate-225{--tw-rotate:-225deg!important}.-rotate-25{--tw-rotate:-25deg!important}.-rotate-25,.-rotate-270{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.-rotate-270{--tw-rotate:-270deg!important}.-rotate-315{--tw-rotate:-315deg!important}.-rotate-315,.-rotate-45{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.-rotate-45{--tw-rotate:-45deg!important}.-rotate-90{--tw-rotate:-90deg!important}.-rotate-90,.rotate-0{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.rotate-0{--tw-rotate:0deg!important}.rotate-135{--tw-rotate:135deg!important}.rotate-135,.rotate-180{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.rotate-180{--tw-rotate:180deg!important}.rotate-225{--tw-rotate:225deg!important}.rotate-225,.rotate-25{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.rotate-25{--tw-rotate:25deg!important}.rotate-270{--tw-rotate:270deg!important}.rotate-270,.rotate-315{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.rotate-315{--tw-rotate:315deg!important}.rotate-45{--tw-rotate:45deg!important}.rotate-45,.rotate-90{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.rotate-90{--tw-rotate:90deg!important}.scale-x-flip{--tw-scale-x:-1!important}.scale-x-flip,.scale-y-flip{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.scale-y-flip{--tw-scale-y:-1!important}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.text-2xl{font-size:1.5rem!important;line-height:2rem!important}.text-3xl{font-size:1.875rem!important;line-height:2.25rem!important}.text-4xl{font-size:2.25rem!important;line-height:2.5rem!important}.text-5xl{font-size:3rem!important}.text-5xl,.text-6xl{line-height:1!important}.text-6xl{font-size:3.75rem!important}.text-base{font-size:1rem!important;line-height:1.5rem!important}.text-lg{font-size:1.125rem!important}.text-lg,.text-xl{line-height:1.75rem!important}.text-xl{font-size:1.25rem!important}.text-xs{font-size:.75rem!important;line-height:1rem!important}.text-xxs{font-size:.6875rem!important}.text-negative{--tw-text-opacity:1!important;color:rgb(185 30 40/var(--tw-text-opacity))!important}.text-negative-light{--tw-text-opacity:1!important;color:rgb(255 204 211/var(--tw-text-opacity))!important}.hover\\:text-negative:hover{--tw-text-opacity:1!important;color:rgb(185 30 40/var(--tw-text-opacity))!important}.ml-1{margin-left:.25rem!important}.ml-2{margin-left:.5rem!important}.items-end{align-items:flex-end!important}.justify-between{justify-content:space-between!important}.rounded-bl-none{border-bottom-left-radius:0!important}.rounded-br-none{border-bottom-right-radius:0!important}.rounded-tl-none{border-top-left-radius:0!important}.rounded-tr-none{border-top-right-radius:0!important}.border-l-0{border-left-width:0!important}.border-r-0{border-right-width:0!important}.pl-0{padding-left:0!important}.pr-0{padding-right:0!important}.inline{display:inline!important}.justify-center{justify-content:center!important}.mb-14{margin-bottom:3.5rem!important}.mb-6{margin-bottom:1.5rem!important}.table{display:table!important}.hidden{display:none!important}.w-6{width:1.5rem!important}.max-w-\\[20rem\\]{max-width:20rem!important}.flex-col{flex-direction:column!important}.self-center{align-self:center!important}.py-24{padding-bottom:6rem!important;padding-top:6rem!important}.text-center{text-align:center!important}.text-storm-medium{--tw-text-opacity:1!important;color:rgb(128 130 158/var(--tw-text-opacity))!important}.table-cell{display:table-cell!important}.w-1\\/12{width:8.333333%!important}.w-10\\/12{width:83.333333%!important}.w-11\\/12{width:91.666667%!important}.w-2\\/12{width:16.666667%!important}.w-3\\/12{width:25%!important}.w-4\\/12{width:33.333333%!important}.w-5\\/12{width:41.666667%!important}.w-6\\/12{width:50%!important}.w-7\\/12{width:58.333333%!important}.w-8\\/12{width:66.666667%!important}.w-9\\/12{width:75%!important}.w-auto{width:auto!important}.flex-1{flex:1 1 0%!important}.justify-start{justify-content:flex-start!important}.justify-end{justify-content:flex-end!important}.pr-4{padding-right:1rem!important}.text-storm-dark{--tw-text-opacity:1!important;color:rgb(39 40 56/var(--tw-text-opacity))!important}@media (min-width:40rem){.tablet\\:w-1\\/12{width:8.333333%!important}.tablet\\:w-10\\/12{width:83.333333%!important}.tablet\\:w-11\\/12{width:91.666667%!important}.tablet\\:w-2\\/12{width:16.666667%!important}.tablet\\:w-3\\/12{width:25%!important}.tablet\\:w-4\\/12{width:33.333333%!important}.tablet\\:w-5\\/12{width:41.666667%!important}.tablet\\:w-6\\/12{width:50%!important}.tablet\\:w-7\\/12{width:58.333333%!important}.tablet\\:w-8\\/12{width:66.666667%!important}.tablet\\:w-9\\/12{width:75%!important}}@media (min-width:64rem){.desktop-xs\\:w-1\\/12{width:8.333333%!important}.desktop-xs\\:w-10\\/12{width:83.333333%!important}.desktop-xs\\:w-11\\/12{width:91.666667%!important}.desktop-xs\\:w-2\\/12{width:16.666667%!important}.desktop-xs\\:w-3\\/12{width:25%!important}.desktop-xs\\:w-4\\/12{width:33.333333%!important}.desktop-xs\\:w-5\\/12{width:41.666667%!important}.desktop-xs\\:w-6\\/12{width:50%!important}.desktop-xs\\:w-7\\/12{width:58.333333%!important}.desktop-xs\\:w-8\\/12{width:66.666667%!important}.desktop-xs\\:w-9\\/12{width:75%!important}}@media (min-width:80rem){.desktop-sm\\:w-1\\/12{width:8.333333%!important}.desktop-sm\\:w-10\\/12{width:83.333333%!important}.desktop-sm\\:w-11\\/12{width:91.666667%!important}.desktop-sm\\:w-2\\/12{width:16.666667%!important}.desktop-sm\\:w-3\\/12{width:25%!important}.desktop-sm\\:w-4\\/12{width:33.333333%!important}.desktop-sm\\:w-5\\/12{width:41.666667%!important}.desktop-sm\\:w-6\\/12{width:50%!important}.desktop-sm\\:w-7\\/12{width:58.333333%!important}.desktop-sm\\:w-8\\/12{width:66.666667%!important}.desktop-sm\\:w-9\\/12{width:75%!important}}@media (min-width:85.375rem){.desktop\\:w-1\\/12{width:8.333333%!important}.desktop\\:w-10\\/12{width:83.333333%!important}.desktop\\:w-11\\/12{width:91.666667%!important}.desktop\\:w-2\\/12{width:16.666667%!important}.desktop\\:w-3\\/12{width:25%!important}.desktop\\:w-4\\/12{width:33.333333%!important}.desktop\\:w-5\\/12{width:41.666667%!important}.desktop\\:w-6\\/12{width:50%!important}.desktop\\:w-7\\/12{width:58.333333%!important}.desktop\\:w-8\\/12{width:66.666667%!important}.desktop\\:w-9\\/12{width:75%!important}}@media (min-width:90rem){.desktop-lg\\:w-1\\/12{width:8.333333%!important}.desktop-lg\\:w-10\\/12{width:83.333333%!important}.desktop-lg\\:w-11\\/12{width:91.666667%!important}.desktop-lg\\:w-2\\/12{width:16.666667%!important}.desktop-lg\\:w-3\\/12{width:25%!important}.desktop-lg\\:w-4\\/12{width:33.333333%!important}.desktop-lg\\:w-5\\/12{width:41.666667%!important}.desktop-lg\\:w-6\\/12{width:50%!important}.desktop-lg\\:w-7\\/12{width:58.333333%!important}.desktop-lg\\:w-8\\/12{width:66.666667%!important}.desktop-lg\\:w-9\\/12{width:75%!important}}@media (min-width:120rem){.desktop-xl\\:w-1\\/12{width:8.333333%!important}.desktop-xl\\:w-10\\/12{width:83.333333%!important}.desktop-xl\\:w-11\\/12{width:91.666667%!important}.desktop-xl\\:w-2\\/12{width:16.666667%!important}.desktop-xl\\:w-3\\/12{width:25%!important}.desktop-xl\\:w-4\\/12{width:33.333333%!important}.desktop-xl\\:w-5\\/12{width:41.666667%!important}.desktop-xl\\:w-6\\/12{width:50%!important}.desktop-xl\\:w-7\\/12{width:58.333333%!important}.desktop-xl\\:w-8\\/12{width:66.666667%!important}.desktop-xl\\:w-9\\/12{width:75%!important}}@media (min-width:64rem){.desktop-xs\\:flex{display:flex!important}}.fixed{position:fixed!important}.bottom-0{bottom:0!important}.left-0{left:0!important}.w-3\\/4{width:75%!important}.gap-4{gap:1rem!important}.border{border-width:1px!important}.border-solid{border-style:solid!important}.border-transparent{border-color:transparent!important}.border-t-mystic-dark{--tw-border-opacity:1!important;border-top-color:rgb(218 230 240/var(--tw-border-opacity))!important}.bg-white{--tw-bg-opacity:1!important;background-color:rgb(255 255 255/var(--tw-bg-opacity))!important}.p-4{padding:1rem!important}@media (min-width:64rem){.desktop-xs\\:hidden{display:none!important}.desktop-xs\\:w-48{width:12rem!important}.desktop-xs\\:w-auto{width:auto!important}.desktop-xs\\:flex-row{flex-direction:row!important}}.m-0{margin:0!important}.table-row{display:table-row!important}.px-2{padding-left:.5rem!important;padding-right:.5rem!important}";const c=class{constructor(r){t(this,r);this.active=false;this.enableHover=true;this.icon=undefined}render(){return a(e,{class:`p-dropdown-menu-item ${this.active&&"active"} ${this.enableHover&&"hover"}`},this.icon&&a("p-icon",{variant:this.icon}),a("div",{class:"text-container"},a("slot",null)))}};c.style=h;export{l as p_dropdown,c as p_dropdown_menu_item};
|
|
2
|
-
//# sourceMappingURL=p-f47247a6.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["dropdownComponentCss","Dropdown","this","_loaded","componentShouldUpdate","_update","disconnectedCallback","_cleanup","render","h","Host","class","ref","_trigger","onClick","_triggerClickHandler","onSlotchange","ev","_checkButton","name","role","maxWidth","calculateWidth","applyMaxWidth","fullWidth","applyFullWidth","el","_load","placement","strategy","_containerClickHandler","target","slot","children","assignedElements","child","nodeName","chevronPosition","chevron","chevronDirection","indexOf","onShowChange","show","_hide","_show","documentClickHandler","_menu","hasAttribute","childOf","_el","insideClick","disableTriggerClick","popover","setTimeout","style","width","clientWidth","autoUpdate","setAttribute","isOpen","emit","removeAttribute","computePosition","middleware","offset","flip","shift","then","x","y","dataset","Object","assign","top","left","dropdownMenuItemComponentCss","DropdownMenuItem","active","enableHover","icon","variant"],"sources":["./src/components/molecules/dropdown/dropdown.component.scss?tag=p-dropdown&encapsulation=shadow","./src/components/molecules/dropdown/dropdown.component.tsx","./src/components/atoms/dropdown-menu-item/dropdown-menu-item.component.scss?tag=p-dropdown-menu-item&encapsulation=shadow","./src/components/atoms/dropdown-menu-item/dropdown-menu-item.component.tsx"],"sourcesContent":[":host {\n @apply relative block;\n\n .trigger {\n @apply relative block h-auto w-auto;\n }\n\n p-dropdown-menu-container {\n @apply left-0 top-0 z-dropdown hidden;\n\n &[data-show] {\n @apply flex;\n }\n\n &[data-strategy='absolute'] {\n @apply absolute;\n }\n\n &[data-strategy='fixed'] {\n @apply fixed;\n }\n }\n}\n","import {\n autoUpdate,\n computePosition,\n flip,\n offset,\n Placement,\n shift,\n Strategy,\n} from '@floating-ui/dom';\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Prop,\n Watch,\n} from '@stencil/core';\nimport { childOf } from '../../../utils/child-of';\n\n@Component({\n tag: 'p-dropdown',\n styleUrl: 'dropdown.component.scss',\n shadow: true,\n})\nexport class Dropdown {\n /**\n * The content of the dropdown menu\n */\n @Prop({ reflect: true }) placement: Placement = 'bottom-start';\n\n /**\n * The strategy of the popover placement\n */\n @Prop() strategy: Strategy = 'absolute';\n\n /**\n * Wether to show the dropdown menu\n */\n @Prop() show: boolean = false;\n\n /**\n * Wether to automatically calculate the width of the menu based on the trigger\n */\n @Prop() calculateWidth: boolean = false;\n\n /**\n * Wether to apply the max width\n */\n @Prop() applyMaxWidth: boolean = true;\n\n /**\n * Wether to apply the full width\n */\n @Prop() applyFullWidth: boolean = true;\n\n /**\n * Wether to automatically close the dropdown menu after clicking inside\n */\n @Prop() insideClick: boolean = false;\n\n /**\n * Wether to automatically close the dropdown menu after clicking inside\n */\n @Prop() disableTriggerClick: boolean = false;\n\n /**\n * Chevron position\n */\n @Prop() chevronPosition: 'start' | 'end' = 'end';\n\n /**\n * Chevron direction\n */\n @Prop() chevronDirection: 'up' | 'down';\n\n /**\n * The host element\n */\n @Element() private _el: HTMLElement;\n\n /**\n * Open change event\n */\n @Event() isOpen: EventEmitter<boolean>;\n\n private _loaded = false;\n private _trigger: HTMLElement;\n private _menu: HTMLElement;\n private _cleanup: () => void;\n\n componentShouldUpdate() {\n this._update();\n }\n\n disconnectedCallback() {\n if (this._cleanup) {\n this._cleanup();\n this._cleanup = null;\n }\n }\n\n render() {\n return (\n <Host class=\"p-dropdown\">\n <div\n class=\"trigger\"\n ref={(ref) => (this._trigger = ref)}\n onClick={() => this._triggerClickHandler()}\n >\n <slot\n onSlotchange={(ev) => this._checkButton(ev)}\n name=\"trigger\"\n />\n </div>\n <p-dropdown-menu-container\n role=\"popover\"\n maxWidth={!this.calculateWidth && this.applyMaxWidth}\n fullWidth={this.applyFullWidth && !this.applyMaxWidth}\n ref={(el) => this._load(el)}\n data-placement={this.placement}\n data-strategy={this.strategy}\n onClick={() => this._containerClickHandler()}\n >\n <slot name=\"items\" />\n </p-dropdown-menu-container>\n </Host>\n );\n }\n\n private _checkButton({ target }: Event) {\n const slot = target as HTMLSlotElement;\n const children = slot.assignedElements();\n\n for (let child of children) {\n if (child.nodeName === 'P-BUTTON') {\n (child as any).chevronPosition = this.chevronPosition;\n (child as any).chevron = this.chevronDirection\n ? this.chevronDirection\n : this.placement.indexOf('top') >= 0\n ? 'up'\n : 'down';\n }\n }\n }\n\n @Watch('show')\n protected onShowChange(show) {\n if (!this._loaded) {\n return;\n }\n\n if (!show) {\n this._hide();\n return;\n }\n\n this._show();\n }\n\n @Listen('click', { target: 'document', capture: true })\n protected documentClickHandler({ target }) {\n if (\n !this._menu.hasAttribute('data-show') ||\n childOf(target, this._el)\n ) {\n return;\n }\n\n this._hide();\n }\n\n private _containerClickHandler() {\n if (this.insideClick) {\n return;\n }\n\n if (this._menu.hasAttribute('data-show')) {\n this._hide();\n }\n }\n\n private _triggerClickHandler() {\n if (this.disableTriggerClick) {\n return;\n }\n\n if (this._menu.hasAttribute('data-show')) {\n this._hide();\n return;\n }\n\n this._show();\n }\n\n private _load(popover: HTMLElement) {\n this._menu = popover;\n if (popover) {\n this._update();\n this._loaded = true;\n\n if (this.show) {\n setTimeout(() => this._show(), 100);\n }\n }\n }\n\n private _show() {\n if (!this._loaded) {\n return;\n }\n\n // Make the popover visible\n if (this.calculateWidth) {\n this._menu.style.width = `${this._trigger.clientWidth}px`;\n }\n\n this._cleanup = autoUpdate(this._el, this._menu, () => this._update());\n\n this._menu.setAttribute('data-show', '');\n this.isOpen.emit(true);\n }\n\n private _hide() {\n if (!this._loaded || this.show) {\n return;\n }\n\n if (this._cleanup) {\n this._cleanup();\n this._cleanup = null;\n }\n\n // Hide the popover\n this._menu.removeAttribute('data-show');\n this.isOpen.emit(false);\n }\n\n private _update() {\n if (!this._menu) {\n return;\n }\n\n computePosition(this._el, this._menu, {\n placement: this.placement,\n strategy: this.strategy,\n middleware: [offset(8), flip(), shift()],\n }).then(({ x, y, placement }) => {\n this._menu.dataset.placement = placement;\n Object.assign(this._menu.style, {\n top: `${y}px`,\n left: `${x}px`,\n });\n });\n }\n}\n",":host {\n @apply flex h-8 w-full items-center gap-2 rounded px-2;\n @apply text-sm font-semibold text-storm;\n @apply cursor-pointer;\n\n .text-container {\n @apply block w-full overflow-hidden text-ellipsis whitespace-nowrap;\n }\n}\n\n:host(.hover:hover) {\n @apply bg-indigo-light text-storm;\n}\n\n:host(.active) {\n @apply bg-indigo-light text-indigo;\n}\n","import { Component, h, Host, Prop } from '@stencil/core';\nimport { IconVariant } from '../icon/icon.component';\n\n@Component({\n tag: 'p-dropdown-menu-item',\n styleUrl: 'dropdown-menu-item.component.scss',\n shadow: true,\n})\nexport class DropdownMenuItem {\n /**\n * Wether the dropdown menu item is active\n */\n @Prop() active: boolean = false;\n\n /**\n * Wether to enable the hover state\n */\n @Prop() enableHover: boolean = true;\n\n /**\n * Icon of the navigation item\n */\n @Prop() icon: IconVariant;\n\n render() {\n return (\n <Host\n class={`p-dropdown-menu-item ${this.active && 'active'} ${\n this.enableHover && 'hover'\n }`}\n >\n {this.icon && <p-icon variant={this.icon} />}\n\n <div class=\"text-container\">\n <slot />\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["addDays","dirtyDate","dirtyAmount","requiredArgs","arguments","date","toDate","amount","toInteger","isNaN","Date","NaN","setDate","getDate","addMonths","dayOfMonth","endOfDesiredMonth","getTime","setMonth","getMonth","daysInMonth","setFullYear","getFullYear","addYears","endOfMonth","month","setHours","startOfMonth","getDay","day","getDaysInMonth","year","monthIndex","lastDayOfMonth","getYear","isSameMonth","dirtyDateLeft","dirtyDateRight","dateLeft","dateRight","isSameYear","dirtyMonth","dateWithDesiredMonth","Math","min","dirtyDayOfMonth","setYear","dirtyYear","calendarComponentCss","Calendar","this","_today","_weekDays","Array","from","keys","_getAutomaticMax","mode","componentWillLoad","disabledDates","_parseDisabledDates","minDate","_parseMinDate","maxDate","_parseMaxDate","_parseValue","value","_value","_viewDate","isBefore","_minDate","isAfter","_maxDate","componentDidRender","_view","_scrollYearIntoView","preselectToday","_setValue","isValid","JSON","parse","isArray","_disabledDates","map","filter","render","h","Host","class","variant","_getView","_getYearView","_getMonthView","_getDayView","_generateDaysInMonth","_canSetAmount","onClick","_changeMonth","rotate","_changeView","_canChangeView","format","weekday","active","disabled","current","offset","months","_generateMonths","_changeYear","_setMonth","years","_generateYears","length","_setYear","allowed","newDate","valueChange","emit","_isDisabledDay","startOfDay","isSameValue","isSameDay","days","dayOfWeek","disableWeekends","findIndex","maxYear","minYear","index","items","_el","shadowRoot","querySelector","scrollTo","top","offsetTop","view","type","startNewDate","ceil"],"sources":["../../node_modules/date-fns/esm/addDays/index.js","../../node_modules/date-fns/esm/addMonths/index.js","../../node_modules/date-fns/esm/addYears/index.js","../../node_modules/date-fns/esm/endOfMonth/index.js","../../node_modules/date-fns/esm/startOfMonth/index.js","../../node_modules/date-fns/esm/getDay/index.js","../../node_modules/date-fns/esm/getDaysInMonth/index.js","../../node_modules/date-fns/esm/getYear/index.js","../../node_modules/date-fns/esm/isSameMonth/index.js","../../node_modules/date-fns/esm/isSameYear/index.js","../../node_modules/date-fns/esm/setMonth/index.js","../../node_modules/date-fns/esm/setDate/index.js","../../node_modules/date-fns/esm/setYear/index.js","./src/components/molecules/calendar/calendar.component.scss?tag=p-calendar&encapsulation=shadow","./src/components/molecules/calendar/calendar.component.tsx"],"sourcesContent":["import toInteger from \"../_lib/toInteger/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name addDays\n * @category Day Helpers\n * @summary Add the specified number of days to the given date.\n *\n * @description\n * Add the specified number of days to the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of days to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} - the new date with the days added\n * @throws {TypeError} - 2 arguments required\n *\n * @example\n * // Add 10 days to 1 September 2014:\n * const result = addDays(new Date(2014, 8, 1), 10)\n * //=> Thu Sep 11 2014 00:00:00\n */\nexport default function addDays(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var date = toDate(dirtyDate);\n var amount = toInteger(dirtyAmount);\n if (isNaN(amount)) {\n return new Date(NaN);\n }\n if (!amount) {\n // If 0 days, no-op to avoid changing times in the hour before end of DST\n return date;\n }\n date.setDate(date.getDate() + amount);\n return date;\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name addMonths\n * @category Month Helpers\n * @summary Add the specified number of months to the given date.\n *\n * @description\n * Add the specified number of months to the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of months to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the months added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 5 months to 1 September 2014:\n * const result = addMonths(new Date(2014, 8, 1), 5)\n * //=> Sun Feb 01 2015 00:00:00\n */\nexport default function addMonths(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var date = toDate(dirtyDate);\n var amount = toInteger(dirtyAmount);\n if (isNaN(amount)) {\n return new Date(NaN);\n }\n if (!amount) {\n // If 0 months, no-op to avoid changing times in the hour before end of DST\n return date;\n }\n var dayOfMonth = date.getDate();\n\n // The JS Date object supports date math by accepting out-of-bounds values for\n // month, day, etc. For example, new Date(2020, 0, 0) returns 31 Dec 2019 and\n // new Date(2020, 13, 1) returns 1 Feb 2021. This is *almost* the behavior we\n // want except that dates will wrap around the end of a month, meaning that\n // new Date(2020, 13, 31) will return 3 Mar 2021 not 28 Feb 2021 as desired. So\n // we'll default to the end of the desired month by adding 1 to the desired\n // month and using a date of 0 to back up one day to the end of the desired\n // month.\n var endOfDesiredMonth = new Date(date.getTime());\n endOfDesiredMonth.setMonth(date.getMonth() + amount + 1, 0);\n var daysInMonth = endOfDesiredMonth.getDate();\n if (dayOfMonth >= daysInMonth) {\n // If we're already at the end of the month, then this is the correct date\n // and we're done.\n return endOfDesiredMonth;\n } else {\n // Otherwise, we now know that setting the original day-of-month value won't\n // cause an overflow, so set the desired day-of-month. Note that we can't\n // just set the date of `endOfDesiredMonth` because that object may have had\n // its time changed in the unusual case where where a DST transition was on\n // the last day of the month and its local time was in the hour skipped or\n // repeated next to a DST transition. So we use `date` instead which is\n // guaranteed to still have the original time.\n date.setFullYear(endOfDesiredMonth.getFullYear(), endOfDesiredMonth.getMonth(), dayOfMonth);\n return date;\n }\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport addMonths from \"../addMonths/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name addYears\n * @category Year Helpers\n * @summary Add the specified number of years to the given date.\n *\n * @description\n * Add the specified number of years to the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of years to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the years added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 5 years to 1 September 2014:\n * const result = addYears(new Date(2014, 8, 1), 5)\n * //=> Sun Sep 01 2019 00:00:00\n */\nexport default function addYears(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var amount = toInteger(dirtyAmount);\n return addMonths(dirtyDate, amount * 12);\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name endOfMonth\n * @category Month Helpers\n * @summary Return the end of a month for the given date.\n *\n * @description\n * Return the end of a month for the given date.\n * The result will be in the local timezone.\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the end of a month\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The end of a month for 2 September 2014 11:55:00:\n * const result = endOfMonth(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Sep 30 2014 23:59:59.999\n */\nexport default function endOfMonth(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var month = date.getMonth();\n date.setFullYear(date.getFullYear(), month + 1, 0);\n date.setHours(23, 59, 59, 999);\n return date;\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name startOfMonth\n * @category Month Helpers\n * @summary Return the start of a month for the given date.\n *\n * @description\n * Return the start of a month for the given date.\n * The result will be in the local timezone.\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the start of a month\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of a month for 2 September 2014 11:55:00:\n * const result = startOfMonth(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Mon Sep 01 2014 00:00:00\n */\nexport default function startOfMonth(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n date.setDate(1);\n date.setHours(0, 0, 0, 0);\n return date;\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name getDay\n * @category Weekday Helpers\n * @summary Get the day of the week of the given date.\n *\n * @description\n * Get the day of the week of the given date.\n *\n * @param {Date|Number} date - the given date\n * @returns {0|1|2|3|4|5|6} the day of week, 0 represents Sunday\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Which day of the week is 29 February 2012?\n * const result = getDay(new Date(2012, 1, 29))\n * //=> 3\n */\nexport default function getDay(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var day = date.getDay();\n return day;\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name getDaysInMonth\n * @category Month Helpers\n * @summary Get the number of days in a month of the given date.\n *\n * @description\n * Get the number of days in a month of the given date.\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the number of days in a month\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // How many days are in February 2000?\n * const result = getDaysInMonth(new Date(2000, 1))\n * //=> 29\n */\nexport default function getDaysInMonth(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var year = date.getFullYear();\n var monthIndex = date.getMonth();\n var lastDayOfMonth = new Date(0);\n lastDayOfMonth.setFullYear(year, monthIndex + 1, 0);\n lastDayOfMonth.setHours(0, 0, 0, 0);\n return lastDayOfMonth.getDate();\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name getYear\n * @category Year Helpers\n * @summary Get the year of the given date.\n *\n * @description\n * Get the year of the given date.\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the year\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Which year is 2 July 2014?\n * const result = getYear(new Date(2014, 6, 2))\n * //=> 2014\n */\nexport default function getYear(dirtyDate) {\n requiredArgs(1, arguments);\n return toDate(dirtyDate).getFullYear();\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isSameMonth\n * @category Month Helpers\n * @summary Are the given dates in the same month (and year)?\n *\n * @description\n * Are the given dates in the same month (and year)?\n *\n * @param {Date|Number} dateLeft - the first date to check\n * @param {Date|Number} dateRight - the second date to check\n * @returns {Boolean} the dates are in the same month (and year)\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 2 September 2014 and 25 September 2014 in the same month?\n * const result = isSameMonth(new Date(2014, 8, 2), new Date(2014, 8, 25))\n * //=> true\n *\n * @example\n * // Are 2 September 2014 and 25 September 2015 in the same month?\n * const result = isSameMonth(new Date(2014, 8, 2), new Date(2015, 8, 25))\n * //=> false\n */\nexport default function isSameMonth(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var dateLeft = toDate(dirtyDateLeft);\n var dateRight = toDate(dirtyDateRight);\n return dateLeft.getFullYear() === dateRight.getFullYear() && dateLeft.getMonth() === dateRight.getMonth();\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isSameYear\n * @category Year Helpers\n * @summary Are the given dates in the same year?\n *\n * @description\n * Are the given dates in the same year?\n *\n * @param {Date|Number} dateLeft - the first date to check\n * @param {Date|Number} dateRight - the second date to check\n * @returns {Boolean} the dates are in the same year\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 2 September 2014 and 25 September 2014 in the same year?\n * const result = isSameYear(new Date(2014, 8, 2), new Date(2014, 8, 25))\n * //=> true\n */\nexport default function isSameYear(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var dateLeft = toDate(dirtyDateLeft);\n var dateRight = toDate(dirtyDateRight);\n return dateLeft.getFullYear() === dateRight.getFullYear();\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport getDaysInMonth from \"../getDaysInMonth/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name setMonth\n * @category Month Helpers\n * @summary Set the month to the given date.\n *\n * @description\n * Set the month to the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} month - the month of the new date\n * @returns {Date} the new date with the month set\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Set February to 1 September 2014:\n * const result = setMonth(new Date(2014, 8, 1), 1)\n * //=> Sat Feb 01 2014 00:00:00\n */\nexport default function setMonth(dirtyDate, dirtyMonth) {\n requiredArgs(2, arguments);\n var date = toDate(dirtyDate);\n var month = toInteger(dirtyMonth);\n var year = date.getFullYear();\n var day = date.getDate();\n var dateWithDesiredMonth = new Date(0);\n dateWithDesiredMonth.setFullYear(year, month, 15);\n dateWithDesiredMonth.setHours(0, 0, 0, 0);\n var daysInMonth = getDaysInMonth(dateWithDesiredMonth);\n // Set the last day of the new month\n // if the original date was the last day of the longer month\n date.setMonth(month, Math.min(day, daysInMonth));\n return date;\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name setDate\n * @category Day Helpers\n * @summary Set the day of the month to the given date.\n *\n * @description\n * Set the day of the month to the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} dayOfMonth - the day of the month of the new date\n * @returns {Date} the new date with the day of the month set\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Set the 30th day of the month to 1 September 2014:\n * const result = setDate(new Date(2014, 8, 1), 30)\n * //=> Tue Sep 30 2014 00:00:00\n */\nexport default function setDate(dirtyDate, dirtyDayOfMonth) {\n requiredArgs(2, arguments);\n var date = toDate(dirtyDate);\n var dayOfMonth = toInteger(dirtyDayOfMonth);\n date.setDate(dayOfMonth);\n return date;\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name setYear\n * @category Year Helpers\n * @summary Set the year to the given date.\n *\n * @description\n * Set the year to the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} year - the year of the new date\n * @returns {Date} the new date with the year set\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Set year 2013 to 1 September 2014:\n * const result = setYear(new Date(2014, 8, 1), 2013)\n * //=> Sun Sep 01 2013 00:00:00\n */\nexport default function setYear(dirtyDate, dirtyYear) {\n requiredArgs(2, arguments);\n var date = toDate(dirtyDate);\n var year = toInteger(dirtyYear);\n\n // Check if date is Invalid Date because Date.prototype.setFullYear ignores the value of Invalid Date\n if (isNaN(date.getTime())) {\n return new Date(NaN);\n }\n date.setFullYear(year);\n return date;\n}",":host {\n @apply block bg-white p-2;\n @apply w-[14rem];\n\n .view-day,\n .view-month,\n .view-year {\n @apply flex flex-col gap-2;\n @apply w-full h-[12rem];\n }\n\n .header {\n @apply flex justify-between items-center gap-1;\n @apply text-base;\n @apply w-full;\n\n span {\n @apply cursor-pointer h-8 px-2 rounded text-storm;\n\n &.disabled {\n @apply cursor-default;\n }\n\n &:hover:not(.disabled) {\n @apply bg-indigo-light;\n }\n\n &.year {\n @apply font-semibold;\n }\n }\n\n .nav {\n @apply relative flex justify-center items-center cursor-pointer;\n @apply no-underline;\n @apply text-indigo;\n @apply w-6 h-6 rounded-round;\n transition-duration: 0.2s;\n\n &:hover:not(.disabled) {\n @apply bg-indigo-light;\n }\n\n &.disabled {\n @apply opacity-0;\n }\n }\n }\n\n .view-day {\n @apply h-auto min-h-[12rem];\n\n .dates {\n @apply grid gap-1;\n grid-template-columns: repeat(7, 1fr);\n\n > span {\n @apply text-storm-medium font-semibold text-xs;\n @apply w-6;\n @apply self-center justify-self-center text-center;\n }\n\n > time {\n @apply flex justify-center items-center;\n @apply cursor-pointer;\n @apply w-6 h-6 box-border;\n @apply justify-self-center self-center;\n @apply rounded-round;\n\n @apply text-storm text-sm;\n @apply border border-solid border-transparent;\n\n transition-duration: 0.2s;\n\n &.current {\n @apply border-storm-light;\n }\n\n &.active {\n @apply bg-indigo-light border-indigo-light text-indigo font-semibold;\n }\n\n &.other-month,\n &.disabled {\n @apply opacity-40 cursor-default;\n }\n\n &.disabled {\n @apply line-through;\n }\n\n &:hover:not(.disabled):not(.active):not(.other-month) {\n @apply bg-indigo-light text-storm;\n }\n }\n }\n }\n\n .view-month,\n .view-year {\n .items {\n @apply relative grid overflow-y-auto gap-1 w-full;\n @apply h-full items-center;\n grid-template-columns: repeat(3, 1fr);\n\n > div {\n @apply cursor-pointer;\n @apply flex justify-center items-center;\n @apply text-sm h-8 px-2 rounded;\n @apply text-storm;\n @apply border border-solid border-transparent;\n\n &.current {\n @apply border-storm-light;\n }\n\n &.active {\n @apply bg-indigo-light border-indigo-light text-indigo font-semibold;\n }\n\n &.disabled {\n @apply line-through;\n @apply opacity-40 cursor-default;\n }\n\n &:hover:not(.disabled):not(.active) {\n @apply bg-mystic;\n }\n }\n }\n }\n\n .view-month {\n .items {\n grid-template-columns: repeat(2, 1fr);\n }\n }\n\n .view-year {\n .header {\n @apply justify-center;\n }\n }\n}\n\n:host(.variant-default) {\n @apply rounded shadow-4;\n}\n\n:host(.variant-embedded) {\n @apply p-0;\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport {\n addDays,\n addMonths,\n addYears,\n endOfMonth,\n format,\n getDay,\n getDaysInMonth,\n getYear,\n isAfter,\n isBefore,\n isSameDay,\n isSameMonth,\n isSameYear,\n isValid,\n setDate,\n setMonth,\n setYear,\n startOfDay,\n startOfMonth,\n} from 'date-fns';\n\n@Component({\n tag: 'p-calendar',\n styleUrl: 'calendar.component.scss',\n shadow: true,\n})\nexport class Calendar {\n /**\n * The variant of the button\n */\n @Prop() variant: 'default' | 'embedded' = 'default';\n\n /**\n * The current value\n */\n @Prop() value?: Date | 'string';\n\n /**\n * Wether to automatically preselect today\n */\n @Prop() preselectToday: boolean = false;\n\n /**\n * Disabled dates\n */\n @Prop() disabledDates?: Array<Date | 'string'> | string;\n\n /**\n * Min date\n */\n @Prop() minDate: Date | 'string' = new Date(1970, 0, 1);\n\n /**\n * Max date\n */\n @Prop() maxDate: Date | 'string' = this._getAutomaticMax();\n\n /**\n * Wether to disable the weekends\n */\n @Prop() disableWeekends: boolean = false;\n\n /**\n * The mode of the datepicker\n */\n @Prop() mode: 'year' | 'month' | 'day' = 'day';\n\n /**\n * Event when the value changes\n */\n @Event() valueChange: EventEmitter<any>;\n\n /**\n * The host element\n */\n @Element() private _el: HTMLElement;\n\n private _today = new Date();\n @State() private _view: 'year' | 'month' | 'day' = this.mode;\n @State() private _viewDate = this._today;\n\n @State() private _value: Date;\n @State() private _minDate: Date;\n @State() private _maxDate: Date;\n @State() private _disabledDates: Date[] = [];\n\n private _weekDays = Array.from(Array(7).keys());\n\n componentWillLoad() {\n if (this.disabledDates) {\n this._parseDisabledDates(this.disabledDates);\n }\n\n if (this.minDate) {\n this._parseMinDate(this.minDate);\n }\n\n if (this.maxDate) {\n this._parseMaxDate(this.maxDate);\n }\n\n this._parseValue(this.value);\n\n if (this._value) {\n this._viewDate = this._value;\n }\n\n if (isBefore(this._viewDate, this._minDate)) {\n this._viewDate = this._minDate;\n }\n\n if (isAfter(this._viewDate, this._maxDate)) {\n this._viewDate = this._maxDate;\n }\n }\n\n componentDidRender() {\n if (this._view === 'year') {\n this._scrollYearIntoView();\n }\n }\n\n @Watch('value')\n private _parseValue(value: string | Date) {\n if (!value && this.preselectToday) {\n value = new Date();\n }\n\n if (typeof value === 'string') {\n value = new Date(value);\n }\n\n this._setValue(value);\n }\n\n @Watch('minDate')\n private _parseMinDate(minDate: string | Date) {\n if (typeof minDate === 'string') {\n minDate = new Date(minDate);\n }\n\n if (!isValid(minDate)) {\n return;\n }\n\n this._minDate = minDate;\n\n if (isBefore(this._viewDate, this._minDate)) {\n this._viewDate = this._minDate;\n }\n }\n\n @Watch('maxDate')\n private _parseMaxDate(maxDate: string | Date) {\n if (typeof maxDate === 'string') {\n maxDate = new Date(maxDate);\n }\n\n if (!isValid(maxDate)) {\n return;\n }\n\n this._maxDate = maxDate;\n\n if (isAfter(this._viewDate, this._maxDate)) {\n this._viewDate = this._maxDate;\n }\n }\n\n @Watch('disabledDates')\n private _parseDisabledDates(disabledDates: Array<string | Date> | string) {\n if (typeof disabledDates === 'string') {\n disabledDates = JSON.parse(disabledDates);\n }\n\n if (!disabledDates || !Array.isArray(disabledDates)) {\n return;\n }\n\n // normalize all to date\n this._disabledDates = disabledDates\n .map((date) => {\n if (typeof date === 'string') {\n return new Date(date);\n }\n\n return date;\n })\n .filter((date) => isValid(date));\n }\n\n render() {\n return (\n <Host class={`p-calendar variant-${this.variant}`}>\n {this._getView()}\n </Host>\n );\n }\n\n private _getView() {\n if (this._view === 'year') {\n return this._getYearView();\n }\n\n if (this._view === 'month') {\n return this._getMonthView();\n }\n\n return this._getDayView();\n }\n\n /* With this, we shall hack the system in ways no one would ever have thought.\n <div class=\"col-start-1 col-start-2 col-start-3 col-start-4 col-start-5 col-start-6 col-start-7\"></div>\n */\n private _getDayView() {\n const daysInMonth = this._generateDaysInMonth();\n return (\n <div class=\"view-day\">\n <div class=\"header\">\n <div\n class={`nav ${\n !this._canSetAmount('month', -1) && 'disabled'\n }`}\n onClick={() => this._changeMonth(-1)}\n >\n <p-icon variant=\"chevron\" rotate={90} />\n </div>\n <div>\n <span\n onClick={() => this._changeView('month')}\n class={!this._canChangeView('month') && 'disabled'}\n >\n {format(this._viewDate, 'MMMM')}\n </span>\n <span\n onClick={() => this._changeView('year')}\n class={`year ${\n !this._canChangeView('year') && 'disabled'\n }`}\n >\n {getYear(this._viewDate)}\n </span>\n </div>\n <div\n class={`nav ${\n !this._canSetAmount('month', 1) && 'disabled'\n }`}\n onClick={() => this._changeMonth(1)}\n >\n <p-icon variant=\"chevron\" rotate={-90} />\n </div>\n </div>\n <div class=\"dates\">\n {this._weekDays.map((weekday) => (\n <span>\n {format(\n addDays(new Date(2022, 7, 1), weekday),\n 'eee'\n )}\n </span>\n ))}\n {daysInMonth.map((day) => {\n return (\n <time\n class={`day ${day.active && 'active'} ${\n day.disabled && 'disabled'\n } ${day.current && 'current'} ${\n day.offset !== false &&\n `col-start-${day.offset}`\n }`}\n onClick={() => this._setValue(day.date)}\n >\n {day.day}\n </time>\n );\n })}\n </div>\n </div>\n );\n }\n\n private _getMonthView() {\n const months = this._generateMonths();\n return (\n <div class=\"view-month\">\n <div class=\"header\">\n <div\n class={`nav ${\n !this._canSetAmount('year', -1) && 'disabled'\n }`}\n onClick={() => this._changeYear(-1)}\n >\n <p-icon variant=\"chevron\" rotate={90} />\n </div>\n <div>\n <span\n onClick={() => this._changeView('year')}\n class={`year ${\n !this._canChangeView('year') && 'disabled'\n }`}\n >\n {getYear(this._viewDate)}\n </span>\n </div>\n <div\n class={`nav ${\n !this._canSetAmount('year', 1) && 'disabled'\n }`}\n onClick={() => this._changeYear(1)}\n >\n <p-icon variant=\"chevron\" rotate={-90} />\n </div>\n </div>\n <div class=\"items\">\n {months.map((month) => (\n <div\n onClick={() => this._setMonth(month.month)}\n class={`month ${month.active && 'active'} ${\n month.disabled && 'disabled'\n } ${month.current && 'current'}`}\n >\n {format(setMonth(new Date(), month.month), 'MMMM')}\n </div>\n ))}\n </div>\n </div>\n );\n }\n\n private _getYearView() {\n const years = this._generateYears();\n return (\n <div class=\"view-year\">\n <div class=\"header\">\n <div>\n <span class=\"year disabled\">\n {years?.[0].year} - {years?.[years.length - 1].year}\n </span>\n </div>\n </div>\n <div class=\"items\">\n {years.map((year) => (\n <div\n onClick={() => this._setYear(year.year)}\n class={`year ${year.active && 'active'} ${\n year.current && 'current'\n }`}\n >\n {year.year}\n </div>\n ))}\n </div>\n </div>\n );\n }\n\n private _setYear(year: number) {\n const date = setYear(this._viewDate, year);\n if (this.mode === 'year') {\n return this._setValue(setMonth(setDate(date, 1), 0));\n }\n\n this._viewDate = setYear(this._viewDate, year);\n this._view = 'month';\n }\n\n private _setMonth(month: number) {\n const date = setMonth(this._viewDate, month);\n if (this.mode === 'month') {\n return this._setValue(setDate(date, 1));\n }\n\n this._viewDate = date;\n this._view = 'day';\n }\n\n private _changeMonth(amount = 1) {\n const allowed = this._canSetAmount('month', amount);\n if (!allowed) {\n return;\n }\n\n const newDate = addMonths(this._viewDate, amount);\n this._viewDate = newDate;\n }\n\n private _changeYear(amount = 1) {\n const allowed = this._canSetAmount('year', amount);\n if (!allowed) {\n return;\n }\n\n let newDate = addYears(this._viewDate, amount);\n this._viewDate = newDate;\n }\n\n private _setValue(value: Date) {\n if (value === null) {\n this._value = null;\n this.valueChange.emit(null);\n return;\n }\n\n if (!isValid(value)) {\n return;\n }\n\n if (this._isDisabledDay(value)) {\n return;\n }\n\n value = startOfDay(value);\n const isSameValue = isSameDay(value, this._value);\n\n if (isSameValue) {\n return;\n }\n\n this._value = value;\n this.valueChange.emit(value);\n }\n\n private _generateDaysInMonth() {\n const days = Array.from(Array(getDaysInMonth(this._viewDate)).keys());\n\n return days.map((day) => {\n day = day + 1;\n const date = setDate(this._viewDate, day);\n\n const dayOfWeek = getDay(date);\n return {\n day,\n date,\n offset: day === 1 ? (dayOfWeek === 0 ? 7 : dayOfWeek) : false,\n current: isSameDay(date, this._today),\n active: isSameDay(date, this._value),\n disabled: this._isDisabledDay(date),\n };\n });\n }\n\n private _isDisabledDay(day: Date) {\n return (\n isBefore(day, this._minDate) ||\n (isAfter(day, this._maxDate) && !isSameDay(day, this._maxDate)) ||\n ((getDay(day) === 0 || getDay(day) === 6) &&\n this.disableWeekends) ||\n this._disabledDates.findIndex((date) => isSameDay(date, day)) >= 0\n );\n }\n\n private _generateMonths() {\n const year = getYear(this._viewDate);\n const months = Array.from(Array(12).keys());\n\n return months.map((month) => {\n const date = new Date(year, month, 1);\n return {\n month,\n current: isSameMonth(this._today, date),\n active: isSameMonth(this._value, date),\n disabled:\n isAfter(date, this._maxDate) ||\n isBefore(endOfMonth(date), this._minDate),\n };\n });\n }\n\n private _generateYears() {\n const maxYear = getYear(this._maxDate) + 1;\n const minYear = getYear(this._minDate);\n\n return Array.from(Array(maxYear - minYear).keys()).map((index) => {\n const year = minYear + index;\n return {\n year,\n current: getYear(this._today) === year,\n active: getYear(this._value) === year,\n };\n });\n }\n\n private _scrollYearIntoView() {\n const items = this._el.shadowRoot.querySelector('.view-year .items');\n if (!items) {\n return;\n }\n\n const active = items.querySelector('.year.active') as HTMLElement;\n if (active) {\n return items.scrollTo({\n top: active.offsetTop,\n });\n }\n\n const current = items.querySelector('.year.current') as HTMLElement;\n if (current) {\n return items.scrollTo({\n top: current.offsetTop,\n });\n }\n }\n\n private _changeView(view: 'year' | 'month') {\n if (!this._canChangeView(view)) {\n return;\n }\n\n this._view = view;\n }\n\n private _canChangeView(view: 'year' | 'month') {\n if (view === 'year') {\n if (isSameYear(this._minDate, this._maxDate)) {\n return false;\n }\n\n return true;\n }\n\n if (isSameMonth(this._minDate, this._maxDate)) {\n return false;\n }\n\n return true;\n }\n\n private _canSetAmount(type: 'month' | 'year', amount = 1) {\n if (type === 'month') {\n const newDate = addMonths(this._viewDate, amount);\n const startNewDate = startOfMonth(newDate);\n if (\n (isBefore(startNewDate, startOfMonth(this._minDate)) &&\n !isSameDay(startNewDate, this._minDate)) ||\n isAfter(startNewDate, endOfMonth(this._maxDate))\n ) {\n return false;\n }\n }\n\n if (type === 'year') {\n let newDate = addYears(this._viewDate, amount);\n const year = getYear(newDate);\n if (\n year < getYear(this._minDate) ||\n year > getYear(this._maxDate)\n ) {\n return false;\n }\n }\n\n return true;\n }\n\n private _getAutomaticMax() {\n const date = addYears(new Date(), 50);\n\n let year = getYear(date);\n year = Math.ceil(year / 10) * 10;\n\n return setYear(date, year);\n }\n}\n"],"mappings":"4JAqBe,SAASA,EAAQC,EAAWC,GACzCC,EAAa,EAAGC,WAChB,IAAIC,EAAOC,EAAOL,GAClB,IAAIM,EAASC,EAAUN,GACvB,GAAIO,MAAMF,GAAS,CACjB,OAAO,IAAIG,KAAKC,IACpB,CACE,IAAKJ,EAAQ,CAEX,OAAOF,CACX,CACEA,EAAKO,QAAQP,EAAKQ,UAAYN,GAC9B,OAAOF,CACT,CCbe,SAASS,EAAUb,EAAWC,GAC3CC,EAAa,EAAGC,WAChB,IAAIC,EAAOC,EAAOL,GAClB,IAAIM,EAASC,EAAUN,GACvB,GAAIO,MAAMF,GAAS,CACjB,OAAO,IAAIG,KAAKC,IACpB,CACE,IAAKJ,EAAQ,CAEX,OAAOF,CACX,CACE,IAAIU,EAAaV,EAAKQ,UAUtB,IAAIG,EAAoB,IAAIN,KAAKL,EAAKY,WACtCD,EAAkBE,SAASb,EAAKc,WAAaZ,EAAS,EAAG,GACzD,IAAIa,EAAcJ,EAAkBH,UACpC,GAAIE,GAAcK,EAAa,CAG7B,OAAOJ,CACX,KAAS,CAQLX,EAAKgB,YAAYL,EAAkBM,cAAeN,EAAkBG,WAAYJ,GAChF,OAAOV,CACX,CACA,CCvCe,SAASkB,EAAStB,EAAWC,GAC1CC,EAAa,EAAGC,WAChB,IAAIG,EAASC,EAAUN,GACvB,OAAOY,EAAUb,EAAWM,EAAS,GACvC,CCLe,SAASiB,EAAWvB,GACjCE,EAAa,EAAGC,WAChB,IAAIC,EAAOC,EAAOL,GAClB,IAAIwB,EAAQpB,EAAKc,WACjBd,EAAKgB,YAAYhB,EAAKiB,cAAeG,EAAQ,EAAG,GAChDpB,EAAKqB,SAAS,GAAI,GAAI,GAAI,KAC1B,OAAOrB,CACT,CCPe,SAASsB,EAAa1B,GACnCE,EAAa,EAAGC,WAChB,IAAIC,EAAOC,EAAOL,GAClBI,EAAKO,QAAQ,GACbP,EAAKqB,SAAS,EAAG,EAAG,EAAG,GACvB,OAAOrB,CACT,CCPe,SAASuB,EAAO3B,GAC7BE,EAAa,EAAGC,WAChB,IAAIC,EAAOC,EAAOL,GAClB,IAAI4B,EAAMxB,EAAKuB,SACf,OAAOC,CACT,CCLe,SAASC,EAAe7B,GACrCE,EAAa,EAAGC,WAChB,IAAIC,EAAOC,EAAOL,GAClB,IAAI8B,EAAO1B,EAAKiB,cAChB,IAAIU,EAAa3B,EAAKc,WACtB,IAAIc,EAAiB,IAAIvB,KAAK,GAC9BuB,EAAeZ,YAAYU,EAAMC,EAAa,EAAG,GACjDC,EAAeP,SAAS,EAAG,EAAG,EAAG,GACjC,OAAOO,EAAepB,SACxB,CCTe,SAASqB,EAAQjC,GAC9BE,EAAa,EAAGC,WAChB,OAAOE,EAAOL,GAAWqB,aAC3B,CCGe,SAASa,EAAYC,EAAeC,GACjDlC,EAAa,EAAGC,WAChB,IAAIkC,EAAWhC,EAAO8B,GACtB,IAAIG,EAAYjC,EAAO+B,GACvB,OAAOC,EAAShB,gBAAkBiB,EAAUjB,eAAiBgB,EAASnB,aAAeoB,EAAUpB,UACjG,CCVe,SAASqB,EAAWJ,EAAeC,GAChDlC,EAAa,EAAGC,WAChB,IAAIkC,EAAWhC,EAAO8B,GACtB,IAAIG,EAAYjC,EAAO+B,GACvB,OAAOC,EAAShB,gBAAkBiB,EAAUjB,aAC9C,CCHe,SAASJ,EAASjB,EAAWwC,GAC1CtC,EAAa,EAAGC,WAChB,IAAIC,EAAOC,EAAOL,GAClB,IAAIwB,EAAQjB,EAAUiC,GACtB,IAAIV,EAAO1B,EAAKiB,cAChB,IAAIO,EAAMxB,EAAKQ,UACf,IAAI6B,EAAuB,IAAIhC,KAAK,GACpCgC,EAAqBrB,YAAYU,EAAMN,EAAO,IAC9CiB,EAAqBhB,SAAS,EAAG,EAAG,EAAG,GACvC,IAAIN,EAAcU,EAAeY,GAGjCrC,EAAKa,SAASO,EAAOkB,KAAKC,IAAIf,EAAKT,IACnC,OAAOf,CACT,CCfe,SAASO,EAAQX,EAAW4C,GACzC1C,EAAa,EAAGC,WAChB,IAAIC,EAAOC,EAAOL,GAClB,IAAIc,EAAaP,EAAUqC,GAC3BxC,EAAKO,QAAQG,GACb,OAAOV,CACT,CCNe,SAASyC,EAAQ7C,EAAW8C,GACzC5C,EAAa,EAAGC,WAChB,IAAIC,EAAOC,EAAOL,GAClB,IAAI8B,EAAOvB,EAAUuC,GAGrB,GAAItC,MAAMJ,EAAKY,WAAY,CACzB,OAAO,IAAIP,KAAKC,IACpB,CACEN,EAAKgB,YAAYU,GACjB,OAAO1B,CACT,CChCA,MAAM2C,EAAuB,u8W,MCsChBC,EAAQ,M,kEAmDTC,KAAAC,OAAS,IAAIzC,KASbwC,KAAAE,UAAYC,MAAMC,KAAKD,MAAM,GAAGE,Q,aAxDE,U,yCAUR,M,0CAUC,IAAI7C,KAAK,KAAM,EAAG,G,aAKlBwC,KAAKM,mB,qBAKL,M,UAKM,M,WAaUN,KAAKO,K,eAC3BP,KAAKC,O,0FAKQ,E,CAI1CO,oBACI,GAAIR,KAAKS,cAAe,CACpBT,KAAKU,oBAAoBV,KAAKS,c,CAGlC,GAAIT,KAAKW,QAAS,CACdX,KAAKY,cAAcZ,KAAKW,Q,CAG5B,GAAIX,KAAKa,QAAS,CACdb,KAAKc,cAAcd,KAAKa,Q,CAG5Bb,KAAKe,YAAYf,KAAKgB,OAEtB,GAAIhB,KAAKiB,OAAQ,CACbjB,KAAKkB,UAAYlB,KAAKiB,M,CAG1B,GAAIE,EAASnB,KAAKkB,UAAWlB,KAAKoB,UAAW,CACzCpB,KAAKkB,UAAYlB,KAAKoB,Q,CAG1B,GAAIC,EAAQrB,KAAKkB,UAAWlB,KAAKsB,UAAW,CACxCtB,KAAKkB,UAAYlB,KAAKsB,Q,EAI9BC,qBACI,GAAIvB,KAAKwB,QAAU,OAAQ,CACvBxB,KAAKyB,qB,EAKLV,YAAYC,GAChB,IAAKA,GAAShB,KAAK0B,eAAgB,CAC/BV,EAAQ,IAAIxD,I,CAGhB,UAAWwD,IAAU,SAAU,CAC3BA,EAAQ,IAAIxD,KAAKwD,E,CAGrBhB,KAAK2B,UAAUX,E,CAIXJ,cAAcD,GAClB,UAAWA,IAAY,SAAU,CAC7BA,EAAU,IAAInD,KAAKmD,E,CAGvB,IAAKiB,EAAQjB,GAAU,CACnB,M,CAGJX,KAAKoB,SAAWT,EAEhB,GAAIQ,EAASnB,KAAKkB,UAAWlB,KAAKoB,UAAW,CACzCpB,KAAKkB,UAAYlB,KAAKoB,Q,EAKtBN,cAAcD,GAClB,UAAWA,IAAY,SAAU,CAC7BA,EAAU,IAAIrD,KAAKqD,E,CAGvB,IAAKe,EAAQf,GAAU,CACnB,M,CAGJb,KAAKsB,SAAWT,EAEhB,GAAIQ,EAAQrB,KAAKkB,UAAWlB,KAAKsB,UAAW,CACxCtB,KAAKkB,UAAYlB,KAAKsB,Q,EAKtBZ,oBAAoBD,GACxB,UAAWA,IAAkB,SAAU,CACnCA,EAAgBoB,KAAKC,MAAMrB,E,CAG/B,IAAKA,IAAkBN,MAAM4B,QAAQtB,GAAgB,CACjD,M,CAIJT,KAAKgC,eAAiBvB,EACjBwB,KAAK9E,IACF,UAAWA,IAAS,SAAU,CAC1B,OAAO,IAAIK,KAAKL,E,CAGpB,OAAOA,CAAI,IAEd+E,QAAQ/E,GAASyE,EAAQzE,I,CAGlCgF,SACI,OACIC,EAACC,EAAI,CAACC,MAAO,sBAAsBtC,KAAKuC,WACnCvC,KAAKwC,W,CAKVA,WACJ,GAAIxC,KAAKwB,QAAU,OAAQ,CACvB,OAAOxB,KAAKyC,c,CAGhB,GAAIzC,KAAKwB,QAAU,QAAS,CACxB,OAAOxB,KAAK0C,e,CAGhB,OAAO1C,KAAK2C,a,CAMRA,cACJ,MAAMzE,EAAc8B,KAAK4C,uBACzB,OACIR,EAAA,OAAKE,MAAM,YACPF,EAAA,OAAKE,MAAM,UACPF,EAAA,OACIE,MAAO,QACFtC,KAAK6C,cAAc,SAAU,IAAM,aAExCC,QAAS,IAAM9C,KAAK+C,cAAc,IAElCX,EAAA,UAAQG,QAAQ,UAAUS,OAAQ,MAEtCZ,EAAA,WACIA,EAAA,QACIU,QAAS,IAAM9C,KAAKiD,YAAY,SAChCX,OAAQtC,KAAKkD,eAAe,UAAY,YAEvCC,EAAOnD,KAAKkB,UAAW,SAE5BkB,EAAA,QACIU,QAAS,IAAM9C,KAAKiD,YAAY,QAChCX,MAAO,SACFtC,KAAKkD,eAAe,SAAW,cAGnClE,EAAQgB,KAAKkB,aAGtBkB,EAAA,OACIE,MAAO,QACFtC,KAAK6C,cAAc,QAAS,IAAM,aAEvCC,QAAS,IAAM9C,KAAK+C,aAAa,IAEjCX,EAAA,UAAQG,QAAQ,UAAUS,QAAS,OAG3CZ,EAAA,OAAKE,MAAM,SACNtC,KAAKE,UAAU+B,KAAKmB,GACjBhB,EAAA,YACKe,EACGrG,EAAQ,IAAIU,KAAK,KAAM,EAAG,GAAI4F,GAC9B,UAIXlF,EAAY+D,KAAKtD,GAEVyD,EAAA,QACIE,MAAO,OAAO3D,EAAI0E,QAAU,YACxB1E,EAAI2E,UAAY,cAChB3E,EAAI4E,SAAW,aACf5E,EAAI6E,SAAW,OACf,aAAa7E,EAAI6E,WAErBV,QAAS,IAAM9C,KAAK2B,UAAUhD,EAAIxB,OAEjCwB,EAAIA,Q,CASzB+D,gBACJ,MAAMe,EAASzD,KAAK0D,kBACpB,OACItB,EAAA,OAAKE,MAAM,cACPF,EAAA,OAAKE,MAAM,UACPF,EAAA,OACIE,MAAO,QACFtC,KAAK6C,cAAc,QAAS,IAAM,aAEvCC,QAAS,IAAM9C,KAAK2D,aAAa,IAEjCvB,EAAA,UAAQG,QAAQ,UAAUS,OAAQ,MAEtCZ,EAAA,WACIA,EAAA,QACIU,QAAS,IAAM9C,KAAKiD,YAAY,QAChCX,MAAO,SACFtC,KAAKkD,eAAe,SAAW,cAGnClE,EAAQgB,KAAKkB,aAGtBkB,EAAA,OACIE,MAAO,QACFtC,KAAK6C,cAAc,OAAQ,IAAM,aAEtCC,QAAS,IAAM9C,KAAK2D,YAAY,IAEhCvB,EAAA,UAAQG,QAAQ,UAAUS,QAAS,OAG3CZ,EAAA,OAAKE,MAAM,SACNmB,EAAOxB,KAAK1D,GACT6D,EAAA,OACIU,QAAS,IAAM9C,KAAK4D,UAAUrF,EAAMA,OACpC+D,MAAO,SAAS/D,EAAM8E,QAAU,YAC5B9E,EAAM+E,UAAY,cAClB/E,EAAMgF,SAAW,aAEpBJ,EAAOnF,EAAS,IAAIR,KAAQe,EAAMA,OAAQ,Y,CAQ3DkE,eACJ,MAAMoB,EAAQ7D,KAAK8D,iBACnB,OACI1B,EAAA,OAAKE,MAAM,aACPF,EAAA,OAAKE,MAAM,UACPF,EAAA,WACIA,EAAA,QAAME,MAAM,iBACPuB,IAAK,MAALA,SAAK,SAALA,EAAQ,GAAGhF,KAAI,MAAKgF,IAAK,MAALA,SAAK,SAALA,EAAQA,EAAME,OAAS,GAAGlF,QAI3DuD,EAAA,OAAKE,MAAM,SACNuB,EAAM5B,KAAKpD,GACRuD,EAAA,OACIU,QAAS,IAAM9C,KAAKgE,SAASnF,EAAKA,MAClCyD,MAAO,QAAQzD,EAAKwE,QAAU,YAC1BxE,EAAK0E,SAAW,aAGnB1E,EAAKA,S,CAQtBmF,SAASnF,GACb,MAAM1B,EAAOyC,EAAQI,KAAKkB,UAAWrC,GACrC,GAAImB,KAAKO,OAAS,OAAQ,CACtB,OAAOP,KAAK2B,UAAU3D,EAASN,EAAQP,EAAM,GAAI,G,CAGrD6C,KAAKkB,UAAYtB,EAAQI,KAAKkB,UAAWrC,GACzCmB,KAAKwB,MAAQ,O,CAGToC,UAAUrF,GACd,MAAMpB,EAAOa,EAASgC,KAAKkB,UAAW3C,GACtC,GAAIyB,KAAKO,OAAS,QAAS,CACvB,OAAOP,KAAK2B,UAAUjE,EAAQP,EAAM,G,CAGxC6C,KAAKkB,UAAY/D,EACjB6C,KAAKwB,MAAQ,K,CAGTuB,aAAa1F,EAAS,GAC1B,MAAM4G,EAAUjE,KAAK6C,cAAc,QAASxF,GAC5C,IAAK4G,EAAS,CACV,M,CAGJ,MAAMC,EAAUtG,EAAUoC,KAAKkB,UAAW7D,GAC1C2C,KAAKkB,UAAYgD,C,CAGbP,YAAYtG,EAAS,GACzB,MAAM4G,EAAUjE,KAAK6C,cAAc,OAAQxF,GAC3C,IAAK4G,EAAS,CACV,M,CAGJ,IAAIC,EAAU7F,EAAS2B,KAAKkB,UAAW7D,GACvC2C,KAAKkB,UAAYgD,C,CAGbvC,UAAUX,GACd,GAAIA,IAAU,KAAM,CAChBhB,KAAKiB,OAAS,KACdjB,KAAKmE,YAAYC,KAAK,MACtB,M,CAGJ,IAAKxC,EAAQZ,GAAQ,CACjB,M,CAGJ,GAAIhB,KAAKqE,eAAerD,GAAQ,CAC5B,M,CAGJA,EAAQsD,EAAWtD,GACnB,MAAMuD,EAAcC,EAAUxD,EAAOhB,KAAKiB,QAE1C,GAAIsD,EAAa,CACb,M,CAGJvE,KAAKiB,OAASD,EACdhB,KAAKmE,YAAYC,KAAKpD,E,CAGlB4B,uBACJ,MAAM6B,EAAOtE,MAAMC,KAAKD,MAAMvB,EAAeoB,KAAKkB,YAAYb,QAE9D,OAAOoE,EAAKxC,KAAKtD,IACbA,EAAMA,EAAM,EACZ,MAAMxB,EAAOO,EAAQsC,KAAKkB,UAAWvC,GAErC,MAAM+F,EAAYhG,EAAOvB,GACzB,MAAO,CACHwB,MACAxB,OACAqG,OAAQ7E,IAAQ,EAAK+F,IAAc,EAAI,EAAIA,EAAa,MACxDnB,QAASiB,EAAUrH,EAAM6C,KAAKC,QAC9BoD,OAAQmB,EAAUrH,EAAM6C,KAAKiB,QAC7BqC,SAAUtD,KAAKqE,eAAelH,GACjC,G,CAIDkH,eAAe1F,GACnB,OACIwC,EAASxC,EAAKqB,KAAKoB,WAClBC,EAAQ1C,EAAKqB,KAAKsB,YAAckD,EAAU7F,EAAKqB,KAAKsB,YACnD5C,EAAOC,KAAS,GAAKD,EAAOC,KAAS,IACnCqB,KAAK2E,iBACT3E,KAAKgC,eAAe4C,WAAWzH,GAASqH,EAAUrH,EAAMwB,MAAS,C,CAIjE+E,kBACJ,MAAM7E,EAAOG,EAAQgB,KAAKkB,WAC1B,MAAMuC,EAAStD,MAAMC,KAAKD,MAAM,IAAIE,QAEpC,OAAOoD,EAAOxB,KAAK1D,IACf,MAAMpB,EAAO,IAAIK,KAAKqB,EAAMN,EAAO,GACnC,MAAO,CACHA,QACAgF,QAAStE,EAAYe,KAAKC,OAAQ9C,GAClCkG,OAAQpE,EAAYe,KAAKiB,OAAQ9D,GACjCmG,SACIjC,EAAQlE,EAAM6C,KAAKsB,WACnBH,EAAS7C,EAAWnB,GAAO6C,KAAKoB,UACvC,G,CAID0C,iBACJ,MAAMe,EAAU7F,EAAQgB,KAAKsB,UAAY,EACzC,MAAMwD,EAAU9F,EAAQgB,KAAKoB,UAE7B,OAAOjB,MAAMC,KAAKD,MAAM0E,EAAUC,GAASzE,QAAQ4B,KAAK8C,IACpD,MAAMlG,EAAOiG,EAAUC,EACvB,MAAO,CACHlG,OACA0E,QAASvE,EAAQgB,KAAKC,UAAYpB,EAClCwE,OAAQrE,EAAQgB,KAAKiB,UAAYpC,EACpC,G,CAID4C,sBACJ,MAAMuD,EAAQhF,KAAKiF,IAAIC,WAAWC,cAAc,qBAChD,IAAKH,EAAO,CACR,M,CAGJ,MAAM3B,EAAS2B,EAAMG,cAAc,gBACnC,GAAI9B,EAAQ,CACR,OAAO2B,EAAMI,SAAS,CAClBC,IAAKhC,EAAOiC,W,CAIpB,MAAM/B,EAAUyB,EAAMG,cAAc,iBACpC,GAAI5B,EAAS,CACT,OAAOyB,EAAMI,SAAS,CAClBC,IAAK9B,EAAQ+B,W,EAKjBrC,YAAYsC,GAChB,IAAKvF,KAAKkD,eAAeqC,GAAO,CAC5B,M,CAGJvF,KAAKwB,MAAQ+D,C,CAGTrC,eAAeqC,GACnB,GAAIA,IAAS,OAAQ,CACjB,GAAIjG,EAAWU,KAAKoB,SAAUpB,KAAKsB,UAAW,CAC1C,OAAO,K,CAGX,OAAO,I,CAGX,GAAIrC,EAAYe,KAAKoB,SAAUpB,KAAKsB,UAAW,CAC3C,OAAO,K,CAGX,OAAO,I,CAGHuB,cAAc2C,EAAwBnI,EAAS,GACnD,GAAImI,IAAS,QAAS,CAClB,MAAMtB,EAAUtG,EAAUoC,KAAKkB,UAAW7D,GAC1C,MAAMoI,EAAehH,EAAayF,GAClC,GACK/C,EAASsE,EAAchH,EAAauB,KAAKoB,aACrCoD,EAAUiB,EAAczF,KAAKoB,WAClCC,EAAQoE,EAAcnH,EAAW0B,KAAKsB,WACxC,CACE,OAAO,K,EAIf,GAAIkE,IAAS,OAAQ,CACjB,IAAItB,EAAU7F,EAAS2B,KAAKkB,UAAW7D,GACvC,MAAMwB,EAAOG,EAAQkF,GACrB,GACIrF,EAAOG,EAAQgB,KAAKoB,WACpBvC,EAAOG,EAAQgB,KAAKsB,UACtB,CACE,OAAO,K,EAIf,OAAO,I,CAGHhB,mBACJ,MAAMnD,EAAOkB,EAAS,IAAIb,KAAQ,IAElC,IAAIqB,EAAOG,EAAQ7B,GACnB0B,EAAOY,KAAKiG,KAAK7G,EAAO,IAAM,GAE9B,OAAOe,EAAQzC,EAAM0B,E"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["toastComponentCss","Toast","render","h","Host","class","this","variant","onClick","_onClick","_a","header","length","name","_b","content","enableAction","iconOnly","size","icon","actionIcon","iconFlip","actionIconFlip","iconRotate","actionIconRotate","action","emit"],"sources":["./src/components/molecules/toast/toast.component.scss?tag=p-toast&encapsulation=shadow","./src/components/molecules/toast/toast.component.tsx"],"sourcesContent":[":host {\n @apply flex justify-between items-center gap-2;\n @apply w-full p-4 pl-5;\n @apply bg-white rounded box-border;\n @apply shadow-4 #{!important};\n @apply border-l-4 border-solid #{!important};\n\n p {\n @apply m-0;\n @apply overflow-hidden text-ellipsis whitespace-nowrap;\n }\n}\n\n:host(.variant-positive) {\n @apply border-l-positive #{!important};\n}\n\n:host(.variant-unbiased) {\n @apply border-l-unbiased #{!important};\n}\n\n:host(.variant-negative) {\n @apply border-l-negative #{!important};\n}\n","import { Component, Event, EventEmitter, h, Host, Prop } from '@stencil/core';\nimport { RotateOptions } from '../../../types';\nimport { IconFlipOptions, IconVariant } from '../../atoms/icon/icon.component';\n\n@Component({\n tag: 'p-toast',\n styleUrl: 'toast.component.scss',\n shadow: true,\n})\nexport class Toast {\n /**\n * The variant of the toast\n */\n @Prop() variant: 'positive' | 'unbiased' | 'negative' = 'positive';\n\n /**\n * The header of the toast\n */\n @Prop() header?: string;\n\n /**\n * The content of the toast\n */\n @Prop() content?: string;\n\n /**\n * Wether to enable the close button\n */\n @Prop() enableAction: boolean = true;\n\n /**\n * Icon to show on the button\n */\n @Prop() actionIcon: IconVariant = 'negative';\n\n /**\n * Icon flip\n */\n @Prop() actionIconFlip: IconFlipOptions;\n\n /**\n * Icon rotate\n */\n @Prop() actionIconRotate: RotateOptions;\n\n /**\n * Button click event\n */\n @Event() action: EventEmitter<MouseEvent>;\n\n render() {\n return (\n <Host\n class={`p-toast variant-${this.variant}`}\n onClick={() => this._onClick()}\n >\n <div class=\"flex flex-col w-full min-w-0\">\n <p class=\"font-semibold text-storm\">\n {this.header?.length ? (\n this.header\n ) : (\n <slot name=\"header\" />\n )}\n </p>\n <p class=\"text-sm text-storm-medium w-full\">\n {this.content?.length ? (\n this.content\n ) : (\n <slot name=\"content\" />\n )}\n </p>\n </div>\n\n {this.enableAction && (\n <p-button\n variant=\"secondary\"\n iconOnly\n size=\"small\"\n icon={this.actionIcon}\n iconFlip={this.actionIconFlip}\n iconRotate={this.actionIconRotate}\n class=\"flex-shrink-0\"\n />\n )}\n </Host>\n );\n }\n\n private _onClick() {\n if (this.enableAction) {\n this.action.emit();\n }\n }\n}\n"],"mappings":"yDAAA,MAAMA,EAAoB,okN,MCSbC,EAAK,M,qEAI0C,W,+DAexB,K,gBAKE,W,8DAiBlCC,S,QACI,OACIC,EAACC,EAAI,CACDC,MAAO,mBAAmBC,KAAKC,UAC/BC,QAAS,IAAMF,KAAKG,YAEpBN,EAAA,OAAKE,MAAM,gCACPF,EAAA,KAAGE,MAAM,8BACJK,EAAAJ,KAAKK,UAAM,MAAAD,SAAA,SAAAA,EAAEE,QACVN,KAAW,OAEXH,EAAA,QAAMU,KAAK,YAGnBV,EAAA,KAAGE,MAAM,sCACJS,EAAAR,KAAKS,WAAO,MAAAD,SAAA,SAAAA,EAAEF,QACXN,KAAY,QAEZH,EAAA,QAAMU,KAAK,cAKtBP,KAAKU,cACFb,EAAA,YACII,QAAQ,YACRU,SAAQ,KACRC,KAAK,QACLC,KAAMb,KAAKc,WACXC,SAAUf,KAAKgB,eACfC,WAAYjB,KAAKkB,iBACjBnB,MAAM,kB,CAOlBI,WACJ,GAAIH,KAAKU,aAAc,CACnBV,KAAKmB,OAAOC,M"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["tooltipComponentCss","Tooltip","this","_loaded","componentShouldUpdate","_update","disconnectedCallback","_cleanup","render","h","Host","class","name","variant","role","placement","strategy","ref","el","_load","popover","clickHandler","enableUserInput","_popover","hasAttribute","_show","documentClickHandler","canManuallyClose","show","_hide","mouseEnterHandler","mouseLeaveHandler","autoUpdate","_el","setAttribute","isOpen","emit","removeAttribute","setTimeout","arrowEl","querySelector","computePosition","middleware","offset","flip","shift","arrow","element","padding","then","x","y","middlewareData","dataset","Object","assign","style","top","left","indexOf"],"sources":["./src/components/atoms/tooltip/tooltip.component.scss?tag=p-tooltip&encapsulation=shadow","./src/components/atoms/tooltip/tooltip.component.tsx"],"sourcesContent":[":host {\n @apply flex cursor-pointer;\n\n .popover-container {\n @apply relative h-0 w-0;\n .popover {\n @apply left-0 top-0 z-tooltip inline-block rounded bg-white px-3 py-2 text-xs font-medium opacity-0 drop-shadow-4 transition-opacity;\n width: max-content;\n max-width: 14.5rem;\n\n &.variant-hover,\n &.variant-error,\n &.variant-error-element {\n @apply bg-storm py-1 text-white;\n }\n\n &.variant-error, &.variant-error-element {\n @apply bg-negative uppercase tracking-wider;\n }\n\n &[data-show] {\n @apply opacity-100;\n }\n\n .arrow,\n .arrow::before {\n background: inherit;\n @apply absolute h-2 w-2;\n }\n\n .arrow {\n visibility: hidden;\n\n &::before {\n @apply visible rotate-45 transform;\n content: '';\n }\n }\n\n &[data-strategy='fixed'] {\n @apply fixed;\n }\n\n &[data-strategy='absolute'] {\n @apply absolute;\n }\n\n &[data-placement^='top'] > .arrow {\n @apply -bottom-1;\n }\n\n &[data-placement^='bottom'] > .arrow {\n @apply -top-1;\n }\n\n &[data-placement^='left'] > .arrow {\n @apply -right-1;\n }\n\n &[data-placement^='right'] > .arrow {\n @apply -left-1;\n }\n }\n }\n}\n","import {\n arrow,\n autoUpdate,\n computePosition,\n flip,\n offset,\n Placement,\n shift,\n Strategy,\n} from '@floating-ui/dom';\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Prop,\n} from '@stencil/core';\n\n@Component({\n tag: 'p-tooltip',\n styleUrl: 'tooltip.component.scss',\n shadow: true,\n})\nexport class Tooltip {\n /**\n * The variant of the popover\n */\n @Prop() variant: 'hover' | 'click' | 'error' | 'error-element' = 'hover';\n\n /**\n * The content of the popover\n */\n @Prop() popover: any = null;\n\n /**\n * The placement of the popover\n */\n @Prop() placement: Placement = 'top';\n\n /**\n * The strategy of the popover placement\n */\n @Prop() strategy: Strategy = 'absolute';\n\n /**\n * Wether the tooltip can be shown by user input\n */\n @Prop() enableUserInput: boolean = true;\n\n /**\n * Wether to show the popover\n */\n @Prop() show: boolean = false;\n\n /**\n * Wether to someone can manually close the popover\n */\n @Prop() canManuallyClose: boolean = true;\n\n /**\n * Open change event\n */\n @Event() isOpen: EventEmitter<boolean>;\n\n /**\n * The host element\n */\n @Element() private _el: HTMLElement;\n\n private _loaded = false;\n private _popover: HTMLElement;\n private _cleanup: () => void;\n\n componentShouldUpdate() {\n this._update();\n }\n\n disconnectedCallback() {\n if (this._cleanup) {\n this._cleanup();\n this._cleanup = null;\n }\n }\n\n render() {\n return (\n <Host class=\"p-popover\">\n <slot name=\"content\" />\n <div class=\"popover-container\">\n <div\n class={`popover variant-${this.variant}`}\n role=\"popover\"\n data-placement={this.placement}\n data-strategy={this.strategy}\n ref={(el) => this._load(el)}\n >\n {this.popover ? this.popover : <slot name=\"popover\" />}\n <div class=\"arrow\"></div>\n </div>\n </div>\n </Host>\n );\n }\n\n @Listen('click', { capture: true })\n protected clickHandler() {\n if (this.variant === 'hover' || !this.enableUserInput) {\n return;\n }\n\n if (this._popover.hasAttribute('data-show')) {\n return;\n }\n\n this._show();\n }\n\n @Listen('click', { target: 'document', capture: true })\n protected documentClickHandler() {\n if (this.variant === 'hover' || !this.canManuallyClose || this.show) {\n return;\n }\n\n if (!this._popover.hasAttribute('data-show')) {\n return;\n }\n\n this._hide();\n }\n\n @Listen('mouseenter')\n @Listen('focus')\n protected mouseEnterHandler() {\n if (this.variant !== 'hover' || !this.enableUserInput) {\n return;\n }\n\n this._show();\n }\n\n @Listen('mouseleave')\n @Listen('blur')\n protected mouseLeaveHandler() {\n if (this.show || this.variant !== 'hover' || !this.enableUserInput) {\n return;\n }\n\n this._hide();\n }\n\n private _show() {\n if (!this._loaded) {\n return;\n }\n\n this._cleanup = autoUpdate(this._el, this._popover, () =>\n this._update()\n );\n // Make the popover visible\n this._popover.setAttribute('data-show', '');\n\n // Update its position\n this.isOpen.emit(true);\n }\n\n private _hide() {\n if (!this._loaded) {\n return;\n }\n\n if (this._cleanup) {\n this._cleanup();\n this._cleanup = null;\n }\n\n // Hide the popover\n this._popover.removeAttribute('data-show');\n this.isOpen.emit(false);\n }\n\n private _load(popover: HTMLElement) {\n this._popover = popover;\n if (popover) {\n this._update();\n this._loaded = true;\n\n if (this.show) {\n setTimeout(() => this._show(), 100);\n }\n }\n }\n\n private _update() {\n if (!this._popover) {\n return;\n }\n\n const arrowEl = this._popover.querySelector('.arrow') as HTMLElement;\n if (!arrowEl) {\n return;\n }\n\n computePosition(this._el, this._popover, {\n placement: this.variant === 'error' || this.variant === 'error-element' ? 'top-end' : this.placement,\n strategy: this.strategy,\n\n middleware: [\n offset(this.variant === 'error' ? 14 : 8),\n flip(),\n shift(),\n arrow({ element: arrowEl, padding: 8 }),\n ],\n }).then(({ x, y, placement, middlewareData }) => {\n this._popover.dataset.placement = placement;\n Object.assign(this._popover.style, {\n top: `${y}px`,\n left: `${x}px`,\n });\n\n if (middlewareData.arrow) {\n const { x, y } = middlewareData.arrow;\n\n Object.assign(arrowEl.style, {\n left:\n this.variant === 'error' || this.variant === 'error-element'\n ? placement.indexOf('start') >= 0\n ? '1rem'\n : 'calc(100% - 1rem)'\n : x != null\n ? `${x}px`\n : '',\n top: y != null ? `${y}px` : '',\n });\n }\n });\n }\n}\n"],"mappings":"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"}
|