@nova-design-system/nova-webcomponents 3.0.0-beta.46 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index-9bda5507.js +0 -4
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/native.cjs.js +1 -1
- package/dist/cjs/nv-badge_2.cjs.entry.js +1 -1
- package/dist/cjs/nv-breadcrumb.cjs.entry.js +1 -1
- package/dist/cjs/nv-breadcrumbs.cjs.entry.js +1 -1
- package/dist/cjs/nv-button.cjs.entry.js +1 -1
- package/dist/cjs/nv-calendar.cjs.entry.js +48 -19
- package/dist/cjs/nv-calendar.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-col.cjs.entry.js +1 -1
- package/dist/cjs/nv-datagrid.cjs.entry.js +351 -91
- package/dist/cjs/nv-datagrid.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-datagridcolumn.cjs.entry.js +1 -1
- package/dist/cjs/nv-dialog.cjs.entry.js +1 -1
- package/dist/cjs/nv-dialogfooter_2.cjs.entry.js +2 -2
- package/dist/cjs/nv-fieldcheckbox.cjs.entry.js +4 -4
- package/dist/cjs/nv-fielddate.cjs.entry.js +5 -5
- package/dist/cjs/nv-fielddaterange.cjs.entry.js +4 -4
- package/dist/cjs/nv-fielddropdown.cjs.entry.js +15 -29
- package/dist/cjs/nv-fielddropdown.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-fielddropdownitem.cjs.entry.js +1 -1
- package/dist/cjs/nv-fieldmultiselect.cjs.entry.js +28 -71
- package/dist/cjs/nv-fieldmultiselect.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-fieldnumber.cjs.entry.js +3 -3
- package/dist/cjs/nv-fieldnumber.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-fieldpassword.cjs.entry.js +3 -3
- package/dist/cjs/nv-fieldradio.cjs.entry.js +3 -3
- package/dist/cjs/nv-fieldselect.cjs.entry.js +5 -5
- package/dist/cjs/nv-fieldtext.cjs.entry.js +3 -3
- package/dist/cjs/nv-fieldtextarea.cjs.entry.js +3 -3
- package/dist/cjs/nv-fieldtime.cjs.entry.js +9 -9
- package/dist/cjs/nv-icon.cjs.entry.js +1 -1
- package/dist/cjs/nv-iconbutton_2.cjs.entry.js +2 -2
- package/dist/cjs/nv-menu.cjs.entry.js +16 -42
- package/dist/cjs/nv-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-menuitem.cjs.entry.js +1 -1
- package/dist/cjs/nv-popover.cjs.entry.js +1 -1
- package/dist/cjs/nv-row.cjs.entry.js +1 -1
- package/dist/cjs/nv-stack.cjs.entry.js +1 -1
- package/dist/cjs/nv-stack.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-table.cjs.entry.js +2 -2
- package/dist/cjs/nv-toggle.cjs.entry.js +2 -2
- package/dist/cjs/nv-tooltip.cjs.entry.js +1 -1
- package/dist/collection/collection-manifest.json +0 -1
- package/dist/collection/components/nv-breadcrumb/nv-breadcrumb.js +1 -1
- package/dist/collection/components/nv-breadcrumbs/nv-breadcrumbs.js +1 -1
- package/dist/collection/components/nv-button/nv-button.js +1 -1
- package/dist/collection/components/nv-calendar/nv-calendar.docs.js +0 -9
- package/dist/collection/components/nv-calendar/nv-calendar.docs.js.map +1 -1
- package/dist/collection/components/nv-calendar/nv-calendar.js +48 -19
- package/dist/collection/components/nv-calendar/nv-calendar.js.map +1 -1
- package/dist/collection/components/nv-col/nv-col.js +1 -1
- package/dist/collection/components/nv-datagrid/nv-datagrid.docs.js +542 -75
- package/dist/collection/components/nv-datagrid/nv-datagrid.docs.js.map +1 -1
- package/dist/collection/components/nv-datagrid/nv-datagrid.js +366 -95
- package/dist/collection/components/nv-datagrid/nv-datagrid.js.map +1 -1
- package/dist/collection/components/nv-datagridcolumn/nv-datagridcolumn.js +1 -1
- package/dist/collection/components/nv-dialog/nv-dialog.js +1 -1
- package/dist/collection/components/nv-dialogfooter/nv-dialogfooter.js +1 -1
- package/dist/collection/components/nv-dialogheader/nv-dialogheader.js +1 -1
- package/dist/collection/components/nv-fieldcheckbox/nv-fieldcheckbox.js +4 -4
- package/dist/collection/components/nv-fielddate/nv-fielddate.js +5 -5
- package/dist/collection/components/nv-fielddaterange/nv-fielddaterange.js +4 -4
- package/dist/collection/components/nv-fielddropdown/nv-fielddropdown.docs.js +8 -8
- package/dist/collection/components/nv-fielddropdown/nv-fielddropdown.docs.js.map +1 -1
- package/dist/collection/components/nv-fielddropdown/nv-fielddropdown.js +22 -39
- package/dist/collection/components/nv-fielddropdown/nv-fielddropdown.js.map +1 -1
- package/dist/collection/components/nv-fielddropdownitem/nv-fielddropdownitem.js +1 -1
- package/dist/collection/components/nv-fielddropdownitemcheck/nv-fielddropdownitemcheck.js +1 -1
- package/dist/collection/components/nv-fieldmultiselect/nv-fieldmultiselect.docs.js +6 -6
- package/dist/collection/components/nv-fieldmultiselect/nv-fieldmultiselect.docs.js.map +1 -1
- package/dist/collection/components/nv-fieldmultiselect/nv-fieldmultiselect.js +35 -85
- package/dist/collection/components/nv-fieldmultiselect/nv-fieldmultiselect.js.map +1 -1
- package/dist/collection/components/nv-fieldnumber/nv-fieldnumber.js +3 -3
- package/dist/collection/components/nv-fieldnumber/nv-fieldnumber.js.map +1 -1
- package/dist/collection/components/nv-fieldpassword/nv-fieldpassword.js +3 -3
- package/dist/collection/components/nv-fieldradio/nv-fieldradio.js +3 -3
- package/dist/collection/components/nv-fieldselect/nv-fieldselect.js +5 -5
- package/dist/collection/components/nv-fieldtext/nv-fieldtext.js +3 -3
- package/dist/collection/components/nv-fieldtextarea/nv-fieldtextarea.js +3 -3
- package/dist/collection/components/nv-fieldtime/nv-fieldtime.js +9 -9
- package/dist/collection/components/nv-icon/nv-icon.js +1 -1
- package/dist/collection/components/nv-iconbutton/nv-iconbutton.js +1 -1
- package/dist/collection/components/nv-loader/nv-loader.js +1 -1
- package/dist/collection/components/nv-menu/nv-menu.docs.js +3 -3
- package/dist/collection/components/nv-menu/nv-menu.docs.js.map +1 -1
- package/dist/collection/components/nv-menu/nv-menu.js +31 -59
- package/dist/collection/components/nv-menu/nv-menu.js.map +1 -1
- package/dist/collection/components/nv-menuitem/nv-menuitem.js +1 -1
- package/dist/collection/components/nv-popover/nv-popover.js +1 -1
- package/dist/collection/components/nv-row/nv-row.js +1 -1
- package/dist/collection/components/nv-stack/nv-stack.docs.js +7 -6
- package/dist/collection/components/nv-stack/nv-stack.docs.js.map +1 -1
- package/dist/collection/components/nv-stack/nv-stack.js +1 -1
- package/dist/collection/components/nv-stack/nv-stack.js.map +1 -1
- package/dist/collection/components/nv-table/nv-table.js +2 -2
- package/dist/collection/components/nv-toggle/nv-toggle.js +2 -2
- package/dist/collection/components/nv-tooltip/nv-tooltip.js +1 -1
- package/dist/components/nv-alert.js +1 -1
- package/dist/components/nv-avatar.js +1 -1
- package/dist/components/nv-badge.js +1 -1
- package/dist/components/nv-breadcrumb.js +3 -3
- package/dist/components/nv-breadcrumbs.js +1 -1
- package/dist/components/nv-button.js +1 -1
- package/dist/components/nv-calendar.js +1 -1
- package/dist/components/nv-col.js +1 -1
- package/dist/components/nv-datagrid.js +359 -94
- package/dist/components/nv-datagrid.js.map +1 -1
- package/dist/components/nv-datagridcolumn.js +1 -1
- package/dist/components/nv-dialog.js +6 -6
- package/dist/components/nv-dialogfooter.js +1 -1
- package/dist/components/nv-dialogheader.js +1 -1
- package/dist/components/nv-fieldcheckbox.js +1 -1
- package/dist/components/nv-fielddate.js +12 -12
- package/dist/components/nv-fielddaterange.js +11 -11
- package/dist/components/nv-fielddropdown.js +21 -36
- package/dist/components/nv-fielddropdown.js.map +1 -1
- package/dist/components/nv-fielddropdownitem.js +1 -1
- package/dist/components/nv-fielddropdownitemcheck.js +1 -1
- package/dist/components/nv-fieldmultiselect.js +36 -81
- package/dist/components/nv-fieldmultiselect.js.map +1 -1
- package/dist/components/nv-fieldnumber.js +6 -6
- package/dist/components/nv-fieldnumber.js.map +1 -1
- package/dist/components/nv-fieldpassword.js +6 -6
- package/dist/components/nv-fieldradio.js +3 -3
- package/dist/components/nv-fieldselect.js +8 -8
- package/dist/components/nv-fieldtext.js +4 -4
- package/dist/components/nv-fieldtextarea.js +3 -3
- package/dist/components/nv-fieldtime.js +13 -13
- package/dist/components/nv-icon.js +1 -1
- package/dist/components/nv-iconbutton.js +1 -1
- package/dist/components/nv-loader.js +1 -1
- package/dist/components/nv-menu.js +21 -50
- package/dist/components/nv-menu.js.map +1 -1
- package/dist/components/nv-menuitem.js +1 -1
- package/dist/components/nv-popover.js +1 -1
- package/dist/components/nv-row.js +1 -1
- package/dist/components/nv-stack.js +1 -1
- package/dist/components/nv-stack.js.map +1 -1
- package/dist/components/nv-table.js +2 -2
- package/dist/components/nv-toggle.js +2 -2
- package/dist/components/nv-tooltip.js +1 -1
- package/dist/components/{p-d88ced51.js → p-02752770.js} +2 -2
- package/dist/components/{p-d88ced51.js.map → p-02752770.js.map} +1 -1
- package/dist/components/{p-7b89fb48.js → p-150daf68.js} +2 -2
- package/dist/components/{p-7b89fb48.js.map → p-150daf68.js.map} +1 -1
- package/dist/components/{p-56ef8131.js → p-2012b8ba.js} +3 -3
- package/dist/components/{p-56ef8131.js.map → p-2012b8ba.js.map} +1 -1
- package/dist/components/{p-8674c7af.js → p-2d9ba7d3.js} +3 -3
- package/dist/components/{p-8674c7af.js.map → p-2d9ba7d3.js.map} +1 -1
- package/dist/components/{p-5a5f11c2.js → p-373926aa.js} +2 -2
- package/dist/components/{p-5a5f11c2.js.map → p-373926aa.js.map} +1 -1
- package/dist/components/{p-dcabc6fa.js → p-4d3ec142.js} +3 -3
- package/dist/components/{p-dcabc6fa.js.map → p-4d3ec142.js.map} +1 -1
- package/dist/components/{p-91b58443.js → p-591730e7.js} +2 -2
- package/dist/components/{p-91b58443.js.map → p-591730e7.js.map} +1 -1
- package/dist/components/{p-b4768da6.js → p-6c364a23.js} +5 -5
- package/dist/components/{p-b4768da6.js.map → p-6c364a23.js.map} +1 -1
- package/dist/components/{p-f469df15.js → p-a30b55fc.js} +2 -2
- package/dist/components/{p-f469df15.js.map → p-a30b55fc.js.map} +1 -1
- package/dist/components/{p-664c5a14.js → p-b7b78e64.js} +2 -2
- package/dist/components/{p-664c5a14.js.map → p-b7b78e64.js.map} +1 -1
- package/dist/components/{p-8c5a861b.js → p-c14f6b8e.js} +3 -3
- package/dist/components/{p-8c5a861b.js.map → p-c14f6b8e.js.map} +1 -1
- package/dist/components/{p-a9e1bf70.js → p-dc3faba3.js} +4 -4
- package/dist/components/{p-a9e1bf70.js.map → p-dc3faba3.js.map} +1 -1
- package/dist/components/{p-9d6aaf76.js → p-e00cbb8a.js} +5 -5
- package/dist/components/{p-9d6aaf76.js.map → p-e00cbb8a.js.map} +1 -1
- package/dist/components/{p-a9f162a8.js → p-f331117c.js} +53 -24
- package/dist/components/p-f331117c.js.map +1 -0
- package/dist/components/{p-18bc0291.js → p-f4d86795.js} +3 -3
- package/dist/components/{p-18bc0291.js.map → p-f4d86795.js.map} +1 -1
- package/dist/esm/index-1fb7a9a6.js +0 -4
- package/dist/esm/loader.js +1 -1
- package/dist/esm/native.js +1 -1
- package/dist/esm/nv-badge_2.entry.js +1 -1
- package/dist/esm/nv-breadcrumb.entry.js +1 -1
- package/dist/esm/nv-breadcrumbs.entry.js +1 -1
- package/dist/esm/nv-button.entry.js +1 -1
- package/dist/esm/nv-calendar.entry.js +48 -19
- package/dist/esm/nv-calendar.entry.js.map +1 -1
- package/dist/esm/nv-col.entry.js +1 -1
- package/dist/esm/nv-datagrid.entry.js +351 -91
- package/dist/esm/nv-datagrid.entry.js.map +1 -1
- package/dist/esm/nv-datagridcolumn.entry.js +1 -1
- package/dist/esm/nv-dialog.entry.js +1 -1
- package/dist/esm/nv-dialogfooter_2.entry.js +2 -2
- package/dist/esm/nv-fieldcheckbox.entry.js +4 -4
- package/dist/esm/nv-fielddate.entry.js +5 -5
- package/dist/esm/nv-fielddaterange.entry.js +4 -4
- package/dist/esm/nv-fielddropdown.entry.js +15 -29
- package/dist/esm/nv-fielddropdown.entry.js.map +1 -1
- package/dist/esm/nv-fielddropdownitem.entry.js +1 -1
- package/dist/esm/nv-fieldmultiselect.entry.js +28 -71
- package/dist/esm/nv-fieldmultiselect.entry.js.map +1 -1
- package/dist/esm/nv-fieldnumber.entry.js +3 -3
- package/dist/esm/nv-fieldnumber.entry.js.map +1 -1
- package/dist/esm/nv-fieldpassword.entry.js +3 -3
- package/dist/esm/nv-fieldradio.entry.js +3 -3
- package/dist/esm/nv-fieldselect.entry.js +5 -5
- package/dist/esm/nv-fieldtext.entry.js +3 -3
- package/dist/esm/nv-fieldtextarea.entry.js +3 -3
- package/dist/esm/nv-fieldtime.entry.js +9 -9
- package/dist/esm/nv-icon.entry.js +1 -1
- package/dist/esm/nv-iconbutton_2.entry.js +2 -2
- package/dist/esm/nv-menu.entry.js +16 -42
- package/dist/esm/nv-menu.entry.js.map +1 -1
- package/dist/esm/nv-menuitem.entry.js +1 -1
- package/dist/esm/nv-popover.entry.js +1 -1
- package/dist/esm/nv-row.entry.js +1 -1
- package/dist/esm/nv-stack.entry.js +1 -1
- package/dist/esm/nv-stack.entry.js.map +1 -1
- package/dist/esm/nv-table.entry.js +2 -2
- package/dist/esm/nv-toggle.entry.js +2 -2
- package/dist/esm/nv-tooltip.entry.js +1 -1
- package/dist/native/native.esm.js +1 -1
- package/dist/native/native.esm.js.map +1 -1
- package/dist/native/p-0245863d.entry.js +2 -0
- package/dist/native/{p-8946883b.entry.js → p-0ee428d5.entry.js} +2 -2
- package/dist/native/{p-8f7c1bb8.entry.js → p-244f56ac.entry.js} +2 -2
- package/dist/native/p-2691e02d.entry.js +2 -0
- package/dist/native/{p-aeac63ea.entry.js → p-37f0210e.entry.js} +2 -2
- package/dist/native/{p-000ef9c9.entry.js → p-39bb95ff.entry.js} +2 -2
- package/dist/native/{p-76cd466a.entry.js → p-4ae26462.entry.js} +2 -2
- package/dist/native/{p-75f4bfe8.entry.js → p-4d9c4618.entry.js} +2 -2
- package/dist/native/p-4d9c4618.entry.js.map +1 -0
- package/dist/native/{p-d4e48d08.entry.js → p-59e0bd2b.entry.js} +2 -2
- package/dist/native/{p-d4e48d08.entry.js.map → p-59e0bd2b.entry.js.map} +1 -1
- package/dist/native/{p-626a1372.entry.js → p-5c00f092.entry.js} +2 -2
- package/dist/native/p-63e6aed3.entry.js +2 -0
- package/dist/native/p-63e6aed3.entry.js.map +1 -0
- package/dist/native/{p-4fe5ebe9.entry.js → p-6b348684.entry.js} +2 -2
- package/dist/native/{p-aa957898.entry.js → p-6ff228da.entry.js} +2 -2
- package/dist/native/{p-aa957898.entry.js.map → p-6ff228da.entry.js.map} +1 -1
- package/dist/native/{p-74f7f404.entry.js → p-701b5557.entry.js} +2 -2
- package/dist/native/{p-002e7bf1.entry.js → p-7f5eb2ac.entry.js} +2 -2
- package/dist/native/{p-e4f84faa.entry.js → p-84a73e2a.entry.js} +2 -2
- package/dist/native/p-9135fdf5.entry.js +2 -0
- package/dist/native/p-93dc2f47.entry.js +2 -0
- package/dist/native/{p-7e1fa44c.entry.js.map → p-93dc2f47.entry.js.map} +1 -1
- package/dist/native/{p-be5f62e5.entry.js → p-9a267f16.entry.js} +2 -2
- package/dist/native/p-9a267f16.entry.js.map +1 -0
- package/dist/native/{p-60d6ffa3.entry.js → p-9d6431c7.entry.js} +2 -2
- package/dist/native/{p-b11fdaed.entry.js → p-b094296d.entry.js} +2 -2
- package/dist/native/{p-43cc98dc.entry.js → p-b2ce83ad.entry.js} +2 -2
- package/dist/native/{p-115ad66c.entry.js → p-bad11367.entry.js} +2 -2
- package/dist/native/{p-6603d939.entry.js → p-c7b201cd.entry.js} +2 -2
- package/dist/native/{p-4c859a14.entry.js → p-d7a76400.entry.js} +2 -2
- package/dist/native/p-e1a4f776.entry.js +2 -0
- package/dist/native/p-e1a4f776.entry.js.map +1 -0
- package/dist/native/p-e49bbd02.entry.js +2 -0
- package/dist/native/p-e49bbd02.entry.js.map +1 -0
- package/dist/native/{p-98030346.entry.js → p-e5de64d5.entry.js} +2 -2
- package/dist/native/p-eee01062.entry.js +2 -0
- package/dist/native/{p-3df6febe.entry.js.map → p-eee01062.entry.js.map} +1 -1
- package/dist/native/{p-b6164ebc.entry.js → p-f6bdc270.entry.js} +2 -2
- package/dist/native/{p-50dcce07.entry.js → p-f85aca27.entry.js} +2 -2
- package/dist/native/{p-1e5453be.entry.js → p-fa77a591.entry.js} +2 -2
- package/dist/native/{p-d5158e27.entry.js → p-fb5bddba.entry.js} +2 -2
- package/dist/types/components/nv-calendar/nv-calendar.d.ts +10 -7
- package/dist/types/components/nv-datagrid/nv-datagrid.d.ts +37 -2
- package/dist/types/components/nv-fielddropdown/nv-fielddropdown.d.ts +16 -20
- package/dist/types/components/nv-fieldmultiselect/nv-fieldmultiselect.d.ts +16 -34
- package/dist/types/components/nv-menu/nv-menu.d.ts +46 -12
- package/dist/types/components.d.ts +174 -43
- package/dist/vscode-data.json +8 -20
- package/hydrate/index.js +535 -407
- package/hydrate/index.mjs +535 -407
- package/package.json +3 -2
- package/dist/cjs/nv-base.cjs.entry.js +0 -74
- package/dist/cjs/nv-base.cjs.entry.js.map +0 -1
- package/dist/collection/components/nv-base/nv-base.docs.js +0 -5
- package/dist/collection/components/nv-base/nv-base.docs.js.map +0 -1
- package/dist/collection/components/nv-base/nv-base.js +0 -68
- package/dist/collection/components/nv-base/nv-base.js.map +0 -1
- package/dist/components/nv-base.d.ts +0 -11
- package/dist/components/nv-base.js +0 -88
- package/dist/components/nv-base.js.map +0 -1
- package/dist/components/p-a9f162a8.js.map +0 -1
- package/dist/esm/nv-base.entry.js +0 -70
- package/dist/esm/nv-base.entry.js.map +0 -1
- package/dist/native/p-2ed9934a.entry.js +0 -2
- package/dist/native/p-2ed9934a.entry.js.map +0 -1
- package/dist/native/p-3df6febe.entry.js +0 -2
- package/dist/native/p-4977fcd0.entry.js +0 -2
- package/dist/native/p-75f4bfe8.entry.js.map +0 -1
- package/dist/native/p-7e1fa44c.entry.js +0 -2
- package/dist/native/p-b8b58064.entry.js +0 -2
- package/dist/native/p-be5f62e5.entry.js.map +0 -1
- package/dist/native/p-c6fe73a9.entry.js +0 -2
- package/dist/native/p-c6fe73a9.entry.js.map +0 -1
- package/dist/native/p-ce64d562.entry.js +0 -2
- package/dist/native/p-d352a8b3.entry.js +0 -2
- package/dist/native/p-d352a8b3.entry.js.map +0 -1
- package/dist/native/p-e200185a.entry.js +0 -2
- package/dist/native/p-e200185a.entry.js.map +0 -1
- package/dist/types/components/nv-base/nv-base.d.ts +0 -17
- package/dist/types/components/nv-base/nv-base.docs.d.ts +0 -5
- /package/dist/native/{p-ce64d562.entry.js.map → p-0245863d.entry.js.map} +0 -0
- /package/dist/native/{p-8946883b.entry.js.map → p-0ee428d5.entry.js.map} +0 -0
- /package/dist/native/{p-8f7c1bb8.entry.js.map → p-244f56ac.entry.js.map} +0 -0
- /package/dist/native/{p-4977fcd0.entry.js.map → p-2691e02d.entry.js.map} +0 -0
- /package/dist/native/{p-aeac63ea.entry.js.map → p-37f0210e.entry.js.map} +0 -0
- /package/dist/native/{p-000ef9c9.entry.js.map → p-39bb95ff.entry.js.map} +0 -0
- /package/dist/native/{p-76cd466a.entry.js.map → p-4ae26462.entry.js.map} +0 -0
- /package/dist/native/{p-626a1372.entry.js.map → p-5c00f092.entry.js.map} +0 -0
- /package/dist/native/{p-4fe5ebe9.entry.js.map → p-6b348684.entry.js.map} +0 -0
- /package/dist/native/{p-74f7f404.entry.js.map → p-701b5557.entry.js.map} +0 -0
- /package/dist/native/{p-002e7bf1.entry.js.map → p-7f5eb2ac.entry.js.map} +0 -0
- /package/dist/native/{p-e4f84faa.entry.js.map → p-84a73e2a.entry.js.map} +0 -0
- /package/dist/native/{p-b8b58064.entry.js.map → p-9135fdf5.entry.js.map} +0 -0
- /package/dist/native/{p-60d6ffa3.entry.js.map → p-9d6431c7.entry.js.map} +0 -0
- /package/dist/native/{p-b11fdaed.entry.js.map → p-b094296d.entry.js.map} +0 -0
- /package/dist/native/{p-43cc98dc.entry.js.map → p-b2ce83ad.entry.js.map} +0 -0
- /package/dist/native/{p-115ad66c.entry.js.map → p-bad11367.entry.js.map} +0 -0
- /package/dist/native/{p-6603d939.entry.js.map → p-c7b201cd.entry.js.map} +0 -0
- /package/dist/native/{p-4c859a14.entry.js.map → p-d7a76400.entry.js.map} +0 -0
- /package/dist/native/{p-98030346.entry.js.map → p-e5de64d5.entry.js.map} +0 -0
- /package/dist/native/{p-b6164ebc.entry.js.map → p-f6bdc270.entry.js.map} +0 -0
- /package/dist/native/{p-50dcce07.entry.js.map → p-f85aca27.entry.js.map} +0 -0
- /package/dist/native/{p-1e5453be.entry.js.map → p-fa77a591.entry.js.map} +0 -0
- /package/dist/native/{p-d5158e27.entry.js.map → p-fb5bddba.entry.js.map} +0 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as e,c as n,h as t,a as o,g as i}from"./p-ab002252.js";const r="nv-menuitem{display:flex;align-items:center;max-width:300px;width:100vw;font-size:var(--menu-contextual-item-font-size);font-weight:var(--menu-contextual-item-font-weight);color:var(--components-menu-contextual-item-content);border-radius:var(--menu-contextual-item-radius);gap:var(--menu-contextual-item-gap-x);padding:var(--menu-contextual-item-padding-y) var(--menu-contextual-item-padding-x);transition:background-color 150ms ease-out;cursor:pointer}nv-menuitem:hover,nv-menuitem:focus,nv-menuitem:focus-within{background-color:var(--components-menu-contextual-item-background-hover);color:var(--components-menu-contextual-item-content-hover)}nv-menuitem *{pointer-events:none}nv-menuitem kbd{color:var(--components-menu-contextual-item-shortcut)}nv-menuitem [data-scope=text]{margin-right:auto}nv-menuitem[disabled]:not([disabled=false]){cursor:unset;background-color:unset;color:var(--components-menu-contextual-item-content-disabled)}nv-menu{display:inline-block;position:relative}nv-menu:has([fluid]:not([fluid=false])){display:block}nv-menu nv-popover{display:unset}nv-menu nv-popover [data-scope=popover]{background-color:transparent !important;padding:0 !important}nv-menu [slot=content]{padding:var(--menu-contextual-padding-y) var(--menu-contextual-padding-x);border-radius:var(--menu-contextual-radius);gap:var(--menu-contextual-gap-y);background-color:var(--components-menu-contextual-background);border-color:var(--components-menu-contextual-border);display:flex;flex-direction:column}nv-menu nv-menu[open]:not([open=false])>nv-menuitem{background-color:var(--components-menu-contextual-item-background-hover);color:var(--components-menu-contextual-item-content-hover)}nv-menu hr{display:block;margin:var(--menu-contextual-divider-padding-top) var(--menu-contextual-divider-padding-x) var(--menu-contextual-divider-padding-bottom) var(--menu-contextual-divider-padding-x)}";const a=r;const s=class{constructor(o){e(this,o);this.menuitemSelected=n(this,"menuitemSelected",7);this.isHandlingKeyDown=false;this.open=false;this.nested=false;this.disableCloseOnSelect=false;this.placement="bottom-end";this.renderMenuItems=()=>this.items.map((e=>{var n;if(e.hasSubmenu&&((n=e.submenuItems)===null||n===void 0?void 0:n.length)>0){return t("nv-menu",{nested:true,placement:"right-start",items:e.submenuItems},t("nv-menuitem",{slot:"trigger",hasSubmenu:true,disabled:e.disabled,icon:e.icon,shortcut:e.shortcut,id:e.value,name:e.label,label:e.label}))}return t("nv-menuitem",{disabled:e.disabled,icon:e.icon,shortcut:e.shortcut,id:e.value,name:e.label,label:e.label})}))}async show(){this.open=true}async close(){this.open=false}handleMenuItemSelect(e){if(this.disableCloseOnSelect)return;if(e.detail.hasSubmenu)return;this.open=false}handleKeydown(e){if(!this.open){if((e.key==="Enter"||e.key==="ArrowDown"||e.key===" ")&&document.activeElement===this.triggerElement){e.preventDefault();this.show();const n=this.popoverElement.querySelector("nv-menuitem");if(n){requestAnimationFrame((()=>n.focus()))}}return}if(this.isHandlingKeyDown)return;this.isHandlingKeyDown=true;if(e.key==="ArrowDown"||e.key==="ArrowUp"||e.key==="ArrowLeft"||e.key==="ArrowRight"||e.key==="Escape"){e.preventDefault()}if(e.key==="Escape"&&!this.nested){this.close();this.triggerElement.focus();this.isHandlingKeyDown=false;return}const n=this.el.querySelector('[slot="content"]');const t=Array.from(n.childNodes).filter((e=>{var n;return(n=e.matches)===null||n===void 0?void 0:n.call(e,"nv-menuitem, nv-menu")}));let o=t.indexOf(document.activeElement);if(o===-1)o=t.indexOf(document.activeElement.parentElement);if(o===-1&&t.find((e=>e.matches("nv-menu[open]")))){this.isHandlingKeyDown=false;return}if(e.key==="ArrowDown"||e.key==="ArrowUp"){t.forEach((e=>{if(e.matches("nv-menu"))e.close()}))}if(e.key==="ArrowDown"){let e=(o+1)%t.length;while(t[e].matches("nv-menuitem[disabled]")){e=(e+1)%t.length}const n=t[e];if(n.matches("nv-menuitem")){n.focus()}else if(n.matches("nv-menu")){n.querySelector("nv-menuitem").focus()}}if(e.key==="ArrowUp"){let e=(o-1+t.length)%t.length;while(t[e].matches("nv-menuitem[disabled]")){e=(e-1+t.length)%t.length}const n=t[e];if(n.matches("nv-menuitem")){n.focus()}else if(n.matches("nv-menu")){n.querySelector("nv-menuitem").focus()}}if(e.key==="ArrowRight"){const e=t[o];if(!e.matches("nv-menu")){this.isHandlingKeyDown=false;return}e.show()}if(e.key==="ArrowLeft"&&this.nested){if(t.find((e=>e.matches("nv-menu[open]")))){this.isHandlingKeyDown=false;return}this.close();this.triggerElement.focus()}this.isHandlingKeyDown=false}handleOpenChanged(e){if(e.target===this.el.querySelector("nv-popover")){this.open=e.detail}const n=this.triggerElement===document.activeElement;const t=this.triggerElement.matches(":focus-visible");if(n&&t)this.focusFirstItem()}focusFirstItem(){const e=this.popoverElement.querySelector("nv-menuitem");if(e){requestAnimationFrame((()=>e.focus()))}}componentWillLoad(){this.triggerElement=Array.from(this.el.children).find((e=>e.getAttribute("slot")==="trigger"))}render(){return t(o,{key:"b66fd4f51c7f754d2d49265fe6175cc1a2c0b03a"},t("slot",{key:"acd3dc4ad3ed94a4bcbef735049e59bf37a8f67d",name:"trigger"}),t("nv-popover",{key:"28218c78f3fa21a9dcfd5ea13d3416eda11efc49",ref:e=>this.popoverElement=e,triggerMode:"click",triggerElement:this.triggerElement,placement:this.placement,nested:this.nested,open:this.open},this.items?t("ul",{slot:"content"},this.renderMenuItems()):t("slot",{name:"content"})))}get el(){return i(this)}};s.style=a;export{s as nv_menu};
|
|
2
|
+
//# sourceMappingURL=p-63e6aed3.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["nvMenuCss","NvMenuStyle0","NvMenu","constructor","hostRef","this","isHandlingKeyDown","open","nested","disableCloseOnSelect","placement","renderMenuItems","items","map","item","hasSubmenu","_a","submenuItems","length","h","slot","disabled","icon","shortcut","id","value","name","label","show","close","handleMenuItemSelect","event","detail","handleKeydown","key","document","activeElement","triggerElement","preventDefault","firstMenuItem","popoverElement","querySelector","requestAnimationFrame","focus","menuContent","el","menuItems","Array","from","childNodes","filter","matches","call","currentIndex","indexOf","parentElement","find","forEach","nextIndex","nextFocusable","prevIndex","prevFocusable","submenu","handleOpenChanged","target","triggerHasFocus","triggerHasFocusVisible","focusFirstItem","firstButton","componentWillLoad","children","child","getAttribute","render","Host","ref","triggerMode"],"sources":["src/components/nv-menu/nv-menu.scss?tag=nv-menu","src/components/nv-menu/nv-menu.tsx"],"sourcesContent":["@use \"../nv-menuitem/nv-menuitem\" as nv-menuitem;\n\n@mixin root-styles() {\n display: inline-block;\n position: relative;\n\n &:has([fluid]:not([fluid=\"false\"])) {\n display: block;\n }\n}\n\n@mixin content-styles() {\n padding: var(--menu-contextual-padding-y)\n var(--menu-contextual-padding-x);\n border-radius: var(--menu-contextual-radius);\n gap: var(--menu-contextual-gap-y);\n background-color: var(--components-menu-contextual-background);\n border-color: var(--components-menu-contextual-border);\n display: flex;\n flex-direction: column;\n}\n\n@mixin separator-styles() {\n display: block;\n margin: var(--menu-contextual-divider-padding-top)\n var(--menu-contextual-divider-padding-x)\n var(--menu-contextual-divider-padding-bottom)\n var(--menu-contextual-divider-padding-x) ;\n}\n\nnv-menu {\n @include root-styles();\n\n nv-popover {\n display: unset;\n\n [data-scope=popover]{\n background-color: transparent !important;\n padding: 0 !important;\n }\n }\n\n [slot=\"content\"] {\n @include content-styles();\n }\n\n nv-menu[open]:not([open=\"false\"]) {\n > nv-menuitem {\n @include nv-menuitem.focused-styles();\n }\n }\n\n hr {\n @include separator-styles();\n }\n}\n","import {\n Component,\n Host,\n h,\n Element,\n Prop,\n Listen,\n Event,\n EventEmitter,\n Method,\n} from '@stencil/core';\nimport type { Placement } from '@floating-ui/dom';\nimport { IconName } from '../nv-icon/nv-icons';\n\n/**\n * @slot trigger - The button element that toggles the menu popover\n * @slot content - The content of the menu, should be wrapped in a ul element containing nv-menuitem elements\n */\n@Component({\n tag: 'nv-menu',\n styleUrl: 'nv-menu.scss',\n shadow: false,\n})\nexport class NvMenu {\n @Element() el: HTMLNvMenuElement;\n private triggerElement!: HTMLElement;\n private popoverElement!: HTMLNvPopoverElement;\n private isHandlingKeyDown: boolean = false;\n\n /****************************************************************************/\n //#region PROPERTIES\n\n /**\n * Use this to toggle the initial visibility of the menu, by default the menu\n * is hidden.\n */\n @Prop({ reflect: true, mutable: true })\n open: boolean = false;\n\n /**\n * Use this if the menu is nested inside another menu. This will prevent the\n * parent menu from closing when the child menu is opened.\n */\n @Prop({ reflect: true })\n readonly nested: boolean = false;\n\n /**\n * Use this to disable the menu from closing automatically when a menu item is\n * selected.\n */\n @Prop({ reflect: true })\n readonly disableCloseOnSelect: boolean = false;\n\n /**\n * Decides where the menu shows up next to the button it's linked to (above,\n * below, to the sides). If there isn't enough room, it will adjust its\n * position on the axis to fit on the screen, so users can always see it.\n */\n @Prop({ reflect: true })\n readonly placement: Placement = 'bottom-end';\n\n /**\n * List of items used to automatically generate dropdown items. This\n * provides an alternative to using the slot manually.\n *\n * @example\n * items = [{\n * \"label\": \"Option 1\",\n * \"value\": \"option1\",\n * },\n * {\n * \"label\": \"Option 2\",\n * \"value\": \"option2\",\n * }]\n */\n @Prop({ reflect: true })\n readonly items?: {\n /**\n * The label of the menu item.\n */\n label: string;\n /**\n * The value of the menu item.\n */\n value?: string;\n /**\n * Whether the menu item is disabled.\n */\n disabled?: boolean;\n /**\n * Whether the menu item has a submenu.\n */\n hasSubmenu?: boolean;\n /**\n * The icon of the menu item.\n */\n icon?: string;\n /**\n * The shortcut of the menu item.\n */\n shortcut?: string;\n /**\n * Whether the menu item is nested.\n */\n nested?: boolean;\n /**\n * The submenu items of the menu item.\n */\n submenuItems?: InstanceType<typeof NvMenu>['items'];\n }[];\n\n //#endregion PROPERTIES\n /****************************************************************************/\n //#region METHODS\n\n /**\n * Opens the menu.\n */\n @Method()\n async show() {\n this.open = true;\n }\n\n /**\n * Closes the menu.\n */\n @Method()\n async close() {\n this.open = false;\n }\n\n //#endregion METHODS\n /****************************************************************************/\n //#region EVENTS\n\n /**\n * Emitted from nv-menuitem elements with the corresponding id and name when\n * selected (via click or keyboard). This event listener can be attached to\n * either the nv-menu or the nv-menuitem element.\n */\n @Event()\n menuitemSelected: EventEmitter<\n HTMLNvMenuitemElementEventMap['menuitemSelected']\n >;\n\n @Listen('menuitemSelected')\n handleMenuItemSelect(\n event: CustomEvent<HTMLNvMenuitemElementEventMap['menuitemSelected']>,\n ) {\n if (this.disableCloseOnSelect) return;\n if (event.detail.hasSubmenu) return;\n this.open = false;\n }\n\n @Listen('keydown', { passive: false })\n handleKeydown(event: KeyboardEvent) {\n // If the menu is not open, check if the trigger is focused\n // and the user presses Enter or ArrowDown, open the menu\n if (!this.open) {\n if (\n (event.key === 'Enter' ||\n event.key === 'ArrowDown' ||\n event.key === ' ') &&\n document.activeElement === this.triggerElement\n ) {\n event.preventDefault();\n this.show();\n // Then, put the focus on the first menuitem\n const firstMenuItem = this.popoverElement.querySelector('nv-menuitem');\n if (firstMenuItem) {\n requestAnimationFrame(() => (firstMenuItem as HTMLElement).focus());\n }\n }\n return;\n }\n\n if (this.isHandlingKeyDown) return;\n this.isHandlingKeyDown = true;\n\n if (\n event.key === 'ArrowDown' ||\n event.key === 'ArrowUp' ||\n event.key === 'ArrowLeft' ||\n event.key === 'ArrowRight' ||\n event.key === 'Escape'\n ) {\n event.preventDefault();\n }\n\n if (event.key === 'Escape' && !this.nested) {\n this.close();\n this.triggerElement.focus();\n this.isHandlingKeyDown = false;\n return;\n }\n\n const menuContent = this.el.querySelector('[slot=\"content\"]');\n const menuItems = (\n Array.from(menuContent.childNodes) as Array<\n HTMLNvMenuitemElement | HTMLNvMenuElement\n >\n ).filter(item => item.matches?.('nv-menuitem, nv-menu'));\n\n let currentIndex = menuItems.indexOf(\n document.activeElement as HTMLNvMenuitemElement,\n );\n if (currentIndex === -1)\n currentIndex = menuItems.indexOf(\n document.activeElement.parentElement as HTMLNvMenuitemElement,\n );\n if (\n currentIndex === -1 &&\n menuItems.find(item => item.matches('nv-menu[open]'))\n ) {\n this.isHandlingKeyDown = false;\n return;\n }\n\n if (event.key === 'ArrowDown' || event.key === 'ArrowUp') {\n menuItems.forEach(item => {\n if (item.matches('nv-menu')) (item as HTMLNvMenuElement).close();\n });\n }\n\n if (event.key === 'ArrowDown') {\n let nextIndex = (currentIndex + 1) % menuItems.length;\n while (menuItems[nextIndex].matches('nv-menuitem[disabled]')) {\n nextIndex = (nextIndex + 1) % menuItems.length;\n }\n const nextFocusable = menuItems[nextIndex];\n if (nextFocusable.matches('nv-menuitem')) {\n nextFocusable.focus();\n } else if (nextFocusable.matches('nv-menu')) {\n nextFocusable.querySelector('nv-menuitem').focus();\n }\n }\n\n if (event.key === 'ArrowUp') {\n let prevIndex = (currentIndex - 1 + menuItems.length) % menuItems.length;\n while (menuItems[prevIndex].matches('nv-menuitem[disabled]')) {\n prevIndex = (prevIndex - 1 + menuItems.length) % menuItems.length;\n }\n const prevFocusable = menuItems[prevIndex];\n if (prevFocusable.matches('nv-menuitem')) {\n prevFocusable.focus();\n } else if (prevFocusable.matches('nv-menu')) {\n prevFocusable.querySelector('nv-menuitem').focus();\n }\n }\n\n if (event.key === 'ArrowRight') {\n const submenu = menuItems[currentIndex];\n if (!submenu.matches('nv-menu')) {\n this.isHandlingKeyDown = false;\n return;\n }\n (submenu as HTMLNvMenuElement).show();\n }\n\n if (event.key === 'ArrowLeft' && this.nested) {\n if (menuItems.find(item => item.matches('nv-menu[open]'))) {\n this.isHandlingKeyDown = false;\n return;\n }\n this.close();\n this.triggerElement.focus();\n }\n\n this.isHandlingKeyDown = false;\n }\n\n @Listen('openChanged')\n handleOpenChanged(event: CustomEvent<boolean>) {\n if (event.target === this.el.querySelector('nv-popover')) {\n this.open = event.detail;\n }\n const triggerHasFocus = this.triggerElement === document.activeElement;\n const triggerHasFocusVisible =\n this.triggerElement.matches(':focus-visible');\n if (triggerHasFocus && triggerHasFocusVisible) this.focusFirstItem();\n }\n\n private focusFirstItem() {\n const firstButton = this.popoverElement.querySelector('nv-menuitem');\n if (firstButton) {\n requestAnimationFrame(() => firstButton.focus());\n }\n }\n\n //#endregion EVENTS\n /****************************************************************************/\n //#region LIFECYCLE\n\n componentWillLoad() {\n this.triggerElement = Array.from(this.el.children).find(child => {\n return child.getAttribute('slot') === 'trigger';\n }) as HTMLElement;\n }\n\n //#endregion LIFECYCLE\n /****************************************************************************/\n //#region RENDER\n\n /**\n * Generates menu items from the `items` property.\n * @param {MenuItem[]} items - The items to display in the menu.\n * @returns {HTMLElement[]} The rendered items.\n */\n private renderMenuItems = () => {\n return this.items.map(item => {\n if (item.hasSubmenu && item.submenuItems?.length > 0) {\n return (\n <nv-menu nested placement=\"right-start\" items={item.submenuItems}>\n <nv-menuitem\n slot=\"trigger\"\n hasSubmenu\n disabled={item.disabled}\n icon={item.icon as IconName}\n shortcut={item.shortcut}\n id={item.value}\n name={item.label}\n label={item.label}\n ></nv-menuitem>\n </nv-menu>\n );\n }\n return (\n <nv-menuitem\n disabled={item.disabled}\n icon={item.icon as IconName}\n shortcut={item.shortcut}\n id={item.value}\n name={item.label}\n label={item.label}\n ></nv-menuitem>\n );\n });\n };\n\n render() {\n return (\n <Host>\n <slot name=\"trigger\"></slot>\n <nv-popover\n ref={el => (this.popoverElement = el)}\n triggerMode=\"click\"\n triggerElement={this.triggerElement}\n placement={this.placement}\n nested={this.nested}\n open={this.open}\n >\n {this.items ? (\n <ul slot=\"content\">{this.renderMenuItems()}</ul>\n ) : (\n <slot name=\"content\"></slot>\n )}\n </nv-popover>\n </Host>\n );\n }\n\n //#endregion RENDER\n}\n"],"mappings":"gEAAA,MAAMA,EAAY,m2DAClB,MAAAC,EAAeD,E,MCsBFE,EAAM,MALnB,WAAAC,CAAAC,G,6DASUC,KAAAC,kBAA6B,MAUrCD,KAAAE,KAAgB,MAOPF,KAAAG,OAAkB,MAOlBH,KAAAI,qBAAgC,MAQhCJ,KAAAK,UAAuB,aAyPxBL,KAAAM,gBAAkB,IACjBN,KAAKO,MAAMC,KAAIC,I,MACpB,GAAIA,EAAKC,cAAcC,EAAAF,EAAKG,gBAAY,MAAAD,SAAA,SAAAA,EAAEE,QAAS,EAAG,CACpD,OACEC,EAAA,WAASX,OAAM,KAACE,UAAU,cAAcE,MAAOE,EAAKG,cAClDE,EAAA,eACEC,KAAK,UACLL,WAAU,KACVM,SAAUP,EAAKO,SACfC,KAAMR,EAAKQ,KACXC,SAAUT,EAAKS,SACfC,GAAIV,EAAKW,MACTC,KAAMZ,EAAKa,MACXA,MAAOb,EAAKa,Q,CAKpB,OACER,EAAA,eACEE,SAAUP,EAAKO,SACfC,KAAMR,EAAKQ,KACXC,SAAUT,EAAKS,SACfC,GAAIV,EAAKW,MACTC,KAAMZ,EAAKa,MACXA,MAAOb,EAAKa,OACC,G,CAvNrB,UAAMC,GACJvB,KAAKE,KAAO,I,CAOd,WAAMsB,GACJxB,KAAKE,KAAO,K,CAkBd,oBAAAuB,CACEC,GAEA,GAAI1B,KAAKI,qBAAsB,OAC/B,GAAIsB,EAAMC,OAAOjB,WAAY,OAC7BV,KAAKE,KAAO,K,CAId,aAAA0B,CAAcF,GAGZ,IAAK1B,KAAKE,KAAM,CACd,IACGwB,EAAMG,MAAQ,SACbH,EAAMG,MAAQ,aACdH,EAAMG,MAAQ,MAChBC,SAASC,gBAAkB/B,KAAKgC,eAChC,CACAN,EAAMO,iBACNjC,KAAKuB,OAEL,MAAMW,EAAgBlC,KAAKmC,eAAeC,cAAc,eACxD,GAAIF,EAAe,CACjBG,uBAAsB,IAAOH,EAA8BI,S,EAG/D,M,CAGF,GAAItC,KAAKC,kBAAmB,OAC5BD,KAAKC,kBAAoB,KAEzB,GACEyB,EAAMG,MAAQ,aACdH,EAAMG,MAAQ,WACdH,EAAMG,MAAQ,aACdH,EAAMG,MAAQ,cACdH,EAAMG,MAAQ,SACd,CACAH,EAAMO,gB,CAGR,GAAIP,EAAMG,MAAQ,WAAa7B,KAAKG,OAAQ,CAC1CH,KAAKwB,QACLxB,KAAKgC,eAAeM,QACpBtC,KAAKC,kBAAoB,MACzB,M,CAGF,MAAMsC,EAAcvC,KAAKwC,GAAGJ,cAAc,oBAC1C,MAAMK,EACJC,MAAMC,KAAKJ,EAAYK,YAGvBC,QAAOpC,IAAI,IAAAE,EAAI,OAAAA,EAAAF,EAAKqC,WAAO,MAAAnC,SAAA,SAAAA,EAAAoC,KAAAtC,EAAG,uBAAuB,IAEvD,IAAIuC,EAAeP,EAAUQ,QAC3BnB,SAASC,eAEX,GAAIiB,KAAkB,EACpBA,EAAeP,EAAUQ,QACvBnB,SAASC,cAAcmB,eAE3B,GACEF,KAAkB,GAClBP,EAAUU,MAAK1C,GAAQA,EAAKqC,QAAQ,mBACpC,CACA9C,KAAKC,kBAAoB,MACzB,M,CAGF,GAAIyB,EAAMG,MAAQ,aAAeH,EAAMG,MAAQ,UAAW,CACxDY,EAAUW,SAAQ3C,IAChB,GAAIA,EAAKqC,QAAQ,WAAarC,EAA2Be,OAAO,G,CAIpE,GAAIE,EAAMG,MAAQ,YAAa,CAC7B,IAAIwB,GAAaL,EAAe,GAAKP,EAAU5B,OAC/C,MAAO4B,EAAUY,GAAWP,QAAQ,yBAA0B,CAC5DO,GAAaA,EAAY,GAAKZ,EAAU5B,M,CAE1C,MAAMyC,EAAgBb,EAAUY,GAChC,GAAIC,EAAcR,QAAQ,eAAgB,CACxCQ,EAAchB,O,MACT,GAAIgB,EAAcR,QAAQ,WAAY,CAC3CQ,EAAclB,cAAc,eAAeE,O,EAI/C,GAAIZ,EAAMG,MAAQ,UAAW,CAC3B,IAAI0B,GAAaP,EAAe,EAAIP,EAAU5B,QAAU4B,EAAU5B,OAClE,MAAO4B,EAAUc,GAAWT,QAAQ,yBAA0B,CAC5DS,GAAaA,EAAY,EAAId,EAAU5B,QAAU4B,EAAU5B,M,CAE7D,MAAM2C,EAAgBf,EAAUc,GAChC,GAAIC,EAAcV,QAAQ,eAAgB,CACxCU,EAAclB,O,MACT,GAAIkB,EAAcV,QAAQ,WAAY,CAC3CU,EAAcpB,cAAc,eAAeE,O,EAI/C,GAAIZ,EAAMG,MAAQ,aAAc,CAC9B,MAAM4B,EAAUhB,EAAUO,GAC1B,IAAKS,EAAQX,QAAQ,WAAY,CAC/B9C,KAAKC,kBAAoB,MACzB,M,CAEDwD,EAA8BlC,M,CAGjC,GAAIG,EAAMG,MAAQ,aAAe7B,KAAKG,OAAQ,CAC5C,GAAIsC,EAAUU,MAAK1C,GAAQA,EAAKqC,QAAQ,mBAAmB,CACzD9C,KAAKC,kBAAoB,MACzB,M,CAEFD,KAAKwB,QACLxB,KAAKgC,eAAeM,O,CAGtBtC,KAAKC,kBAAoB,K,CAI3B,iBAAAyD,CAAkBhC,GAChB,GAAIA,EAAMiC,SAAW3D,KAAKwC,GAAGJ,cAAc,cAAe,CACxDpC,KAAKE,KAAOwB,EAAMC,M,CAEpB,MAAMiC,EAAkB5D,KAAKgC,iBAAmBF,SAASC,cACzD,MAAM8B,EACJ7D,KAAKgC,eAAec,QAAQ,kBAC9B,GAAIc,GAAmBC,EAAwB7D,KAAK8D,gB,CAG9C,cAAAA,GACN,MAAMC,EAAc/D,KAAKmC,eAAeC,cAAc,eACtD,GAAI2B,EAAa,CACf1B,uBAAsB,IAAM0B,EAAYzB,S,EAQ5C,iBAAA0B,GACEhE,KAAKgC,eAAiBU,MAAMC,KAAK3C,KAAKwC,GAAGyB,UAAUd,MAAKe,GAC/CA,EAAMC,aAAa,UAAY,W,CA4C1C,MAAAC,GACE,OACEtD,EAACuD,EAAI,CAAAxC,IAAA,4CACHf,EAAA,QAAAe,IAAA,2CAAMR,KAAK,YACXP,EAAA,cAAAe,IAAA,2CACEyC,IAAK9B,GAAOxC,KAAKmC,eAAiBK,EAClC+B,YAAY,QACZvC,eAAgBhC,KAAKgC,eACrB3B,UAAWL,KAAKK,UAChBF,OAAQH,KAAKG,OACbD,KAAMF,KAAKE,MAEVF,KAAKO,MACJO,EAAA,MAAIC,KAAK,WAAWf,KAAKM,mBAEzBQ,EAAA,QAAMO,KAAK,a","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e,c as t,h as o,a as i,g as n}from"./p-ab002252.js";const d="nv-fielddropdownitem{display:flex;gap:var(--spacing-2);flex-wrap:wrap;align-items:center;width:100%;padding:var(--list-dropdown-item-padding-y) var(--list-dropdown-item-padding-x);font-weight:var(--menu-contextual-item-font-weight);font-size:var(--list-dropdown-font-size);line-height:var(--list-dropdown-line-height);color:var(--components-list-dropdown-item-label-default);border-radius:var(--list-dropdown-item-radius);transition:background-color 150ms ease-out, color 150ms ease-out;cursor:pointer}nv-fielddropdownitem:hover,nv-fielddropdownitem:focus,nv-fielddropdownitem:focus-within{background-color:var(--components-list-dropdown-item-background-hover);color:var(--components-menu-contextual-item-content-hover)}nv-fielddropdownitem[disabled]:not([disabled=false]){cursor:not-allowed;background-color:unset;color:var(--components-menu-contextual-item-content-disabled)}nv-fielddropdownitem .text-wrapper{display:flex;flex-grow:1;align-items:center;justify-content:space-between}nv-fielddropdownitem [data-scope=text]{flex-grow:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}nv-fielddropdownitem nv-icon[data-scope=selected]{color:var(--components-list-dropdown-item-label-default);align-self:center;margin-left:auto}";const a=d;const s=class{constructor(o){e(this,o);this.dropdownItemSelected=t(this,"dropdownItemSelected",7);this.composed=false;this.disabled=false;this.selected=false;this.handleSelected=()=>{if(this.disabled)return;this.dropdownItemSelected.emit({label:this.label,value:this.value})}}handleKeyDown(e){var t,o;if(e.target!==this.el)return;if(e.key==="Enter"||e.key===" "){e.preventDefault();this.handleSelected();(o=(t=this.el.closest("nv-fielddropdown"))===null||t===void 0?void 0:t.querySelector("[data-scope='focusable']"))===null||o===void 0?void 0:o.focus()}}componentWillLoad(){var e;this.composed=Boolean(this.el.children.length);if(!this.value){const t=(e=this.label)!==null&&e!==void 0?e:this.el.textContent;this.value=t.replace(/\W+/g,"")}}render(){return o(i,{key:"
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as e,c as t,h as o,a as i,g as n}from"./p-ab002252.js";const d="nv-fielddropdownitem{display:flex;gap:var(--spacing-2);flex-wrap:wrap;align-items:center;width:100%;padding:var(--list-dropdown-item-padding-y) var(--list-dropdown-item-padding-x);font-weight:var(--menu-contextual-item-font-weight);font-size:var(--list-dropdown-font-size);line-height:var(--list-dropdown-line-height);color:var(--components-list-dropdown-item-label-default);border-radius:var(--list-dropdown-item-radius);transition:background-color 150ms ease-out, color 150ms ease-out;cursor:pointer}nv-fielddropdownitem:hover,nv-fielddropdownitem:focus,nv-fielddropdownitem:focus-within{background-color:var(--components-list-dropdown-item-background-hover);color:var(--components-menu-contextual-item-content-hover)}nv-fielddropdownitem[disabled]:not([disabled=false]){cursor:not-allowed;background-color:unset;color:var(--components-menu-contextual-item-content-disabled)}nv-fielddropdownitem .text-wrapper{display:flex;flex-grow:1;align-items:center;justify-content:space-between}nv-fielddropdownitem [data-scope=text]{flex-grow:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}nv-fielddropdownitem nv-icon[data-scope=selected]{color:var(--components-list-dropdown-item-label-default);align-self:center;margin-left:auto}";const a=d;const s=class{constructor(o){e(this,o);this.dropdownItemSelected=t(this,"dropdownItemSelected",7);this.composed=false;this.disabled=false;this.selected=false;this.handleSelected=()=>{if(this.disabled)return;this.dropdownItemSelected.emit({label:this.label,value:this.value})}}handleKeyDown(e){var t,o;if(e.target!==this.el)return;if(e.key==="Enter"||e.key===" "){e.preventDefault();this.handleSelected();(o=(t=this.el.closest("nv-fielddropdown"))===null||t===void 0?void 0:t.querySelector("[data-scope='focusable']"))===null||o===void 0?void 0:o.focus()}}componentWillLoad(){var e;this.composed=Boolean(this.el.children.length);if(!this.value){const t=(e=this.label)!==null&&e!==void 0?e:this.el.textContent;this.value=t.replace(/\W+/g,"")}}render(){return o(i,{key:"86699901e52c35392ae5e60013f542427973a626",role:"menuitem",tabindex:"-1",onClick:this.handleSelected},o("slot",{key:"f2d893f0692821fc0e918da9283eb174c3429173"}),!this.composed&&o("div",{key:"5e62842ee3b0e79333f99a3ec8d92dd843ebd96e",class:"text-wrapper"},o("span",{key:"baa00ac59b5d85d912f34fc16fbf82d87af849e2","data-scope":"text"},this.label)),this.selected&&o("nv-icon",{key:"f9a5082e4cee6b68531809f9861e3da83b3001d6",name:"check","aria-hidden":"true","data-scope":"selected"}))}get el(){return n(this)}};s.style=a;export{s as nv_fielddropdownitem};
|
|
2
|
+
//# sourceMappingURL=p-6b348684.entry.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as t,h as a,a as s}from"./p-ab002252.js";import{c as n}from"./p-8a1a6e56.js";const c="nv-stack{display:flex;align-items:center;justify-content:flex-start;flex-direction:row}nv-stack nv-col{display:flex}nv-stack:not(nv-row){flex-wrap:nowrap}nv-stack>.nv-stack-item-flex{flex-shrink:1;flex-grow:1}nv-stack>.nv-stack-item-lead{margin-right:auto}nv-stack>.nv-stack-item-lead+*{margin-left:0}nv-stack>.nv-stack-item-center{margin-right:auto;margin-left:auto}nv-stack>.nv-stack-item-tail{margin-left:auto}nv-stack>.nv-stack-nowrap{white-space:nowrap}nv-stack.nv-stack-vertical{align-items:stretch;flex-direction:column}nv-stack.nv-stack-vertical>.nv-stack-item-lead{margin-right:0;margin-bottom:auto}nv-stack.nv-stack-vertical>.nv-stack-item-lead+*{margin-top:0}nv-stack.nv-stack-vertical>.nv-stack-item-tail{margin-left:0;margin-top:auto}nv-stack.nv-stack-vertical>.nv-stack-item-center{margin:auto 0}nv-stack.nv-stack-flex>*{flex-shrink:1;flex-grow:1}nv-stack.nv-stack-fill>*{height:100%}nv-stack.nv-stack-fill.nv-stack-vertical>*{height:auto;width:100%}";const
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as t,h as a,a as s}from"./p-ab002252.js";import{c as n}from"./p-8a1a6e56.js";const c="nv-stack{display:flex;align-items:center;justify-content:flex-start;flex-direction:row}nv-stack nv-col{display:flex}nv-stack:not(nv-row){flex-wrap:nowrap}nv-stack>.nv-stack-item-flex{flex-shrink:1;flex-grow:1}nv-stack>.nv-stack-item-lead{margin-right:auto}nv-stack>.nv-stack-item-lead+*{margin-left:0}nv-stack>.nv-stack-item-center{margin-right:auto;margin-left:auto}nv-stack>.nv-stack-item-tail{margin-left:auto}nv-stack>.nv-stack-nowrap{white-space:nowrap}nv-stack.nv-stack-vertical{align-items:stretch;flex-direction:column}nv-stack.nv-stack-vertical>.nv-stack-item-lead{margin-right:0;margin-bottom:auto}nv-stack.nv-stack-vertical>.nv-stack-item-lead+*{margin-top:0}nv-stack.nv-stack-vertical>.nv-stack-item-tail{margin-left:0;margin-top:auto}nv-stack.nv-stack-vertical>.nv-stack-item-center{margin:auto 0}nv-stack.nv-stack-flex>*{flex-shrink:1;flex-grow:1}nv-stack.nv-stack-fill>*{height:100%}nv-stack.nv-stack-fill.nv-stack-vertical>*{height:auto;width:100%}";const i=c;const e=class{constructor(a){t(this,a);this.gutter=2}render(){return a(s,{key:"02e184fbc9e9ddd4b02b107baf093047fa3697b0",class:n(this.fill&&"nv-stack-fill",this.flex&&"nv-stack-flex",this.full&&"w-full",this.gutter&&!this.vertical&&`gap-x-${this.gutter}`,this.gutter&&this.vertical&&`gap-y-${this.gutter}`,this.vertical&&"nv-stack-vertical")},a("slot",{key:"1a501fcc419f97f2714be822120072b49590e5ea"}))}};e.style=i;export{e as nv_stack};
|
|
2
|
+
//# sourceMappingURL=p-6ff228da.entry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["nvStackCss","NvStackStyle0","NvStack","constructor","hostRef","this","gutter","render","h","Host","key","class","clsx","fill","flex","full","vertical"],"sources":["src/components/nv-stack/nv-stack.scss?tag=nv-stack","src/components/nv-stack/nv-stack.tsx"],"sourcesContent":["nv-stack {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n flex-direction: row;\n\n nv-col {\n display: flex;\n }\n\n &:not(nv-row) {\n flex-wrap: nowrap;\n }\n\n > .nv-stack-item-flex {\n flex-shrink: 1;\n flex-grow: 1;\n }\n\n > .nv-stack-item-lead {\n margin-right: auto;\n }\n\n > .nv-stack-item-lead + * {\n margin-left: 0;\n }\n\n > .nv-stack-item-center {\n margin-right: auto;\n margin-left: auto;\n }\n\n > .nv-stack-item-tail {\n margin-left: auto;\n }\n\n > .nv-stack-nowrap {\n white-space: nowrap;\n }\n\n // Vertical\n &.nv-stack-vertical {\n align-items: stretch;\n flex-direction: column;\n\n > .nv-stack-item-lead {\n margin-right: 0;\n margin-bottom: auto;\n }\n\n > .nv-stack-item-lead + * {\n margin-top: 0;\n }\n\n > .nv-stack-item-tail {\n margin-left: 0;\n margin-top: auto;\n }\n\n > .nv-stack-item-center {\n margin: auto 0;\n }\n }\n\n &.nv-stack-flex {\n > * {\n flex-shrink: 1;\n flex-grow: 1;\n }\n }\n\n &.nv-stack-fill {\n > * {\n height: 100%;\n }\n\n &.nv-stack-vertical {\n > * {\n height: auto;\n width: 100%;\n }\n }\n }\n}","import { Component, Host, Prop, h } from '@stencil/core';\nimport clsx from 'clsx';\n\n/**\n * @deprecated Please use tailwind classes instead\n * @slot default - Content of the stack\n */\n@Component({\n tag: 'nv-stack',\n styleUrl: './nv-stack.scss',\n shadow: false,\n})\nexport class NvStack {\n /****************************************************************************/\n //#region PROPERTIES\n\n /**\n * Gutter refers to the space that exists between children components inside\n * the stack container.\n */\n @Prop({ reflect: true })\n readonly gutter: number = 2;\n\n /**\n * Fill will force the children to fill the stack depending of the direction\n * of the stack. In horizontal position, the children take the height of the\n * stack. In vertical position, the children take the width of the stack.\n */\n @Prop({ reflect: true })\n readonly fill: boolean;\n\n /**\n * Flex will force the children to share the stack between the children\n * depending of the direction of the stack. In horizontal position, the\n * children width will share the width of the stack. In vertical position,\n * the children height will share the height of the stack.\n */\n @Prop({ reflect: true })\n readonly flex: boolean;\n\n /**\n * Full set the width of the stack to 100%.\n * (same effect as WFull props)\n */\n @Prop({ reflect: true })\n readonly full: boolean;\n\n /**\n * Display the element of the stack vertically.\n */\n @Prop({ reflect: true })\n readonly vertical: boolean;\n\n //#endregion PROPERTIES\n /****************************************************************************/\n //#region RENDER\n\n render() {\n return (\n <Host\n class={clsx(\n this.fill && 'nv-stack-fill',\n this.flex && 'nv-stack-flex',\n this.full && 'w-full',\n this.gutter && !this.vertical && `
|
|
1
|
+
{"version":3,"names":["nvStackCss","NvStackStyle0","NvStack","constructor","hostRef","this","gutter","render","h","Host","key","class","clsx","fill","flex","full","vertical"],"sources":["src/components/nv-stack/nv-stack.scss?tag=nv-stack","src/components/nv-stack/nv-stack.tsx"],"sourcesContent":["nv-stack {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n flex-direction: row;\n\n nv-col {\n display: flex;\n }\n\n &:not(nv-row) {\n flex-wrap: nowrap;\n }\n\n > .nv-stack-item-flex {\n flex-shrink: 1;\n flex-grow: 1;\n }\n\n > .nv-stack-item-lead {\n margin-right: auto;\n }\n\n > .nv-stack-item-lead + * {\n margin-left: 0;\n }\n\n > .nv-stack-item-center {\n margin-right: auto;\n margin-left: auto;\n }\n\n > .nv-stack-item-tail {\n margin-left: auto;\n }\n\n > .nv-stack-nowrap {\n white-space: nowrap;\n }\n\n // Vertical\n &.nv-stack-vertical {\n align-items: stretch;\n flex-direction: column;\n\n > .nv-stack-item-lead {\n margin-right: 0;\n margin-bottom: auto;\n }\n\n > .nv-stack-item-lead + * {\n margin-top: 0;\n }\n\n > .nv-stack-item-tail {\n margin-left: 0;\n margin-top: auto;\n }\n\n > .nv-stack-item-center {\n margin: auto 0;\n }\n }\n\n &.nv-stack-flex {\n > * {\n flex-shrink: 1;\n flex-grow: 1;\n }\n }\n\n &.nv-stack-fill {\n > * {\n height: 100%;\n }\n\n &.nv-stack-vertical {\n > * {\n height: auto;\n width: 100%;\n }\n }\n }\n}","import { Component, Host, Prop, h } from '@stencil/core';\nimport clsx from 'clsx';\n\n/**\n * @deprecated Please use tailwind classes instead\n * @slot default - Content of the stack\n */\n@Component({\n tag: 'nv-stack',\n styleUrl: './nv-stack.scss',\n shadow: false,\n})\nexport class NvStack {\n /****************************************************************************/\n //#region PROPERTIES\n\n /**\n * Gutter refers to the space that exists between children components inside\n * the stack container.\n */\n @Prop({ reflect: true })\n readonly gutter: number = 2;\n\n /**\n * Fill will force the children to fill the stack depending of the direction\n * of the stack. In horizontal position, the children take the height of the\n * stack. In vertical position, the children take the width of the stack.\n */\n @Prop({ reflect: true })\n readonly fill: boolean;\n\n /**\n * Flex will force the children to share the stack between the children\n * depending of the direction of the stack. In horizontal position, the\n * children width will share the width of the stack. In vertical position,\n * the children height will share the height of the stack.\n */\n @Prop({ reflect: true })\n readonly flex: boolean;\n\n /**\n * Full set the width of the stack to 100%.\n * (same effect as WFull props)\n */\n @Prop({ reflect: true })\n readonly full: boolean;\n\n /**\n * Display the element of the stack vertically.\n */\n @Prop({ reflect: true })\n readonly vertical: boolean;\n\n //#endregion PROPERTIES\n /****************************************************************************/\n //#region RENDER\n\n render() {\n return (\n <Host\n class={clsx(\n this.fill && 'nv-stack-fill',\n this.flex && 'nv-stack-flex',\n this.full && 'w-full',\n this.gutter && !this.vertical && `gap-x-${this.gutter}`,\n this.gutter && this.vertical && `gap-y-${this.gutter}`,\n this.vertical && 'nv-stack-vertical',\n )}\n >\n <slot></slot>\n </Host>\n );\n }\n\n //#endregion RENDER\n}\n"],"mappings":"sFAAA,MAAMA,EAAa,u8BACnB,MAAAC,EAAeD,E,MCWFE,EAAO,MALpB,WAAAC,CAAAC,G,UAcWC,KAAAC,OAAiB,C,CAoC1B,MAAAC,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,2CACHC,MAAOC,EACLP,KAAKQ,MAAQ,gBACbR,KAAKS,MAAQ,gBACbT,KAAKU,MAAQ,SACbV,KAAKC,SAAWD,KAAKW,UAAY,SAASX,KAAKC,SAC/CD,KAAKC,QAAUD,KAAKW,UAAY,SAASX,KAAKC,SAC9CD,KAAKW,UAAY,sBAGnBR,EAAA,QAAAE,IAAA,6C","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{d as t,f as n,r as e,c as o,h as s,a as i,g as r}from"./p-ab002252.js";import{u as c}from"./p-1daca48a.js";import{u as a}from"./p-c1765831.js";import{a as l,r as f}from"./p-d429a343.js";const u=["top","right","bottom","left"];const d=["start","end"];const h=u.reduce(((t,n)=>t.concat(n,n+"-"+d[0],n+"-"+d[1])),[]);const p=Math.min;const m=Math.max;const y=Math.round;const v=t=>({x:t,y:t});const g={left:"right",right:"left",bottom:"top",top:"bottom"};const w={start:"end",end:"start"};function b(t,n,e){return m(t,p(n,e))}function x(t,n){return typeof t==="function"?t(n):t}function k(t){return t.split("-")[0]}function A(t){return t.split("-")[1]}function T(t){return t==="x"?"y":"x"}function O(t){return t==="y"?"height":"width"}function P(t){return["top","bottom"].includes(k(t))?"y":"x"}function C(t){return T(P(t))}function D(t,n,e){if(e===void 0){e=false}const o=A(t);const s=C(t);const i=O(s);let r=s==="x"?o===(e?"end":"start")?"right":"left":o==="start"?"bottom":"top";if(n.reference[i]>n.floating[i]){r=M(r)}return[r,M(r)]}function S(t){const n=M(t);return[R(t),n,R(n)]}function R(t){return t.replace(/start|end/g,(t=>w[t]))}function j(t,n,e){const o=["left","right"];const s=["right","left"];const i=["top","bottom"];const r=["bottom","top"];switch(t){case"top":case"bottom":if(e)return n?s:o;return n?o:s;case"left":case"right":return n?i:r;default:return[]}}function L(t,n,e,o){const s=A(t);let i=j(k(t),e==="start",o);if(s){i=i.map((t=>t+"-"+s));if(n){i=i.concat(i.map(R))}}return i}function M(t){return t.replace(/left|right|bottom|top/g,(t=>g[t]))}function B(t){return{top:0,right:0,bottom:0,left:0,...t}}function F(t){return typeof t!=="number"?B(t):{top:t,right:t,bottom:t,left:t}}function E(t){const{x:n,y:e,width:o,height:s}=t;return{width:o,height:s,top:e,left:n,right:n+o,bottom:e+s,x:n,y:e}}function H(t,n,e){let{reference:o,floating:s}=t;const i=P(n);const r=C(n);const c=O(r);const a=k(n);const l=i==="y";const f=o.x+o.width/2-s.width/2;const u=o.y+o.height/2-s.height/2;const d=o[c]/2-s[c]/2;let h;switch(a){case"top":h={x:f,y:o.y-s.height};break;case"bottom":h={x:f,y:o.y+o.height};break;case"right":h={x:o.x+o.width,y:u};break;case"left":h={x:o.x-s.width,y:u};break;default:h={x:o.x,y:o.y}}switch(A(n)){case"start":h[r]-=d*(e&&l?-1:1);break;case"end":h[r]+=d*(e&&l?-1:1);break}return h}const $=async(t,n,e)=>{const{placement:o="bottom",strategy:s="absolute",middleware:i=[],platform:r}=e;const c=i.filter(Boolean);const a=await(r.isRTL==null?void 0:r.isRTL(n));let l=await r.getElementRects({reference:t,floating:n,strategy:s});let{x:f,y:u}=H(l,o,a);let d=o;let h={};let p=0;for(let e=0;e<c.length;e++){const{name:i,fn:m}=c[e];const{x:y,y:v,data:g,reset:w}=await m({x:f,y:u,initialPlacement:o,placement:d,strategy:s,middlewareData:h,rects:l,platform:r,elements:{reference:t,floating:n}});f=y!=null?y:f;u=v!=null?v:u;h={...h,[i]:{...h[i],...g}};if(w&&p<=50){p++;if(typeof w==="object"){if(w.placement){d=w.placement}if(w.rects){l=w.rects===true?await r.getElementRects({reference:t,floating:n,strategy:s}):w.rects}({x:f,y:u}=H(l,d,a))}e=-1}}return{x:f,y:u,placement:d,strategy:s,middlewareData:h}};async function W(t,n){var e;if(n===void 0){n={}}const{x:o,y:s,platform:i,rects:r,elements:c,strategy:a}=t;const{boundary:l="clippingAncestors",rootBoundary:f="viewport",elementContext:u="floating",altBoundary:d=false,padding:h=0}=x(n,t);const p=F(h);const m=u==="floating"?"reference":"floating";const y=c[d?m:u];const v=E(await i.getClippingRect({element:((e=await(i.isElement==null?void 0:i.isElement(y)))!=null?e:true)?y:y.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(c.floating)),boundary:l,rootBoundary:f,strategy:a}));const g=u==="floating"?{x:o,y:s,width:r.floating.width,height:r.floating.height}:r.reference;const w=await(i.getOffsetParent==null?void 0:i.getOffsetParent(c.floating));const b=await(i.isElement==null?void 0:i.isElement(w))?await(i.getScale==null?void 0:i.getScale(w))||{x:1,y:1}:{x:1,y:1};const k=E(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:c,rect:g,offsetParent:w,strategy:a}):g);return{top:(v.top-k.top+p.top)/b.y,bottom:(k.bottom-v.bottom+p.bottom)/b.y,left:(v.left-k.left+p.left)/b.x,right:(k.right-v.right+p.right)/b.x}}const z=t=>({name:"arrow",options:t,async fn(n){const{x:e,y:o,placement:s,rects:i,platform:r,elements:c,middlewareData:a}=n;const{element:l,padding:f=0}=x(t,n)||{};if(l==null){return{}}const u=F(f);const d={x:e,y:o};const h=C(s);const m=O(h);const y=await r.getDimensions(l);const v=h==="y";const g=v?"top":"left";const w=v?"bottom":"right";const k=v?"clientHeight":"clientWidth";const T=i.reference[m]+i.reference[h]-d[h]-i.floating[m];const P=d[h]-i.reference[h];const D=await(r.getOffsetParent==null?void 0:r.getOffsetParent(l));let S=D?D[k]:0;if(!S||!await(r.isElement==null?void 0:r.isElement(D))){S=c.floating[k]||i.floating[m]}const R=T/2-P/2;const j=S/2-y[m]/2-1;const L=p(u[g],j);const M=p(u[w],j);const B=L;const E=S-y[m]-M;const H=S/2-y[m]/2+R;const $=b(B,H,E);const W=!a.arrow&&A(s)!=null&&H!==$&&i.reference[m]/2-(H<B?L:M)-y[m]/2<0;const z=W?H<B?H-B:H-E:0;return{[h]:d[h]+z,data:{[h]:$,centerOffset:H-$-z,...W&&{alignmentOffset:z}},reset:W}}});function N(t,n,e){const o=t?[...e.filter((n=>A(n)===t)),...e.filter((n=>A(n)!==t))]:e.filter((t=>k(t)===t));return o.filter((e=>{if(t){return A(e)===t||(n?R(e)!==e:false)}return true}))}const I=function(t){if(t===void 0){t={}}return{name:"autoPlacement",options:t,async fn(n){var e,o,s;const{rects:i,middlewareData:r,placement:c,platform:a,elements:l}=n;const{crossAxis:f=false,alignment:u,allowedPlacements:d=h,autoAlignment:p=true,...m}=x(t,n);const y=u!==undefined||d===h?N(u||null,p,d):d;const v=await W(n,m);const g=((e=r.autoPlacement)==null?void 0:e.index)||0;const w=y[g];if(w==null){return{}}const b=D(w,i,await(a.isRTL==null?void 0:a.isRTL(l.floating)));if(c!==w){return{reset:{placement:y[0]}}}const T=[v[k(w)],v[b[0]],v[b[1]]];const O=[...((o=r.autoPlacement)==null?void 0:o.overflows)||[],{placement:w,overflows:T}];const P=y[g+1];if(P){return{data:{index:g+1,overflows:O},reset:{placement:P}}}const C=O.map((t=>{const n=A(t.placement);return[t.placement,n&&f?t.overflows.slice(0,2).reduce(((t,n)=>t+n),0):t.overflows[0],t.overflows]})).sort(((t,n)=>t[1]-n[1]));const S=C.filter((t=>t[2].slice(0,A(t[0])?2:3).every((t=>t<=0))));const R=((s=S[0])==null?void 0:s[0])||C[0][0];if(R!==c){return{data:{index:g+1,overflows:O},reset:{placement:R}}}return{}}}};const U=function(t){if(t===void 0){t={}}return{name:"flip",options:t,async fn(n){var e,o;const{placement:s,middlewareData:i,rects:r,initialPlacement:c,platform:a,elements:l}=n;const{mainAxis:f=true,crossAxis:u=true,fallbackPlacements:d,fallbackStrategy:h="bestFit",fallbackAxisSideDirection:p="none",flipAlignment:m=true,...y}=x(t,n);if((e=i.arrow)!=null&&e.alignmentOffset){return{}}const v=k(s);const g=k(c)===c;const w=await(a.isRTL==null?void 0:a.isRTL(l.floating));const b=d||(g||!m?[M(c)]:S(c));if(!d&&p!=="none"){b.push(...L(c,m,p,w))}const A=[c,...b];const T=await W(n,y);const O=[];let P=((o=i.flip)==null?void 0:o.overflows)||[];if(f){O.push(T[v])}if(u){const t=D(s,r,w);O.push(T[t[0]],T[t[1]])}P=[...P,{placement:s,overflows:O}];if(!O.every((t=>t<=0))){var C,R;const t=(((C=i.flip)==null?void 0:C.index)||0)+1;const n=A[t];if(n){return{data:{index:t,overflows:P},reset:{placement:n}}}let e=(R=P.filter((t=>t.overflows[0]<=0)).sort(((t,n)=>t.overflows[1]-n.overflows[1]))[0])==null?void 0:R.placement;if(!e){switch(h){case"bestFit":{var j;const t=(j=P.map((t=>[t.placement,t.overflows.filter((t=>t>0)).reduce(((t,n)=>t+n),0)])).sort(((t,n)=>t[1]-n[1]))[0])==null?void 0:j[0];if(t){e=t}break}case"initialPlacement":e=c;break}}if(s!==e){return{reset:{placement:e}}}}return{}}}};function _(t,n){return{top:t.top-n.height,right:t.right-n.width,bottom:t.bottom-n.height,left:t.left-n.width}}function G(t){return u.some((n=>t[n]>=0))}const K=function(t){if(t===void 0){t={}}return{name:"hide",options:t,async fn(n){const{rects:e}=n;const{strategy:o="referenceHidden",...s}=x(t,n);switch(o){case"referenceHidden":{const t=await W(n,{...s,elementContext:"reference"});const o=_(t,e.reference);return{data:{referenceHiddenOffsets:o,referenceHidden:G(o)}}}case"escaped":{const t=await W(n,{...s,altBoundary:true});const o=_(t,e.floating);return{data:{escapedOffsets:o,escaped:G(o)}}}default:{return{}}}}}};function V(t){const n=p(...t.map((t=>t.left)));const e=p(...t.map((t=>t.top)));const o=m(...t.map((t=>t.right)));const s=m(...t.map((t=>t.bottom)));return{x:n,y:e,width:o-n,height:s-e}}function X(t){const n=t.slice().sort(((t,n)=>t.y-n.y));const e=[];let o=null;for(let t=0;t<n.length;t++){const s=n[t];if(!o||s.y-o.y>o.height/2){e.push([s])}else{e[e.length-1].push(s)}o=s}return e.map((t=>E(V(t))))}const Y=function(t){if(t===void 0){t={}}return{name:"inline",options:t,async fn(n){const{placement:e,elements:o,rects:s,platform:i,strategy:r}=n;const{padding:c=2,x:a,y:l}=x(t,n);const f=Array.from(await(i.getClientRects==null?void 0:i.getClientRects(o.reference))||[]);const u=X(f);const d=E(V(f));const h=F(c);function y(){if(u.length===2&&u[0].left>u[1].right&&a!=null&&l!=null){return u.find((t=>a>t.left-h.left&&a<t.right+h.right&&l>t.top-h.top&&l<t.bottom+h.bottom))||d}if(u.length>=2){if(P(e)==="y"){const t=u[0];const n=u[u.length-1];const o=k(e)==="top";const s=t.top;const i=n.bottom;const r=o?t.left:n.left;const c=o?t.right:n.right;const a=c-r;const l=i-s;return{top:s,bottom:i,left:r,right:c,width:a,height:l,x:r,y:s}}const t=k(e)==="left";const n=m(...u.map((t=>t.right)));const o=p(...u.map((t=>t.left)));const s=u.filter((e=>t?e.left===o:e.right===n));const i=s[0].top;const r=s[s.length-1].bottom;const c=o;const a=n;const l=a-c;const f=r-i;return{top:i,bottom:r,left:c,right:a,width:l,height:f,x:c,y:i}}return d}const v=await i.getElementRects({reference:{getBoundingClientRect:y},floating:o.floating,strategy:r});if(s.reference.x!==v.reference.x||s.reference.y!==v.reference.y||s.reference.width!==v.reference.width||s.reference.height!==v.reference.height){return{reset:{rects:v}}}return{}}}};async function q(t,n){const{placement:e,platform:o,elements:s}=t;const i=await(o.isRTL==null?void 0:o.isRTL(s.floating));const r=k(e);const c=A(e);const a=P(e)==="y";const l=["left","top"].includes(r)?-1:1;const f=i&&a?-1:1;const u=x(n,t);let{mainAxis:d,crossAxis:h,alignmentAxis:p}=typeof u==="number"?{mainAxis:u,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...u};if(c&&typeof p==="number"){h=c==="end"?p*-1:p}return a?{x:h*f,y:d*l}:{x:d*l,y:h*f}}const J=function(t){if(t===void 0){t=0}return{name:"offset",options:t,async fn(n){var e,o;const{x:s,y:i,placement:r,middlewareData:c}=n;const a=await q(n,t);if(r===((e=c.offset)==null?void 0:e.placement)&&(o=c.arrow)!=null&&o.alignmentOffset){return{}}return{x:s+a.x,y:i+a.y,data:{...a,placement:r}}}}};const Q=function(t){if(t===void 0){t={}}return{name:"shift",options:t,async fn(n){const{x:e,y:o,placement:s}=n;const{mainAxis:i=true,crossAxis:r=false,limiter:c={fn:t=>{let{x:n,y:e}=t;return{x:n,y:e}}},...a}=x(t,n);const l={x:e,y:o};const f=await W(n,a);const u=P(k(s));const d=T(u);let h=l[d];let p=l[u];if(i){const t=d==="y"?"top":"left";const n=d==="y"?"bottom":"right";const e=h+f[t];const o=h-f[n];h=b(e,h,o)}if(r){const t=u==="y"?"top":"left";const n=u==="y"?"bottom":"right";const e=p+f[t];const o=p-f[n];p=b(e,p,o)}const m=c.fn({...n,[d]:h,[u]:p});return{...m,data:{x:m.x-e,y:m.y-o}}}}};const Z=function(t){if(t===void 0){t={}}return{options:t,fn(n){const{x:e,y:o,placement:s,rects:i,middlewareData:r}=n;const{offset:c=0,mainAxis:a=true,crossAxis:l=true}=x(t,n);const f={x:e,y:o};const u=P(s);const d=T(u);let h=f[d];let p=f[u];const m=x(c,n);const y=typeof m==="number"?{mainAxis:m,crossAxis:0}:{mainAxis:0,crossAxis:0,...m};if(a){const t=d==="y"?"height":"width";const n=i.reference[d]-i.floating[t]+y.mainAxis;const e=i.reference[d]+i.reference[t]-y.mainAxis;if(h<n){h=n}else if(h>e){h=e}}if(l){var v,g;const t=d==="y"?"width":"height";const n=["top","left"].includes(k(s));const e=i.reference[u]-i.floating[t]+(n?((v=r.offset)==null?void 0:v[u])||0:0)+(n?0:y.crossAxis);const o=i.reference[u]+i.reference[t]+(n?0:((g=r.offset)==null?void 0:g[u])||0)-(n?y.crossAxis:0);if(p<e){p=e}else if(p>o){p=o}}return{[d]:h,[u]:p}}}};const tt=function(t){if(t===void 0){t={}}return{name:"size",options:t,async fn(n){const{placement:e,rects:o,platform:s,elements:i}=n;const{apply:r=(()=>{}),...c}=x(t,n);const a=await W(n,c);const l=k(e);const f=A(e);const u=P(e)==="y";const{width:d,height:h}=o.floating;let y;let v;if(l==="top"||l==="bottom"){y=l;v=f===(await(s.isRTL==null?void 0:s.isRTL(i.floating))?"start":"end")?"left":"right"}else{v=l;y=f==="end"?"top":"bottom"}const g=h-a.top-a.bottom;const w=d-a.left-a.right;const b=p(h-a[y],g);const T=p(d-a[v],w);const O=!n.middlewareData.shift;let C=b;let D=T;if(u){D=f||O?p(T,w):w}else{C=f||O?p(b,g):g}if(O&&!f){const t=m(a.left,0);const n=m(a.right,0);const e=m(a.top,0);const o=m(a.bottom,0);if(u){D=d-2*(t!==0||n!==0?t+n:m(a.left,a.right))}else{C=h-2*(e!==0||o!==0?e+o:m(a.top,a.bottom))}}await r({...n,availableWidth:D,availableHeight:C});const S=await s.getDimensions(i.floating);if(d!==S.width||h!==S.height){return{reset:{rects:true}}}return{}}}};function nt(){return typeof window!=="undefined"}function et(t){if(it(t)){return(t.nodeName||"").toLowerCase()}return"#document"}function ot(t){var n;return(t==null||(n=t.ownerDocument)==null?void 0:n.defaultView)||window}function st(t){var n;return(n=(it(t)?t.ownerDocument:t.document)||window.document)==null?void 0:n.documentElement}function it(t){if(!nt()){return false}return t instanceof Node||t instanceof ot(t).Node}function rt(t){if(!nt()){return false}return t instanceof Element||t instanceof ot(t).Element}function ct(t){if(!nt()){return false}return t instanceof HTMLElement||t instanceof ot(t).HTMLElement}function at(t){if(!nt()||typeof ShadowRoot==="undefined"){return false}return t instanceof ShadowRoot||t instanceof ot(t).ShadowRoot}function lt(t){const{overflow:n,overflowX:e,overflowY:o,display:s}=yt(t);return/auto|scroll|overlay|hidden|clip/.test(n+o+e)&&!["inline","contents"].includes(s)}function ft(t){return["table","td","th"].includes(et(t))}function ut(t){return[":popover-open",":modal"].some((n=>{try{return t.matches(n)}catch(t){return false}}))}function dt(t){const n=pt();const e=rt(t)?yt(t):t;return e.transform!=="none"||e.perspective!=="none"||(e.containerType?e.containerType!=="normal":false)||!n&&(e.backdropFilter?e.backdropFilter!=="none":false)||!n&&(e.filter?e.filter!=="none":false)||["transform","perspective","filter"].some((t=>(e.willChange||"").includes(t)))||["paint","layout","strict","content"].some((t=>(e.contain||"").includes(t)))}function ht(t){let n=gt(t);while(ct(n)&&!mt(n)){if(dt(n)){return n}else if(ut(n)){return null}n=gt(n)}return null}function pt(){if(typeof CSS==="undefined"||!CSS.supports)return false;return CSS.supports("-webkit-backdrop-filter","none")}function mt(t){return["html","body","#document"].includes(et(t))}function yt(t){return ot(t).getComputedStyle(t)}function vt(t){if(rt(t)){return{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}}return{scrollLeft:t.scrollX,scrollTop:t.scrollY}}function gt(t){if(et(t)==="html"){return t}const n=t.assignedSlot||t.parentNode||at(t)&&t.host||st(t);return at(n)?n.host:n}function wt(t){const n=gt(t);if(mt(n)){return t.ownerDocument?t.ownerDocument.body:t.body}if(ct(n)&<(n)){return n}return wt(n)}function bt(t,n,e){var o;if(n===void 0){n=[]}if(e===void 0){e=true}const s=wt(t);const i=s===((o=t.ownerDocument)==null?void 0:o.body);const r=ot(s);if(i){const t=xt(r);return n.concat(r,r.visualViewport||[],lt(s)?s:[],t&&e?bt(t):[])}return n.concat(s,bt(s,[],e))}function xt(t){return t.parent&&Object.getPrototypeOf(t.parent)?t.frameElement:null}function kt(t){const n=yt(t);let e=parseFloat(n.width)||0;let o=parseFloat(n.height)||0;const s=ct(t);const i=s?t.offsetWidth:e;const r=s?t.offsetHeight:o;const c=y(e)!==i||y(o)!==r;if(c){e=i;o=r}return{width:e,height:o,$:c}}function At(t){return!rt(t)?t.contextElement:t}function Tt(t){const n=At(t);if(!ct(n)){return v(1)}const e=n.getBoundingClientRect();const{width:o,height:s,$:i}=kt(n);let r=(i?y(e.width):e.width)/o;let c=(i?y(e.height):e.height)/s;if(!r||!Number.isFinite(r)){r=1}if(!c||!Number.isFinite(c)){c=1}return{x:r,y:c}}const Ot=v(0);function Pt(t){const n=ot(t);if(!pt()||!n.visualViewport){return Ot}return{x:n.visualViewport.offsetLeft,y:n.visualViewport.offsetTop}}function Ct(t,n,e){if(n===void 0){n=false}if(!e||n&&e!==ot(t)){return false}return n}function Dt(t,n,e,o){if(n===void 0){n=false}if(e===void 0){e=false}const s=t.getBoundingClientRect();const i=At(t);let r=v(1);if(n){if(o){if(rt(o)){r=Tt(o)}}else{r=Tt(t)}}const c=Ct(i,e,o)?Pt(i):v(0);let a=(s.left+c.x)/r.x;let l=(s.top+c.y)/r.y;let f=s.width/r.x;let u=s.height/r.y;if(i){const t=ot(i);const n=o&&rt(o)?ot(o):o;let e=t;let s=xt(e);while(s&&o&&n!==e){const t=Tt(s);const n=s.getBoundingClientRect();const o=yt(s);const i=n.left+(s.clientLeft+parseFloat(o.paddingLeft))*t.x;const r=n.top+(s.clientTop+parseFloat(o.paddingTop))*t.y;a*=t.x;l*=t.y;f*=t.x;u*=t.y;a+=i;l+=r;e=ot(s);s=xt(e)}}return E({width:f,height:u,x:a,y:l})}function St(t){let{elements:n,rect:e,offsetParent:o,strategy:s}=t;const i=s==="fixed";const r=st(o);const c=n?ut(n.floating):false;if(o===r||c&&i){return e}let a={scrollLeft:0,scrollTop:0};let l=v(1);const f=v(0);const u=ct(o);if(u||!u&&!i){if(et(o)!=="body"||lt(r)){a=vt(o)}if(ct(o)){const t=Dt(o);l=Tt(o);f.x=t.x+o.clientLeft;f.y=t.y+o.clientTop}}return{width:e.width*l.x,height:e.height*l.y,x:e.x*l.x-a.scrollLeft*l.x+f.x,y:e.y*l.y-a.scrollTop*l.y+f.y}}function Rt(t){return Array.from(t.getClientRects())}function jt(t,n){const e=vt(t).scrollLeft;if(!n){return Dt(st(t)).left+e}return n.left+e}function Lt(t){const n=st(t);const e=vt(t);const o=t.ownerDocument.body;const s=m(n.scrollWidth,n.clientWidth,o.scrollWidth,o.clientWidth);const i=m(n.scrollHeight,n.clientHeight,o.scrollHeight,o.clientHeight);let r=-e.scrollLeft+jt(t);const c=-e.scrollTop;if(yt(o).direction==="rtl"){r+=m(n.clientWidth,o.clientWidth)-s}return{width:s,height:i,x:r,y:c}}function Mt(t,n){const e=ot(t);const o=st(t);const s=e.visualViewport;let i=o.clientWidth;let r=o.clientHeight;let c=0;let a=0;if(s){i=s.width;r=s.height;const t=pt();if(!t||t&&n==="fixed"){c=s.offsetLeft;a=s.offsetTop}}return{width:i,height:r,x:c,y:a}}function Bt(t,n){const e=Dt(t,true,n==="fixed");const o=e.top+t.clientTop;const s=e.left+t.clientLeft;const i=ct(t)?Tt(t):v(1);const r=t.clientWidth*i.x;const c=t.clientHeight*i.y;const a=s*i.x;const l=o*i.y;return{width:r,height:c,x:a,y:l}}function Ft(t,n,e){let o;if(n==="viewport"){o=Mt(t,e)}else if(n==="document"){o=Lt(st(t))}else if(rt(n)){o=Bt(n,e)}else{const e=Pt(t);o={...n,x:n.x-e.x,y:n.y-e.y}}return E(o)}function Et(t,n){const e=gt(t);if(e===n||!rt(e)||mt(e)){return false}return yt(e).position==="fixed"||Et(e,n)}function Ht(t,n){const e=n.get(t);if(e){return e}let o=bt(t,[],false).filter((t=>rt(t)&&et(t)!=="body"));let s=null;const i=yt(t).position==="fixed";let r=i?gt(t):t;while(rt(r)&&!mt(r)){const n=yt(r);const e=dt(r);if(!e&&n.position==="fixed"){s=null}const c=i?!e&&!s:!e&&n.position==="static"&&!!s&&["absolute","fixed"].includes(s.position)||lt(r)&&!e&&Et(t,r);if(c){o=o.filter((t=>t!==r))}else{s=n}r=gt(r)}n.set(t,o);return o}function $t(t){let{element:n,boundary:e,rootBoundary:o,strategy:s}=t;const i=e==="clippingAncestors"?ut(n)?[]:Ht(n,this._c):[].concat(e);const r=[...i,o];const c=r[0];const a=r.reduce(((t,e)=>{const o=Ft(n,e,s);t.top=m(o.top,t.top);t.right=p(o.right,t.right);t.bottom=p(o.bottom,t.bottom);t.left=m(o.left,t.left);return t}),Ft(n,c,s));return{width:a.right-a.left,height:a.bottom-a.top,x:a.left,y:a.top}}function Wt(t){const{width:n,height:e}=kt(t);return{width:n,height:e}}function zt(t,n,e){const o=ct(n);const s=st(n);const i=e==="fixed";const r=Dt(t,true,i,n);let c={scrollLeft:0,scrollTop:0};const a=v(0);if(o||!o&&!i){if(et(n)!=="body"||lt(s)){c=vt(n)}if(o){const t=Dt(n,true,i,n);a.x=t.x+n.clientLeft;a.y=t.y+n.clientTop}else if(s){a.x=jt(s)}}let l=0;let f=0;if(s&&!o&&!i){const t=s.getBoundingClientRect();f=t.top+c.scrollTop;l=t.left+c.scrollLeft-jt(s,t)}const u=r.left+c.scrollLeft-a.x-l;const d=r.top+c.scrollTop-a.y-f;return{x:u,y:d,width:r.width,height:r.height}}function Nt(t){return yt(t).position==="static"}function It(t,n){if(!ct(t)||yt(t).position==="fixed"){return null}if(n){return n(t)}let e=t.offsetParent;if(st(t)===e){e=e.ownerDocument.body}return e}function Ut(t,n){const e=ot(t);if(ut(t)){return e}if(!ct(t)){let n=gt(t);while(n&&!mt(n)){if(rt(n)&&!Nt(n)){return n}n=gt(n)}return e}let o=It(t,n);while(o&&ft(o)&&Nt(o)){o=It(o,n)}if(o&&mt(o)&&Nt(o)&&!dt(o)){return e}return o||ht(t)||e}const _t=async function(t){const n=this.getOffsetParent||Ut;const e=this.getDimensions;const o=await e(t.floating);return{reference:zt(t.reference,await n(t.floating),t.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}};function Gt(t){return yt(t).direction==="rtl"}const Kt={convertOffsetParentRelativeRectToViewportRelativeRect:St,getDocumentElement:st,getClippingRect:$t,getOffsetParent:Ut,getElementRects:_t,getClientRects:Rt,getDimensions:Wt,getScale:Tt,isElement:rt,isRTL:Gt};const Vt=J;I;const Xt=Q;const Yt=U;tt;K;const qt=z;Y;Z;const Jt=(t,n,e)=>{const o=new Map;const s={platform:Kt,...e};const i={...s.platform,_c:o};return $(t,n,{...s,platform:i})};const Qt=(t,n,e)=>{const o=t.get(n);if(!o){t.set(n,[e])}else if(!o.includes(e)){o.push(e)}};const Zt=(t,n)=>{let e;return(...o)=>{if(e){clearTimeout(e)}e=setTimeout((()=>{e=0;t(...o)}),n)}};const tn=t=>!("isConnected"in t)||t.isConnected;const nn=Zt((t=>{for(let n of t.keys()){t.set(n,t.get(n).filter(tn))}}),2e3);const en=()=>{if(typeof t!=="function"){return{}}const e=new Map;return{dispose:()=>e.clear(),get:n=>{const o=t();if(o){Qt(e,n,o)}},set:t=>{const o=e.get(t);if(o){e.set(t,o.filter(n))}nn(e)},reset:()=>{e.forEach((t=>t.forEach(n)));nn(e)}}};const on=t=>typeof t==="function"?t():t;const sn=(t,n=((t,n)=>t!==n))=>{const e=on(t);let o=new Map(Object.entries(e!==null&&e!==void 0?e:{}));const s={dispose:[],get:[],set:[],reset:[]};const i=()=>{var n;o=new Map(Object.entries((n=on(t))!==null&&n!==void 0?n:{}));s.reset.forEach((t=>t()))};const r=()=>{s.dispose.forEach((t=>t()));i()};const c=t=>{s.get.forEach((n=>n(t)));return o.get(t)};const a=(t,e)=>{const i=o.get(t);if(n(e,i,t)){o.set(t,e);s.set.forEach((n=>n(t,e,i)))}};const l=typeof Proxy==="undefined"?{}:new Proxy(e,{get(t,n){return c(n)},ownKeys(t){return Array.from(o.keys())},getOwnPropertyDescriptor(){return{enumerable:true,configurable:true}},has(t,n){return o.has(n)},set(t,n,e){a(n,e);return true}});const f=(t,n)=>{s[t].push(n);return()=>{rn(s[t],n)}};const u=(n,e)=>{const o=f("set",((t,o)=>{if(t===n){e(o)}}));const s=f("reset",(()=>e(on(t)[n])));return()=>{o();s()}};const d=(...t)=>{const n=t.reduce(((t,n)=>{if(n.set){t.push(f("set",n.set))}if(n.get){t.push(f("get",n.get))}if(n.reset){t.push(f("reset",n.reset))}if(n.dispose){t.push(f("dispose",n.dispose))}return t}),[]);return()=>n.forEach((t=>t()))};const h=t=>{const n=o.get(t);s.set.forEach((e=>e(t,n,n)))};return{state:l,get:c,set:a,on:f,onChange:u,use:d,dispose:r,reset:i,forceUpdate:h}};const rn=(t,n)=>{const e=t.indexOf(n);if(e>=0){t[e]=t[t.length-1];t.length--}};const cn=(t,n)=>{const e=sn(t,n);e.use(en());return e};const an="nv-popover{display:inline-block;position:relative}nv-popover:has([fluid]:not([fluid=false])){display:block}nv-popover>[data-scope=popover]{width:max-content;background-color:var(--components-popover-background);border-color:var(--components-popover-border);font-weight:var(--font-weight-medium-emphasis);border-width:1px;border-style:solid;border-radius:var(--popover-radius);padding:var(--popover-padding-y) var(--popover-padding-x);position:absolute;top:0;left:0;z-index:1;box-shadow:var(--popover-shadow-1-x) var(--popover-shadow-1-y) var(--popover-shadow-1-blur) -2px var(--popover-shadow-1-opacity), var(--popover-shadow-2-x) var(--popover-shadow-2-y) var(--popover-shadow-2-blur) var(--shadow-spread-lg-2) var(--popover-shadow-2-opacity)}nv-popover>[data-scope=popover][hidden]:not([hidden=false]){display:none}nv-popover>[data-scope=popover]>[data-scope=arrow]{background-color:var(--components-popover-background);position:absolute;border-color:var(--components-popover-border);border-width:1px;border-style:solid;border-bottom-color:transparent;border-right-color:transparent;width:8px;height:8px;transform:rotate(45deg);border-radius:1px}nv-popover>[data-scope=popover]>[slot=content]{position:relative;z-index:1}nv-popover>slot-fb{display:none}";const ln=an;const{state:fn}=cn({groups:new Map});const un=class{constructor(t){e(this,t);this.openChanged=o(this,"openChanged",7);this.eventsAttached=false;this.open=false;this.triggerMode="click";this.placement="bottom";this.offset=6;this.hasArrow=false;this.disableFlip=false;this.shiftPadding=16;this.enterDelay=0;this.nested=false;this.handleClickOutside=t=>{var n;if(this.el.contains(t.target))return;if((n=this.triggerElement)===null||n===void 0?void 0:n.contains(t.target))return;this.open=false};this.clickEvents=[["click",()=>this.open=!this.open]];this.outsideClickEvents=[["click",this.handleClickOutside],["touchstart",this.handleClickOutside]];this.hoverEvents=[["focus",()=>{clearTimeout(this.hideTimeout);this.showTimeout=setTimeout((()=>this.open=true),this.enterDelay)}],["blur",()=>{clearTimeout(this.showTimeout);this.hideTimeout=setTimeout((()=>this.open=false),50)}],["mouseenter",()=>{clearTimeout(this.hideTimeout);this.showTimeout=setTimeout((()=>this.open=true),this.enterDelay)}],["mouseleave",()=>{clearTimeout(this.showTimeout);this.hideTimeout=setTimeout((()=>this.open=false),100)}]];this.closeEvents=[["keydown",t=>{if(t.key==="Escape"){this.open=false}}]];this.isAnimating=false}async show(){this.open=true}async hide(){this.open=false}async toggle(){this.open=!this.open}attachEventListeners(){if(this.triggerElement&&!this.eventsAttached){l(this.closeEvents,document,this);if(this.triggerMode==="click"){l(this.clickEvents,this.triggerElement,this);l(this.outsideClickEvents,document,this)}if(this.triggerMode==="hover"){l(this.hoverEvents,this.triggerElement,this)}this.eventsAttached=true}}positionPopover(){if(!this.triggerElement)return;Jt(this.triggerElement,this.popoverElement,{placement:this.placement,middleware:[Vt(this.offset),!this.disableFlip&&Yt({fallbackStrategy:"bestFit",crossAxis:true,fallbackPlacements:["bottom"]}),Xt({padding:this.shiftPadding}),this.hasArrow&&qt({element:this.arrowElement})]}).then((({x:t,y:n,placement:e,middlewareData:o})=>{Object.assign(this.popoverElement.style,{left:`${t}px`,top:`${n}px`});if(this.hasArrow){const t={top:"bottom",right:"left",bottom:"top",left:"right"}[e.split("-")[0]];const n={top:"rotate(225deg)",right:"rotate(315deg)",bottom:"rotate(45deg)",left:"rotate(135deg)"}[e.split("-")[0]];const{x:s,y:i}=o.arrow;Object.assign(this.arrowElement.style,{left:s!=null?`${s}px`:"",top:i!=null?`${i}px`:"",right:"",bottom:"",transform:n,[t]:"-4px"})}}))}handleOpenChanged(t){var n;if(this.triggerMode==="controlled")return;if(this.nested)return;if((n=t.target)===null||n===void 0?void 0:n.hasAttribute("nested"))return;if(t.target!==this.el&&t.detail===true)this.open=false}async handleOpenChange(t){while(this.isAnimating){await new Promise((t=>setTimeout(t,50)))}this.isAnimating=true;const n=fn.groups.get(this.groupName);const e=n&&n.openedBy!==this.el;const o=n&&n.openedBy===this.el;if(t)this.popoverElement.style.removeProperty("display");if(o&&!t)fn.groups.delete(this.groupName);if(this.groupName&&t)fn.groups.set(this.groupName,{openedBy:this.el});const{growIn:s}=a(this.popoverElement,{duration:e?0:100,amount:.85});const{fadeOut:i}=c(this.popoverElement,{duration:e?0:100});if(t===true){this.popoverElement.removeAttribute("hidden");this.positionPopover();await s()}if(t===false){await i();this.popoverElement.setAttribute("hidden","")}this.isAnimating=false;this.openChanged.emit(t)}componentWillLoad(){if(!this.triggerElement)this.triggerElement=Array.from(this.el.children).find((t=>t.getAttribute("slot")==="trigger"))}componentWillUpdate(){this.attachEventListeners()}componentDidLoad(){if(!this.open){const{setGrowOut:t}=a(this.popoverElement);t()}else{const{setFadeIn:t}=c(this.popoverElement);t();this.popoverElement.removeAttribute("hidden")}this.positionPopover();this.attachEventListeners()}disconnectedCallback(){f(this.closeEvents,document,this);if(this.triggerMode==="click"){f(this.clickEvents,this.triggerElement,this);f(this.outsideClickEvents,document,this)}if(this.triggerMode==="hover")f(this.hoverEvents,this.triggerElement,this);this.eventsAttached=false;if(this.hideTimeout)clearTimeout(this.hideTimeout);if(this.showTimeout)clearTimeout(this.showTimeout)}render(){return s(i,{key:"efab8d78e1163d23e197ca04786b9f99f248ce05"},s("slot",{key:"b8197a385e5d9cda08d6b3e0232c052fb7238d01",name:"trigger"}),s("div",{key:"480c3cc8352bc833216cd64c8bfcf75ba9c79130","data-scope":"popover",hidden:true,ref:t=>this.popoverElement=t},this.hasArrow&&s("div",{key:"8b1b10a15427ef05bc267460161e4a53be4cc3d1","data-scope":"arrow",ref:t=>this.arrowElement=t}),s("slot",{key:"8c9a8708a36fae6cac5e533b5c1a3128d7375195",name:"content"})))}get el(){return r(this)}static get watchers(){return{open:["handleOpenChange"]}}};un.style=ln;export{un as nv_popover};
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{d as t,f as n,r as e,c as o,h as s,a as i,g as r}from"./p-ab002252.js";import{u as c}from"./p-1daca48a.js";import{u as a}from"./p-c1765831.js";import{a as l,r as f}from"./p-d429a343.js";const u=["top","right","bottom","left"];const d=["start","end"];const h=u.reduce(((t,n)=>t.concat(n,n+"-"+d[0],n+"-"+d[1])),[]);const p=Math.min;const m=Math.max;const y=Math.round;const v=t=>({x:t,y:t});const g={left:"right",right:"left",bottom:"top",top:"bottom"};const w={start:"end",end:"start"};function b(t,n,e){return m(t,p(n,e))}function x(t,n){return typeof t==="function"?t(n):t}function k(t){return t.split("-")[0]}function A(t){return t.split("-")[1]}function T(t){return t==="x"?"y":"x"}function O(t){return t==="y"?"height":"width"}function P(t){return["top","bottom"].includes(k(t))?"y":"x"}function C(t){return T(P(t))}function D(t,n,e){if(e===void 0){e=false}const o=A(t);const s=C(t);const i=O(s);let r=s==="x"?o===(e?"end":"start")?"right":"left":o==="start"?"bottom":"top";if(n.reference[i]>n.floating[i]){r=M(r)}return[r,M(r)]}function S(t){const n=M(t);return[R(t),n,R(n)]}function R(t){return t.replace(/start|end/g,(t=>w[t]))}function j(t,n,e){const o=["left","right"];const s=["right","left"];const i=["top","bottom"];const r=["bottom","top"];switch(t){case"top":case"bottom":if(e)return n?s:o;return n?o:s;case"left":case"right":return n?i:r;default:return[]}}function L(t,n,e,o){const s=A(t);let i=j(k(t),e==="start",o);if(s){i=i.map((t=>t+"-"+s));if(n){i=i.concat(i.map(R))}}return i}function M(t){return t.replace(/left|right|bottom|top/g,(t=>g[t]))}function B(t){return{top:0,right:0,bottom:0,left:0,...t}}function F(t){return typeof t!=="number"?B(t):{top:t,right:t,bottom:t,left:t}}function E(t){const{x:n,y:e,width:o,height:s}=t;return{width:o,height:s,top:e,left:n,right:n+o,bottom:e+s,x:n,y:e}}function H(t,n,e){let{reference:o,floating:s}=t;const i=P(n);const r=C(n);const c=O(r);const a=k(n);const l=i==="y";const f=o.x+o.width/2-s.width/2;const u=o.y+o.height/2-s.height/2;const d=o[c]/2-s[c]/2;let h;switch(a){case"top":h={x:f,y:o.y-s.height};break;case"bottom":h={x:f,y:o.y+o.height};break;case"right":h={x:o.x+o.width,y:u};break;case"left":h={x:o.x-s.width,y:u};break;default:h={x:o.x,y:o.y}}switch(A(n)){case"start":h[r]-=d*(e&&l?-1:1);break;case"end":h[r]+=d*(e&&l?-1:1);break}return h}const $=async(t,n,e)=>{const{placement:o="bottom",strategy:s="absolute",middleware:i=[],platform:r}=e;const c=i.filter(Boolean);const a=await(r.isRTL==null?void 0:r.isRTL(n));let l=await r.getElementRects({reference:t,floating:n,strategy:s});let{x:f,y:u}=H(l,o,a);let d=o;let h={};let p=0;for(let e=0;e<c.length;e++){const{name:i,fn:m}=c[e];const{x:y,y:v,data:g,reset:w}=await m({x:f,y:u,initialPlacement:o,placement:d,strategy:s,middlewareData:h,rects:l,platform:r,elements:{reference:t,floating:n}});f=y!=null?y:f;u=v!=null?v:u;h={...h,[i]:{...h[i],...g}};if(w&&p<=50){p++;if(typeof w==="object"){if(w.placement){d=w.placement}if(w.rects){l=w.rects===true?await r.getElementRects({reference:t,floating:n,strategy:s}):w.rects}({x:f,y:u}=H(l,d,a))}e=-1}}return{x:f,y:u,placement:d,strategy:s,middlewareData:h}};async function W(t,n){var e;if(n===void 0){n={}}const{x:o,y:s,platform:i,rects:r,elements:c,strategy:a}=t;const{boundary:l="clippingAncestors",rootBoundary:f="viewport",elementContext:u="floating",altBoundary:d=false,padding:h=0}=x(n,t);const p=F(h);const m=u==="floating"?"reference":"floating";const y=c[d?m:u];const v=E(await i.getClippingRect({element:((e=await(i.isElement==null?void 0:i.isElement(y)))!=null?e:true)?y:y.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(c.floating)),boundary:l,rootBoundary:f,strategy:a}));const g=u==="floating"?{x:o,y:s,width:r.floating.width,height:r.floating.height}:r.reference;const w=await(i.getOffsetParent==null?void 0:i.getOffsetParent(c.floating));const b=await(i.isElement==null?void 0:i.isElement(w))?await(i.getScale==null?void 0:i.getScale(w))||{x:1,y:1}:{x:1,y:1};const k=E(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:c,rect:g,offsetParent:w,strategy:a}):g);return{top:(v.top-k.top+p.top)/b.y,bottom:(k.bottom-v.bottom+p.bottom)/b.y,left:(v.left-k.left+p.left)/b.x,right:(k.right-v.right+p.right)/b.x}}const z=t=>({name:"arrow",options:t,async fn(n){const{x:e,y:o,placement:s,rects:i,platform:r,elements:c,middlewareData:a}=n;const{element:l,padding:f=0}=x(t,n)||{};if(l==null){return{}}const u=F(f);const d={x:e,y:o};const h=C(s);const m=O(h);const y=await r.getDimensions(l);const v=h==="y";const g=v?"top":"left";const w=v?"bottom":"right";const k=v?"clientHeight":"clientWidth";const T=i.reference[m]+i.reference[h]-d[h]-i.floating[m];const P=d[h]-i.reference[h];const D=await(r.getOffsetParent==null?void 0:r.getOffsetParent(l));let S=D?D[k]:0;if(!S||!await(r.isElement==null?void 0:r.isElement(D))){S=c.floating[k]||i.floating[m]}const R=T/2-P/2;const j=S/2-y[m]/2-1;const L=p(u[g],j);const M=p(u[w],j);const B=L;const E=S-y[m]-M;const H=S/2-y[m]/2+R;const $=b(B,H,E);const W=!a.arrow&&A(s)!=null&&H!==$&&i.reference[m]/2-(H<B?L:M)-y[m]/2<0;const z=W?H<B?H-B:H-E:0;return{[h]:d[h]+z,data:{[h]:$,centerOffset:H-$-z,...W&&{alignmentOffset:z}},reset:W}}});function N(t,n,e){const o=t?[...e.filter((n=>A(n)===t)),...e.filter((n=>A(n)!==t))]:e.filter((t=>k(t)===t));return o.filter((e=>{if(t){return A(e)===t||(n?R(e)!==e:false)}return true}))}const I=function(t){if(t===void 0){t={}}return{name:"autoPlacement",options:t,async fn(n){var e,o,s;const{rects:i,middlewareData:r,placement:c,platform:a,elements:l}=n;const{crossAxis:f=false,alignment:u,allowedPlacements:d=h,autoAlignment:p=true,...m}=x(t,n);const y=u!==undefined||d===h?N(u||null,p,d):d;const v=await W(n,m);const g=((e=r.autoPlacement)==null?void 0:e.index)||0;const w=y[g];if(w==null){return{}}const b=D(w,i,await(a.isRTL==null?void 0:a.isRTL(l.floating)));if(c!==w){return{reset:{placement:y[0]}}}const T=[v[k(w)],v[b[0]],v[b[1]]];const O=[...((o=r.autoPlacement)==null?void 0:o.overflows)||[],{placement:w,overflows:T}];const P=y[g+1];if(P){return{data:{index:g+1,overflows:O},reset:{placement:P}}}const C=O.map((t=>{const n=A(t.placement);return[t.placement,n&&f?t.overflows.slice(0,2).reduce(((t,n)=>t+n),0):t.overflows[0],t.overflows]})).sort(((t,n)=>t[1]-n[1]));const S=C.filter((t=>t[2].slice(0,A(t[0])?2:3).every((t=>t<=0))));const R=((s=S[0])==null?void 0:s[0])||C[0][0];if(R!==c){return{data:{index:g+1,overflows:O},reset:{placement:R}}}return{}}}};const U=function(t){if(t===void 0){t={}}return{name:"flip",options:t,async fn(n){var e,o;const{placement:s,middlewareData:i,rects:r,initialPlacement:c,platform:a,elements:l}=n;const{mainAxis:f=true,crossAxis:u=true,fallbackPlacements:d,fallbackStrategy:h="bestFit",fallbackAxisSideDirection:p="none",flipAlignment:m=true,...y}=x(t,n);if((e=i.arrow)!=null&&e.alignmentOffset){return{}}const v=k(s);const g=k(c)===c;const w=await(a.isRTL==null?void 0:a.isRTL(l.floating));const b=d||(g||!m?[M(c)]:S(c));if(!d&&p!=="none"){b.push(...L(c,m,p,w))}const A=[c,...b];const T=await W(n,y);const O=[];let P=((o=i.flip)==null?void 0:o.overflows)||[];if(f){O.push(T[v])}if(u){const t=D(s,r,w);O.push(T[t[0]],T[t[1]])}P=[...P,{placement:s,overflows:O}];if(!O.every((t=>t<=0))){var C,R;const t=(((C=i.flip)==null?void 0:C.index)||0)+1;const n=A[t];if(n){return{data:{index:t,overflows:P},reset:{placement:n}}}let e=(R=P.filter((t=>t.overflows[0]<=0)).sort(((t,n)=>t.overflows[1]-n.overflows[1]))[0])==null?void 0:R.placement;if(!e){switch(h){case"bestFit":{var j;const t=(j=P.map((t=>[t.placement,t.overflows.filter((t=>t>0)).reduce(((t,n)=>t+n),0)])).sort(((t,n)=>t[1]-n[1]))[0])==null?void 0:j[0];if(t){e=t}break}case"initialPlacement":e=c;break}}if(s!==e){return{reset:{placement:e}}}}return{}}}};function _(t,n){return{top:t.top-n.height,right:t.right-n.width,bottom:t.bottom-n.height,left:t.left-n.width}}function G(t){return u.some((n=>t[n]>=0))}const K=function(t){if(t===void 0){t={}}return{name:"hide",options:t,async fn(n){const{rects:e}=n;const{strategy:o="referenceHidden",...s}=x(t,n);switch(o){case"referenceHidden":{const t=await W(n,{...s,elementContext:"reference"});const o=_(t,e.reference);return{data:{referenceHiddenOffsets:o,referenceHidden:G(o)}}}case"escaped":{const t=await W(n,{...s,altBoundary:true});const o=_(t,e.floating);return{data:{escapedOffsets:o,escaped:G(o)}}}default:{return{}}}}}};function V(t){const n=p(...t.map((t=>t.left)));const e=p(...t.map((t=>t.top)));const o=m(...t.map((t=>t.right)));const s=m(...t.map((t=>t.bottom)));return{x:n,y:e,width:o-n,height:s-e}}function X(t){const n=t.slice().sort(((t,n)=>t.y-n.y));const e=[];let o=null;for(let t=0;t<n.length;t++){const s=n[t];if(!o||s.y-o.y>o.height/2){e.push([s])}else{e[e.length-1].push(s)}o=s}return e.map((t=>E(V(t))))}const Y=function(t){if(t===void 0){t={}}return{name:"inline",options:t,async fn(n){const{placement:e,elements:o,rects:s,platform:i,strategy:r}=n;const{padding:c=2,x:a,y:l}=x(t,n);const f=Array.from(await(i.getClientRects==null?void 0:i.getClientRects(o.reference))||[]);const u=X(f);const d=E(V(f));const h=F(c);function y(){if(u.length===2&&u[0].left>u[1].right&&a!=null&&l!=null){return u.find((t=>a>t.left-h.left&&a<t.right+h.right&&l>t.top-h.top&&l<t.bottom+h.bottom))||d}if(u.length>=2){if(P(e)==="y"){const t=u[0];const n=u[u.length-1];const o=k(e)==="top";const s=t.top;const i=n.bottom;const r=o?t.left:n.left;const c=o?t.right:n.right;const a=c-r;const l=i-s;return{top:s,bottom:i,left:r,right:c,width:a,height:l,x:r,y:s}}const t=k(e)==="left";const n=m(...u.map((t=>t.right)));const o=p(...u.map((t=>t.left)));const s=u.filter((e=>t?e.left===o:e.right===n));const i=s[0].top;const r=s[s.length-1].bottom;const c=o;const a=n;const l=a-c;const f=r-i;return{top:i,bottom:r,left:c,right:a,width:l,height:f,x:c,y:i}}return d}const v=await i.getElementRects({reference:{getBoundingClientRect:y},floating:o.floating,strategy:r});if(s.reference.x!==v.reference.x||s.reference.y!==v.reference.y||s.reference.width!==v.reference.width||s.reference.height!==v.reference.height){return{reset:{rects:v}}}return{}}}};async function q(t,n){const{placement:e,platform:o,elements:s}=t;const i=await(o.isRTL==null?void 0:o.isRTL(s.floating));const r=k(e);const c=A(e);const a=P(e)==="y";const l=["left","top"].includes(r)?-1:1;const f=i&&a?-1:1;const u=x(n,t);let{mainAxis:d,crossAxis:h,alignmentAxis:p}=typeof u==="number"?{mainAxis:u,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...u};if(c&&typeof p==="number"){h=c==="end"?p*-1:p}return a?{x:h*f,y:d*l}:{x:d*l,y:h*f}}const J=function(t){if(t===void 0){t=0}return{name:"offset",options:t,async fn(n){var e,o;const{x:s,y:i,placement:r,middlewareData:c}=n;const a=await q(n,t);if(r===((e=c.offset)==null?void 0:e.placement)&&(o=c.arrow)!=null&&o.alignmentOffset){return{}}return{x:s+a.x,y:i+a.y,data:{...a,placement:r}}}}};const Q=function(t){if(t===void 0){t={}}return{name:"shift",options:t,async fn(n){const{x:e,y:o,placement:s}=n;const{mainAxis:i=true,crossAxis:r=false,limiter:c={fn:t=>{let{x:n,y:e}=t;return{x:n,y:e}}},...a}=x(t,n);const l={x:e,y:o};const f=await W(n,a);const u=P(k(s));const d=T(u);let h=l[d];let p=l[u];if(i){const t=d==="y"?"top":"left";const n=d==="y"?"bottom":"right";const e=h+f[t];const o=h-f[n];h=b(e,h,o)}if(r){const t=u==="y"?"top":"left";const n=u==="y"?"bottom":"right";const e=p+f[t];const o=p-f[n];p=b(e,p,o)}const m=c.fn({...n,[d]:h,[u]:p});return{...m,data:{x:m.x-e,y:m.y-o}}}}};const Z=function(t){if(t===void 0){t={}}return{options:t,fn(n){const{x:e,y:o,placement:s,rects:i,middlewareData:r}=n;const{offset:c=0,mainAxis:a=true,crossAxis:l=true}=x(t,n);const f={x:e,y:o};const u=P(s);const d=T(u);let h=f[d];let p=f[u];const m=x(c,n);const y=typeof m==="number"?{mainAxis:m,crossAxis:0}:{mainAxis:0,crossAxis:0,...m};if(a){const t=d==="y"?"height":"width";const n=i.reference[d]-i.floating[t]+y.mainAxis;const e=i.reference[d]+i.reference[t]-y.mainAxis;if(h<n){h=n}else if(h>e){h=e}}if(l){var v,g;const t=d==="y"?"width":"height";const n=["top","left"].includes(k(s));const e=i.reference[u]-i.floating[t]+(n?((v=r.offset)==null?void 0:v[u])||0:0)+(n?0:y.crossAxis);const o=i.reference[u]+i.reference[t]+(n?0:((g=r.offset)==null?void 0:g[u])||0)-(n?y.crossAxis:0);if(p<e){p=e}else if(p>o){p=o}}return{[d]:h,[u]:p}}}};const tt=function(t){if(t===void 0){t={}}return{name:"size",options:t,async fn(n){const{placement:e,rects:o,platform:s,elements:i}=n;const{apply:r=(()=>{}),...c}=x(t,n);const a=await W(n,c);const l=k(e);const f=A(e);const u=P(e)==="y";const{width:d,height:h}=o.floating;let y;let v;if(l==="top"||l==="bottom"){y=l;v=f===(await(s.isRTL==null?void 0:s.isRTL(i.floating))?"start":"end")?"left":"right"}else{v=l;y=f==="end"?"top":"bottom"}const g=h-a.top-a.bottom;const w=d-a.left-a.right;const b=p(h-a[y],g);const T=p(d-a[v],w);const O=!n.middlewareData.shift;let C=b;let D=T;if(u){D=f||O?p(T,w):w}else{C=f||O?p(b,g):g}if(O&&!f){const t=m(a.left,0);const n=m(a.right,0);const e=m(a.top,0);const o=m(a.bottom,0);if(u){D=d-2*(t!==0||n!==0?t+n:m(a.left,a.right))}else{C=h-2*(e!==0||o!==0?e+o:m(a.top,a.bottom))}}await r({...n,availableWidth:D,availableHeight:C});const S=await s.getDimensions(i.floating);if(d!==S.width||h!==S.height){return{reset:{rects:true}}}return{}}}};function nt(){return typeof window!=="undefined"}function et(t){if(it(t)){return(t.nodeName||"").toLowerCase()}return"#document"}function ot(t){var n;return(t==null||(n=t.ownerDocument)==null?void 0:n.defaultView)||window}function st(t){var n;return(n=(it(t)?t.ownerDocument:t.document)||window.document)==null?void 0:n.documentElement}function it(t){if(!nt()){return false}return t instanceof Node||t instanceof ot(t).Node}function rt(t){if(!nt()){return false}return t instanceof Element||t instanceof ot(t).Element}function ct(t){if(!nt()){return false}return t instanceof HTMLElement||t instanceof ot(t).HTMLElement}function at(t){if(!nt()||typeof ShadowRoot==="undefined"){return false}return t instanceof ShadowRoot||t instanceof ot(t).ShadowRoot}function lt(t){const{overflow:n,overflowX:e,overflowY:o,display:s}=yt(t);return/auto|scroll|overlay|hidden|clip/.test(n+o+e)&&!["inline","contents"].includes(s)}function ft(t){return["table","td","th"].includes(et(t))}function ut(t){return[":popover-open",":modal"].some((n=>{try{return t.matches(n)}catch(t){return false}}))}function dt(t){const n=pt();const e=rt(t)?yt(t):t;return e.transform!=="none"||e.perspective!=="none"||(e.containerType?e.containerType!=="normal":false)||!n&&(e.backdropFilter?e.backdropFilter!=="none":false)||!n&&(e.filter?e.filter!=="none":false)||["transform","perspective","filter"].some((t=>(e.willChange||"").includes(t)))||["paint","layout","strict","content"].some((t=>(e.contain||"").includes(t)))}function ht(t){let n=gt(t);while(ct(n)&&!mt(n)){if(dt(n)){return n}else if(ut(n)){return null}n=gt(n)}return null}function pt(){if(typeof CSS==="undefined"||!CSS.supports)return false;return CSS.supports("-webkit-backdrop-filter","none")}function mt(t){return["html","body","#document"].includes(et(t))}function yt(t){return ot(t).getComputedStyle(t)}function vt(t){if(rt(t)){return{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}}return{scrollLeft:t.scrollX,scrollTop:t.scrollY}}function gt(t){if(et(t)==="html"){return t}const n=t.assignedSlot||t.parentNode||at(t)&&t.host||st(t);return at(n)?n.host:n}function wt(t){const n=gt(t);if(mt(n)){return t.ownerDocument?t.ownerDocument.body:t.body}if(ct(n)&<(n)){return n}return wt(n)}function bt(t,n,e){var o;if(n===void 0){n=[]}if(e===void 0){e=true}const s=wt(t);const i=s===((o=t.ownerDocument)==null?void 0:o.body);const r=ot(s);if(i){const t=xt(r);return n.concat(r,r.visualViewport||[],lt(s)?s:[],t&&e?bt(t):[])}return n.concat(s,bt(s,[],e))}function xt(t){return t.parent&&Object.getPrototypeOf(t.parent)?t.frameElement:null}function kt(t){const n=yt(t);let e=parseFloat(n.width)||0;let o=parseFloat(n.height)||0;const s=ct(t);const i=s?t.offsetWidth:e;const r=s?t.offsetHeight:o;const c=y(e)!==i||y(o)!==r;if(c){e=i;o=r}return{width:e,height:o,$:c}}function At(t){return!rt(t)?t.contextElement:t}function Tt(t){const n=At(t);if(!ct(n)){return v(1)}const e=n.getBoundingClientRect();const{width:o,height:s,$:i}=kt(n);let r=(i?y(e.width):e.width)/o;let c=(i?y(e.height):e.height)/s;if(!r||!Number.isFinite(r)){r=1}if(!c||!Number.isFinite(c)){c=1}return{x:r,y:c}}const Ot=v(0);function Pt(t){const n=ot(t);if(!pt()||!n.visualViewport){return Ot}return{x:n.visualViewport.offsetLeft,y:n.visualViewport.offsetTop}}function Ct(t,n,e){if(n===void 0){n=false}if(!e||n&&e!==ot(t)){return false}return n}function Dt(t,n,e,o){if(n===void 0){n=false}if(e===void 0){e=false}const s=t.getBoundingClientRect();const i=At(t);let r=v(1);if(n){if(o){if(rt(o)){r=Tt(o)}}else{r=Tt(t)}}const c=Ct(i,e,o)?Pt(i):v(0);let a=(s.left+c.x)/r.x;let l=(s.top+c.y)/r.y;let f=s.width/r.x;let u=s.height/r.y;if(i){const t=ot(i);const n=o&&rt(o)?ot(o):o;let e=t;let s=xt(e);while(s&&o&&n!==e){const t=Tt(s);const n=s.getBoundingClientRect();const o=yt(s);const i=n.left+(s.clientLeft+parseFloat(o.paddingLeft))*t.x;const r=n.top+(s.clientTop+parseFloat(o.paddingTop))*t.y;a*=t.x;l*=t.y;f*=t.x;u*=t.y;a+=i;l+=r;e=ot(s);s=xt(e)}}return E({width:f,height:u,x:a,y:l})}function St(t){let{elements:n,rect:e,offsetParent:o,strategy:s}=t;const i=s==="fixed";const r=st(o);const c=n?ut(n.floating):false;if(o===r||c&&i){return e}let a={scrollLeft:0,scrollTop:0};let l=v(1);const f=v(0);const u=ct(o);if(u||!u&&!i){if(et(o)!=="body"||lt(r)){a=vt(o)}if(ct(o)){const t=Dt(o);l=Tt(o);f.x=t.x+o.clientLeft;f.y=t.y+o.clientTop}}return{width:e.width*l.x,height:e.height*l.y,x:e.x*l.x-a.scrollLeft*l.x+f.x,y:e.y*l.y-a.scrollTop*l.y+f.y}}function Rt(t){return Array.from(t.getClientRects())}function jt(t,n){const e=vt(t).scrollLeft;if(!n){return Dt(st(t)).left+e}return n.left+e}function Lt(t){const n=st(t);const e=vt(t);const o=t.ownerDocument.body;const s=m(n.scrollWidth,n.clientWidth,o.scrollWidth,o.clientWidth);const i=m(n.scrollHeight,n.clientHeight,o.scrollHeight,o.clientHeight);let r=-e.scrollLeft+jt(t);const c=-e.scrollTop;if(yt(o).direction==="rtl"){r+=m(n.clientWidth,o.clientWidth)-s}return{width:s,height:i,x:r,y:c}}function Mt(t,n){const e=ot(t);const o=st(t);const s=e.visualViewport;let i=o.clientWidth;let r=o.clientHeight;let c=0;let a=0;if(s){i=s.width;r=s.height;const t=pt();if(!t||t&&n==="fixed"){c=s.offsetLeft;a=s.offsetTop}}return{width:i,height:r,x:c,y:a}}function Bt(t,n){const e=Dt(t,true,n==="fixed");const o=e.top+t.clientTop;const s=e.left+t.clientLeft;const i=ct(t)?Tt(t):v(1);const r=t.clientWidth*i.x;const c=t.clientHeight*i.y;const a=s*i.x;const l=o*i.y;return{width:r,height:c,x:a,y:l}}function Ft(t,n,e){let o;if(n==="viewport"){o=Mt(t,e)}else if(n==="document"){o=Lt(st(t))}else if(rt(n)){o=Bt(n,e)}else{const e=Pt(t);o={...n,x:n.x-e.x,y:n.y-e.y}}return E(o)}function Et(t,n){const e=gt(t);if(e===n||!rt(e)||mt(e)){return false}return yt(e).position==="fixed"||Et(e,n)}function Ht(t,n){const e=n.get(t);if(e){return e}let o=bt(t,[],false).filter((t=>rt(t)&&et(t)!=="body"));let s=null;const i=yt(t).position==="fixed";let r=i?gt(t):t;while(rt(r)&&!mt(r)){const n=yt(r);const e=dt(r);if(!e&&n.position==="fixed"){s=null}const c=i?!e&&!s:!e&&n.position==="static"&&!!s&&["absolute","fixed"].includes(s.position)||lt(r)&&!e&&Et(t,r);if(c){o=o.filter((t=>t!==r))}else{s=n}r=gt(r)}n.set(t,o);return o}function $t(t){let{element:n,boundary:e,rootBoundary:o,strategy:s}=t;const i=e==="clippingAncestors"?ut(n)?[]:Ht(n,this._c):[].concat(e);const r=[...i,o];const c=r[0];const a=r.reduce(((t,e)=>{const o=Ft(n,e,s);t.top=m(o.top,t.top);t.right=p(o.right,t.right);t.bottom=p(o.bottom,t.bottom);t.left=m(o.left,t.left);return t}),Ft(n,c,s));return{width:a.right-a.left,height:a.bottom-a.top,x:a.left,y:a.top}}function Wt(t){const{width:n,height:e}=kt(t);return{width:n,height:e}}function zt(t,n,e){const o=ct(n);const s=st(n);const i=e==="fixed";const r=Dt(t,true,i,n);let c={scrollLeft:0,scrollTop:0};const a=v(0);if(o||!o&&!i){if(et(n)!=="body"||lt(s)){c=vt(n)}if(o){const t=Dt(n,true,i,n);a.x=t.x+n.clientLeft;a.y=t.y+n.clientTop}else if(s){a.x=jt(s)}}let l=0;let f=0;if(s&&!o&&!i){const t=s.getBoundingClientRect();f=t.top+c.scrollTop;l=t.left+c.scrollLeft-jt(s,t)}const u=r.left+c.scrollLeft-a.x-l;const d=r.top+c.scrollTop-a.y-f;return{x:u,y:d,width:r.width,height:r.height}}function Nt(t){return yt(t).position==="static"}function It(t,n){if(!ct(t)||yt(t).position==="fixed"){return null}if(n){return n(t)}let e=t.offsetParent;if(st(t)===e){e=e.ownerDocument.body}return e}function Ut(t,n){const e=ot(t);if(ut(t)){return e}if(!ct(t)){let n=gt(t);while(n&&!mt(n)){if(rt(n)&&!Nt(n)){return n}n=gt(n)}return e}let o=It(t,n);while(o&&ft(o)&&Nt(o)){o=It(o,n)}if(o&&mt(o)&&Nt(o)&&!dt(o)){return e}return o||ht(t)||e}const _t=async function(t){const n=this.getOffsetParent||Ut;const e=this.getDimensions;const o=await e(t.floating);return{reference:zt(t.reference,await n(t.floating),t.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}};function Gt(t){return yt(t).direction==="rtl"}const Kt={convertOffsetParentRelativeRectToViewportRelativeRect:St,getDocumentElement:st,getClippingRect:$t,getOffsetParent:Ut,getElementRects:_t,getClientRects:Rt,getDimensions:Wt,getScale:Tt,isElement:rt,isRTL:Gt};const Vt=J;I;const Xt=Q;const Yt=U;tt;K;const qt=z;Y;Z;const Jt=(t,n,e)=>{const o=new Map;const s={platform:Kt,...e};const i={...s.platform,_c:o};return $(t,n,{...s,platform:i})};const Qt=(t,n,e)=>{const o=t.get(n);if(!o){t.set(n,[e])}else if(!o.includes(e)){o.push(e)}};const Zt=(t,n)=>{let e;return(...o)=>{if(e){clearTimeout(e)}e=setTimeout((()=>{e=0;t(...o)}),n)}};const tn=t=>!("isConnected"in t)||t.isConnected;const nn=Zt((t=>{for(let n of t.keys()){t.set(n,t.get(n).filter(tn))}}),2e3);const en=()=>{if(typeof t!=="function"){return{}}const e=new Map;return{dispose:()=>e.clear(),get:n=>{const o=t();if(o){Qt(e,n,o)}},set:t=>{const o=e.get(t);if(o){e.set(t,o.filter(n))}nn(e)},reset:()=>{e.forEach((t=>t.forEach(n)));nn(e)}}};const on=t=>typeof t==="function"?t():t;const sn=(t,n=((t,n)=>t!==n))=>{const e=on(t);let o=new Map(Object.entries(e!==null&&e!==void 0?e:{}));const s={dispose:[],get:[],set:[],reset:[]};const i=()=>{var n;o=new Map(Object.entries((n=on(t))!==null&&n!==void 0?n:{}));s.reset.forEach((t=>t()))};const r=()=>{s.dispose.forEach((t=>t()));i()};const c=t=>{s.get.forEach((n=>n(t)));return o.get(t)};const a=(t,e)=>{const i=o.get(t);if(n(e,i,t)){o.set(t,e);s.set.forEach((n=>n(t,e,i)))}};const l=typeof Proxy==="undefined"?{}:new Proxy(e,{get(t,n){return c(n)},ownKeys(t){return Array.from(o.keys())},getOwnPropertyDescriptor(){return{enumerable:true,configurable:true}},has(t,n){return o.has(n)},set(t,n,e){a(n,e);return true}});const f=(t,n)=>{s[t].push(n);return()=>{rn(s[t],n)}};const u=(n,e)=>{const o=f("set",((t,o)=>{if(t===n){e(o)}}));const s=f("reset",(()=>e(on(t)[n])));return()=>{o();s()}};const d=(...t)=>{const n=t.reduce(((t,n)=>{if(n.set){t.push(f("set",n.set))}if(n.get){t.push(f("get",n.get))}if(n.reset){t.push(f("reset",n.reset))}if(n.dispose){t.push(f("dispose",n.dispose))}return t}),[]);return()=>n.forEach((t=>t()))};const h=t=>{const n=o.get(t);s.set.forEach((e=>e(t,n,n)))};return{state:l,get:c,set:a,on:f,onChange:u,use:d,dispose:r,reset:i,forceUpdate:h}};const rn=(t,n)=>{const e=t.indexOf(n);if(e>=0){t[e]=t[t.length-1];t.length--}};const cn=(t,n)=>{const e=sn(t,n);e.use(en());return e};const an="nv-popover{display:inline-block;position:relative}nv-popover:has([fluid]:not([fluid=false])){display:block}nv-popover>[data-scope=popover]{width:max-content;background-color:var(--components-popover-background);border-color:var(--components-popover-border);font-weight:var(--font-weight-medium-emphasis);border-width:1px;border-style:solid;border-radius:var(--popover-radius);padding:var(--popover-padding-y) var(--popover-padding-x);position:absolute;top:0;left:0;z-index:1;box-shadow:var(--popover-shadow-1-x) var(--popover-shadow-1-y) var(--popover-shadow-1-blur) -2px var(--popover-shadow-1-opacity), var(--popover-shadow-2-x) var(--popover-shadow-2-y) var(--popover-shadow-2-blur) var(--shadow-spread-lg-2) var(--popover-shadow-2-opacity)}nv-popover>[data-scope=popover][hidden]:not([hidden=false]){display:none}nv-popover>[data-scope=popover]>[data-scope=arrow]{background-color:var(--components-popover-background);position:absolute;border-color:var(--components-popover-border);border-width:1px;border-style:solid;border-bottom-color:transparent;border-right-color:transparent;width:8px;height:8px;transform:rotate(45deg);border-radius:1px}nv-popover>[data-scope=popover]>[slot=content]{position:relative;z-index:1}nv-popover>slot-fb{display:none}";const ln=an;const{state:fn}=cn({groups:new Map});const un=class{constructor(t){e(this,t);this.openChanged=o(this,"openChanged",7);this.eventsAttached=false;this.open=false;this.triggerMode="click";this.placement="bottom";this.offset=6;this.hasArrow=false;this.disableFlip=false;this.shiftPadding=16;this.enterDelay=0;this.nested=false;this.handleClickOutside=t=>{var n;if(this.el.contains(t.target))return;if((n=this.triggerElement)===null||n===void 0?void 0:n.contains(t.target))return;this.open=false};this.clickEvents=[["click",()=>this.open=!this.open]];this.outsideClickEvents=[["click",this.handleClickOutside],["touchstart",this.handleClickOutside]];this.hoverEvents=[["focus",()=>{clearTimeout(this.hideTimeout);this.showTimeout=setTimeout((()=>this.open=true),this.enterDelay)}],["blur",()=>{clearTimeout(this.showTimeout);this.hideTimeout=setTimeout((()=>this.open=false),50)}],["mouseenter",()=>{clearTimeout(this.hideTimeout);this.showTimeout=setTimeout((()=>this.open=true),this.enterDelay)}],["mouseleave",()=>{clearTimeout(this.showTimeout);this.hideTimeout=setTimeout((()=>this.open=false),100)}]];this.closeEvents=[["keydown",t=>{if(t.key==="Escape"){this.open=false}}]];this.isAnimating=false}async show(){this.open=true}async hide(){this.open=false}async toggle(){this.open=!this.open}attachEventListeners(){if(this.triggerElement&&!this.eventsAttached){l(this.closeEvents,document,this);if(this.triggerMode==="click"){l(this.clickEvents,this.triggerElement,this);l(this.outsideClickEvents,document,this)}if(this.triggerMode==="hover"){l(this.hoverEvents,this.triggerElement,this)}this.eventsAttached=true}}positionPopover(){if(!this.triggerElement)return;Jt(this.triggerElement,this.popoverElement,{placement:this.placement,middleware:[Vt(this.offset),!this.disableFlip&&Yt({fallbackStrategy:"bestFit",crossAxis:true,fallbackPlacements:["bottom"]}),Xt({padding:this.shiftPadding}),this.hasArrow&&qt({element:this.arrowElement})]}).then((({x:t,y:n,placement:e,middlewareData:o})=>{Object.assign(this.popoverElement.style,{left:`${t}px`,top:`${n}px`});if(this.hasArrow){const t={top:"bottom",right:"left",bottom:"top",left:"right"}[e.split("-")[0]];const n={top:"rotate(225deg)",right:"rotate(315deg)",bottom:"rotate(45deg)",left:"rotate(135deg)"}[e.split("-")[0]];const{x:s,y:i}=o.arrow;Object.assign(this.arrowElement.style,{left:s!=null?`${s}px`:"",top:i!=null?`${i}px`:"",right:"",bottom:"",transform:n,[t]:"-4px"})}}))}handleOpenChanged(t){var n;if(this.triggerMode==="controlled")return;if(this.nested)return;if((n=t.target)===null||n===void 0?void 0:n.hasAttribute("nested"))return;if(t.target!==this.el&&t.detail===true)this.open=false}async handleOpenChange(t){while(this.isAnimating){await new Promise((t=>setTimeout(t,50)))}this.isAnimating=true;const n=fn.groups.get(this.groupName);const e=n&&n.openedBy!==this.el;const o=n&&n.openedBy===this.el;if(t)this.popoverElement.style.removeProperty("display");if(o&&!t)fn.groups.delete(this.groupName);if(this.groupName&&t)fn.groups.set(this.groupName,{openedBy:this.el});const{growIn:s}=a(this.popoverElement,{duration:e?0:100,amount:.85});const{fadeOut:i}=c(this.popoverElement,{duration:e?0:100});if(t===true){this.popoverElement.removeAttribute("hidden");this.positionPopover();await s()}if(t===false){await i();this.popoverElement.setAttribute("hidden","")}this.isAnimating=false;this.openChanged.emit(t)}componentWillLoad(){if(!this.triggerElement)this.triggerElement=Array.from(this.el.children).find((t=>t.getAttribute("slot")==="trigger"))}componentWillUpdate(){this.attachEventListeners()}componentDidLoad(){if(!this.open){const{setGrowOut:t}=a(this.popoverElement);t()}else{const{setFadeIn:t}=c(this.popoverElement);t();this.popoverElement.removeAttribute("hidden")}this.positionPopover();this.attachEventListeners()}disconnectedCallback(){f(this.closeEvents,document,this);if(this.triggerMode==="click"){f(this.clickEvents,this.triggerElement,this);f(this.outsideClickEvents,document,this)}if(this.triggerMode==="hover")f(this.hoverEvents,this.triggerElement,this);this.eventsAttached=false;if(this.hideTimeout)clearTimeout(this.hideTimeout);if(this.showTimeout)clearTimeout(this.showTimeout)}render(){return s(i,{key:"830051c35f7e10dfa4e31d401663bd5727ac988f"},s("slot",{key:"a49852a712bf6ab9c8557035ca4618d007939f03",name:"trigger"}),s("div",{key:"6d9cd4bd873cb92b1716a8ea88a3877a029cbe9c","data-scope":"popover",hidden:true,ref:t=>this.popoverElement=t},this.hasArrow&&s("div",{key:"f935c9248b602aa1c39e7d28c5503a24067fb744","data-scope":"arrow",ref:t=>this.arrowElement=t}),s("slot",{key:"6b682de05037b2d3b60c9139c448620fab963ea1",name:"content"})))}get el(){return r(this)}static get watchers(){return{open:["handleOpenChange"]}}};un.style=ln;export{un as nv_popover};
|
|
2
|
+
//# sourceMappingURL=p-701b5557.entry.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e,c as t,h as r,a as n,g as i}from"./p-ab002252.js";import{I as o}from"./p-53aa81dd.js";import{v as a}from"./p-f5ff676c.js";import"./p-0462f723.js";const d='nv-fielddaterange{--nv-field-border-default:var(--components-form-field-border-default);--nv-field-border-hover:var(--components-form-field-border-hover);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--components-form-field-border-default);--nv-field-border-readonly:var(--components-form-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-brand);--nv-field-background:var(--components-form-field-background-default);display:flex;flex-direction:column;align-items:flex-start;gap:var(--form-gap-y);box-sizing:border-box}nv-fielddaterange[readonly]:not([readonly=false]){--nv-field-border-default:var(--components-form-field-border-readonly);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-background:var(--components-form-field-background-readonly)}nv-fielddaterange[error]:not([error=false]){--nv-field-border-default:var(--components-form-field-border-error);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-destructive)}nv-fielddaterange[success]:not([success=false]){--nv-field-border-default:var(--components-form-field-border-success);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-success)}nv-fielddaterange[required]:not([required=false]) label::after{content:"*";color:var(--components-form-text-required);font-weight:700}nv-fielddaterange label{display:flex;align-items:center;gap:var(--form-label-gap);align-self:stretch;color:var(--components-form-text-label-default);font-family:"TT Norms Pro", sans-serif;font-size:var(--form-label-font-size);font-style:normal;font-weight:500;line-height:var(--form-label-line-height)}nv-fielddaterange nv-popover{width:100%;display:block}nv-fielddaterange nv-popover [data-scope=popover]{padding:0;background-color:var(--components-list-dropdown-background);border:1px solid var(--components-list-dropdown-border);width:auto}nv-fielddaterange nv-popover [slot=content]{display:block;width:100%}nv-fielddaterange .input-wrapper{display:flex;flex-wrap:wrap;gap:var(--form-gap-x);align-items:stretch;align-self:stretch;display:flex;align-items:center;gap:8px}nv-fielddaterange .input-wrapper .input-container{display:flex;flex-grow:1;justify-content:center;align-items:center;align-self:stretch;border-radius:var(--form-field-radius);border-width:1px;border-style:solid;border-color:var(--nv-field-border-default);opacity:var(--components-form-opacity-default, 1);background:var(--nv-field-background);transition:all 150ms ease-out;position:relative;flex:1;min-width:0;padding-right:32px}nv-fielddaterange .input-wrapper .input-container:hover{border-color:var(--nv-field-border-hover)}nv-fielddaterange .input-wrapper .input-container:focus-within,nv-fielddaterange .input-wrapper .input-container:focus-within:hover,nv-fielddaterange .input-wrapper .input-container:focus,nv-fielddaterange .input-wrapper .input-container:focus:hover{border-color:var(--nv-field-border-focus);box-shadow:0px 0px 0px var(--focus-field-stroke) var(--nv-field-focus-box-shadow)}nv-fielddaterange .input-wrapper .input-container:has(input:read-only){opacity:0.5;background-color:var(--components-form-field-background-readonly);border-color:var(--nv-field-border-readonly)}nv-fielddaterange .input-wrapper .input-container:has(input:disabled){opacity:0.5;background-color:var(--components-form-field-background-disabled);border-color:var(--nv-field-border-disabled)}nv-fielddaterange .input-wrapper .input-container input{display:flex;align-items:center;flex:1 0 0;overflow:hidden;background-color:transparent;color:var(--components-form-field-content-text);padding:var(--form-field-padding-y) var(--form-field-padding-x);font-size:var(--form-field-font-size);font-style:normal;font-weight:500;line-height:var(--form-field-line-height);width:100%}nv-fielddaterange .input-wrapper .input-container input:focus{outline:none}nv-fielddaterange .input-wrapper .input-container input::placeholder{overflow:hidden;color:var(--components-form-field-content-placeholder);text-overflow:ellipsis;font-family:"TT Norms Pro", sans-serif;font-size:var(--form-field-font-size);font-style:normal;font-weight:400;line-height:var(--form-field-line-height)}nv-fielddaterange .input-wrapper .input-container nv-icon.validation{color:var(--nv-field-border-default)}nv-fielddaterange .input-wrapper .input-container .toggle-calendar-icon{position:absolute;right:0;top:50%;transform:translateY(-50%)}nv-fielddaterange .description{align-self:stretch;color:var(--components-form-text-description-default);font-family:"TT Norms Pro", sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height)}nv-fielddaterange .error-description{align-self:stretch;color:var(--components-form-text-description-default);font-family:"TT Norms Pro", sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height);color:var(--components-form-text-description-error)}nv-fielddaterange .range-inputs{display:flex;align-items:center;gap:8px;flex:1}nv-fielddaterange .range-inputs input{flex:1;border:none;outline:none;padding:0;font-size:var(--form-field-font-size);color:var(--components-form-field-content-text);background:transparent;min-width:0;text-align:center}nv-fielddaterange .range-inputs input::placeholder{color:var(--components-form-field-content-placeholder)}nv-fielddaterange .range-inputs input:disabled{cursor:not-allowed;color:var(--components-form-field-content-text);background-color:var(--components-form-field-background-disabled)}';const s=d;const l=class{constructor(r){e(this,r);this.dateRangeChange=t(this,"dateRangeChange",7);this.popoverId=a();this.startInputId=a();this.endInputId=a();this.disabled=false;this.readonly=false;this.required=false;this.error=false;this.success=false;this.shouldAutoFocus=false;this.value="";this.startValue="";this.endValue="";this.open=false;this.firstDayOfWeek=1;this.numberOfCalendars=2;this.min="";this.max="";this.locale="en-BE";this.dateFormat="YYYY-MM-DD";this.shortcutsPlacement="bottom";this.showActions=false;this.shortcuts="[]";this.showWeekNumbers=true;this.disabledDates="[]";this.handleClickOutside=e=>{if(this.open&&this.el&&!this.el.contains(e.target)){this.open=false}};this.handleStartInput=e=>{if(this.readonly||this.disabled){e.preventDefault();return}const t=e.target;this.startValue=t.value;this.dateRangeChange.emit({start:t.value,end:this.endValue})};this.handleEndInput=e=>{if(this.readonly||this.disabled){e.preventDefault();return}const t=e.target;this.endValue=t.value;this.dateRangeChange.emit({start:this.startValue,end:t.value})};this.handleFocus=e=>{if(this.readonly||this.disabled){e.preventDefault();e.target.blur();return}this.open=true};this.toggleCalendar=()=>{if(this.readonly||this.disabled){return}this.open=!this.open}}convertToInputmaskFormat(e){if(!e){return"dd/mm/yyyy"}const t={"YYYY-MM-DD":"yyyy-mm-dd","DD/MM/YYYY":"dd/mm/yyyy","MM/DD/YYYY":"mm/dd/yyyy","DD.MM.YYYY":"dd.mm.yyyy",YYYYMMDD:"yyyymmdd"};return t[e]||"dd/mm/yyyy"}connectedCallback(){document.addEventListener("click",this.handleClickOutside)}componentWillLoad(){if(this.value){try{const e=JSON.parse(this.value);this.startValue=e.start||"";this.endValue=e.end||""}catch(e){console.error("Invalid JSON for value:");console.error(e)}}}componentDidLoad(){const e=this.el.querySelectorAll(".input-wrapper input");e.forEach((e=>{const t=new o({alias:"datetime",inputFormat:this.convertToInputmaskFormat(this.dateFormat),placeholder:"_",clearIncomplete:false,showMaskOnHover:false,showMaskOnFocus:false,clearMaskOnLostFocus:false,insertMode:true,rightAlign:false,oncomplete:function(e){const t=e.target;const r=new CustomEvent("input",{bubbles:true});t.dispatchEvent(r)}});t.mask(e);if(e.name===this.startName&&this.startValue){requestAnimationFrame((()=>{e.value=this.startValue;const t=new CustomEvent("input",{bubbles:true});e.dispatchEvent(t)}))}else if(e.name===this.endName&&this.endValue){requestAnimationFrame((()=>{e.value=this.endValue;const t=new CustomEvent("input",{bubbles:true});e.dispatchEvent(t)}))}}))}componentDidRender(){const e=this.el.querySelectorAll(".input-wrapper input");e.forEach((e=>{const t=e.name===this.startName?this.startValue:this.endName?this.endValue:"";if(t){requestAnimationFrame((()=>{e.value=t;e.setAttribute("value",t)}))}}))}disconnectedCallback(){document.removeEventListener("click",this.handleClickOutside)}handleRangeDateChange(e){const{start:t,end:r}=e.detail||{};if(t&&r){this.startValue=t;this.endValue=r;this.dateRangeChange.emit({start:this.startValue,end:this.endValue});if(!this.showActions){this.open=false}}}handleClosePopover(){this.open=false}handleApplyDateRange(){this.open=false}handleKeyDown(e){if(!this.open){if(e.key==="ArrowDown"){this.open=true;e.preventDefault();return}return}if(!this.popoverElement){console.warn("nv-fielddaterange -> Popover element is not defined");return}}handleValueChange(e){try{const t=JSON.parse(e);this.startValue=t.start||"";this.endValue=t.end||""}catch(e){console.error("Invalid JSON for value:",e)}}render(){return r(n,{key:"357f98b39d7cade75f24caaba007eec4279cd24e"},(this.label&&this.label.length>0||this.el.querySelector('[slot="label"]'))&&r("label",{key:"0731f0d5ad79d323dade2f023f5a9c3088c744b2",htmlFor:this.startInputId},r("slot",{key:"75309cb4161e1652f0445ba924c6d7a58de140c3",name:"label"},this.label)),r("nv-popover",{key:"f66e2544956ea3dedd249719a4b436077bdc85c0",ref:e=>this.popoverElement=e,id:this.popoverId,triggerMode:"controlled",placement:"bottom-start",open:this.open},r("div",{key:"c1a3b117056a521f6f778a978b4bc8edac32a111",slot:"trigger",class:"input-wrapper"},r("slot",{key:"5fbe2aff9687456dd299792016904470386dfb94",name:"before-input"}),r("div",{key:"46726768e9724e983063479e0f301c3d09169669",class:"input-container"},r("slot",{key:"f4a405be4a98566bd40dc9d19087d2c5c0ac798f",name:"leading-input"}),r("div",{key:"d1abc5e239272e57f0fdbf4c0e9e76ca86230996",class:"range-inputs"},r("input",{key:"d13584d024b50162d47a74e68592c05206484876",id:this.startInputId,type:"text",placeholder:this.startPlaceholder,name:this.startName,disabled:this.disabled,readOnly:this.readonly,required:this.required,autofocus:this.shouldAutoFocus,value:this.startValue,onInput:this.handleStartInput,onFocus:this.handleFocus}),r("svg",{key:"641dda60614637939d8ffaa25052e8f2bcb234d8",xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-arrows-move-horizontal"},r("path",{key:"c6245bd4ffa2bb12df3a295a6a10ce8386b5f54b",stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),r("path",{key:"c1b3400148e367dae092eecec9da410cfa2e7547",d:"M18 9l3 3l-3 3"}),r("path",{key:"08bc414df54afe457775aec97897ed0acf2dca38",d:"M15 12h6"}),r("path",{key:"d9136526597df7a8193f71414caba9481248ebf2",d:"M6 9l-3 3l3 3"}),r("path",{key:"1d194b3449c53be3f05458ade789e99998861371",d:"M3 12h6"})),r("input",{key:"5ed58df2a2680b1fa66916f65c2dc48dc648e461",id:this.endInputId,type:"text",placeholder:this.endPlaceholder,name:this.endName,disabled:this.disabled,readOnly:this.readonly,required:this.required,value:this.endValue,onInput:this.handleEndInput,onFocus:this.handleFocus})),r("nv-iconbutton",{key:"e06b3a9326245e581998a60627634560be7124f0",class:"toggle-calendar-icon",name:"calendar",size:"md",emphasis:"lower","aria-label":this.open?"Hide calendar":"Show calendar","aria-pressed":this.open.toString(),onClick:this.toggleCalendar,tabIndex:this.disabled?-1:0})),r("slot",{key:"bf0ea3f63a5476e7ff4a6954fb200c15a493d6ac",name:"after-input"})),r("div",{key:"32fcfbafe86ce08d87d597d40ad25702dd059ed6",slot:"content"},r("nv-calendar",{key:"ef670618ecca933d976adefaec9996f172f95d7a",dateFormat:this.dateFormat,rangeValue:this.startValue&&this.endValue?JSON.stringify({start:this.startValue,end:this.endValue}):"",firstDayOfWeek:this.firstDayOfWeek,numberOfCalendars:this.numberOfCalendars,min:this.min,max:this.max,locale:this.locale,shortcutsPlacement:this.shortcutsPlacement,showActions:this.showActions,shortcuts:this.shortcuts,showWeekNumbers:this.showWeekNumbers,disabledDates:this.disabledDates,selectionType:"range"}))),(this.description&&this.description.length>0||this.el.querySelector('[slot="description"]'))&&r("div",{key:"15dbab39d7ceaf406246462812d8a1307dad40bb",class:"description"},r("slot",{key:"1c5f74676b312a6bbca659a783473da7c3936829",name:"description"},this.description)),(this.errorDescription||this.el.querySelector('[slot="error-description"]'))&&r("div",{key:"8f48ac666968cddfdd2c282366ed2f6dccd3013c",hidden:!this.error,class:"error-description"},this.el.querySelector('[slot="error-description"]')?r("slot",{name:"error-description"}):this.errorDescription),r("slot",{key:"92dc673a2d62a34d3830cf6644b84103b73b695b"}))}get el(){return i(this)}static get watchers(){return{value:["handleValueChange"]}}};l.style=s;export{l as nv_fielddaterange};
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as e,c as t,h as r,a as n,g as i}from"./p-ab002252.js";import{I as o}from"./p-53aa81dd.js";import{v as a}from"./p-f5ff676c.js";import"./p-0462f723.js";const d='nv-fielddaterange{--nv-field-border-default:var(--components-form-field-border-default);--nv-field-border-hover:var(--components-form-field-border-hover);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--components-form-field-border-default);--nv-field-border-readonly:var(--components-form-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-brand);--nv-field-background:var(--components-form-field-background-default);display:flex;flex-direction:column;align-items:flex-start;gap:var(--form-gap-y);box-sizing:border-box}nv-fielddaterange[readonly]:not([readonly=false]){--nv-field-border-default:var(--components-form-field-border-readonly);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-background:var(--components-form-field-background-readonly)}nv-fielddaterange[error]:not([error=false]){--nv-field-border-default:var(--components-form-field-border-error);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-destructive)}nv-fielddaterange[success]:not([success=false]){--nv-field-border-default:var(--components-form-field-border-success);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-success)}nv-fielddaterange[required]:not([required=false]) label::after{content:"*";color:var(--components-form-text-required);font-weight:700}nv-fielddaterange label{display:flex;align-items:center;gap:var(--form-label-gap);align-self:stretch;color:var(--components-form-text-label-default);font-family:"TT Norms Pro", sans-serif;font-size:var(--form-label-font-size);font-style:normal;font-weight:500;line-height:var(--form-label-line-height)}nv-fielddaterange nv-popover{width:100%;display:block}nv-fielddaterange nv-popover [data-scope=popover]{padding:0;background-color:var(--components-list-dropdown-background);border:1px solid var(--components-list-dropdown-border);width:auto}nv-fielddaterange nv-popover [slot=content]{display:block;width:100%}nv-fielddaterange .input-wrapper{display:flex;flex-wrap:wrap;gap:var(--form-gap-x);align-items:stretch;align-self:stretch;display:flex;align-items:center;gap:8px}nv-fielddaterange .input-wrapper .input-container{display:flex;flex-grow:1;justify-content:center;align-items:center;align-self:stretch;border-radius:var(--form-field-radius);border-width:1px;border-style:solid;border-color:var(--nv-field-border-default);opacity:var(--components-form-opacity-default, 1);background:var(--nv-field-background);transition:all 150ms ease-out;position:relative;flex:1;min-width:0;padding-right:32px}nv-fielddaterange .input-wrapper .input-container:hover{border-color:var(--nv-field-border-hover)}nv-fielddaterange .input-wrapper .input-container:focus-within,nv-fielddaterange .input-wrapper .input-container:focus-within:hover,nv-fielddaterange .input-wrapper .input-container:focus,nv-fielddaterange .input-wrapper .input-container:focus:hover{border-color:var(--nv-field-border-focus);box-shadow:0px 0px 0px var(--focus-field-stroke) var(--nv-field-focus-box-shadow)}nv-fielddaterange .input-wrapper .input-container:has(input:read-only){opacity:0.5;background-color:var(--components-form-field-background-readonly);border-color:var(--nv-field-border-readonly)}nv-fielddaterange .input-wrapper .input-container:has(input:disabled){opacity:0.5;background-color:var(--components-form-field-background-disabled);border-color:var(--nv-field-border-disabled)}nv-fielddaterange .input-wrapper .input-container input{display:flex;align-items:center;flex:1 0 0;overflow:hidden;background-color:transparent;color:var(--components-form-field-content-text);padding:var(--form-field-padding-y) var(--form-field-padding-x);font-size:var(--form-field-font-size);font-style:normal;font-weight:500;line-height:var(--form-field-line-height);width:100%}nv-fielddaterange .input-wrapper .input-container input:focus{outline:none}nv-fielddaterange .input-wrapper .input-container input::placeholder{overflow:hidden;color:var(--components-form-field-content-placeholder);text-overflow:ellipsis;font-family:"TT Norms Pro", sans-serif;font-size:var(--form-field-font-size);font-style:normal;font-weight:400;line-height:var(--form-field-line-height)}nv-fielddaterange .input-wrapper .input-container nv-icon.validation{color:var(--nv-field-border-default)}nv-fielddaterange .input-wrapper .input-container .toggle-calendar-icon{position:absolute;right:0;top:50%;transform:translateY(-50%)}nv-fielddaterange .description{align-self:stretch;color:var(--components-form-text-description-default);font-family:"TT Norms Pro", sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height)}nv-fielddaterange .error-description{align-self:stretch;color:var(--components-form-text-description-default);font-family:"TT Norms Pro", sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height);color:var(--components-form-text-description-error)}nv-fielddaterange .range-inputs{display:flex;align-items:center;gap:8px;flex:1}nv-fielddaterange .range-inputs input{flex:1;border:none;outline:none;padding:0;font-size:var(--form-field-font-size);color:var(--components-form-field-content-text);background:transparent;min-width:0;text-align:center}nv-fielddaterange .range-inputs input::placeholder{color:var(--components-form-field-content-placeholder)}nv-fielddaterange .range-inputs input:disabled{cursor:not-allowed;color:var(--components-form-field-content-text);background-color:var(--components-form-field-background-disabled)}';const s=d;const l=class{constructor(r){e(this,r);this.dateRangeChange=t(this,"dateRangeChange",7);this.popoverId=a();this.startInputId=a();this.endInputId=a();this.disabled=false;this.readonly=false;this.required=false;this.error=false;this.success=false;this.shouldAutoFocus=false;this.value="";this.startValue="";this.endValue="";this.open=false;this.firstDayOfWeek=1;this.numberOfCalendars=2;this.min="";this.max="";this.locale="en-BE";this.dateFormat="YYYY-MM-DD";this.shortcutsPlacement="bottom";this.showActions=false;this.shortcuts="[]";this.showWeekNumbers=true;this.disabledDates="[]";this.handleClickOutside=e=>{if(this.open&&this.el&&!this.el.contains(e.target)){this.open=false}};this.handleStartInput=e=>{if(this.readonly||this.disabled){e.preventDefault();return}const t=e.target;this.startValue=t.value;this.dateRangeChange.emit({start:t.value,end:this.endValue})};this.handleEndInput=e=>{if(this.readonly||this.disabled){e.preventDefault();return}const t=e.target;this.endValue=t.value;this.dateRangeChange.emit({start:this.startValue,end:t.value})};this.handleFocus=e=>{if(this.readonly||this.disabled){e.preventDefault();e.target.blur();return}this.open=true};this.toggleCalendar=()=>{if(this.readonly||this.disabled){return}this.open=!this.open}}convertToInputmaskFormat(e){if(!e){return"dd/mm/yyyy"}const t={"YYYY-MM-DD":"yyyy-mm-dd","DD/MM/YYYY":"dd/mm/yyyy","MM/DD/YYYY":"mm/dd/yyyy","DD.MM.YYYY":"dd.mm.yyyy",YYYYMMDD:"yyyymmdd"};return t[e]||"dd/mm/yyyy"}connectedCallback(){document.addEventListener("click",this.handleClickOutside)}componentWillLoad(){if(this.value){try{const e=JSON.parse(this.value);this.startValue=e.start||"";this.endValue=e.end||""}catch(e){console.error("Invalid JSON for value:");console.error(e)}}}componentDidLoad(){const e=this.el.querySelectorAll(".input-wrapper input");e.forEach((e=>{const t=new o({alias:"datetime",inputFormat:this.convertToInputmaskFormat(this.dateFormat),placeholder:"_",clearIncomplete:false,showMaskOnHover:false,showMaskOnFocus:false,clearMaskOnLostFocus:false,insertMode:true,rightAlign:false,oncomplete:function(e){const t=e.target;const r=new CustomEvent("input",{bubbles:true});t.dispatchEvent(r)}});t.mask(e);if(e.name===this.startName&&this.startValue){requestAnimationFrame((()=>{e.value=this.startValue;const t=new CustomEvent("input",{bubbles:true});e.dispatchEvent(t)}))}else if(e.name===this.endName&&this.endValue){requestAnimationFrame((()=>{e.value=this.endValue;const t=new CustomEvent("input",{bubbles:true});e.dispatchEvent(t)}))}}))}componentDidRender(){const e=this.el.querySelectorAll(".input-wrapper input");e.forEach((e=>{const t=e.name===this.startName?this.startValue:this.endName?this.endValue:"";if(t){requestAnimationFrame((()=>{e.value=t;e.setAttribute("value",t)}))}}))}disconnectedCallback(){document.removeEventListener("click",this.handleClickOutside)}handleRangeDateChange(e){const{start:t,end:r}=e.detail||{};if(t&&r){this.startValue=t;this.endValue=r;this.dateRangeChange.emit({start:this.startValue,end:this.endValue});if(!this.showActions){this.open=false}}}handleClosePopover(){this.open=false}handleApplyDateRange(){this.open=false}handleKeyDown(e){if(!this.open){if(e.key==="ArrowDown"){this.open=true;e.preventDefault();return}return}if(!this.popoverElement){console.warn("nv-fielddaterange -> Popover element is not defined");return}}handleValueChange(e){try{const t=JSON.parse(e);this.startValue=t.start||"";this.endValue=t.end||""}catch(e){console.error("Invalid JSON for value:",e)}}render(){return r(n,{key:"965223047219ae767b07ccecb0a00580ea39c232"},(this.label&&this.label.length>0||this.el.querySelector('[slot="label"]'))&&r("label",{key:"096d6a34148da30d61686024b5891e7e15cd92e2",htmlFor:this.startInputId},r("slot",{key:"ee6e84ef1927ad809e7dddb2f4ad5ef7380d0bca",name:"label"},this.label)),r("nv-popover",{key:"1a0549e85ab73157b379fcbcee014a7d85be9752",ref:e=>this.popoverElement=e,id:this.popoverId,triggerMode:"controlled",placement:"bottom-start",open:this.open},r("div",{key:"d9fc4c8f379e3c1884867c87bcaa67b2da1c64ae",slot:"trigger",class:"input-wrapper"},r("slot",{key:"4189696f3e877c19d4c24b09377b2ab0ce9aa437",name:"before-input"}),r("div",{key:"98025c8fc29121c736deb3042e961ef0eb1442fe",class:"input-container"},r("slot",{key:"897481f836e33fd70a7c3b083a4e9b3db87637f2",name:"leading-input"}),r("div",{key:"788df58693fafaf8c78645b81d1b09a828138ccf",class:"range-inputs"},r("input",{key:"7966b844668ca4cb02ac34886b62ee24cb7b1399",id:this.startInputId,type:"text",placeholder:this.startPlaceholder,name:this.startName,disabled:this.disabled,readOnly:this.readonly,required:this.required,autofocus:this.shouldAutoFocus,value:this.startValue,onInput:this.handleStartInput,onFocus:this.handleFocus}),r("svg",{key:"67c0b68f0fb32ce122f9d4e5b1240440f3b649d0",xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-arrows-move-horizontal"},r("path",{key:"eb68f32a768c1c48b51a45ddba3f85357b8045e6",stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),r("path",{key:"b8ccaf592dc2d36719a8418800a736b06d1c1775",d:"M18 9l3 3l-3 3"}),r("path",{key:"c4b8d8e8ffad9a339abcde63a9a0feb2ddc771d3",d:"M15 12h6"}),r("path",{key:"7a28c7086d7085163ff8d885acd7434b4e5ea69a",d:"M6 9l-3 3l3 3"}),r("path",{key:"39917978c25b13a270f0852818b31868f2034832",d:"M3 12h6"})),r("input",{key:"aaad42e407d1fe8e31a7e7c153e2d4cd35d8d2df",id:this.endInputId,type:"text",placeholder:this.endPlaceholder,name:this.endName,disabled:this.disabled,readOnly:this.readonly,required:this.required,value:this.endValue,onInput:this.handleEndInput,onFocus:this.handleFocus})),r("nv-iconbutton",{key:"04701e7bdf80a869f8a5f519141ac99c0077c20b",class:"toggle-calendar-icon",name:"calendar",size:"md",emphasis:"lower","aria-label":this.open?"Hide calendar":"Show calendar","aria-pressed":this.open.toString(),onClick:this.toggleCalendar,tabIndex:this.disabled?-1:0})),r("slot",{key:"cf1a48dcd20b4e363a746c9f26ecae8085e8ebbd",name:"after-input"})),r("div",{key:"a36a223b6d5edd30bb9a4590d059caede5412b6a",slot:"content"},r("nv-calendar",{key:"1ff22f214d648c4bb35455cf477529251c436e2d",dateFormat:this.dateFormat,rangeValue:this.startValue&&this.endValue?JSON.stringify({start:this.startValue,end:this.endValue}):"",firstDayOfWeek:this.firstDayOfWeek,numberOfCalendars:this.numberOfCalendars,min:this.min,max:this.max,locale:this.locale,shortcutsPlacement:this.shortcutsPlacement,showActions:this.showActions,shortcuts:this.shortcuts,showWeekNumbers:this.showWeekNumbers,disabledDates:this.disabledDates,selectionType:"range"}))),(this.description&&this.description.length>0||this.el.querySelector('[slot="description"]'))&&r("div",{key:"780f82060de810eb394285f4799511d2223312a3",class:"description"},r("slot",{key:"326cbf626387738b9997f3b4d452c50ea2b3d5b2",name:"description"},this.description)),(this.errorDescription||this.el.querySelector('[slot="error-description"]'))&&r("div",{key:"6043f611a60f14976b8572e975621fac57b18f89",hidden:!this.error,class:"error-description"},this.el.querySelector('[slot="error-description"]')?r("slot",{name:"error-description"}):this.errorDescription),r("slot",{key:"129fe5bcd6c5bd9449242dc6b4f0e1c90ae31082"}))}get el(){return i(this)}static get watchers(){return{value:["handleValueChange"]}}};l.style=s;export{l as nv_fielddaterange};
|
|
2
|
+
//# sourceMappingURL=p-7f5eb2ac.entry.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e,c as r,h as o,a as t,g as i}from"./p-ab002252.js";import{v as n}from"./p-f5ff676c.js";const d='nv-fieldtext{--nv-field-border-default:var(--components-form-field-border-default);--nv-field-border-hover:var(--components-form-field-border-hover);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--components-form-field-border-default);--nv-field-border-readonly:var(--components-form-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-brand);--nv-field-background:var(--components-form-field-background-default);display:flex;flex-direction:column;align-items:flex-start;gap:var(--form-gap-y);box-sizing:border-box}nv-fieldtext[readonly]:not([readonly=false]){--nv-field-border-default:var(--components-form-field-border-readonly);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-background:var(--components-form-field-background-readonly)}nv-fieldtext[error]:not([error=false]){--nv-field-border-default:var(--components-form-field-border-error);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-destructive)}nv-fieldtext[success]:not([success=false]){--nv-field-border-default:var(--components-form-field-border-success);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-success)}nv-fieldtext[required]:not([required=false]) label::after{content:"*";color:var(--components-form-text-required);font-weight:700}nv-fieldtext>label{display:flex;align-items:center;gap:var(--form-label-gap);align-self:stretch;color:var(--components-form-text-label-default);font-family:"TT Norms Pro", sans-serif;font-size:var(--form-label-font-size);font-style:normal;font-weight:500;line-height:var(--form-label-line-height)}nv-fieldtext>.input-wrapper{display:flex;flex-wrap:wrap;gap:var(--form-gap-x);align-items:stretch;align-self:stretch}nv-fieldtext>.input-wrapper .input-container{display:flex;flex-grow:1;justify-content:center;align-items:center;align-self:stretch;border-radius:var(--form-field-radius);border-width:1px;border-style:solid;border-color:var(--nv-field-border-default);opacity:var(--components-form-opacity-default, 1);background:var(--nv-field-background);transition:all 150ms ease-out}nv-fieldtext>.input-wrapper .input-container:hover{border-color:var(--nv-field-border-hover)}nv-fieldtext>.input-wrapper .input-container:focus-within,nv-fieldtext>.input-wrapper .input-container:focus-within:hover,nv-fieldtext>.input-wrapper .input-container:focus,nv-fieldtext>.input-wrapper .input-container:focus:hover{border-color:var(--nv-field-border-focus);box-shadow:0px 0px 0px var(--focus-field-stroke) var(--nv-field-focus-box-shadow)}nv-fieldtext>.input-wrapper .input-container:has(input:read-only){opacity:0.5;background-color:var(--components-form-field-background-readonly);border-color:var(--nv-field-border-readonly)}nv-fieldtext>.input-wrapper .input-container:has(input:disabled){opacity:0.5;background-color:var(--components-form-field-background-disabled);border-color:var(--nv-field-border-disabled)}nv-fieldtext>.input-wrapper .input-container input{display:flex;align-items:center;flex:1 0 0;overflow:hidden;background-color:transparent;color:var(--components-form-field-content-text);padding:var(--form-field-padding-y) var(--form-field-padding-x);font-size:var(--form-field-font-size);font-style:normal;font-weight:500;line-height:var(--form-field-line-height)}nv-fieldtext>.input-wrapper .input-container input:focus{outline:none}nv-fieldtext>.input-wrapper .input-container input::placeholder{overflow:hidden;color:var(--components-form-field-content-placeholder);text-overflow:ellipsis;font-family:"TT Norms Pro", sans-serif;font-size:var(--form-field-font-size);font-style:normal;font-weight:400;line-height:var(--form-field-line-height)}nv-fieldtext>.input-wrapper .input-container nv-icon.validation{color:var(--nv-field-border-default);margin-right:var(--form-gap-x)}nv-fieldtext>.description{align-self:stretch;color:var(--components-form-text-description-default);font-family:"TT Norms Pro", sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height)}nv-fieldtext>.error-description{align-self:stretch;color:var(--components-form-text-description-default);font-family:"TT Norms Pro", sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height);color:var(--components-form-text-description-error)}';const a=d;const l=class{constructor(o){e(this,o);this.valueChanged=r(this,"valueChanged",7);this.inputId=n();this.type="text";this.disabled=false;this.readonly=false;this.required=false;this.error=false;this.success=false;this.multiple=false;this.autofocus=false;this.handleInput=e=>{const r=e.target;this.value=r.value;this.valueChanged.emit(r.value)};this.handleInputContainerClick=()=>{this.inputElement.focus()}}componentWillRender(){if(this.textInputType){this.type=this.textInputType}if(this.message){this.description=this.message}if(this.validation){this.errorDescription=this.validation;this.error=true}}render(){return o(t,{key:"
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as e,c as r,h as o,a as t,g as i}from"./p-ab002252.js";import{v as n}from"./p-f5ff676c.js";const d='nv-fieldtext{--nv-field-border-default:var(--components-form-field-border-default);--nv-field-border-hover:var(--components-form-field-border-hover);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--components-form-field-border-default);--nv-field-border-readonly:var(--components-form-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-brand);--nv-field-background:var(--components-form-field-background-default);display:flex;flex-direction:column;align-items:flex-start;gap:var(--form-gap-y);box-sizing:border-box}nv-fieldtext[readonly]:not([readonly=false]){--nv-field-border-default:var(--components-form-field-border-readonly);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-background:var(--components-form-field-background-readonly)}nv-fieldtext[error]:not([error=false]){--nv-field-border-default:var(--components-form-field-border-error);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-destructive)}nv-fieldtext[success]:not([success=false]){--nv-field-border-default:var(--components-form-field-border-success);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-success)}nv-fieldtext[required]:not([required=false]) label::after{content:"*";color:var(--components-form-text-required);font-weight:700}nv-fieldtext>label{display:flex;align-items:center;gap:var(--form-label-gap);align-self:stretch;color:var(--components-form-text-label-default);font-family:"TT Norms Pro", sans-serif;font-size:var(--form-label-font-size);font-style:normal;font-weight:500;line-height:var(--form-label-line-height)}nv-fieldtext>.input-wrapper{display:flex;flex-wrap:wrap;gap:var(--form-gap-x);align-items:stretch;align-self:stretch}nv-fieldtext>.input-wrapper .input-container{display:flex;flex-grow:1;justify-content:center;align-items:center;align-self:stretch;border-radius:var(--form-field-radius);border-width:1px;border-style:solid;border-color:var(--nv-field-border-default);opacity:var(--components-form-opacity-default, 1);background:var(--nv-field-background);transition:all 150ms ease-out}nv-fieldtext>.input-wrapper .input-container:hover{border-color:var(--nv-field-border-hover)}nv-fieldtext>.input-wrapper .input-container:focus-within,nv-fieldtext>.input-wrapper .input-container:focus-within:hover,nv-fieldtext>.input-wrapper .input-container:focus,nv-fieldtext>.input-wrapper .input-container:focus:hover{border-color:var(--nv-field-border-focus);box-shadow:0px 0px 0px var(--focus-field-stroke) var(--nv-field-focus-box-shadow)}nv-fieldtext>.input-wrapper .input-container:has(input:read-only){opacity:0.5;background-color:var(--components-form-field-background-readonly);border-color:var(--nv-field-border-readonly)}nv-fieldtext>.input-wrapper .input-container:has(input:disabled){opacity:0.5;background-color:var(--components-form-field-background-disabled);border-color:var(--nv-field-border-disabled)}nv-fieldtext>.input-wrapper .input-container input{display:flex;align-items:center;flex:1 0 0;overflow:hidden;background-color:transparent;color:var(--components-form-field-content-text);padding:var(--form-field-padding-y) var(--form-field-padding-x);font-size:var(--form-field-font-size);font-style:normal;font-weight:500;line-height:var(--form-field-line-height)}nv-fieldtext>.input-wrapper .input-container input:focus{outline:none}nv-fieldtext>.input-wrapper .input-container input::placeholder{overflow:hidden;color:var(--components-form-field-content-placeholder);text-overflow:ellipsis;font-family:"TT Norms Pro", sans-serif;font-size:var(--form-field-font-size);font-style:normal;font-weight:400;line-height:var(--form-field-line-height)}nv-fieldtext>.input-wrapper .input-container nv-icon.validation{color:var(--nv-field-border-default);margin-right:var(--form-gap-x)}nv-fieldtext>.description{align-self:stretch;color:var(--components-form-text-description-default);font-family:"TT Norms Pro", sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height)}nv-fieldtext>.error-description{align-self:stretch;color:var(--components-form-text-description-default);font-family:"TT Norms Pro", sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height);color:var(--components-form-text-description-error)}';const a=d;const l=class{constructor(o){e(this,o);this.valueChanged=r(this,"valueChanged",7);this.inputId=n();this.type="text";this.disabled=false;this.readonly=false;this.required=false;this.error=false;this.success=false;this.multiple=false;this.autofocus=false;this.handleInput=e=>{const r=e.target;this.value=r.value;this.valueChanged.emit(r.value)};this.handleInputContainerClick=()=>{this.inputElement.focus()}}componentWillRender(){if(this.textInputType){this.type=this.textInputType}if(this.message){this.description=this.message}if(this.validation){this.errorDescription=this.validation;this.error=true}}render(){return o(t,{key:"e4891525becd4b0757ec380d45d9694ebc6c3318"},(this.label||this.el.querySelector('[slot="label"]'))&&o("label",{key:"1157e609be8150d014e9190dcf53f74bcee20119",htmlFor:this.inputId},o("slot",{key:"888fb12e994f6f4f47bc2be496cd74aeedb628c0",name:"label"},this.label)),o("div",{key:"0555b12dbbe5fa81f5af464d3b48c35b243aec32",class:"input-wrapper"},o("slot",{key:"5210a9b903c560775453741d8815286dbe8bbb53",name:"before-input"}),o("div",{key:"7bc11232dfa46706982bf3645054a7a1f67832f9",class:"input-container",onClick:this.handleInputContainerClick},o("slot",{key:"87abc6976b432a3dc51246c97564108f9baccff8",name:"leading-input"}),o("input",{key:"b0c3e30bc5363f6b49ea1361005e125826184016",id:this.inputId,ref:e=>this.inputElement=e,placeholder:this.placeholder,name:this.name,type:this.type,disabled:this.disabled,readOnly:this.readonly,required:this.required,maxlength:this.maxlength,minlength:this.minlength,pattern:this.pattern,autofocus:this.autofocus,autocomplete:this.autocomplete,multiple:this.multiple,value:this.value,onInput:this.handleInput}),this.error&&o("nv-icon",{key:"5e359bc40906bbf2c63eb7d196dd8294b15dd672",name:"alert-circle",class:"validation",size:"md"}),this.success&&o("nv-icon",{key:"4812b31e512bf388fa84f9d35a949de5f9b86d59",name:"circle-check",class:"validation",size:"md"})),o("slot",{key:"06922c63f02470be6c74ee6ba4bf93baabd03e57",name:"after-input"})),(this.description||this.el.querySelector('[slot="description"]'))&&o("div",{key:"960bcb53a55aed3e1b8cd1b193ad26f5c6b151fd",class:"description"},o("slot",{key:"07c09b8543e9b91928821a100869943de94a65a7",name:"description"},this.description)),(this.errorDescription||this.el.querySelector('[slot="error-description"]'))&&o("div",{key:"456d00a47f01f70938d99faa774da1a9e51b036d",hidden:!this.error,class:"error-description"},o("slot",{key:"590aef8c37efd2fa472c9b7b92fd82d29c4e6d39",name:"error-description"},this.errorDescription)))}static get formAssociated(){return true}get el(){return i(this)}};l.style=a;export{l as nv_fieldtext};
|
|
2
|
+
//# sourceMappingURL=p-84a73e2a.entry.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as e,h as a,a as b}from"./p-ab002252.js";const c=class{constructor(a){e(this,a);this.repeatTemplate=false}render(){return a(b,{key:"20839d4a0abfa07e55a49b434ad26e3ddaebb66b"},a("slot",{key:"2c1b24aef73e9be8e500d48741e4dc6a42ed6f06",name:"header"}),a("slot",{key:"cbc4bcbb080f8647c6f702e4a52411fe9be1f6ca",name:"cell"}))}};export{c as nv_datagridcolumn};
|
|
2
|
+
//# sourceMappingURL=p-9135fdf5.entry.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as e,c as r,h as a,a as t,g as o}from"./p-ab002252.js";import{c as i}from"./p-8a1a6e56.js";import{v as d}from"./p-f5ff676c.js";const n='nv-fieldtextarea{--nv-field-border-default:var(--components-form-field-border-default);--nv-field-border-hover:var(--components-form-field-border-hover);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--components-form-field-border-default);--nv-field-border-readonly:var(--components-form-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-brand);--nv-field-background:var(--components-form-field-background-default);display:flex;flex-direction:column;align-items:flex-start;gap:var(--form-gap-y);box-sizing:border-box}nv-fieldtextarea[readonly]:not([readonly=false]){--nv-field-border-default:var(--components-form-field-border-readonly);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-background:var(--components-form-field-background-readonly)}nv-fieldtextarea[error]:not([error=false]){--nv-field-border-default:var(--components-form-field-border-error);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-destructive)}nv-fieldtextarea[success]:not([success=false]){--nv-field-border-default:var(--components-form-field-border-success);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-success)}nv-fieldtextarea[required]:not([required=false]) label::after{content:"*";color:var(--components-form-text-required);font-weight:700}nv-fieldtextarea label{display:flex;align-items:center;gap:var(--form-label-gap);align-self:stretch;color:var(--components-form-text-label-default);font-family:"TT Norms Pro", sans-serif;font-size:var(--form-label-font-size);font-style:normal;font-weight:500;line-height:var(--form-label-line-height)}nv-fieldtextarea .textarea-wrapper{display:flex;flex-wrap:wrap;gap:var(--form-gap-x);align-items:stretch;align-self:stretch}nv-fieldtextarea .textarea-wrapper .textarea-container{display:flex;flex-grow:1;padding:calc(var(--form-field-padding-y) - 1px) var(--form-field-padding-x);justify-content:center;align-items:center;gap:var(--form-field-gap);align-self:stretch;border-radius:var(--form-field-radius);border-width:1px;border-style:solid;border-color:var(--nv-field-border-default);opacity:var(--components-form-opacity-default);background:var(--nv-field-background);transition:all 150ms ease-out}nv-fieldtextarea .textarea-wrapper .textarea-container:hover{border-color:var(--nv-field-border-hover)}nv-fieldtextarea .textarea-wrapper .textarea-container:focus-within{border-color:var(--nv-field-border-focus);box-shadow:0 0 0 var(--focus-field-stroke) var(--nv-field-focus-box-shadow)}nv-fieldtextarea .textarea-wrapper .textarea-container:has(textarea:read-only){opacity:0.5;background-color:var(--components-form-field-background-readonly);border-color:var(--nv-field-border-readonly)}nv-fieldtextarea .textarea-wrapper .textarea-container:has(textarea:disabled){opacity:0.5;background-color:var(--components-form-field-background-disabled);border-color:var(--nv-field-border-disabled)}nv-fieldtextarea .textarea-wrapper .textarea-container textarea{display:flex;align-items:center;flex:1 0 0;overflow:hidden;background-color:transparent;color:var(--components-form-field-content-text);text-overflow:ellipsis;font-size:var(--form-field-font-size);font-style:normal;font-weight:500;line-height:var(--form-field-line-height)}nv-fieldtextarea .textarea-wrapper .textarea-container textarea:focus{outline:none}nv-fieldtextarea .textarea-wrapper .textarea-container textarea::placeholder{overflow:hidden;color:var(--components-form-field-content-placeholder);text-overflow:ellipsis;font-family:"TT Norms Pro", sans-serif;font-size:var(--form-field-font-size);font-style:normal;font-weight:400;line-height:var(--form-field-line-height)}nv-fieldtextarea .textarea-wrapper .textarea-container nv-icon.validation{color:var(--nv-field-border-default)}nv-fieldtextarea .description{align-self:stretch;color:var(--components-form-text-description-default);font-family:"TT Norms Pro", sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height)}nv-fieldtextarea .error-description{align-self:stretch;color:var(--components-form-text-description-default);font-family:"TT Norms Pro", sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height);color:var(--components-form-text-description-error)}';const s=n;const l=class{constructor(a){e(this,a);this.valueChanged=r(this,"valueChanged",7);this.inputId=d();this.disabled=false;this.readonly=false;this.required=false;this.error=false;this.success=false;this.rows=3;this.resize="vertical";this.autosize=false;this.autofocus=false;this.handleTextarea=e=>{const r=e.target;this.value=r.value;this.valueChanged.emit(r.value)};this.handleTextareaContainerClick=()=>{this.textareaElement.focus()}}rowsChanged(){if(this.autosize){this.adjustTextareaHeight()}}autosizeChanged(){var e;if(this.autosize){this.adjustTextareaHeight()}else{(e=this.textareaElement)===null||e===void 0?void 0:e.style.removeProperty("height")}}handleValueChange(){if(this.autosize){this.adjustTextareaHeight()}}adjustTextareaHeight(){if(this.textareaElement&&this.autosize){requestAnimationFrame((()=>{requestAnimationFrame((()=>{this.textareaElement.style.height="auto";const e=window.getComputedStyle(this.textareaElement);const r=parseFloat(e.lineHeight);const a=parseFloat(e.paddingTop);const t=parseFloat(e.paddingBottom);const o=parseFloat(e.borderTopWidth);const i=parseFloat(e.borderBottomWidth);const d=r*this.rows+a+t+o+i;this.textareaElement.style.minHeight=`${d}px`;this.textareaElement.style.height=this.textareaElement.scrollHeight+"px"}))}))}}componentWillRender(){if(this.message){this.description=this.message}if(this.validation){this.errorDescription=this.validation;this.error=true}}componentDidLoad(){if(this.autosize){this.adjustTextareaHeight()}}render(){return a(t,{key:"606902cda67b3f523ab32d8e9c6fd11b6bc0f3a7"},(this.label||this.el.querySelector('[slot="label"]'))&&a("label",{key:"3167dfd5f17028ad20a82b5646ccfa788a5bbb86",htmlFor:this.inputId},a("slot",{key:"ae98d87f3e1b7cb2864b6b7e7183d3a37c1a7e14",name:"label"},this.label)),a("div",{key:"8f25bdadd8f94938dc9b6c631b0586fc6bcbc37c",class:"textarea-wrapper"},a("div",{key:"6568df9f332e8bca84445ba596d6eceaaed64b9e",class:"textarea-container",onClick:this.handleTextareaContainerClick},a("textarea",{key:"fca9ba5bd6925cc1a201625e5785ad451fc8849b",id:this.inputId,ref:e=>this.textareaElement=e,placeholder:this.placeholder,autofocus:this.autofocus,name:this.name,disabled:this.disabled,readOnly:this.readonly,required:this.required,maxlength:this.maxlength,minlength:this.minlength,autocomplete:"off",value:this.value,onInput:this.handleTextarea,rows:this.rows,class:i(this.resize==="none"&&"resize-none",this.resize==="vertical"&&"resize-y",this.resize==="horizontal"&&"resize-x",this.resize==="both"&&"resize")}))),(this.description||this.el.querySelector('[slot="description"]'))&&a("div",{key:"c5c8c1999105df446a603a3e02f431ad37de4c5e",class:"description"},a("slot",{key:"bbcea14c7585e1ff1c995eb4f21cb532a160ed40",name:"description"},this.description)),(this.errorDescription||this.el.querySelector('[slot="error-description"]'))&&a("div",{key:"2d43d92b5c9b93faeac45bdcfa142d4dfd70511a",hidden:!this.error,class:"error-description"},a("slot",{key:"33514ea705969b353f11c49ca65090706e6aadf8",name:"error-description"},this.errorDescription)))}static get formAssociated(){return true}get el(){return o(this)}static get watchers(){return{rows:["rowsChanged"],autosize:["autosizeChanged"],value:["handleValueChange"]}}};l.style=s;export{l as nv_fieldtextarea};
|
|
2
|
+
//# sourceMappingURL=p-93dc2f47.entry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["nvFieldtextareaCss","NvFieldtextareaStyle0","NvFieldtextarea","constructor","hostRef","this","inputId","uuidv4","disabled","readonly","required","error","success","rows","resize","autosize","autofocus","handleTextarea","event","textarea","target","value","valueChanged","emit","handleTextareaContainerClick","textareaElement","focus","rowsChanged","adjustTextareaHeight","autosizeChanged","_a","style","removeProperty","handleValueChange","requestAnimationFrame","height","computedStyle","window","getComputedStyle","lineHeight","parseFloat","paddingTop","paddingBottom","borderTopWidth","borderBottomWidth","minHeight","scrollHeight","componentWillRender","message","description","validation","errorDescription","componentDidLoad","render","h","Host","key","label","el","querySelector","htmlFor","name","class","onClick","id","ref","e","placeholder","readOnly","maxlength","minlength","autocomplete","onInput","clsx","hidden"],"sources":["src/components/nv-fieldtextarea/nv-fieldtextarea.scss?tag=nv-fieldtextarea","src/components/nv-fieldtextarea/nv-fieldtextarea.tsx"],"sourcesContent":["@import \"../../styles/form-field\";\n\n@mixin form-field-textarea-wrapper() {\n display: flex;\n flex-wrap: wrap;\n gap: var(--form-gap-x);\n align-items: stretch;\n align-self: stretch;\n}\n\n@mixin form-field-textarea-container() {\n display: flex;\n flex-grow: 1;\n padding: calc(var(--form-field-padding-y) - 1px) var(--form-field-padding-x);\n justify-content: center;\n align-items: center;\n gap: var(--form-field-gap);\n align-self: stretch;\n border-radius: var(--form-field-radius);\n border-width: 1px;\n border-style: solid;\n border-color: var(--nv-field-border-default);\n opacity: var(--components-form-opacity-default);\n background: var(--nv-field-background);\n transition: all 150ms ease-out;\n\n &:hover {\n border-color: var(--nv-field-border-hover);\n }\n\n &:focus-within {\n border-color: var(--nv-field-border-focus);\n box-shadow: 0 0 0 var(--focus-field-stroke) var(--nv-field-focus-box-shadow);\n }\n // Keep ReadOnly before Disabled\n &:has(textarea:read-only) {\n // opacity: var(--components-form-opacity-readonly, 0.5); broken token generation, is 50px instead of 0.5\n opacity: 0.5;\n background-color: var(--components-form-field-background-readonly);\n border-color: var(--nv-field-border-readonly);\n }\n\n &:has(textarea:disabled) {\n // opacity: var(--components-form-opacity-disabled, 0.5); broken token generation, is 50px instead of 0.5\n opacity: 0.5;\n background-color: var(--components-form-field-background-disabled);\n border-color: var(--nv-field-border-disabled);\n }\n}\n\n@mixin form-field-textarea() {\n display: flex;\n align-items: center;\n flex: 1 0 0;\n overflow: hidden;\n background-color: transparent;\n color: var(--components-form-field-content-text);\n text-overflow: ellipsis;\n font-size: var(--form-field-font-size);\n font-style: normal;\n font-weight: 500;\n line-height: var(--form-field-line-height);\n\n &:focus {\n outline: none;\n }\n\n &::placeholder {\n overflow: hidden;\n color: var(--components-form-field-content-placeholder);\n text-overflow: ellipsis;\n font-family: \"TT Norms Pro\", sans-serif;\n font-size: var(--form-field-font-size);\n font-style: normal;\n font-weight: 400;\n line-height: var(--form-field-line-height);\n }\n}\n\nnv-fieldtextarea {\n @include form-field-variables();\n @include form-field-root();\n\n &[readonly]:not([readonly=\"false\"]) {\n @include form-field-readonly-variables();\n }\n\n &[error]:not([error=\"false\"]) {\n @include form-field-error-variables();\n }\n\n &[success]:not([success=\"false\"]) {\n @include form-field-success-variables();\n }\n\n &[required]:not([required=\"false\"]) label {\n @include form-field-label-required();\n }\n\n label {\n @include form-field-label();\n }\n\n .textarea-wrapper {\n @include form-field-textarea-wrapper();\n\n .textarea-container {\n @include form-field-textarea-container();\n\n textarea {\n @include form-field-textarea();\n }\n\n nv-icon.validation {\n @include form-field-icon();\n }\n }\n }\n\n .description {\n @include form-field-description();\n }\n\n .error-description {\n @include form-field-error-description();\n }\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n Event,\n EventEmitter,\n Element,\n Watch,\n} from '@stencil/core';\nimport { v4 as uuidv4 } from 'uuid';\nimport clsx from 'clsx';\n\n/**\n * @slot label - Content to be placed as the label, will override the label prop.\n * @slot description - Content to be placed as the description, will override the description prop.\n * @slot error-description - Content to be placed as the error description, will override the errorDescription prop.\n */\n@Component({\n tag: 'nv-fieldtextarea',\n shadow: false,\n formAssociated: true,\n styleUrl: 'nv-fieldtextarea.scss',\n})\nexport class NvFieldtextarea {\n @Element() el: HTMLNvFieldtextareaElement;\n private textareaElement!: HTMLTextAreaElement;\n\n /****************************************************************************/\n //#region DEPRECATED\n\n /**\n * Message defines a 'hint ' message for the Text Field.\n * @deprecated Use `description` instead.\n */\n @Prop({ reflect: true })\n readonly message: string;\n\n /**\n * Add the message to the validation state.\n * @deprecated Use `errorDescription` and set the error prop instead.\n */\n @Prop({ reflect: true })\n readonly validation: string;\n\n //#endregion DEPRECATED\n /****************************************************************************/\n //#region PROPERTIES\n\n /**\n * Sets the ID for the input element and the for attribute of the associated\n * label. If no ID is provided, a random one will be automatically generated\n * to ensure unique identification, facilitating proper label association and\n * accessibility.\n */\n @Prop({ reflect: true })\n readonly inputId: string = uuidv4();\n\n /**\n * Lets you define the text that explains what users should enter in the text\n * textarea field. It’s a crucial element for making forms clear and\n * user-friendly.\n */\n @Prop({ reflect: true })\n readonly label: string;\n\n /**\n * Add helpful hints or extra information under the text textarea field. This is\n * where you can clarify what users should enter or provide additional\n * instructions, making the form easier to fill out correctly.\n */\n @Prop({ reflect: true, mutable: true })\n description: string;\n\n /**\n * Display temporary text inside the textarea field to give users a hint about\n * what to type. It’s a great way to provide examples or suggestions directly\n * in the field before they start typing.\n */\n @Prop({ reflect: true })\n readonly placeholder: string;\n\n /**\n * Defines the name attribute of the textarea field, which is crucial for form\n * submission. This value is used as the key in the key-value pair sent to\n * the server, representing the textarea’s data in form submissions. It should be\n * unique within the form to avoid conflicts\n */\n @Prop({ reflect: true })\n readonly name: string;\n\n /**\n * Specifies the value of the textarea field, which determines the text displayed\n * within the field. This prop is typically used in controlled components\n * where the textarea’s value is managed by the component’s state.\n */\n @Prop({ reflect: true, mutable: true })\n value: string;\n\n /**\n * The disabled prop lets you turn off the textarea field so that users can’t\n * type in it. When disabled, the field is grayed out and won’t respond to#\n * clicks or touches.\n */\n @Prop({ reflect: true })\n readonly disabled: boolean = false;\n\n /**\n * Display the textarea field’s content without allowing users to change it.\n * Users can still click on it, select, and copy the text, but they won’t be\n * able to type or delete anything.\n */\n @Prop({ reflect: true })\n readonly readonly: boolean = false;\n\n /**\n * Marks the textarea field as required, ensuring that the user must fill it out\n * before submitting the form.\n */\n @Prop({ reflect: true })\n readonly required: boolean = false;\n\n /**\n * Alters the textarea field’s appearance to indicate an error, helping users\n * identify fields that need correction.\n * @validator error\n */\n @Prop({ reflect: true, mutable: true })\n error: boolean = false;\n\n /**\n * Show a helpful message under the textarea field when there’s a problem. It\n * explains what’s wrong and how users can fix it, making the error easier to\n * understand and resolve.\n * @validator message\n */\n @Prop({ reflect: true, mutable: true })\n errorDescription: string;\n\n /**\n * Changes the textarea field’s appearance to indicate successful textarea or\n * validation.\n */\n @Prop({ reflect: true })\n readonly success: boolean = false;\n\n /**\n * Limits how many characters users can type into the textarea field. It’s\n * helpful for making sure users don’t enter too much information, keeping\n * their textarea within the allowed limit.\n */\n @Prop({ reflect: true })\n readonly maxlength: number;\n\n /**\n * Ensures that users type at least a certain number of characters into the\n * textarea field. It’s a way to make sure users provide enough information\n * before moving on.\n */\n @Prop({ reflect: true })\n readonly minlength: number;\n\n /**\n * The number of visible text lines for the control. The default is 3. This\n * can be useful when you want to limit the size of the textarea field or when\n * you want to make the textarea field smaller to fit a specific layout. The\n * textarea field will expand vertically to fit the text as the user types.\n */\n @Prop({ reflect: true })\n readonly rows: number = 3;\n\n /**\n * Controls the resize property of a textarea. It can be set to none, both,\n * horizontal, or vertical. The default is vertical.\n */\n @Prop({ reflect: true })\n readonly resize: 'none' | 'both' | 'horizontal' | 'vertical' = 'vertical';\n\n /**\n * Enable this to make the textarea automatically resize as the user types,\n * adjusting the height to fit the content. For the best experience, avoid\n * vertical resizing, as it’s controlled by this feature. Horizontal resizing\n * can still be allowed if desired.\n */\n @Prop({ reflect: true })\n readonly autosize: boolean = false;\n\n /**\n * Applies focus to the input field as soon as the component is mounted. This\n * is equivalent to setting the native autofocus attribute on a <textarea>\n * element.\n */\n @Prop({ reflect: true })\n // eslint-disable-next-line @stencil-community/reserved-member-names\n readonly autofocus: boolean = false;\n\n //#endregion PROPERTIES\n /****************************************************************************/\n //#region EVENTS\n\n /**\n * Emitted when the textarea value changes.\n * @bind value\n */\n @Event()\n valueChanged: EventEmitter<string>;\n\n //#endregion EVENTS\n /****************************************************************************/\n //#region WATCHERS\n\n /**\n * If autosize is true, we need to make sure to update the min-height when\n * the rows change.\n */\n @Watch('rows')\n rowsChanged() {\n if (this.autosize) {\n this.adjustTextareaHeight();\n }\n }\n\n /**\n * If autosize is true, we need to make sure to update the height and\n * min-height, if false, we need to remove the height property.\n */\n @Watch('autosize')\n autosizeChanged() {\n if (this.autosize) {\n this.adjustTextareaHeight();\n } else {\n this.textareaElement?.style.removeProperty('height');\n }\n }\n\n /**\n * Make sure to adjust the height of the textarea when the value changes\n * programmatically or by typing when autosize is on.\n */\n @Watch('value')\n handleValueChange() {\n if (this.autosize) {\n this.adjustTextareaHeight();\n }\n }\n\n //#endregion WATCHERS\n /****************************************************************************/\n //#region METHODS\n\n private handleTextarea = (event: Event) => {\n const textarea = event.target as HTMLTextAreaElement;\n this.value = textarea.value;\n this.valueChanged.emit(textarea.value);\n };\n\n private handleTextareaContainerClick = () => {\n this.textareaElement.focus();\n };\n\n private adjustTextareaHeight() {\n if (this.textareaElement && this.autosize) {\n /**\n * The first requestAnimationFrame ensures that the DOM has applied any\n * pending changes (e.g., value updates or attribute changes) before\n * proceeding to the next frame.\n */\n requestAnimationFrame(() => {\n /**\n * The second requestAnimationFrame ensures that the browser has fully\n * recalculated layout and styles based on the updated DOM, such as\n * recalculating scrollHeight for the textarea after the new value is\n * rendered.\n */\n requestAnimationFrame(() => {\n this.textareaElement.style.height = 'auto';\n\n const computedStyle = window.getComputedStyle(this.textareaElement);\n const lineHeight = parseFloat(computedStyle.lineHeight);\n const paddingTop = parseFloat(computedStyle.paddingTop);\n const paddingBottom = parseFloat(computedStyle.paddingBottom);\n const borderTopWidth = parseFloat(computedStyle.borderTopWidth);\n const borderBottomWidth = parseFloat(computedStyle.borderBottomWidth);\n\n // Calculate min-height based on rows\n const minHeight =\n lineHeight * this.rows +\n paddingTop +\n paddingBottom +\n borderTopWidth +\n borderBottomWidth;\n\n this.textareaElement.style.minHeight = `${minHeight}px`;\n this.textareaElement.style.height =\n this.textareaElement.scrollHeight + 'px';\n });\n });\n }\n }\n\n //#endregion METHODS\n /****************************************************************************/\n //#region LIFECYCLE\n\n componentWillRender() {\n if (this.message) {\n this.description = this.message;\n }\n\n if (this.validation) {\n this.errorDescription = this.validation;\n this.error = true;\n }\n }\n\n componentDidLoad() {\n if (this.autosize) {\n this.adjustTextareaHeight();\n }\n }\n\n //#endregion LIFECYCLE\n /****************************************************************************/\n //#region RENDER\n\n render() {\n return (\n <Host>\n {(this.label || this.el.querySelector('[slot=\"label\"]')) && (\n <label htmlFor={this.inputId}>\n <slot name=\"label\">{this.label}</slot>\n </label>\n )}\n\n <div class=\"textarea-wrapper\">\n <div\n class=\"textarea-container\"\n onClick={this.handleTextareaContainerClick}\n >\n <textarea\n id={this.inputId}\n ref={e => (this.textareaElement = e)}\n placeholder={this.placeholder}\n autofocus={this.autofocus}\n name={this.name}\n disabled={this.disabled}\n readOnly={this.readonly}\n required={this.required}\n maxlength={this.maxlength}\n minlength={this.minlength}\n autocomplete=\"off\"\n value={this.value}\n onInput={this.handleTextarea}\n rows={this.rows}\n class={clsx(\n this.resize === 'none' && 'resize-none',\n this.resize === 'vertical' && 'resize-y',\n this.resize === 'horizontal' && 'resize-x',\n this.resize === 'both' && 'resize',\n )}\n />\n </div>\n </div>\n\n {(this.description ||\n this.el.querySelector('[slot=\"description\"]')) && (\n <div class=\"description\">\n <slot name=\"description\">{this.description}</slot>\n </div>\n )}\n\n {(this.errorDescription ||\n this.el.querySelector('[slot=\"error-description\"]')) && (\n <div hidden={!this.error} class=\"error-description\">\n <slot name=\"error-description\">{this.errorDescription}</slot>\n </div>\n )}\n </Host>\n );\n }\n\n //#endregion RENDER\n}\n"],"mappings":"mIAAA,MAAMA,EAAqB,21JAC3B,MAAAC,EAAeD,E,MCuBFE,EAAe,MAN5B,WAAAC,CAAAC,G,qDAsCWC,KAAAC,QAAkBC,IAiDlBF,KAAAG,SAAoB,MAQpBH,KAAAI,SAAoB,MAOpBJ,KAAAK,SAAoB,MAQ7BL,KAAAM,MAAiB,MAgBRN,KAAAO,QAAmB,MAyBnBP,KAAAQ,KAAe,EAOfR,KAAAS,OAAsD,WAStDT,KAAAU,SAAoB,MASpBV,KAAAW,UAAqB,MAwDtBX,KAAAY,eAAkBC,IACxB,MAAMC,EAAWD,EAAME,OACvBf,KAAKgB,MAAQF,EAASE,MACtBhB,KAAKiB,aAAaC,KAAKJ,EAASE,MAAM,EAGhChB,KAAAmB,6BAA+B,KACrCnB,KAAKoB,gBAAgBC,OAAO,C,CAzC9B,WAAAC,GACE,GAAItB,KAAKU,SAAU,CACjBV,KAAKuB,sB,EAST,eAAAC,G,MACE,GAAIxB,KAAKU,SAAU,CACjBV,KAAKuB,sB,KACA,EACLE,EAAAzB,KAAKoB,mBAAe,MAAAK,SAAA,SAAAA,EAAEC,MAAMC,eAAe,S,EAS/C,iBAAAC,GACE,GAAI5B,KAAKU,SAAU,CACjBV,KAAKuB,sB,EAkBD,oBAAAA,GACN,GAAIvB,KAAKoB,iBAAmBpB,KAAKU,SAAU,CAMzCmB,uBAAsB,KAOpBA,uBAAsB,KACpB7B,KAAKoB,gBAAgBM,MAAMI,OAAS,OAEpC,MAAMC,EAAgBC,OAAOC,iBAAiBjC,KAAKoB,iBACnD,MAAMc,EAAaC,WAAWJ,EAAcG,YAC5C,MAAME,EAAaD,WAAWJ,EAAcK,YAC5C,MAAMC,EAAgBF,WAAWJ,EAAcM,eAC/C,MAAMC,EAAiBH,WAAWJ,EAAcO,gBAChD,MAAMC,EAAoBJ,WAAWJ,EAAcQ,mBAGnD,MAAMC,EACJN,EAAalC,KAAKQ,KAClB4B,EACAC,EACAC,EACAC,EAEFvC,KAAKoB,gBAAgBM,MAAMc,UAAY,GAAGA,MAC1CxC,KAAKoB,gBAAgBM,MAAMI,OACzB9B,KAAKoB,gBAAgBqB,aAAe,IAAI,GAC1C,G,EASR,mBAAAC,GACE,GAAI1C,KAAK2C,QAAS,CAChB3C,KAAK4C,YAAc5C,KAAK2C,O,CAG1B,GAAI3C,KAAK6C,WAAY,CACnB7C,KAAK8C,iBAAmB9C,KAAK6C,WAC7B7C,KAAKM,MAAQ,I,EAIjB,gBAAAyC,GACE,GAAI/C,KAAKU,SAAU,CACjBV,KAAKuB,sB,EAQT,MAAAyB,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,6CACDnD,KAAKoD,OAASpD,KAAKqD,GAAGC,cAAc,oBACpCL,EAAA,SAAAE,IAAA,2CAAOI,QAASvD,KAAKC,SACnBgD,EAAA,QAAAE,IAAA,2CAAMK,KAAK,SAASxD,KAAKoD,QAI7BH,EAAA,OAAAE,IAAA,2CAAKM,MAAM,oBACTR,EAAA,OAAAE,IAAA,2CACEM,MAAM,qBACNC,QAAS1D,KAAKmB,8BAEd8B,EAAA,YAAAE,IAAA,2CACEQ,GAAI3D,KAAKC,QACT2D,IAAKC,GAAM7D,KAAKoB,gBAAkByC,EAClCC,YAAa9D,KAAK8D,YAClBnD,UAAWX,KAAKW,UAChB6C,KAAMxD,KAAKwD,KACXrD,SAAUH,KAAKG,SACf4D,SAAU/D,KAAKI,SACfC,SAAUL,KAAKK,SACf2D,UAAWhE,KAAKgE,UAChBC,UAAWjE,KAAKiE,UAChBC,aAAa,MACblD,MAAOhB,KAAKgB,MACZmD,QAASnE,KAAKY,eACdJ,KAAMR,KAAKQ,KACXiD,MAAOW,EACLpE,KAAKS,SAAW,QAAU,cAC1BT,KAAKS,SAAW,YAAc,WAC9BT,KAAKS,SAAW,cAAgB,WAChCT,KAAKS,SAAW,QAAU,eAMhCT,KAAK4C,aACL5C,KAAKqD,GAAGC,cAAc,0BACtBL,EAAA,OAAAE,IAAA,2CAAKM,MAAM,eACTR,EAAA,QAAAE,IAAA,2CAAMK,KAAK,eAAexD,KAAK4C,eAIjC5C,KAAK8C,kBACL9C,KAAKqD,GAAGC,cAAc,gCACtBL,EAAA,OAAAE,IAAA,2CAAKkB,QAASrE,KAAKM,MAAOmD,MAAM,qBAC9BR,EAAA,QAAAE,IAAA,2CAAMK,KAAK,qBAAqBxD,KAAK8C,mB","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["nvFieldtextareaCss","NvFieldtextareaStyle0","NvFieldtextarea","constructor","hostRef","this","inputId","uuidv4","disabled","readonly","required","error","success","rows","resize","autosize","autofocus","handleTextarea","event","textarea","target","value","valueChanged","emit","handleTextareaContainerClick","textareaElement","focus","rowsChanged","adjustTextareaHeight","autosizeChanged","_a","style","removeProperty","handleValueChange","requestAnimationFrame","height","computedStyle","window","getComputedStyle","lineHeight","parseFloat","paddingTop","paddingBottom","borderTopWidth","borderBottomWidth","minHeight","scrollHeight","componentWillRender","message","description","validation","errorDescription","componentDidLoad","render","h","Host","key","label","el","querySelector","htmlFor","name","class","onClick","id","ref","e","placeholder","readOnly","maxlength","minlength","autocomplete","onInput","clsx","hidden"],"sources":["src/components/nv-fieldtextarea/nv-fieldtextarea.scss?tag=nv-fieldtextarea","src/components/nv-fieldtextarea/nv-fieldtextarea.tsx"],"sourcesContent":["@import \"../../styles/form-field\";\n\n@mixin form-field-textarea-wrapper() {\n display: flex;\n flex-wrap: wrap;\n gap: var(--form-gap-x);\n align-items: stretch;\n align-self: stretch;\n}\n\n@mixin form-field-textarea-container() {\n display: flex;\n flex-grow: 1;\n padding: calc(var(--form-field-padding-y) - 1px) var(--form-field-padding-x);\n justify-content: center;\n align-items: center;\n gap: var(--form-field-gap);\n align-self: stretch;\n border-radius: var(--form-field-radius);\n border-width: 1px;\n border-style: solid;\n border-color: var(--nv-field-border-default);\n opacity: var(--components-form-opacity-default);\n background: var(--nv-field-background);\n transition: all 150ms ease-out;\n\n &:hover {\n border-color: var(--nv-field-border-hover);\n }\n\n &:focus-within {\n border-color: var(--nv-field-border-focus);\n box-shadow: 0 0 0 var(--focus-field-stroke) var(--nv-field-focus-box-shadow);\n }\n // Keep ReadOnly before Disabled\n &:has(textarea:read-only) {\n // opacity: var(--components-form-opacity-readonly, 0.5); broken token generation, is 50px instead of 0.5\n opacity: 0.5;\n background-color: var(--components-form-field-background-readonly);\n border-color: var(--nv-field-border-readonly);\n }\n\n &:has(textarea:disabled) {\n // opacity: var(--components-form-opacity-disabled, 0.5); broken token generation, is 50px instead of 0.5\n opacity: 0.5;\n background-color: var(--components-form-field-background-disabled);\n border-color: var(--nv-field-border-disabled);\n }\n}\n\n@mixin form-field-textarea() {\n display: flex;\n align-items: center;\n flex: 1 0 0;\n overflow: hidden;\n background-color: transparent;\n color: var(--components-form-field-content-text);\n text-overflow: ellipsis;\n font-size: var(--form-field-font-size);\n font-style: normal;\n font-weight: 500;\n line-height: var(--form-field-line-height);\n\n &:focus {\n outline: none;\n }\n\n &::placeholder {\n overflow: hidden;\n color: var(--components-form-field-content-placeholder);\n text-overflow: ellipsis;\n font-family: \"TT Norms Pro\", sans-serif;\n font-size: var(--form-field-font-size);\n font-style: normal;\n font-weight: 400;\n line-height: var(--form-field-line-height);\n }\n}\n\nnv-fieldtextarea {\n @include form-field-variables();\n @include form-field-root();\n\n &[readonly]:not([readonly=\"false\"]) {\n @include form-field-readonly-variables();\n }\n\n &[error]:not([error=\"false\"]) {\n @include form-field-error-variables();\n }\n\n &[success]:not([success=\"false\"]) {\n @include form-field-success-variables();\n }\n\n &[required]:not([required=\"false\"]) label {\n @include form-field-label-required();\n }\n\n label {\n @include form-field-label();\n }\n\n .textarea-wrapper {\n @include form-field-textarea-wrapper();\n\n .textarea-container {\n @include form-field-textarea-container();\n\n textarea {\n @include form-field-textarea();\n }\n\n nv-icon.validation {\n @include form-field-icon();\n }\n }\n }\n\n .description {\n @include form-field-description();\n }\n\n .error-description {\n @include form-field-error-description();\n }\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n Event,\n EventEmitter,\n Element,\n Watch,\n} from '@stencil/core';\nimport { v4 as uuidv4 } from 'uuid';\nimport clsx from 'clsx';\n\n/**\n * @slot label - Content to be placed as the label, will override the label prop.\n * @slot description - Content to be placed as the description, will override the description prop.\n * @slot error-description - Content to be placed as the error description, will override the errorDescription prop.\n */\n@Component({\n tag: 'nv-fieldtextarea',\n shadow: false,\n formAssociated: true,\n styleUrl: 'nv-fieldtextarea.scss',\n})\nexport class NvFieldtextarea {\n @Element() el: HTMLNvFieldtextareaElement;\n private textareaElement!: HTMLTextAreaElement;\n\n /****************************************************************************/\n //#region DEPRECATED\n\n /**\n * Message defines a 'hint ' message for the Text Field.\n * @deprecated Use `description` instead.\n */\n @Prop({ reflect: true })\n readonly message: string;\n\n /**\n * Add the message to the validation state.\n * @deprecated Use `errorDescription` and set the error prop instead.\n */\n @Prop({ reflect: true })\n readonly validation: string;\n\n //#endregion DEPRECATED\n /****************************************************************************/\n //#region PROPERTIES\n\n /**\n * Sets the ID for the input element and the for attribute of the associated\n * label. If no ID is provided, a random one will be automatically generated\n * to ensure unique identification, facilitating proper label association and\n * accessibility.\n */\n @Prop({ reflect: true })\n readonly inputId: string = uuidv4();\n\n /**\n * Lets you define the text that explains what users should enter in the text\n * textarea field. It’s a crucial element for making forms clear and\n * user-friendly.\n */\n @Prop({ reflect: true })\n readonly label: string;\n\n /**\n * Add helpful hints or extra information under the text textarea field. This is\n * where you can clarify what users should enter or provide additional\n * instructions, making the form easier to fill out correctly.\n */\n @Prop({ reflect: true, mutable: true })\n description: string;\n\n /**\n * Display temporary text inside the textarea field to give users a hint about\n * what to type. It’s a great way to provide examples or suggestions directly\n * in the field before they start typing.\n */\n @Prop({ reflect: true })\n readonly placeholder: string;\n\n /**\n * Defines the name attribute of the textarea field, which is crucial for form\n * submission. This value is used as the key in the key-value pair sent to\n * the server, representing the textarea’s data in form submissions. It should be\n * unique within the form to avoid conflicts\n */\n @Prop({ reflect: true })\n readonly name: string;\n\n /**\n * Specifies the value of the textarea field, which determines the text displayed\n * within the field. This prop is typically used in controlled components\n * where the textarea’s value is managed by the component’s state.\n */\n @Prop({ reflect: true, mutable: true })\n value: string;\n\n /**\n * The disabled prop lets you turn off the textarea field so that users can’t\n * type in it. When disabled, the field is grayed out and won’t respond to#\n * clicks or touches.\n */\n @Prop({ reflect: true })\n readonly disabled: boolean = false;\n\n /**\n * Display the textarea field’s content without allowing users to change it.\n * Users can still click on it, select, and copy the text, but they won’t be\n * able to type or delete anything.\n */\n @Prop({ reflect: true })\n readonly readonly: boolean = false;\n\n /**\n * Marks the textarea field as required, ensuring that the user must fill it out\n * before submitting the form.\n */\n @Prop({ reflect: true })\n readonly required: boolean = false;\n\n /**\n * Alters the textarea field’s appearance to indicate an error, helping users\n * identify fields that need correction.\n * @validator error\n */\n @Prop({ reflect: true, mutable: true })\n error: boolean = false;\n\n /**\n * Show a helpful message under the textarea field when there’s a problem. It\n * explains what’s wrong and how users can fix it, making the error easier to\n * understand and resolve.\n * @validator message\n */\n @Prop({ reflect: true, mutable: true })\n errorDescription: string;\n\n /**\n * Changes the textarea field’s appearance to indicate successful textarea or\n * validation.\n */\n @Prop({ reflect: true })\n readonly success: boolean = false;\n\n /**\n * Limits how many characters users can type into the textarea field. It’s\n * helpful for making sure users don’t enter too much information, keeping\n * their textarea within the allowed limit.\n */\n @Prop({ reflect: true })\n readonly maxlength: number;\n\n /**\n * Ensures that users type at least a certain number of characters into the\n * textarea field. It’s a way to make sure users provide enough information\n * before moving on.\n */\n @Prop({ reflect: true })\n readonly minlength: number;\n\n /**\n * The number of visible text lines for the control. The default is 3. This\n * can be useful when you want to limit the size of the textarea field or when\n * you want to make the textarea field smaller to fit a specific layout. The\n * textarea field will expand vertically to fit the text as the user types.\n */\n @Prop({ reflect: true })\n readonly rows: number = 3;\n\n /**\n * Controls the resize property of a textarea. It can be set to none, both,\n * horizontal, or vertical. The default is vertical.\n */\n @Prop({ reflect: true })\n readonly resize: 'none' | 'both' | 'horizontal' | 'vertical' = 'vertical';\n\n /**\n * Enable this to make the textarea automatically resize as the user types,\n * adjusting the height to fit the content. For the best experience, avoid\n * vertical resizing, as it’s controlled by this feature. Horizontal resizing\n * can still be allowed if desired.\n */\n @Prop({ reflect: true })\n readonly autosize: boolean = false;\n\n /**\n * Applies focus to the input field as soon as the component is mounted. This\n * is equivalent to setting the native autofocus attribute on a <textarea>\n * element.\n */\n @Prop({ reflect: true })\n // eslint-disable-next-line @stencil-community/reserved-member-names\n readonly autofocus: boolean = false;\n\n //#endregion PROPERTIES\n /****************************************************************************/\n //#region EVENTS\n\n /**\n * Emitted when the textarea value changes.\n * @bind value\n */\n @Event()\n valueChanged: EventEmitter<string>;\n\n //#endregion EVENTS\n /****************************************************************************/\n //#region WATCHERS\n\n /**\n * If autosize is true, we need to make sure to update the min-height when\n * the rows change.\n */\n @Watch('rows')\n rowsChanged() {\n if (this.autosize) {\n this.adjustTextareaHeight();\n }\n }\n\n /**\n * If autosize is true, we need to make sure to update the height and\n * min-height, if false, we need to remove the height property.\n */\n @Watch('autosize')\n autosizeChanged() {\n if (this.autosize) {\n this.adjustTextareaHeight();\n } else {\n this.textareaElement?.style.removeProperty('height');\n }\n }\n\n /**\n * Make sure to adjust the height of the textarea when the value changes\n * programmatically or by typing when autosize is on.\n */\n @Watch('value')\n handleValueChange() {\n if (this.autosize) {\n this.adjustTextareaHeight();\n }\n }\n\n //#endregion WATCHERS\n /****************************************************************************/\n //#region METHODS\n\n private handleTextarea = (event: Event) => {\n const textarea = event.target as HTMLTextAreaElement;\n this.value = textarea.value;\n this.valueChanged.emit(textarea.value);\n };\n\n private handleTextareaContainerClick = () => {\n this.textareaElement.focus();\n };\n\n private adjustTextareaHeight() {\n if (this.textareaElement && this.autosize) {\n /**\n * The first requestAnimationFrame ensures that the DOM has applied any\n * pending changes (e.g., value updates or attribute changes) before\n * proceeding to the next frame.\n */\n requestAnimationFrame(() => {\n /**\n * The second requestAnimationFrame ensures that the browser has fully\n * recalculated layout and styles based on the updated DOM, such as\n * recalculating scrollHeight for the textarea after the new value is\n * rendered.\n */\n requestAnimationFrame(() => {\n this.textareaElement.style.height = 'auto';\n\n const computedStyle = window.getComputedStyle(this.textareaElement);\n const lineHeight = parseFloat(computedStyle.lineHeight);\n const paddingTop = parseFloat(computedStyle.paddingTop);\n const paddingBottom = parseFloat(computedStyle.paddingBottom);\n const borderTopWidth = parseFloat(computedStyle.borderTopWidth);\n const borderBottomWidth = parseFloat(computedStyle.borderBottomWidth);\n\n // Calculate min-height based on rows\n const minHeight =\n lineHeight * this.rows +\n paddingTop +\n paddingBottom +\n borderTopWidth +\n borderBottomWidth;\n\n this.textareaElement.style.minHeight = `${minHeight}px`;\n this.textareaElement.style.height =\n this.textareaElement.scrollHeight + 'px';\n });\n });\n }\n }\n\n //#endregion METHODS\n /****************************************************************************/\n //#region LIFECYCLE\n\n componentWillRender() {\n if (this.message) {\n this.description = this.message;\n }\n\n if (this.validation) {\n this.errorDescription = this.validation;\n this.error = true;\n }\n }\n\n componentDidLoad() {\n if (this.autosize) {\n this.adjustTextareaHeight();\n }\n }\n\n //#endregion LIFECYCLE\n /****************************************************************************/\n //#region RENDER\n\n render() {\n return (\n <Host>\n {(this.label || this.el.querySelector('[slot=\"label\"]')) && (\n <label htmlFor={this.inputId}>\n <slot name=\"label\">{this.label}</slot>\n </label>\n )}\n\n <div class=\"textarea-wrapper\">\n <div\n class=\"textarea-container\"\n onClick={this.handleTextareaContainerClick}\n >\n <textarea\n id={this.inputId}\n ref={e => (this.textareaElement = e)}\n placeholder={this.placeholder}\n autofocus={this.autofocus}\n name={this.name}\n disabled={this.disabled}\n readOnly={this.readonly}\n required={this.required}\n maxlength={this.maxlength}\n minlength={this.minlength}\n autocomplete=\"off\"\n value={this.value}\n onInput={this.handleTextarea}\n rows={this.rows}\n class={clsx(\n this.resize === 'none' && 'resize-none',\n this.resize === 'vertical' && 'resize-y',\n this.resize === 'horizontal' && 'resize-x',\n this.resize === 'both' && 'resize',\n )}\n />\n </div>\n </div>\n\n {(this.description ||\n this.el.querySelector('[slot=\"description\"]')) && (\n <div class=\"description\">\n <slot name=\"description\">{this.description}</slot>\n </div>\n )}\n\n {(this.errorDescription ||\n this.el.querySelector('[slot=\"error-description\"]')) && (\n <div hidden={!this.error} class=\"error-description\">\n <slot name=\"error-description\">{this.errorDescription}</slot>\n </div>\n )}\n </Host>\n );\n }\n\n //#endregion RENDER\n}\n"],"mappings":"wIAAA,MAAMA,EAAqB,21JAC3B,MAAAC,EAAeD,E,MCuBFE,EAAe,MAN5B,WAAAC,CAAAC,G,qDAsCWC,KAAAC,QAAkBC,IAiDlBF,KAAAG,SAAoB,MAQpBH,KAAAI,SAAoB,MAOpBJ,KAAAK,SAAoB,MAQ7BL,KAAAM,MAAiB,MAgBRN,KAAAO,QAAmB,MAyBnBP,KAAAQ,KAAe,EAOfR,KAAAS,OAAsD,WAStDT,KAAAU,SAAoB,MASpBV,KAAAW,UAAqB,MAwDtBX,KAAAY,eAAkBC,IACxB,MAAMC,EAAWD,EAAME,OACvBf,KAAKgB,MAAQF,EAASE,MACtBhB,KAAKiB,aAAaC,KAAKJ,EAASE,MAAM,EAGhChB,KAAAmB,6BAA+B,KACrCnB,KAAKoB,gBAAgBC,OAAO,C,CAzC9B,WAAAC,GACE,GAAItB,KAAKU,SAAU,CACjBV,KAAKuB,sB,EAST,eAAAC,G,MACE,GAAIxB,KAAKU,SAAU,CACjBV,KAAKuB,sB,KACA,EACLE,EAAAzB,KAAKoB,mBAAe,MAAAK,SAAA,SAAAA,EAAEC,MAAMC,eAAe,S,EAS/C,iBAAAC,GACE,GAAI5B,KAAKU,SAAU,CACjBV,KAAKuB,sB,EAkBD,oBAAAA,GACN,GAAIvB,KAAKoB,iBAAmBpB,KAAKU,SAAU,CAMzCmB,uBAAsB,KAOpBA,uBAAsB,KACpB7B,KAAKoB,gBAAgBM,MAAMI,OAAS,OAEpC,MAAMC,EAAgBC,OAAOC,iBAAiBjC,KAAKoB,iBACnD,MAAMc,EAAaC,WAAWJ,EAAcG,YAC5C,MAAME,EAAaD,WAAWJ,EAAcK,YAC5C,MAAMC,EAAgBF,WAAWJ,EAAcM,eAC/C,MAAMC,EAAiBH,WAAWJ,EAAcO,gBAChD,MAAMC,EAAoBJ,WAAWJ,EAAcQ,mBAGnD,MAAMC,EACJN,EAAalC,KAAKQ,KAClB4B,EACAC,EACAC,EACAC,EAEFvC,KAAKoB,gBAAgBM,MAAMc,UAAY,GAAGA,MAC1CxC,KAAKoB,gBAAgBM,MAAMI,OACzB9B,KAAKoB,gBAAgBqB,aAAe,IAAI,GAC1C,G,EASR,mBAAAC,GACE,GAAI1C,KAAK2C,QAAS,CAChB3C,KAAK4C,YAAc5C,KAAK2C,O,CAG1B,GAAI3C,KAAK6C,WAAY,CACnB7C,KAAK8C,iBAAmB9C,KAAK6C,WAC7B7C,KAAKM,MAAQ,I,EAIjB,gBAAAyC,GACE,GAAI/C,KAAKU,SAAU,CACjBV,KAAKuB,sB,EAQT,MAAAyB,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,6CACDnD,KAAKoD,OAASpD,KAAKqD,GAAGC,cAAc,oBACpCL,EAAA,SAAAE,IAAA,2CAAOI,QAASvD,KAAKC,SACnBgD,EAAA,QAAAE,IAAA,2CAAMK,KAAK,SAASxD,KAAKoD,QAI7BH,EAAA,OAAAE,IAAA,2CAAKM,MAAM,oBACTR,EAAA,OAAAE,IAAA,2CACEM,MAAM,qBACNC,QAAS1D,KAAKmB,8BAEd8B,EAAA,YAAAE,IAAA,2CACEQ,GAAI3D,KAAKC,QACT2D,IAAKC,GAAM7D,KAAKoB,gBAAkByC,EAClCC,YAAa9D,KAAK8D,YAClBnD,UAAWX,KAAKW,UAChB6C,KAAMxD,KAAKwD,KACXrD,SAAUH,KAAKG,SACf4D,SAAU/D,KAAKI,SACfC,SAAUL,KAAKK,SACf2D,UAAWhE,KAAKgE,UAChBC,UAAWjE,KAAKiE,UAChBC,aAAa,MACblD,MAAOhB,KAAKgB,MACZmD,QAASnE,KAAKY,eACdJ,KAAMR,KAAKQ,KACXiD,MAAOW,EACLpE,KAAKS,SAAW,QAAU,cAC1BT,KAAKS,SAAW,YAAc,WAC9BT,KAAKS,SAAW,cAAgB,WAChCT,KAAKS,SAAW,QAAU,eAMhCT,KAAK4C,aACL5C,KAAKqD,GAAGC,cAAc,0BACtBL,EAAA,OAAAE,IAAA,2CAAKM,MAAM,eACTR,EAAA,QAAAE,IAAA,2CAAMK,KAAK,eAAexD,KAAK4C,eAIjC5C,KAAK8C,kBACL9C,KAAKqD,GAAGC,cAAc,gCACtBL,EAAA,OAAAE,IAAA,2CAAKkB,QAASrE,KAAKM,MAAOmD,MAAM,qBAC9BR,EAAA,QAAAE,IAAA,2CAAMK,KAAK,qBAAqBxD,KAAK8C,mB","ignoreList":[]}
|