@nova-design-system/nova-webcomponents 3.12.0 → 3.13.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/collapse.animation-47397763.js +218 -0
- package/dist/cjs/collapse.animation-47397763.js.map +1 -0
- package/dist/cjs/{constants-aac59496.js → constants-52f6f8e9.js} +6 -1
- package/dist/cjs/constants-52f6f8e9.js.map +1 -0
- package/dist/cjs/fade.animation-cf6eba0d.js +726 -0
- package/dist/cjs/fade.animation-cf6eba0d.js.map +1 -0
- package/dist/cjs/{grow.animation-6d003803.js → grow.animation-9258ba63.js} +6 -5
- package/dist/cjs/grow.animation-9258ba63.js.map +1 -0
- package/dist/cjs/index-c56424e5.js +4 -0
- package/dist/cjs/index.cjs.js +16 -7
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/native.cjs.js +1 -1
- package/dist/cjs/nv-accordion-item.cjs.entry.js +72 -38
- package/dist/cjs/nv-accordion-item.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-accordion.cjs.entry.js +79 -65
- package/dist/cjs/nv-accordion.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-alert.cjs.entry.js +12 -12
- package/dist/cjs/nv-alert.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-avatar.cjs.entry.js +1 -1
- package/dist/cjs/nv-badge_2.cjs.entry.js +4 -4
- package/dist/cjs/nv-button.cjs.entry.js +1 -1
- package/dist/cjs/nv-calendar.cjs.entry.js +14 -10
- package/dist/cjs/nv-calendar.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-datagrid.cjs.entry.js +1 -1
- package/dist/cjs/nv-dialog.cjs.entry.js +1 -1
- package/dist/cjs/nv-dialogfooter_2.cjs.entry.js +9 -6
- package/dist/cjs/nv-dialogfooter_2.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-fieldmultiselect.cjs.entry.js +0 -30
- package/dist/cjs/nv-fieldmultiselect.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-fieldnumber.cjs.entry.js +1 -1
- package/dist/cjs/nv-fieldnumber.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-fieldslider.cjs.entry.js +24 -16
- package/dist/cjs/nv-fieldslider.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-fieldtime.cjs.entry.js +1 -1
- package/dist/cjs/nv-icon.cjs.entry.js +1 -1
- package/dist/cjs/nv-notification.cjs.entry.js +120 -0
- package/dist/cjs/nv-notification.cjs.entry.js.map +1 -0
- package/dist/cjs/nv-popover.cjs.entry.js +4 -4
- package/dist/cjs/nv-row.cjs.entry.js +1 -1
- package/dist/cjs/nv-stack.cjs.entry.js +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-togglebutton.cjs.entry.js +1 -1
- package/dist/cjs/nv-togglebuttongroup.cjs.entry.js +1 -1
- package/dist/cjs/nv-tooltip.cjs.entry.js +1 -1
- package/dist/cjs/slide.animation-bedfc827.js +70 -0
- package/dist/cjs/slide.animation-bedfc827.js.map +1 -0
- package/dist/cjs/{stylefire.es-717e022a.js → style-value-types.es-eea2f16f.js} +51 -696
- package/dist/cjs/style-value-types.es-eea2f16f.js.map +1 -0
- package/dist/cjs/{timeline.animation-155e8839.js → timeline.animation-2878afb6.js} +20 -1
- package/dist/cjs/timeline.animation-2878afb6.js.map +1 -0
- package/dist/collection/animations/collapse.animation.js +110 -50
- package/dist/collection/animations/collapse.animation.js.map +1 -1
- package/dist/collection/animations/index.js +1 -0
- package/dist/collection/animations/index.js.map +1 -1
- package/dist/collection/animations/slide.animation.js +65 -0
- package/dist/collection/animations/slide.animation.js.map +1 -0
- package/dist/collection/animations/timeline.animation.js +19 -1
- package/dist/collection/animations/timeline.animation.js.map +1 -1
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/nv-accordion/nv-accordion.docs.js +78 -20
- package/dist/collection/components/nv-accordion/nv-accordion.docs.js.map +1 -1
- package/dist/collection/components/nv-accordion/nv-accordion.js +88 -68
- package/dist/collection/components/nv-accordion/nv-accordion.js.map +1 -1
- package/dist/collection/components/nv-accordion-item/nv-accordion-item.js +70 -36
- package/dist/collection/components/nv-accordion-item/nv-accordion-item.js.map +1 -1
- package/dist/collection/components/nv-accordion-item/styles/nv-accordion-item.css +3 -0
- package/dist/collection/components/nv-alert/nv-alert.css +1 -1
- package/dist/collection/components/nv-alert/nv-alert.js +6 -6
- package/dist/collection/components/nv-alert/nv-alert.js.map +1 -1
- package/dist/collection/components/nv-calendar/nv-calendar.css +4 -0
- package/dist/collection/components/nv-calendar/nv-calendar.docs.js +14 -0
- package/dist/collection/components/nv-calendar/nv-calendar.docs.js.map +1 -1
- package/dist/collection/components/nv-calendar/nv-calendar.js +47 -3
- package/dist/collection/components/nv-calendar/nv-calendar.js.map +1 -1
- package/dist/collection/components/nv-calendar/partials/calendar-actions.js +2 -2
- package/dist/collection/components/nv-calendar/partials/calendar-actions.js.map +1 -1
- package/dist/collection/components/nv-dialog/nv-dialog.docs.js +8 -0
- package/dist/collection/components/nv-dialog/nv-dialog.docs.js.map +1 -1
- package/dist/collection/components/nv-dialogfooter/nv-dialogfooter.js +13 -11
- package/dist/collection/components/nv-dialogfooter/nv-dialogfooter.js.map +1 -1
- package/dist/collection/components/nv-fieldmultiselect/nv-fieldmultiselect.js +0 -30
- package/dist/collection/components/nv-fieldmultiselect/nv-fieldmultiselect.js.map +1 -1
- package/dist/collection/components/nv-fieldnumber/nv-fieldnumber.js +1 -1
- package/dist/collection/components/nv-fieldnumber/nv-fieldnumber.js.map +1 -1
- package/dist/collection/components/nv-fieldslider/nv-fieldslider.docs.js +0 -1
- package/dist/collection/components/nv-fieldslider/nv-fieldslider.docs.js.map +1 -1
- package/dist/collection/components/nv-fieldslider/nv-fieldslider.js +10 -10
- package/dist/collection/components/nv-fieldslider/nv-fieldslider.js.map +1 -1
- package/dist/collection/components/nv-fieldslider/partials/field-input.js +13 -5
- package/dist/collection/components/nv-fieldslider/partials/field-input.js.map +1 -1
- package/dist/collection/components/nv-fieldslider/styles/nv-fieldslider.css +27 -0
- package/dist/collection/components/nv-fieldtime/nv-fieldtime.docs.js +0 -1
- package/dist/collection/components/nv-fieldtime/nv-fieldtime.docs.js.map +1 -1
- package/dist/collection/components/nv-notification/nv-notification.docs.js +72 -0
- package/dist/collection/components/nv-notification/nv-notification.docs.js.map +1 -0
- package/dist/collection/components/nv-notification/nv-notification.js +333 -0
- package/dist/collection/components/nv-notification/nv-notification.js.map +1 -0
- package/dist/collection/components/nv-notification/styles/nv-notification.css +155 -0
- 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.js +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-togglebutton/nv-togglebutton.js +1 -1
- package/dist/collection/components/nv-togglebuttongroup/nv-togglebuttongroup.docs.js +0 -1
- package/dist/collection/components/nv-togglebuttongroup/nv-togglebuttongroup.docs.js.map +1 -1
- package/dist/collection/components/nv-togglebuttongroup/nv-togglebuttongroup.js +1 -1
- package/dist/collection/components/nv-tooltip/nv-tooltip.js +1 -1
- package/dist/collection/utils/constants.js +5 -0
- package/dist/collection/utils/constants.js.map +1 -1
- package/dist/components/index.js +9 -6
- package/dist/components/index.js.map +1 -1
- package/dist/components/nv-accordion-item.js +1 -1
- package/dist/components/nv-accordion.js +88 -71
- package/dist/components/nv-accordion.js.map +1 -1
- package/dist/components/nv-alert.js +13 -13
- package/dist/components/nv-alert.js.map +1 -1
- package/dist/components/nv-avatar.js +2 -2
- package/dist/components/nv-badge.js +1 -1
- package/dist/components/nv-breadcrumb.js +2 -2
- package/dist/components/nv-button.js +1 -1
- package/dist/components/nv-calendar.js +1 -1
- package/dist/components/nv-datagrid.js +3 -3
- package/dist/components/nv-dialog.js +4 -4
- package/dist/components/nv-dialogfooter.js +1 -1
- package/dist/components/nv-fielddate.js +5 -5
- package/dist/components/nv-fielddaterange.js +5 -5
- package/dist/components/nv-fielddropdown.js +4 -4
- package/dist/components/nv-fielddropdownitem.js +1 -1
- package/dist/components/nv-fieldmultiselect.js +4 -34
- package/dist/components/nv-fieldmultiselect.js.map +1 -1
- package/dist/components/nv-fieldnumber.js +1 -1
- package/dist/components/nv-fieldpassword.js +2 -2
- package/dist/components/nv-fieldselect.js +2 -2
- package/dist/components/nv-fieldslider.js +27 -19
- package/dist/components/nv-fieldslider.js.map +1 -1
- package/dist/components/nv-fieldtext.js +1 -1
- package/dist/components/nv-fieldtime.js +4 -4
- package/dist/components/nv-icon.js +1 -1
- package/dist/components/nv-iconbutton.js +1 -1
- package/dist/components/nv-menu.js +3 -3
- package/dist/components/nv-menuitem.js +1 -1
- package/dist/components/nv-notification.d.ts +11 -0
- package/dist/components/nv-notification.js +150 -0
- package/dist/components/nv-notification.js.map +1 -0
- 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-table.js +2 -2
- package/dist/components/nv-toggle.js +2 -2
- package/dist/components/nv-togglebutton.js +1 -1
- package/dist/components/nv-togglebuttongroup.js +1 -1
- package/dist/components/nv-tooltip.js +1 -1
- package/dist/components/{p-2030d84d.js → p-0b5816f7.js} +2 -2
- package/dist/components/{p-2030d84d.js.map → p-0b5816f7.js.map} +1 -1
- package/dist/components/{p-5f594b35.js → p-2277cfc8.js} +7 -2
- package/dist/components/p-2277cfc8.js.map +1 -0
- package/dist/components/{p-57ae32bc.js → p-2854cf01.js} +2 -2
- package/dist/components/{p-57ae32bc.js.map → p-2854cf01.js.map} +1 -1
- package/dist/components/{p-095c8285.js → p-2de17259.js} +2 -2
- package/dist/components/{p-095c8285.js.map → p-2de17259.js.map} +1 -1
- package/dist/components/p-31591941.js +216 -0
- package/dist/components/p-31591941.js.map +1 -0
- package/dist/components/{p-09cdd71f.js → p-42ea6b74.js} +34 -688
- package/dist/components/p-42ea6b74.js.map +1 -0
- package/dist/components/{p-0b015832.js → p-5073bfd6.js} +2 -2
- package/dist/components/{p-0b015832.js.map → p-5073bfd6.js.map} +1 -1
- package/dist/components/{p-2ad58e41.js → p-60244646.js} +5 -5
- package/dist/components/{p-2ad58e41.js.map → p-60244646.js.map} +1 -1
- package/dist/components/{p-b2c31970.js → p-68fa3890.js} +17 -11
- package/dist/components/p-68fa3890.js.map +1 -0
- package/dist/components/{p-b7629769.js → p-89ac047e.js} +4 -4
- package/dist/components/p-89ac047e.js.map +1 -0
- package/dist/components/{p-7372258e.js → p-99a55bc4.js} +2 -2
- package/dist/components/{p-7372258e.js.map → p-99a55bc4.js.map} +1 -1
- package/dist/{esm/timeline.animation-adf35ecb.js → components/p-a52cd849.js} +20 -2
- package/dist/components/p-a52cd849.js.map +1 -0
- package/dist/components/{p-4c3dc7e4.js → p-a9dc0824.js} +13 -10
- package/dist/components/p-a9dc0824.js.map +1 -0
- package/dist/components/{p-b3035205.js → p-ca38a8a9.js} +2 -2
- package/dist/components/{p-b3035205.js.map → p-ca38a8a9.js.map} +1 -1
- package/dist/components/{p-84f4b071.js → p-ddd0a394.js} +75 -41
- package/dist/components/p-ddd0a394.js.map +1 -0
- package/dist/components/{p-ddb7aa4e.js → p-e4ac8333.js} +6 -6
- package/dist/components/{p-ddb7aa4e.js.map → p-e4ac8333.js.map} +1 -1
- package/dist/components/{p-dc5dad90.js → p-e6c04562.js} +2 -2
- package/dist/components/{p-dc5dad90.js.map → p-e6c04562.js.map} +1 -1
- package/dist/components/{p-87079346.js → p-eb443b26.js} +3 -3
- package/dist/components/{p-87079346.js.map → p-eb443b26.js.map} +1 -1
- package/dist/components/p-eda2f9f3.js +68 -0
- package/dist/components/p-eda2f9f3.js.map +1 -0
- package/dist/components/p-ee0df37f.js +723 -0
- package/dist/components/p-ee0df37f.js.map +1 -0
- package/dist/components/{p-8d45dbfe.js → p-fb560fa3.js} +3 -2
- package/dist/components/p-fb560fa3.js.map +1 -0
- package/dist/esm/collapse.animation-acda1bf5.js +216 -0
- package/dist/esm/collapse.animation-acda1bf5.js.map +1 -0
- package/dist/esm/{constants-a857c476.js → constants-d0f19e7b.js} +7 -2
- package/dist/esm/constants-d0f19e7b.js.map +1 -0
- package/dist/esm/fade.animation-eb454088.js +723 -0
- package/dist/esm/fade.animation-eb454088.js.map +1 -0
- package/dist/esm/{grow.animation-f7b26024.js → grow.animation-5b2abb3a.js} +3 -2
- package/dist/esm/grow.animation-5b2abb3a.js.map +1 -0
- package/dist/esm/index-a1936cd0.js +4 -0
- package/dist/esm/index.js +10 -7
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/native.js +1 -1
- package/dist/esm/nv-accordion-item.entry.js +72 -38
- package/dist/esm/nv-accordion-item.entry.js.map +1 -1
- package/dist/esm/nv-accordion.entry.js +80 -66
- package/dist/esm/nv-accordion.entry.js.map +1 -1
- package/dist/esm/nv-alert.entry.js +12 -12
- package/dist/esm/nv-alert.entry.js.map +1 -1
- package/dist/esm/nv-avatar.entry.js +1 -1
- package/dist/esm/nv-badge_2.entry.js +4 -4
- package/dist/esm/nv-button.entry.js +1 -1
- package/dist/esm/nv-calendar.entry.js +14 -10
- package/dist/esm/nv-calendar.entry.js.map +1 -1
- package/dist/esm/nv-datagrid.entry.js +1 -1
- package/dist/esm/nv-dialog.entry.js +1 -1
- package/dist/esm/nv-dialogfooter_2.entry.js +9 -6
- package/dist/esm/nv-dialogfooter_2.entry.js.map +1 -1
- package/dist/esm/nv-fieldmultiselect.entry.js +0 -30
- package/dist/esm/nv-fieldmultiselect.entry.js.map +1 -1
- package/dist/esm/nv-fieldnumber.entry.js +1 -1
- package/dist/esm/nv-fieldnumber.entry.js.map +1 -1
- package/dist/esm/nv-fieldslider.entry.js +24 -16
- package/dist/esm/nv-fieldslider.entry.js.map +1 -1
- package/dist/esm/nv-fieldtime.entry.js +1 -1
- package/dist/esm/nv-icon.entry.js +1 -1
- package/dist/esm/nv-notification.entry.js +116 -0
- package/dist/esm/nv-notification.entry.js.map +1 -0
- package/dist/esm/nv-popover.entry.js +4 -4
- package/dist/esm/nv-row.entry.js +1 -1
- package/dist/esm/nv-stack.entry.js +1 -1
- package/dist/esm/nv-table.entry.js +2 -2
- package/dist/esm/nv-toggle.entry.js +2 -2
- package/dist/esm/nv-togglebutton.entry.js +1 -1
- package/dist/esm/nv-togglebuttongroup.entry.js +1 -1
- package/dist/esm/nv-tooltip.entry.js +1 -1
- package/dist/esm/slide.animation-f444aa0b.js +68 -0
- package/dist/esm/slide.animation-f444aa0b.js.map +1 -0
- package/dist/esm/{stylefire.es-74da334a.js → style-value-types.es-f5d10b79.js} +34 -688
- package/dist/esm/style-value-types.es-f5d10b79.js.map +1 -0
- package/dist/esm/timeline.animation-79215cd4.js +41 -0
- package/dist/esm/timeline.animation-79215cd4.js.map +1 -0
- package/dist/native/index.esm.js +1 -1
- package/dist/native/index.esm.js.map +1 -1
- package/dist/native/native.css +1 -1
- package/dist/native/native.esm.js +1 -1
- package/dist/native/native.esm.js.map +1 -1
- package/dist/native/p-08582c21.entry.js +2 -0
- package/dist/native/p-08582c21.entry.js.map +1 -0
- package/dist/native/p-0a99c6fb.entry.js +2 -0
- package/dist/native/p-0a99c6fb.entry.js.map +1 -0
- package/dist/native/p-0e488b3d.entry.js +2 -0
- package/dist/native/p-0e488b3d.entry.js.map +1 -0
- package/dist/native/{p-3a8f65a9.entry.js → p-1f01fb64.entry.js} +2 -2
- package/dist/native/{p-c3ad7617.entry.js → p-225a05bf.entry.js} +2 -2
- package/dist/native/p-2277cfc8.js +2 -0
- package/dist/native/p-2277cfc8.js.map +1 -0
- package/dist/native/p-25f2ce81.entry.js +2 -0
- package/dist/native/{p-29ee7b1c.entry.js → p-29f68e07.entry.js} +2 -2
- package/dist/native/p-29f68e07.entry.js.map +1 -0
- package/dist/native/p-31591941.js +2 -0
- package/dist/native/p-31591941.js.map +1 -0
- package/dist/native/{p-63fea160.entry.js → p-33f503c5.entry.js} +2 -2
- package/dist/native/{p-43071c3b.entry.js → p-3784efdc.entry.js} +2 -2
- package/dist/native/{p-47901c83.entry.js → p-3f861ddc.entry.js} +2 -2
- package/dist/native/{p-ab1e1a96.entry.js → p-40c4a221.entry.js} +2 -2
- package/dist/native/p-42ea6b74.js +16 -0
- package/dist/native/p-42ea6b74.js.map +1 -0
- package/dist/native/{p-62aa0531.entry.js → p-52b8c872.entry.js} +2 -2
- package/dist/native/{p-e7a929e7.entry.js → p-5a43fe48.entry.js} +2 -2
- package/dist/native/{p-a63929db.entry.js → p-788e9ee5.entry.js} +3 -3
- package/dist/native/{p-f033c4ce.entry.js → p-7bbcf477.entry.js} +2 -2
- package/dist/native/p-8c823928.entry.js +2 -0
- package/dist/native/p-9a46baa9.entry.js +2 -0
- package/dist/native/p-9a46baa9.entry.js.map +1 -0
- package/dist/native/p-a52cd849.js +2 -0
- package/dist/native/p-a52cd849.js.map +1 -0
- package/dist/native/{p-48cf2457.entry.js → p-bb71a17f.entry.js} +2 -2
- package/dist/native/p-cfd5785e.entry.js +2 -0
- package/dist/native/p-cfd5785e.entry.js.map +1 -0
- package/dist/native/{p-bcff76ab.entry.js → p-d95ee31e.entry.js} +2 -2
- package/dist/native/p-da2c7d3c.entry.js +2 -0
- package/dist/native/p-da2c7d3c.entry.js.map +1 -0
- package/dist/native/p-eda2f9f3.js +2 -0
- package/dist/native/p-eda2f9f3.js.map +1 -0
- package/dist/native/p-ee0df37f.js +2 -0
- package/dist/native/p-ee0df37f.js.map +1 -0
- package/dist/native/p-ee516944.entry.js +2 -0
- package/dist/native/p-ee516944.entry.js.map +1 -0
- package/dist/native/p-f5120223.entry.js +2 -0
- package/dist/native/p-f5120223.entry.js.map +1 -0
- package/dist/native/{p-2d647761.entry.js → p-f5eb047e.entry.js} +2 -2
- package/dist/native/p-fb560fa3.js +2 -0
- package/dist/native/{p-8d45dbfe.js.map → p-fb560fa3.js.map} +1 -1
- package/dist/types/animations/collapse.animation.d.ts +10 -2
- package/dist/types/animations/index.d.ts +1 -0
- package/dist/types/animations/slide.animation.d.ts +11 -0
- package/dist/types/animations/timeline.animation.d.ts +17 -1
- package/dist/types/components/nv-accordion/nv-accordion.d.ts +5 -7
- package/dist/types/components/nv-accordion-item/nv-accordion-item.d.ts +23 -8
- package/dist/types/components/nv-alert/nv-alert.d.ts +1 -1
- package/dist/types/components/nv-calendar/nv-calendar.d.ts +4 -0
- package/dist/types/components/nv-calendar/partials/calendar-actions.d.ts +4 -0
- package/dist/types/components/nv-dialogfooter/nv-dialogfooter.d.ts +8 -4
- package/dist/types/components/nv-fieldslider/nv-fieldslider.d.ts +3 -2
- package/dist/types/components/nv-fieldslider/partials/field-input.d.ts +7 -3
- package/dist/types/components/nv-notification/nv-notification.d.ts +75 -0
- package/dist/types/components/nv-notification/nv-notification.docs.d.ts +4 -0
- package/dist/types/components.d.ts +142 -9
- package/dist/types/nova-docs.d.ts +6 -0
- package/dist/types/utils/constants.d.ts +4 -0
- package/dist/vscode-data.json +77 -3
- package/hydrate/index.js +642 -263
- package/hydrate/index.mjs +642 -263
- package/package.json +5 -1
- package/readme.md +169 -42
- package/dist/cjs/collapse.animation-a129dc3f.js +0 -86
- package/dist/cjs/collapse.animation-a129dc3f.js.map +0 -1
- package/dist/cjs/constants-aac59496.js.map +0 -1
- package/dist/cjs/fade.animation-644b5c4d.js +0 -70
- package/dist/cjs/fade.animation-644b5c4d.js.map +0 -1
- package/dist/cjs/grow.animation-6d003803.js.map +0 -1
- package/dist/cjs/stylefire.es-717e022a.js.map +0 -1
- package/dist/cjs/timeline.animation-155e8839.js.map +0 -1
- package/dist/components/p-09cdd71f.js.map +0 -1
- package/dist/components/p-15aeab4d.js +0 -23
- package/dist/components/p-15aeab4d.js.map +0 -1
- package/dist/components/p-1cbacdba.js +0 -68
- package/dist/components/p-1cbacdba.js.map +0 -1
- package/dist/components/p-4c3dc7e4.js.map +0 -1
- package/dist/components/p-5f594b35.js.map +0 -1
- package/dist/components/p-84f4b071.js.map +0 -1
- package/dist/components/p-8d45dbfe.js.map +0 -1
- package/dist/components/p-9a263d0e.js +0 -84
- package/dist/components/p-9a263d0e.js.map +0 -1
- package/dist/components/p-b2c31970.js.map +0 -1
- package/dist/components/p-b7629769.js.map +0 -1
- package/dist/esm/collapse.animation-16e3af45.js +0 -84
- package/dist/esm/collapse.animation-16e3af45.js.map +0 -1
- package/dist/esm/constants-a857c476.js.map +0 -1
- package/dist/esm/fade.animation-71e8e34c.js +0 -68
- package/dist/esm/fade.animation-71e8e34c.js.map +0 -1
- package/dist/esm/grow.animation-f7b26024.js.map +0 -1
- package/dist/esm/stylefire.es-74da334a.js.map +0 -1
- package/dist/esm/timeline.animation-adf35ecb.js.map +0 -1
- package/dist/native/p-09cdd71f.js +0 -16
- package/dist/native/p-09cdd71f.js.map +0 -1
- package/dist/native/p-0da8f0d1.entry.js +0 -2
- package/dist/native/p-0da8f0d1.entry.js.map +0 -1
- package/dist/native/p-15aeab4d.js +0 -2
- package/dist/native/p-15aeab4d.js.map +0 -1
- package/dist/native/p-1cbacdba.js +0 -2
- package/dist/native/p-1cbacdba.js.map +0 -1
- package/dist/native/p-29ee7b1c.entry.js.map +0 -1
- package/dist/native/p-38af3aaf.entry.js +0 -2
- package/dist/native/p-38af3aaf.entry.js.map +0 -1
- package/dist/native/p-3fcaac6d.entry.js +0 -2
- package/dist/native/p-3fcaac6d.entry.js.map +0 -1
- package/dist/native/p-5d352456.entry.js +0 -2
- package/dist/native/p-5f594b35.js +0 -2
- package/dist/native/p-5f594b35.js.map +0 -1
- package/dist/native/p-67d861e2.entry.js +0 -2
- package/dist/native/p-67d861e2.entry.js.map +0 -1
- package/dist/native/p-7703c736.entry.js +0 -2
- package/dist/native/p-7703c736.entry.js.map +0 -1
- package/dist/native/p-8d45dbfe.js +0 -2
- package/dist/native/p-9a263d0e.js +0 -2
- package/dist/native/p-9a263d0e.js.map +0 -1
- package/dist/native/p-9e0fe7e8.entry.js +0 -2
- package/dist/native/p-9e0fe7e8.entry.js.map +0 -1
- package/dist/native/p-ac5496e7.entry.js +0 -2
- package/dist/native/p-e603c6ed.entry.js +0 -2
- package/dist/native/p-e603c6ed.entry.js.map +0 -1
- /package/dist/native/{p-3a8f65a9.entry.js.map → p-1f01fb64.entry.js.map} +0 -0
- /package/dist/native/{p-c3ad7617.entry.js.map → p-225a05bf.entry.js.map} +0 -0
- /package/dist/native/{p-ac5496e7.entry.js.map → p-25f2ce81.entry.js.map} +0 -0
- /package/dist/native/{p-63fea160.entry.js.map → p-33f503c5.entry.js.map} +0 -0
- /package/dist/native/{p-43071c3b.entry.js.map → p-3784efdc.entry.js.map} +0 -0
- /package/dist/native/{p-47901c83.entry.js.map → p-3f861ddc.entry.js.map} +0 -0
- /package/dist/native/{p-ab1e1a96.entry.js.map → p-40c4a221.entry.js.map} +0 -0
- /package/dist/native/{p-62aa0531.entry.js.map → p-52b8c872.entry.js.map} +0 -0
- /package/dist/native/{p-e7a929e7.entry.js.map → p-5a43fe48.entry.js.map} +0 -0
- /package/dist/native/{p-a63929db.entry.js.map → p-788e9ee5.entry.js.map} +0 -0
- /package/dist/native/{p-f033c4ce.entry.js.map → p-7bbcf477.entry.js.map} +0 -0
- /package/dist/native/{p-5d352456.entry.js.map → p-8c823928.entry.js.map} +0 -0
- /package/dist/native/{p-48cf2457.entry.js.map → p-bb71a17f.entry.js.map} +0 -0
- /package/dist/native/{p-bcff76ab.entry.js.map → p-d95ee31e.entry.js.map} +0 -0
- /package/dist/native/{p-2d647761.entry.js.map → p-f5eb047e.entry.js.map} +0 -0
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
import { l as linear, a as animate } from './p-42ea6b74.js';
|
|
2
|
+
|
|
3
|
+
const a = (a1, a2) => 1.0 - 3.0 * a2 + 3.0 * a1;
|
|
4
|
+
const b = (a1, a2) => 3.0 * a2 - 6.0 * a1;
|
|
5
|
+
const c = (a1) => 3.0 * a1;
|
|
6
|
+
const calcBezier = (t, a1, a2) => ((a(a1, a2) * t + b(a1, a2)) * t + c(a1)) * t;
|
|
7
|
+
const getSlope = (t, a1, a2) => 3.0 * a(a1, a2) * t * t + 2.0 * b(a1, a2) * t + c(a1);
|
|
8
|
+
const subdivisionPrecision = 0.0000001;
|
|
9
|
+
const subdivisionMaxIterations = 10;
|
|
10
|
+
function binarySubdivide(aX, aA, aB, mX1, mX2) {
|
|
11
|
+
let currentX;
|
|
12
|
+
let currentT;
|
|
13
|
+
let i = 0;
|
|
14
|
+
do {
|
|
15
|
+
currentT = aA + (aB - aA) / 2.0;
|
|
16
|
+
currentX = calcBezier(currentT, mX1, mX2) - aX;
|
|
17
|
+
if (currentX > 0.0) {
|
|
18
|
+
aB = currentT;
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
aA = currentT;
|
|
22
|
+
}
|
|
23
|
+
} while (Math.abs(currentX) > subdivisionPrecision &&
|
|
24
|
+
++i < subdivisionMaxIterations);
|
|
25
|
+
return currentT;
|
|
26
|
+
}
|
|
27
|
+
const newtonIterations = 8;
|
|
28
|
+
const newtonMinSlope = 0.001;
|
|
29
|
+
function newtonRaphsonIterate(aX, aGuessT, mX1, mX2) {
|
|
30
|
+
for (let i = 0; i < newtonIterations; ++i) {
|
|
31
|
+
const currentSlope = getSlope(aGuessT, mX1, mX2);
|
|
32
|
+
if (currentSlope === 0.0) {
|
|
33
|
+
return aGuessT;
|
|
34
|
+
}
|
|
35
|
+
const currentX = calcBezier(aGuessT, mX1, mX2) - aX;
|
|
36
|
+
aGuessT -= currentX / currentSlope;
|
|
37
|
+
}
|
|
38
|
+
return aGuessT;
|
|
39
|
+
}
|
|
40
|
+
const kSplineTableSize = 11;
|
|
41
|
+
const kSampleStepSize = 1.0 / (kSplineTableSize - 1.0);
|
|
42
|
+
function cubicBezier(mX1, mY1, mX2, mY2) {
|
|
43
|
+
if (mX1 === mY1 && mX2 === mY2)
|
|
44
|
+
return linear;
|
|
45
|
+
const sampleValues = new Float32Array(kSplineTableSize);
|
|
46
|
+
for (let i = 0; i < kSplineTableSize; ++i) {
|
|
47
|
+
sampleValues[i] = calcBezier(i * kSampleStepSize, mX1, mX2);
|
|
48
|
+
}
|
|
49
|
+
function getTForX(aX) {
|
|
50
|
+
let intervalStart = 0.0;
|
|
51
|
+
let currentSample = 1;
|
|
52
|
+
const lastSample = kSplineTableSize - 1;
|
|
53
|
+
for (; currentSample !== lastSample && sampleValues[currentSample] <= aX; ++currentSample) {
|
|
54
|
+
intervalStart += kSampleStepSize;
|
|
55
|
+
}
|
|
56
|
+
--currentSample;
|
|
57
|
+
const dist = (aX - sampleValues[currentSample]) /
|
|
58
|
+
(sampleValues[currentSample + 1] - sampleValues[currentSample]);
|
|
59
|
+
const guessForT = intervalStart + dist * kSampleStepSize;
|
|
60
|
+
const initialSlope = getSlope(guessForT, mX1, mX2);
|
|
61
|
+
if (initialSlope >= newtonMinSlope) {
|
|
62
|
+
return newtonRaphsonIterate(aX, guessForT, mX1, mX2);
|
|
63
|
+
}
|
|
64
|
+
else if (initialSlope === 0.0) {
|
|
65
|
+
return guessForT;
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
return binarySubdivide(aX, intervalStart, intervalStart + kSampleStepSize, mX1, mX2);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
return (t) => t === 0 || t === 1 ? t : calcBezier(getTForX(t), mY1, mY2);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Read current box metrics (height + vertical margins).
|
|
76
|
+
* @param {HTMLElement} node - The element to measure.
|
|
77
|
+
* @returns {object} The box metrics.
|
|
78
|
+
*/
|
|
79
|
+
function getBoxMetrics(node) {
|
|
80
|
+
const rectHeight = node.getBoundingClientRect().height;
|
|
81
|
+
const style = getComputedStyle(node);
|
|
82
|
+
const marginTop = parseFloat(style.marginTop) || 0;
|
|
83
|
+
const marginBottom = parseFloat(style.marginBottom) || 0;
|
|
84
|
+
const total = rectHeight + marginTop + marginBottom;
|
|
85
|
+
return { height: rectHeight, marginTop, marginBottom, total };
|
|
86
|
+
}
|
|
87
|
+
const useCollapse = (node, { duration = 200, overflow = 'hidden' } = {}) => {
|
|
88
|
+
let currentAnimation = null;
|
|
89
|
+
const stop = () => {
|
|
90
|
+
if (currentAnimation) {
|
|
91
|
+
currentAnimation.stop();
|
|
92
|
+
currentAnimation = null;
|
|
93
|
+
}
|
|
94
|
+
};
|
|
95
|
+
const setStyle = (styles) => {
|
|
96
|
+
for (const [k, v] of Object.entries(styles)) {
|
|
97
|
+
node.style[k] = v;
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
/** Instantly apply collapsed styles (no animation). */
|
|
101
|
+
function setCollapsed() {
|
|
102
|
+
stop();
|
|
103
|
+
setStyle({
|
|
104
|
+
height: '0px',
|
|
105
|
+
marginTop: '0px',
|
|
106
|
+
marginBottom: '0px',
|
|
107
|
+
overflow,
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
/** Instantly apply expanded styles (no animation). */
|
|
111
|
+
function setExpanded() {
|
|
112
|
+
stop();
|
|
113
|
+
setStyle({
|
|
114
|
+
height: '',
|
|
115
|
+
marginTop: '',
|
|
116
|
+
marginBottom: '',
|
|
117
|
+
overflow: '',
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Collapse: animate from current box (height + margins) down to 0.
|
|
122
|
+
*/
|
|
123
|
+
function collapse() {
|
|
124
|
+
stop();
|
|
125
|
+
return new Promise(resolve => {
|
|
126
|
+
const { height, marginTop, marginBottom, total } = getBoxMetrics(node);
|
|
127
|
+
// Lock current box
|
|
128
|
+
setStyle({
|
|
129
|
+
height: `${height}px`,
|
|
130
|
+
marginTop: `${marginTop}px`,
|
|
131
|
+
marginBottom: `${marginBottom}px`,
|
|
132
|
+
overflow,
|
|
133
|
+
willChange: 'height, margin',
|
|
134
|
+
});
|
|
135
|
+
const denom = total > 0 ? total : 0.0001; // avoid divide-by-zero
|
|
136
|
+
currentAnimation = animate({
|
|
137
|
+
from: total,
|
|
138
|
+
to: 0,
|
|
139
|
+
duration,
|
|
140
|
+
ease: cubicBezier(0.2, 0, 0, 1),
|
|
141
|
+
onUpdate: v => {
|
|
142
|
+
const ratio = v / denom;
|
|
143
|
+
setStyle({
|
|
144
|
+
height: `${height * ratio}px`,
|
|
145
|
+
marginTop: `${marginTop * ratio}px`,
|
|
146
|
+
marginBottom: `${marginBottom * ratio}px`,
|
|
147
|
+
});
|
|
148
|
+
},
|
|
149
|
+
onComplete: () => {
|
|
150
|
+
setStyle({
|
|
151
|
+
height: '0px',
|
|
152
|
+
marginTop: '0px',
|
|
153
|
+
marginBottom: '0px',
|
|
154
|
+
willChange: '',
|
|
155
|
+
});
|
|
156
|
+
resolve();
|
|
157
|
+
},
|
|
158
|
+
});
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Expand: animate from 0 box to the element's natural box (height + margins),
|
|
163
|
+
* then restore `height: auto` and computed margins.
|
|
164
|
+
*/
|
|
165
|
+
function expand() {
|
|
166
|
+
stop();
|
|
167
|
+
return new Promise(resolve => {
|
|
168
|
+
// Let the element size naturally to measure the target box
|
|
169
|
+
setStyle({
|
|
170
|
+
height: '',
|
|
171
|
+
marginTop: '',
|
|
172
|
+
marginBottom: '',
|
|
173
|
+
overflow,
|
|
174
|
+
});
|
|
175
|
+
const { height, marginTop, marginBottom, total } = getBoxMetrics(node);
|
|
176
|
+
// Start locked at zero box
|
|
177
|
+
setStyle({
|
|
178
|
+
height: '0px',
|
|
179
|
+
marginTop: '0px',
|
|
180
|
+
marginBottom: '0px',
|
|
181
|
+
willChange: 'height, margin',
|
|
182
|
+
});
|
|
183
|
+
const denom = total > 0 ? total : 0.0001;
|
|
184
|
+
currentAnimation = animate({
|
|
185
|
+
from: 0,
|
|
186
|
+
to: total,
|
|
187
|
+
duration,
|
|
188
|
+
ease: cubicBezier(0.2, 0, 0, 1),
|
|
189
|
+
onUpdate: v => {
|
|
190
|
+
const ratio = v / denom;
|
|
191
|
+
setStyle({
|
|
192
|
+
height: `${height * ratio}px`,
|
|
193
|
+
marginTop: `${marginTop * ratio}px`,
|
|
194
|
+
marginBottom: `${marginBottom * ratio}px`,
|
|
195
|
+
});
|
|
196
|
+
},
|
|
197
|
+
onComplete: () => {
|
|
198
|
+
// Restore natural layout
|
|
199
|
+
setStyle({
|
|
200
|
+
height: '',
|
|
201
|
+
marginTop: '',
|
|
202
|
+
marginBottom: '',
|
|
203
|
+
overflow: '',
|
|
204
|
+
willChange: '',
|
|
205
|
+
});
|
|
206
|
+
resolve();
|
|
207
|
+
},
|
|
208
|
+
});
|
|
209
|
+
});
|
|
210
|
+
}
|
|
211
|
+
return { collapse, expand, setCollapsed, setExpanded };
|
|
212
|
+
};
|
|
213
|
+
|
|
214
|
+
export { useCollapse as u };
|
|
215
|
+
|
|
216
|
+
//# sourceMappingURL=p-31591941.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"p-31591941.js","mappings":"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","names":[],"sources":["../../node_modules/popmotion/dist/es/easing/cubic-bezier.mjs","src/animations/collapse.animation.ts"],"sourcesContent":["import { linear } from './index.mjs';\n\nconst a = (a1, a2) => 1.0 - 3.0 * a2 + 3.0 * a1;\nconst b = (a1, a2) => 3.0 * a2 - 6.0 * a1;\nconst c = (a1) => 3.0 * a1;\nconst calcBezier = (t, a1, a2) => ((a(a1, a2) * t + b(a1, a2)) * t + c(a1)) * t;\nconst getSlope = (t, a1, a2) => 3.0 * a(a1, a2) * t * t + 2.0 * b(a1, a2) * t + c(a1);\nconst subdivisionPrecision = 0.0000001;\nconst subdivisionMaxIterations = 10;\nfunction binarySubdivide(aX, aA, aB, mX1, mX2) {\n let currentX;\n let currentT;\n let i = 0;\n do {\n currentT = aA + (aB - aA) / 2.0;\n currentX = calcBezier(currentT, mX1, mX2) - aX;\n if (currentX > 0.0) {\n aB = currentT;\n }\n else {\n aA = currentT;\n }\n } while (Math.abs(currentX) > subdivisionPrecision &&\n ++i < subdivisionMaxIterations);\n return currentT;\n}\nconst newtonIterations = 8;\nconst newtonMinSlope = 0.001;\nfunction newtonRaphsonIterate(aX, aGuessT, mX1, mX2) {\n for (let i = 0; i < newtonIterations; ++i) {\n const currentSlope = getSlope(aGuessT, mX1, mX2);\n if (currentSlope === 0.0) {\n return aGuessT;\n }\n const currentX = calcBezier(aGuessT, mX1, mX2) - aX;\n aGuessT -= currentX / currentSlope;\n }\n return aGuessT;\n}\nconst kSplineTableSize = 11;\nconst kSampleStepSize = 1.0 / (kSplineTableSize - 1.0);\nfunction cubicBezier(mX1, mY1, mX2, mY2) {\n if (mX1 === mY1 && mX2 === mY2)\n return linear;\n const sampleValues = new Float32Array(kSplineTableSize);\n for (let i = 0; i < kSplineTableSize; ++i) {\n sampleValues[i] = calcBezier(i * kSampleStepSize, mX1, mX2);\n }\n function getTForX(aX) {\n let intervalStart = 0.0;\n let currentSample = 1;\n const lastSample = kSplineTableSize - 1;\n for (; currentSample !== lastSample && sampleValues[currentSample] <= aX; ++currentSample) {\n intervalStart += kSampleStepSize;\n }\n --currentSample;\n const dist = (aX - sampleValues[currentSample]) /\n (sampleValues[currentSample + 1] - sampleValues[currentSample]);\n const guessForT = intervalStart + dist * kSampleStepSize;\n const initialSlope = getSlope(guessForT, mX1, mX2);\n if (initialSlope >= newtonMinSlope) {\n return newtonRaphsonIterate(aX, guessForT, mX1, mX2);\n }\n else if (initialSlope === 0.0) {\n return guessForT;\n }\n else {\n return binarySubdivide(aX, intervalStart, intervalStart + kSampleStepSize, mX1, mX2);\n }\n }\n return (t) => t === 0 || t === 1 ? t : calcBezier(getTForX(t), mY1, mY2);\n}\n\nexport { cubicBezier };\n","import { animate, cubicBezier } from 'popmotion';\n\nexport type CollapseOptions = {\n /**\n * Duration of the expand/collapse animation in milliseconds.\n * @default 200\n */\n duration?: number;\n\n /**\n * Set the overflow state while animating.\n * @default \"hidden\"\n */\n overflow?: 'hidden' | 'visible';\n};\n\n/**\n * Read current box metrics (height + vertical margins).\n * @param {HTMLElement} node - The element to measure.\n * @returns {object} The box metrics.\n */\nfunction getBoxMetrics(node: HTMLElement) {\n const rectHeight = node.getBoundingClientRect().height;\n const style = getComputedStyle(node);\n const marginTop = parseFloat(style.marginTop) || 0;\n const marginBottom = parseFloat(style.marginBottom) || 0;\n const total = rectHeight + marginTop + marginBottom;\n return { height: rectHeight, marginTop, marginBottom, total };\n}\n\nconst useCollapse = (\n node: HTMLElement,\n { duration = 200, overflow = 'hidden' }: CollapseOptions = {},\n) => {\n let currentAnimation: ReturnType<typeof animate> | null = null;\n\n const stop = () => {\n if (currentAnimation) {\n currentAnimation.stop();\n currentAnimation = null;\n }\n };\n\n const setStyle = (styles: Partial<CSSStyleDeclaration>) => {\n for (const [k, v] of Object.entries(styles)) {\n node.style[k] = v as string;\n }\n };\n\n /** Instantly apply collapsed styles (no animation). */\n function setCollapsed() {\n stop();\n setStyle({\n height: '0px',\n marginTop: '0px',\n marginBottom: '0px',\n overflow,\n });\n }\n\n /** Instantly apply expanded styles (no animation). */\n function setExpanded() {\n stop();\n setStyle({\n height: '',\n marginTop: '',\n marginBottom: '',\n overflow: '',\n });\n }\n\n /**\n * Collapse: animate from current box (height + margins) down to 0.\n */\n function collapse() {\n stop();\n return new Promise<void>(resolve => {\n const { height, marginTop, marginBottom, total } = getBoxMetrics(node);\n\n // Lock current box\n setStyle({\n height: `${height}px`,\n marginTop: `${marginTop}px`,\n marginBottom: `${marginBottom}px`,\n overflow,\n willChange: 'height, margin',\n });\n\n const denom = total > 0 ? total : 0.0001; // avoid divide-by-zero\n\n currentAnimation = animate({\n from: total,\n to: 0,\n duration,\n ease: cubicBezier(0.2, 0, 0, 1),\n onUpdate: v => {\n const ratio = v / denom;\n setStyle({\n height: `${height * ratio}px`,\n marginTop: `${marginTop * ratio}px`,\n marginBottom: `${marginBottom * ratio}px`,\n });\n },\n onComplete: () => {\n setStyle({\n height: '0px',\n marginTop: '0px',\n marginBottom: '0px',\n willChange: '',\n });\n resolve();\n },\n });\n });\n }\n\n /**\n * Expand: animate from 0 box to the element's natural box (height + margins),\n * then restore `height: auto` and computed margins.\n */\n function expand() {\n stop();\n return new Promise<void>(resolve => {\n // Let the element size naturally to measure the target box\n setStyle({\n height: '',\n marginTop: '',\n marginBottom: '',\n overflow,\n });\n const { height, marginTop, marginBottom, total } = getBoxMetrics(node);\n\n // Start locked at zero box\n setStyle({\n height: '0px',\n marginTop: '0px',\n marginBottom: '0px',\n willChange: 'height, margin',\n });\n\n const denom = total > 0 ? total : 0.0001;\n\n currentAnimation = animate({\n from: 0,\n to: total,\n duration,\n ease: cubicBezier(0.2, 0, 0, 1),\n onUpdate: v => {\n const ratio = v / denom;\n setStyle({\n height: `${height * ratio}px`,\n marginTop: `${marginTop * ratio}px`,\n marginBottom: `${marginBottom * ratio}px`,\n });\n },\n onComplete: () => {\n // Restore natural layout\n setStyle({\n height: '',\n marginTop: '',\n marginBottom: '',\n overflow: '',\n willChange: '',\n });\n resolve();\n },\n });\n });\n }\n\n return { collapse, expand, setCollapsed, setExpanded };\n};\n\nexport { useCollapse };\n"],"version":3}
|