@nova-design-system/nova-webcomponents 3.1.0 → 3.3.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 → index-c56424e5.js} +34 -186
- package/dist/cjs/index-c56424e5.js.map +1 -0
- package/dist/cjs/index.cjs.js +1 -0
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/native.cjs.js +2 -23
- package/dist/cjs/native.cjs.js.map +1 -1
- package/dist/cjs/nv-alert.cjs.entry.js +1 -1
- package/dist/cjs/nv-avatar.cjs.entry.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 +384 -172
- 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 +95 -103
- package/dist/cjs/nv-datagrid.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-datagridcolumn.cjs.entry.js +2 -2
- package/dist/cjs/nv-datagridcolumn.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-dialog.cjs.entry.js +1 -1
- package/dist/cjs/nv-dialogfooter_2.cjs.entry.js +1 -1
- package/dist/cjs/nv-fieldcheckbox.cjs.entry.js +1 -1
- package/dist/cjs/nv-fielddate.cjs.entry.js +45 -11
- package/dist/cjs/nv-fielddate.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-fielddaterange.cjs.entry.js +128 -42
- package/dist/cjs/nv-fielddaterange.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-fielddropdown.cjs.entry.js +84 -60
- 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 +116 -104
- package/dist/cjs/nv-fieldmultiselect.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-fieldnumber.cjs.entry.js +2 -2
- package/dist/cjs/nv-fieldnumber.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-fieldpassword.cjs.entry.js +2 -2
- package/dist/cjs/nv-fieldpassword.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-fieldradio.cjs.entry.js +1 -1
- package/dist/cjs/nv-fieldselect.cjs.entry.js +2 -2
- package/dist/cjs/nv-fieldselect.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-fieldslider.cjs.entry.js +668 -0
- package/dist/cjs/nv-fieldslider.cjs.entry.js.map +1 -0
- package/dist/cjs/nv-fieldtext.cjs.entry.js +5 -5
- package/dist/cjs/nv-fieldtext.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-fieldtextarea.cjs.entry.js +5 -5
- package/dist/cjs/nv-fieldtextarea.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-fieldtime.cjs.entry.js +11 -11
- package/dist/cjs/nv-fieldtime.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-icon.cjs.entry.js +3 -3
- package/dist/cjs/nv-icon.cjs.entry.js.map +1 -1
- package/dist/cjs/nv-iconbutton_2.cjs.entry.js +3 -3
- package/dist/cjs/nv-menu.cjs.entry.js +2 -2
- package/dist/cjs/nv-menuitem.cjs.entry.js +2 -2
- package/dist/cjs/nv-popover.cjs.entry.js +2 -2
- package/dist/cjs/nv-row.cjs.entry.js +2 -2
- package/dist/cjs/nv-stack.cjs.entry.js +2 -2
- package/dist/cjs/nv-table.cjs.entry.js +3 -3
- package/dist/cjs/nv-tablecolumn.cjs.entry.js +1 -1
- package/dist/cjs/nv-toggle.cjs.entry.js +3 -3
- package/dist/cjs/nv-tooltip.cjs.entry.js +3 -3
- package/dist/cjs/nv-tooltip.cjs.entry.js.map +1 -1
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/nv-calendar/nv-calendar.css +6 -2
- package/dist/collection/components/nv-calendar/nv-calendar.js +247 -169
- package/dist/collection/components/nv-calendar/nv-calendar.js.map +1 -1
- package/dist/collection/components/nv-calendar/nv-calendar.utils.js +12 -3
- package/dist/collection/components/nv-calendar/nv-calendar.utils.js.map +1 -1
- package/dist/collection/components/nv-calendar/partials/calendar-actions.js +11 -0
- package/dist/collection/components/nv-calendar/partials/calendar-actions.js.map +1 -0
- package/dist/collection/components/nv-calendar/partials/calendar-grid.js +24 -0
- package/dist/collection/components/nv-calendar/partials/calendar-grid.js.map +1 -0
- package/dist/collection/components/nv-calendar/partials/calendar-header.js +38 -0
- package/dist/collection/components/nv-calendar/partials/calendar-header.js.map +1 -0
- package/dist/collection/components/nv-calendar/partials/calendar-shortcuts.js +22 -0
- package/dist/collection/components/nv-calendar/partials/calendar-shortcuts.js.map +1 -0
- package/dist/collection/components/nv-calendar/partials/day-cell.js +31 -0
- package/dist/collection/components/nv-calendar/partials/day-cell.js.map +1 -0
- package/dist/collection/components/nv-calendar/partials/index.js +7 -0
- package/dist/collection/components/nv-calendar/partials/index.js.map +1 -0
- package/dist/collection/components/nv-calendar/partials/week-numbers.js +36 -0
- package/dist/collection/components/nv-calendar/partials/week-numbers.js.map +1 -0
- package/dist/collection/components/nv-calendar/test/nv-calendar.utils.test.js +692 -651
- package/dist/collection/components/nv-calendar/test/nv-calendar.utils.test.js.map +1 -1
- package/dist/collection/components/nv-calendar/test/partials/calendar-actions.logic.test.js +169 -0
- package/dist/collection/components/nv-calendar/test/partials/calendar-actions.logic.test.js.map +1 -0
- package/dist/collection/components/nv-calendar/test/partials/calendar-grid.logic.test.js +262 -0
- package/dist/collection/components/nv-calendar/test/partials/calendar-grid.logic.test.js.map +1 -0
- package/dist/collection/components/nv-calendar/test/partials/calendar-header.logic.test.js +208 -0
- package/dist/collection/components/nv-calendar/test/partials/calendar-header.logic.test.js.map +1 -0
- package/dist/collection/components/nv-calendar/test/partials/calendar-shortcuts.logic.test.js +355 -0
- package/dist/collection/components/nv-calendar/test/partials/calendar-shortcuts.logic.test.js.map +1 -0
- package/dist/collection/components/nv-calendar/test/partials/day-cell.logic.test.js +250 -0
- package/dist/collection/components/nv-calendar/test/partials/day-cell.logic.test.js.map +1 -0
- package/dist/collection/components/nv-calendar/test/partials/week-numbers.logic.test.js +217 -0
- package/dist/collection/components/nv-calendar/test/partials/week-numbers.logic.test.js.map +1 -0
- package/dist/collection/components/nv-datagrid/nv-datagrid.docs.js +131 -48
- package/dist/collection/components/nv-datagrid/nv-datagrid.docs.js.map +1 -1
- package/dist/collection/components/nv-datagrid/nv-datagrid.js +94 -152
- package/dist/collection/components/nv-datagrid/nv-datagrid.js.map +1 -1
- package/dist/collection/components/nv-datagridcolumn/nv-datagridcolumn.js +20 -1
- package/dist/collection/components/nv-datagridcolumn/nv-datagridcolumn.js.map +1 -1
- package/dist/collection/components/nv-fielddate/nv-fielddate.js +56 -16
- package/dist/collection/components/nv-fielddate/nv-fielddate.js.map +1 -1
- package/dist/collection/components/nv-fielddate/styles/nv-fielddate.css +51 -1
- package/dist/collection/components/nv-fielddate/test/nv-fielddate.logic.test.js +196 -0
- package/dist/collection/components/nv-fielddate/test/nv-fielddate.logic.test.js.map +1 -0
- package/dist/collection/components/nv-fielddaterange/nv-fielddaterange.js +165 -41
- package/dist/collection/components/nv-fielddaterange/nv-fielddaterange.js.map +1 -1
- package/dist/collection/components/nv-fielddaterange/styles/nv-fielddaterange.css +51 -1
- package/dist/collection/components/nv-fielddaterange/test/nv-fielddaterange.logic.test.js +137 -0
- package/dist/collection/components/nv-fielddaterange/test/nv-fielddaterange.logic.test.js.map +1 -0
- package/dist/collection/components/nv-fielddropdown/nv-fielddropdown.docs.js +8 -0
- package/dist/collection/components/nv-fielddropdown/nv-fielddropdown.docs.js.map +1 -1
- package/dist/collection/components/nv-fielddropdown/nv-fielddropdown.js +173 -106
- package/dist/collection/components/nv-fielddropdown/nv-fielddropdown.js.map +1 -1
- package/dist/collection/components/nv-fielddropdown/styles/nv-fielddropdown.css +77 -1
- package/dist/collection/components/nv-fieldmultiselect/nv-fieldmultiselect.js +202 -190
- package/dist/collection/components/nv-fieldmultiselect/nv-fieldmultiselect.js.map +1 -1
- package/dist/collection/components/nv-fieldmultiselect/{nv-fieldmultiselect.css → styles/nv-fieldmultiselect.css} +61 -4
- package/dist/collection/components/nv-fieldnumber/nv-fieldnumber.css +51 -1
- package/dist/collection/components/nv-fieldpassword/nv-fieldpassword.css +51 -1
- package/dist/collection/components/nv-fieldselect/nv-fieldselect.css +51 -1
- package/dist/collection/components/nv-fieldslider/nv-fieldslider.docs.js +264 -0
- package/dist/collection/components/nv-fieldslider/nv-fieldslider.docs.js.map +1 -0
- package/dist/collection/components/nv-fieldslider/nv-fieldslider.js +1036 -0
- package/dist/collection/components/nv-fieldslider/nv-fieldslider.js.map +1 -0
- package/dist/collection/components/nv-fieldslider/nv-fieldslider.utils.js +77 -0
- package/dist/collection/components/nv-fieldslider/nv-fieldslider.utils.js.map +1 -0
- package/dist/collection/components/nv-fieldslider/partials/field-input.js +33 -0
- package/dist/collection/components/nv-fieldslider/partials/field-input.js.map +1 -0
- package/dist/collection/components/nv-fieldslider/partials/range-thumb.js +34 -0
- package/dist/collection/components/nv-fieldslider/partials/range-thumb.js.map +1 -0
- package/dist/collection/components/nv-fieldslider/partials/single-thumb.js +18 -0
- package/dist/collection/components/nv-fieldslider/partials/single-thumb.js.map +1 -0
- package/dist/collection/components/nv-fieldslider/partials/tick-marks.js +18 -0
- package/dist/collection/components/nv-fieldslider/partials/tick-marks.js.map +1 -0
- package/dist/collection/components/nv-fieldslider/styles/nv-fieldslider.css +338 -0
- package/dist/collection/components/nv-fieldslider/test/nv-fieldslider.utils.test.js +159 -0
- package/dist/collection/components/nv-fieldslider/test/nv-fieldslider.utils.test.js.map +1 -0
- package/dist/collection/components/nv-fieldtext/nv-fieldtext.css +59 -1
- package/dist/collection/components/nv-fieldtext/nv-fieldtext.docs.js +9 -1
- package/dist/collection/components/nv-fieldtext/nv-fieldtext.docs.js.map +1 -1
- package/dist/collection/components/nv-fieldtext/nv-fieldtext.js +4 -3
- package/dist/collection/components/nv-fieldtext/nv-fieldtext.js.map +1 -1
- package/dist/collection/components/nv-fieldtextarea/nv-fieldtextarea.css +45 -1
- 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-fieldtime/styles/nv-fieldtime.css +51 -1
- package/dist/collection/components/nv-icon/nv-icon.js +1 -1
- package/dist/collection/components/nv-icon/nv-icons.js +1 -0
- package/dist/collection/components/nv-icon/nv-icons.js.map +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.js +1 -1
- package/dist/collection/components/nv-menuitem/nv-menuitem.js +2 -2
- 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-tooltip/nv-tooltip.css +1 -0
- package/dist/collection/components/nv-tooltip/nv-tooltip.js +1 -1
- package/dist/collection/interfaces/Column.js.map +1 -1
- package/dist/components/index.js +2 -1
- package/dist/components/index.js.map +1 -1
- package/dist/components/nv-alert.js +2 -2
- package/dist/components/nv-avatar.js +2 -2
- 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 +97 -109
- package/dist/components/nv-datagrid.js.map +1 -1
- package/dist/components/nv-datagridcolumn.js +4 -3
- package/dist/components/nv-datagridcolumn.js.map +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 +53 -25
- package/dist/components/nv-fielddate.js.map +1 -1
- package/dist/components/nv-fielddaterange.js +137 -57
- package/dist/components/nv-fielddaterange.js.map +1 -1
- package/dist/components/nv-fielddropdown.js +98 -72
- 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 +132 -120
- package/dist/components/nv-fieldmultiselect.js.map +1 -1
- package/dist/components/nv-fieldnumber.js +5 -5
- package/dist/components/nv-fieldnumber.js.map +1 -1
- package/dist/components/nv-fieldpassword.js +5 -5
- package/dist/components/nv-fieldpassword.js.map +1 -1
- package/dist/components/nv-fieldradio.js +1 -1
- package/dist/components/nv-fieldselect.js +5 -5
- package/dist/components/nv-fieldselect.js.map +1 -1
- package/dist/components/nv-fieldslider.d.ts +11 -0
- package/dist/components/nv-fieldslider.js +731 -0
- package/dist/components/nv-fieldslider.js.map +1 -0
- package/dist/components/nv-fieldtext.js +1 -1
- package/dist/components/nv-fieldtextarea.js +5 -5
- package/dist/components/nv-fieldtextarea.js.map +1 -1
- package/dist/components/nv-fieldtime.js +15 -15
- package/dist/components/nv-fieldtime.js.map +1 -1
- 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 +5 -5
- package/dist/components/nv-menuitem.js +1 -1
- package/dist/components/nv-popover.js +1 -1
- package/dist/components/nv-row.js +2 -2
- package/dist/components/nv-stack.js +2 -2
- package/dist/components/nv-table.js +3 -3
- package/dist/components/nv-tablecolumn.js +1 -1
- package/dist/components/nv-toggle.js +3 -3
- package/dist/components/nv-tooltip.js +1 -1
- package/dist/components/{p-eb632278.js → p-2ae214d2.js} +3 -3
- package/dist/components/{p-eb632278.js.map → p-2ae214d2.js.map} +1 -1
- package/dist/components/{p-f76bb0c3.js → p-3e32b5a1.js} +5 -5
- package/dist/components/p-3e32b5a1.js.map +1 -0
- package/dist/components/{p-854c32dc.js → p-5e90b9b8.js} +389 -199
- package/dist/components/p-5e90b9b8.js.map +1 -0
- package/dist/components/{p-a2527411.js → p-5ee4015d.js} +3 -3
- package/dist/components/{p-a2527411.js.map → p-5ee4015d.js.map} +1 -1
- package/dist/components/{p-02752770.js → p-6277f746.js} +2 -2
- package/dist/components/{p-02752770.js.map → p-6277f746.js.map} +1 -1
- package/dist/components/p-7935c1cb.js +167 -0
- package/dist/components/p-7935c1cb.js.map +1 -0
- package/dist/components/{p-b48d5a94.js → p-8d92f0e1.js} +4 -4
- package/dist/components/{p-b48d5a94.js.map → p-8d92f0e1.js.map} +1 -1
- package/dist/components/{p-41c56ddc.js → p-95a7581c.js} +5 -5
- package/dist/components/{p-41c56ddc.js.map → p-95a7581c.js.map} +1 -1
- package/dist/components/{p-e00cbb8a.js → p-9e6e26cb.js} +2 -2
- package/dist/components/{p-e00cbb8a.js.map → p-9e6e26cb.js.map} +1 -1
- package/dist/components/p-9fa0de38.js +88 -0
- package/dist/components/p-9fa0de38.js.map +1 -0
- package/dist/components/{p-1c45c0f2.js → p-aff3ed68.js} +24 -177
- package/dist/components/p-aff3ed68.js.map +1 -0
- package/dist/components/{p-608eb9da.js → p-b6d858b2.js} +2 -2
- package/dist/components/{p-608eb9da.js.map → p-b6d858b2.js.map} +1 -1
- package/dist/components/{p-f5cb0a63.js → p-bb6d1e4e.js} +3 -3
- package/dist/components/{p-f5cb0a63.js.map → p-bb6d1e4e.js.map} +1 -1
- package/dist/components/{p-35a70c5e.js → p-c07c32d2.js} +3 -3
- package/dist/components/{p-35a70c5e.js.map → p-c07c32d2.js.map} +1 -1
- package/dist/components/{p-10faa938.js → p-c9006520.js} +5 -5
- package/dist/components/{p-10faa938.js.map → p-c9006520.js.map} +1 -1
- package/dist/components/{p-0a0f6daf.js → p-e28c4707.js} +3 -3
- package/dist/components/{p-0a0f6daf.js.map → p-e28c4707.js.map} +1 -1
- package/dist/components/{p-10b37876.js → p-eabbc885.js} +3 -3
- package/dist/components/{p-10b37876.js.map → p-eabbc885.js.map} +1 -1
- package/dist/esm/{constants-b97e736d.js → constants-4faa1fae.js} +2 -2
- package/dist/esm/{constants-b97e736d.js.map → constants-4faa1fae.js.map} +1 -1
- package/dist/esm/{index-1fb7a9a6.js → index-a1936cd0.js} +35 -186
- package/dist/esm/index-a1936cd0.js.map +1 -0
- package/dist/esm/index.js +2 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/loader.js +3 -3
- package/dist/esm/native.js +3 -24
- package/dist/esm/native.js.map +1 -1
- package/dist/esm/nv-alert.entry.js +2 -2
- package/dist/esm/nv-avatar.entry.js +2 -2
- 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 +2 -2
- package/dist/esm/nv-calendar.entry.js +385 -173
- 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 +96 -104
- package/dist/esm/nv-datagrid.entry.js.map +1 -1
- package/dist/esm/nv-datagridcolumn.entry.js +2 -2
- package/dist/esm/nv-datagridcolumn.entry.js.map +1 -1
- package/dist/esm/nv-dialog.entry.js +2 -2
- package/dist/esm/nv-dialogfooter_2.entry.js +2 -2
- package/dist/esm/nv-fieldcheckbox.entry.js +1 -1
- package/dist/esm/nv-fielddate.entry.js +45 -11
- package/dist/esm/nv-fielddate.entry.js.map +1 -1
- package/dist/esm/nv-fielddaterange.entry.js +128 -42
- package/dist/esm/nv-fielddaterange.entry.js.map +1 -1
- package/dist/esm/nv-fielddropdown.entry.js +84 -60
- 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 +116 -104
- package/dist/esm/nv-fieldmultiselect.entry.js.map +1 -1
- package/dist/esm/nv-fieldnumber.entry.js +2 -2
- package/dist/esm/nv-fieldnumber.entry.js.map +1 -1
- package/dist/esm/nv-fieldpassword.entry.js +2 -2
- package/dist/esm/nv-fieldpassword.entry.js.map +1 -1
- package/dist/esm/nv-fieldradio.entry.js +1 -1
- package/dist/esm/nv-fieldselect.entry.js +2 -2
- package/dist/esm/nv-fieldselect.entry.js.map +1 -1
- package/dist/esm/nv-fieldslider.entry.js +664 -0
- package/dist/esm/nv-fieldslider.entry.js.map +1 -0
- package/dist/esm/nv-fieldtext.entry.js +5 -5
- package/dist/esm/nv-fieldtext.entry.js.map +1 -1
- package/dist/esm/nv-fieldtextarea.entry.js +5 -5
- package/dist/esm/nv-fieldtextarea.entry.js.map +1 -1
- package/dist/esm/nv-fieldtime.entry.js +12 -12
- package/dist/esm/nv-fieldtime.entry.js.map +1 -1
- package/dist/esm/nv-icon.entry.js +4 -4
- package/dist/esm/nv-icon.entry.js.map +1 -1
- package/dist/esm/nv-iconbutton_2.entry.js +3 -3
- package/dist/esm/nv-menu.entry.js +2 -2
- package/dist/esm/nv-menuitem.entry.js +2 -2
- package/dist/esm/nv-popover.entry.js +2 -2
- package/dist/esm/nv-row.entry.js +2 -2
- package/dist/esm/nv-stack.entry.js +2 -2
- package/dist/esm/nv-table.entry.js +3 -3
- package/dist/esm/nv-tablecolumn.entry.js +1 -1
- package/dist/esm/nv-toggle.entry.js +3 -3
- package/dist/esm/nv-tooltip.entry.js +3 -3
- package/dist/esm/nv-tooltip.entry.js.map +1 -1
- 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-050d6c6c.entry.js +2 -0
- package/dist/native/{p-4d164ed6.entry.js.map → p-050d6c6c.entry.js.map} +1 -1
- package/dist/native/{p-615947e7.entry.js → p-08ca678c.entry.js} +2 -2
- package/dist/native/p-1a5d3b87.entry.js +2 -0
- package/dist/native/{p-efe6a46c.entry.js.map → p-1a5d3b87.entry.js.map} +1 -1
- package/dist/native/{p-7fd4d13d.entry.js → p-1c1ecd38.entry.js} +2 -2
- package/dist/native/{p-c7b201cd.entry.js → p-1d98477d.entry.js} +2 -2
- package/dist/native/{p-1da72182.entry.js → p-2006f5d4.entry.js} +2 -2
- package/dist/native/p-26cf4938.entry.js +2 -0
- package/dist/native/p-26cf4938.entry.js.map +1 -0
- package/dist/native/p-3817efb2.entry.js +2 -0
- package/dist/native/{p-fc97f071.entry.js.map → p-3817efb2.entry.js.map} +1 -1
- package/dist/native/p-45459dbb.entry.js +2 -0
- package/dist/native/{p-7042ba8a.entry.js.map → p-45459dbb.entry.js.map} +1 -1
- package/dist/native/p-45cbe6e4.entry.js +2 -0
- package/dist/native/{p-9135fdf5.entry.js.map → p-45cbe6e4.entry.js.map} +1 -1
- package/dist/native/p-46428304.entry.js +2 -0
- package/dist/native/p-46428304.entry.js.map +1 -0
- package/dist/native/p-4f9cdf0b.entry.js +2 -0
- package/dist/native/{p-3b7ef609.entry.js → p-58bb90ad.entry.js} +2 -2
- package/dist/native/p-59b07b36.entry.js +2 -0
- package/dist/native/p-59b07b36.entry.js.map +1 -0
- package/dist/native/{p-3cd77d82.entry.js → p-5b6c59e0.entry.js} +2 -2
- package/dist/native/p-6029e51b.entry.js +2 -0
- package/dist/native/{p-244f56ac.entry.js.map → p-6029e51b.entry.js.map} +1 -1
- package/dist/native/{p-08a75cfa.entry.js → p-60c64f2b.entry.js} +2 -2
- package/dist/native/p-64a76565.entry.js +2 -0
- package/dist/native/p-64a76565.entry.js.map +1 -0
- package/dist/native/{p-c67186f8.entry.js → p-83288db0.entry.js} +2 -2
- package/dist/native/p-838f7842.entry.js +2 -0
- package/dist/native/p-838f7842.entry.js.map +1 -0
- package/dist/native/{p-0245863d.entry.js → p-86ab23ea.entry.js} +2 -2
- package/dist/native/p-87784622.entry.js +2 -0
- package/dist/native/p-8fb4e5c0.entry.js +2 -0
- package/dist/native/{p-b94d9f0b.entry.js.map → p-8fb4e5c0.entry.js.map} +1 -1
- package/dist/native/{p-14c07207.entry.js → p-914da1e1.entry.js} +2 -2
- package/dist/native/p-abbe5d69.entry.js +2 -0
- package/dist/native/p-abbe5d69.entry.js.map +1 -0
- package/dist/native/p-abc251aa.entry.js +2 -0
- package/dist/native/p-abc251aa.entry.js.map +1 -0
- package/dist/native/{p-c0f79bac.entry.js → p-ad128108.entry.js} +2 -2
- package/dist/native/{p-e5de64d5.entry.js → p-b5b9190a.entry.js} +2 -2
- package/dist/native/{p-470588c2.entry.js → p-b8f2c1e7.entry.js} +3 -3
- package/dist/native/p-b8f2c1e7.entry.js.map +1 -0
- package/dist/native/{p-b8b6875d.entry.js → p-d040bd61.entry.js} +2 -2
- package/dist/native/p-d0a33e64.js +3 -0
- package/dist/native/p-d0a33e64.js.map +1 -0
- package/dist/native/{p-3953464e.entry.js → p-d21b2da2.entry.js} +3 -3
- package/dist/native/{p-90e6d9dd.entry.js → p-d53e8795.entry.js} +2 -2
- package/dist/native/p-dc7dd7f3.entry.js +2 -0
- package/dist/native/{p-ae7ab110.entry.js.map → p-dc7dd7f3.entry.js.map} +1 -1
- package/dist/native/p-e2c1992e.entry.js +2 -0
- package/dist/native/{p-656c56f0.entry.js.map → p-e2c1992e.entry.js.map} +1 -1
- package/dist/native/{p-f85c08f1.js → p-e2d0a77d.js} +2 -2
- package/dist/native/p-ed6019fe.entry.js +2 -0
- package/dist/native/p-ed6019fe.entry.js.map +1 -0
- package/dist/native/p-f94d7054.entry.js +2 -0
- package/dist/native/{p-49cac014.entry.js.map → p-f94d7054.entry.js.map} +1 -1
- package/dist/native/p-fdea17ce.entry.js +2 -0
- package/dist/native/p-fdea17ce.entry.js.map +1 -0
- package/dist/types/components/nv-calendar/nv-calendar.d.ts +26 -50
- package/dist/types/components/nv-calendar/partials/calendar-actions.d.ts +19 -0
- package/dist/types/components/nv-calendar/partials/calendar-grid.d.ts +46 -0
- package/dist/types/components/nv-calendar/partials/calendar-header.d.ts +38 -0
- package/dist/types/components/nv-calendar/partials/calendar-shortcuts.d.ts +35 -0
- package/dist/types/components/nv-calendar/partials/day-cell.d.ts +35 -0
- package/dist/types/components/nv-calendar/partials/index.d.ts +6 -0
- package/dist/types/components/nv-calendar/partials/week-numbers.d.ts +30 -0
- package/dist/types/components/nv-calendar/test/partials/calendar-actions.logic.test.d.ts +1 -0
- package/dist/types/components/nv-calendar/test/partials/calendar-grid.logic.test.d.ts +1 -0
- package/dist/types/components/nv-calendar/test/partials/calendar-header.logic.test.d.ts +1 -0
- package/dist/types/components/nv-calendar/test/partials/calendar-shortcuts.logic.test.d.ts +1 -0
- package/dist/types/components/nv-calendar/test/partials/day-cell.logic.test.d.ts +1 -0
- package/dist/types/components/nv-calendar/test/partials/week-numbers.logic.test.d.ts +1 -0
- package/dist/types/components/nv-datagrid/nv-datagrid.d.ts +0 -16
- package/dist/types/components/nv-datagridcolumn/nv-datagridcolumn.d.ts +4 -0
- package/dist/types/components/nv-fielddate/nv-fielddate.d.ts +21 -9
- package/dist/types/components/nv-fielddate/test/nv-fielddate.logic.test.d.ts +1 -0
- package/dist/types/components/nv-fielddaterange/nv-fielddaterange.d.ts +24 -3
- package/dist/types/components/nv-fielddaterange/test/nv-fielddaterange.logic.test.d.ts +1 -0
- package/dist/types/components/nv-fielddropdown/nv-fielddropdown.d.ts +47 -26
- package/dist/types/components/nv-fieldmultiselect/nv-fieldmultiselect.d.ts +61 -55
- package/dist/types/components/nv-fieldslider/nv-fieldslider.d.ts +229 -0
- package/dist/types/components/nv-fieldslider/nv-fieldslider.docs.d.ts +4 -0
- package/dist/types/components/nv-fieldslider/nv-fieldslider.utils.d.ts +46 -0
- package/dist/types/components/nv-fieldslider/partials/field-input.d.ts +45 -0
- package/dist/types/components/nv-fieldslider/partials/range-thumb.d.ts +37 -0
- package/dist/types/components/nv-fieldslider/partials/single-thumb.d.ts +35 -0
- package/dist/types/components/nv-fieldslider/partials/tick-marks.d.ts +28 -0
- package/dist/types/components/nv-fieldslider/test/nv-fieldslider.utils.test.d.ts +1 -0
- package/dist/types/components/nv-fieldtext/nv-fieldtext.d.ts +1 -0
- package/dist/types/components/nv-icon/nv-icons.d.ts +1 -1
- package/dist/types/components.d.ts +402 -54
- package/dist/types/interfaces/Column.d.ts +5 -1
- package/dist/vscode-data.json +121 -9
- package/hydrate/index.js +1664 -584
- package/hydrate/index.mjs +1664 -584
- package/package.json +6 -2
- package/dist/cjs/index-9bda5507.js.map +0 -1
- package/dist/components/p-1c45c0f2.js.map +0 -1
- package/dist/components/p-76646ce9.js +0 -88
- package/dist/components/p-76646ce9.js.map +0 -1
- package/dist/components/p-854c32dc.js.map +0 -1
- package/dist/components/p-9decffb6.js +0 -167
- package/dist/components/p-9decffb6.js.map +0 -1
- package/dist/components/p-f76bb0c3.js.map +0 -1
- package/dist/esm/index-1fb7a9a6.js.map +0 -1
- package/dist/native/p-244f56ac.entry.js +0 -2
- package/dist/native/p-2523eead.entry.js +0 -2
- package/dist/native/p-2523eead.entry.js.map +0 -1
- package/dist/native/p-470588c2.entry.js.map +0 -1
- package/dist/native/p-49cac014.entry.js +0 -2
- package/dist/native/p-4d164ed6.entry.js +0 -2
- package/dist/native/p-4dc1d036.entry.js +0 -2
- package/dist/native/p-4e635fa7.entry.js +0 -2
- package/dist/native/p-4e635fa7.entry.js.map +0 -1
- package/dist/native/p-5d21532a.entry.js +0 -2
- package/dist/native/p-5d21532a.entry.js.map +0 -1
- package/dist/native/p-656c56f0.entry.js +0 -2
- package/dist/native/p-7042ba8a.entry.js +0 -2
- package/dist/native/p-7e154bfd.entry.js +0 -2
- package/dist/native/p-7e154bfd.entry.js.map +0 -1
- package/dist/native/p-7eba904e.entry.js +0 -2
- package/dist/native/p-7eba904e.entry.js.map +0 -1
- package/dist/native/p-9135fdf5.entry.js +0 -2
- package/dist/native/p-ab002252.js +0 -3
- package/dist/native/p-ab002252.js.map +0 -1
- package/dist/native/p-ae7ab110.entry.js +0 -2
- package/dist/native/p-b94d9f0b.entry.js +0 -2
- package/dist/native/p-c71c6f23.entry.js +0 -2
- package/dist/native/p-c71c6f23.entry.js.map +0 -1
- package/dist/native/p-d9a52884.entry.js +0 -2
- package/dist/native/p-d9a52884.entry.js.map +0 -1
- package/dist/native/p-efe6a46c.entry.js +0 -2
- package/dist/native/p-f2ef6771.entry.js +0 -2
- package/dist/native/p-f5f68992.entry.js +0 -2
- package/dist/native/p-f5f68992.entry.js.map +0 -1
- package/dist/native/p-fc97f071.entry.js +0 -2
- /package/dist/native/{p-615947e7.entry.js.map → p-08ca678c.entry.js.map} +0 -0
- /package/dist/native/{p-7fd4d13d.entry.js.map → p-1c1ecd38.entry.js.map} +0 -0
- /package/dist/native/{p-c7b201cd.entry.js.map → p-1d98477d.entry.js.map} +0 -0
- /package/dist/native/{p-1da72182.entry.js.map → p-2006f5d4.entry.js.map} +0 -0
- /package/dist/native/{p-f2ef6771.entry.js.map → p-4f9cdf0b.entry.js.map} +0 -0
- /package/dist/native/{p-3b7ef609.entry.js.map → p-58bb90ad.entry.js.map} +0 -0
- /package/dist/native/{p-3cd77d82.entry.js.map → p-5b6c59e0.entry.js.map} +0 -0
- /package/dist/native/{p-08a75cfa.entry.js.map → p-60c64f2b.entry.js.map} +0 -0
- /package/dist/native/{p-c67186f8.entry.js.map → p-83288db0.entry.js.map} +0 -0
- /package/dist/native/{p-0245863d.entry.js.map → p-86ab23ea.entry.js.map} +0 -0
- /package/dist/native/{p-4dc1d036.entry.js.map → p-87784622.entry.js.map} +0 -0
- /package/dist/native/{p-14c07207.entry.js.map → p-914da1e1.entry.js.map} +0 -0
- /package/dist/native/{p-c0f79bac.entry.js.map → p-ad128108.entry.js.map} +0 -0
- /package/dist/native/{p-e5de64d5.entry.js.map → p-b5b9190a.entry.js.map} +0 -0
- /package/dist/native/{p-b8b6875d.entry.js.map → p-d040bd61.entry.js.map} +0 -0
- /package/dist/native/{p-3953464e.entry.js.map → p-d21b2da2.entry.js.map} +0 -0
- /package/dist/native/{p-90e6d9dd.entry.js.map → p-d53e8795.entry.js.map} +0 -0
- /package/dist/native/{p-f85c08f1.js.map → p-e2d0a77d.js.map} +0 -0
|
@@ -0,0 +1,338 @@
|
|
|
1
|
+
/* used */
|
|
2
|
+
/* not used */
|
|
3
|
+
/* TODO: integrate this logic in the proper structure */
|
|
4
|
+
nv-fieldslider .slider-container .track-container:has(.thumb:hover) .track-range {
|
|
5
|
+
background: var(--components-slider-track-filled-hover);
|
|
6
|
+
}
|
|
7
|
+
nv-fieldslider .slider-container .track-container:has(.thumb:hover) .thumb {
|
|
8
|
+
border-color: var(--components-slider-track-filled-hover);
|
|
9
|
+
}
|
|
10
|
+
nv-fieldslider .slider-container .track-container:has(.thumb:focus) .track-range {
|
|
11
|
+
background: var(--components-slider-track-filled-focus);
|
|
12
|
+
}
|
|
13
|
+
nv-fieldslider .slider-container .track-container:has(.thumb:focus) .thumb {
|
|
14
|
+
border-color: var(--components-slider-track-filled-focus);
|
|
15
|
+
}
|
|
16
|
+
nv-fieldslider[error] .slider-container .track-container .track .track-range {
|
|
17
|
+
background: var(--components-slider-track-filled-error);
|
|
18
|
+
}
|
|
19
|
+
nv-fieldslider[error] .slider-container .track-container .track .thumb {
|
|
20
|
+
border-color: var(--components-slider-track-filled-error);
|
|
21
|
+
}
|
|
22
|
+
nv-fieldslider[error] .slider-container .track-container .track .thumb:hover {
|
|
23
|
+
border-color: var(--components-slider-track-filled-error);
|
|
24
|
+
outline: calc(var(--focus-outline-stroke) * 1) solid var(--components-slider-track-filled-error);
|
|
25
|
+
outline-offset: calc(var(--focus-outline-offset) * 1);
|
|
26
|
+
background-color: var(--components-slider-handler-background-error);
|
|
27
|
+
}
|
|
28
|
+
nv-fieldslider[error] .slider-container .track-container .track .thumb:focus {
|
|
29
|
+
border-color: var(--components-slider-track-filled-error);
|
|
30
|
+
outline: calc(var(--focus-outline-stroke) * 1) solid var(--components-slider-track-filled-error);
|
|
31
|
+
outline-offset: calc(var(--focus-outline-offset) * 1);
|
|
32
|
+
background-color: var(--components-slider-track-filled-error);
|
|
33
|
+
}
|
|
34
|
+
nv-fieldslider[error] .slider-container .track-container:has(.thumb:hover) .track-range {
|
|
35
|
+
background: var(--components-slider-track-filled-error);
|
|
36
|
+
}
|
|
37
|
+
nv-fieldslider[error] .slider-container .track-container:has(.thumb:hover) .thumb {
|
|
38
|
+
border-color: var(--components-slider-track-filled-error);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
nv-fieldslider {
|
|
42
|
+
--nv-field-border-default: var(--components-form-field-border-default);
|
|
43
|
+
--nv-field-border-hover: var(--components-form-field-border-hover);
|
|
44
|
+
--nv-field-border-focus: var(--components-form-field-border-focus);
|
|
45
|
+
--nv-field-border-disabled: var(--components-form-field-border-default);
|
|
46
|
+
--nv-field-border-readonly: var(--components-form-field-border-default);
|
|
47
|
+
--nv-field-focus-box-shadow: var(--color-focus-brand);
|
|
48
|
+
--nv-field-background: var(--components-form-field-background-default);
|
|
49
|
+
display: flex;
|
|
50
|
+
flex-direction: column;
|
|
51
|
+
align-items: flex-start;
|
|
52
|
+
gap: var(--form-gap-y);
|
|
53
|
+
box-sizing: border-box;
|
|
54
|
+
max-width: 480px;
|
|
55
|
+
}
|
|
56
|
+
nv-fieldslider .slider-container {
|
|
57
|
+
width: 100%;
|
|
58
|
+
display: flex;
|
|
59
|
+
flex-direction: row;
|
|
60
|
+
align-items: center;
|
|
61
|
+
gap: var(--form-gap-x);
|
|
62
|
+
}
|
|
63
|
+
nv-fieldslider .slider-container .track-container {
|
|
64
|
+
position: relative;
|
|
65
|
+
flex: 1;
|
|
66
|
+
height: calc(var(--slider-handler-size-min) + 0.25rem);
|
|
67
|
+
padding: calc(var(--slider-handler-size-min) / 2) 0;
|
|
68
|
+
}
|
|
69
|
+
nv-fieldslider .slider-container .track-container .track {
|
|
70
|
+
position: relative;
|
|
71
|
+
height: var(--slider-track-height);
|
|
72
|
+
background: var(--components-slider-track-background);
|
|
73
|
+
border-radius: var(--slider-track-radius);
|
|
74
|
+
cursor: pointer;
|
|
75
|
+
}
|
|
76
|
+
nv-fieldslider .slider-container .track-container .track .track-range {
|
|
77
|
+
position: absolute;
|
|
78
|
+
top: 0;
|
|
79
|
+
height: var(--slider-track-height);
|
|
80
|
+
background: var(--components-slider-track-filled-default);
|
|
81
|
+
border-radius: var(--slider-track-radius);
|
|
82
|
+
pointer-events: none;
|
|
83
|
+
}
|
|
84
|
+
nv-fieldslider .slider-container .track-container .track .thumb {
|
|
85
|
+
position: absolute;
|
|
86
|
+
top: 50%;
|
|
87
|
+
width: var(--slider-handler-size-min);
|
|
88
|
+
height: var(--slider-handler-size-min);
|
|
89
|
+
background: #ffffff;
|
|
90
|
+
border: var(--slider-handler-stroke) solid var(--components-slider-track-filled-default);
|
|
91
|
+
border-radius: 50%;
|
|
92
|
+
transform: translate(-50%, -50%);
|
|
93
|
+
z-index: 1;
|
|
94
|
+
cursor: grab;
|
|
95
|
+
transition: width 0.2s, height 0.2s, box-shadow 0.2s, background-color 0.2s;
|
|
96
|
+
}
|
|
97
|
+
nv-fieldslider .slider-container .track-container .track .thumb:hover {
|
|
98
|
+
width: var(--slider-handler-size-max);
|
|
99
|
+
height: var(--slider-handler-size-max);
|
|
100
|
+
border-color: var(--components-slider-track-filled-hover);
|
|
101
|
+
}
|
|
102
|
+
nv-fieldslider .slider-container .track-container .track .thumb:focus {
|
|
103
|
+
width: var(--slider-handler-size-min);
|
|
104
|
+
height: var(--slider-handler-size-min);
|
|
105
|
+
border-color: var(--components-slider-track-filled-focus);
|
|
106
|
+
outline: calc(var(--focus-outline-stroke) * 1) solid var(--color-focus-brand);
|
|
107
|
+
outline-offset: calc(var(--focus-outline-offset) * 1);
|
|
108
|
+
transition: outline;
|
|
109
|
+
background: var(--components-slider-handler-background-focus);
|
|
110
|
+
}
|
|
111
|
+
nv-fieldslider .slider-container .track-container .track .thumb:active {
|
|
112
|
+
cursor: grabbing;
|
|
113
|
+
background: var(--components-slider-handler-background-hover);
|
|
114
|
+
}
|
|
115
|
+
nv-fieldslider .slider-container .track-container .track .thumb .thumb-tooltip {
|
|
116
|
+
position: absolute;
|
|
117
|
+
top: 25px;
|
|
118
|
+
left: 50%;
|
|
119
|
+
background-color: var(--components-tooltip-background);
|
|
120
|
+
color: var(--components-tooltip-text);
|
|
121
|
+
padding: 5px;
|
|
122
|
+
border-radius: var(--tooltip-radius);
|
|
123
|
+
font-size: var(--tooltip-font-size);
|
|
124
|
+
z-index: 10;
|
|
125
|
+
pointer-events: none;
|
|
126
|
+
user-select: none;
|
|
127
|
+
opacity: 0;
|
|
128
|
+
transition: opacity 0.3s ease-in-out;
|
|
129
|
+
transform: translateX(-50%);
|
|
130
|
+
}
|
|
131
|
+
nv-fieldslider .slider-container .track-container .track .thumb .thumb-tooltip:after {
|
|
132
|
+
content: "";
|
|
133
|
+
background: var(--components-tooltip-background);
|
|
134
|
+
box-shadow: none;
|
|
135
|
+
border: none;
|
|
136
|
+
position: absolute;
|
|
137
|
+
border-bottom-color: transparent;
|
|
138
|
+
border-right-color: transparent;
|
|
139
|
+
width: 6px;
|
|
140
|
+
height: 6px;
|
|
141
|
+
transform: rotate(45deg);
|
|
142
|
+
border-radius: 1px;
|
|
143
|
+
top: -3px;
|
|
144
|
+
left: 50%;
|
|
145
|
+
margin-left: -3px;
|
|
146
|
+
}
|
|
147
|
+
nv-fieldslider .slider-container .track-container .track .thumb:hover .thumb-tooltip, nv-fieldslider .slider-container .track-container .track .thumb:active .thumb-tooltip, nv-fieldslider .slider-container .track-container .track .thumb:focus .thumb-tooltip {
|
|
148
|
+
opacity: 1;
|
|
149
|
+
}
|
|
150
|
+
nv-fieldslider .slider-container .track-container .track-ticks {
|
|
151
|
+
position: relative;
|
|
152
|
+
height: 1rem;
|
|
153
|
+
margin-top: 0.25rem;
|
|
154
|
+
}
|
|
155
|
+
nv-fieldslider .slider-container .track-container .track-ticks .track-tick {
|
|
156
|
+
position: absolute;
|
|
157
|
+
top: 0;
|
|
158
|
+
width: var(--slider-tick-height);
|
|
159
|
+
height: var(--slider-tick-height);
|
|
160
|
+
background: var(--components-form-field-border-default);
|
|
161
|
+
border-radius: 50%;
|
|
162
|
+
transform: translate(-50%, 0);
|
|
163
|
+
pointer-events: none;
|
|
164
|
+
}
|
|
165
|
+
nv-fieldslider .slider-container .track-container .track-ticks .track-tick:first-of-type {
|
|
166
|
+
transform: translate(0, 0);
|
|
167
|
+
}
|
|
168
|
+
nv-fieldslider .slider-container .track-container .track-ticks .track-tick:last-of-type {
|
|
169
|
+
transform: translate(-100%, 0);
|
|
170
|
+
}
|
|
171
|
+
nv-fieldslider .slider-container .track-container .track-ticks .track-tick .tick-label {
|
|
172
|
+
position: absolute;
|
|
173
|
+
top: calc(var(--slider-tick-height) + 0.25rem);
|
|
174
|
+
left: 50%;
|
|
175
|
+
color: var(--components-form-field-border-default);
|
|
176
|
+
transform: translateX(-50%);
|
|
177
|
+
white-space: nowrap;
|
|
178
|
+
}
|
|
179
|
+
.track-tick-first nv-fieldslider .slider-container .track-container .track-ticks .track-tick .tick-label {
|
|
180
|
+
left: 0;
|
|
181
|
+
transform: translateX(0);
|
|
182
|
+
}
|
|
183
|
+
.track-tick-last nv-fieldslider .slider-container .track-container .track-ticks .track-tick .tick-label {
|
|
184
|
+
left: 100%;
|
|
185
|
+
transform: translateX(-100%);
|
|
186
|
+
}
|
|
187
|
+
nv-fieldslider .slider-container .input-container {
|
|
188
|
+
display: flex;
|
|
189
|
+
flex-grow: 1;
|
|
190
|
+
justify-content: center;
|
|
191
|
+
align-items: center;
|
|
192
|
+
align-self: stretch;
|
|
193
|
+
border-radius: var(--form-field-radius);
|
|
194
|
+
border-width: 1px;
|
|
195
|
+
border-style: solid;
|
|
196
|
+
border-color: var(--nv-field-border-default);
|
|
197
|
+
opacity: var(--components-form-opacity-default, 1);
|
|
198
|
+
background: var(--nv-field-background);
|
|
199
|
+
transition: all 150ms ease-out;
|
|
200
|
+
width: 70px;
|
|
201
|
+
flex-grow: unset;
|
|
202
|
+
}
|
|
203
|
+
nv-fieldslider .slider-container .input-container:hover {
|
|
204
|
+
border-color: var(--nv-field-border-hover);
|
|
205
|
+
}
|
|
206
|
+
nv-fieldslider .slider-container .input-container:focus-within, nv-fieldslider .slider-container .input-container:focus-within:hover, nv-fieldslider .slider-container .input-container:focus, nv-fieldslider .slider-container .input-container:focus:hover {
|
|
207
|
+
border-color: var(--nv-field-border-focus);
|
|
208
|
+
box-shadow: 0px 0px 0px var(--focus-field-stroke) var(--nv-field-focus-box-shadow);
|
|
209
|
+
}
|
|
210
|
+
nv-fieldslider .slider-container .input-container:has(input:read-only) {
|
|
211
|
+
opacity: 0.5;
|
|
212
|
+
background-color: var(--components-form-field-background-readonly);
|
|
213
|
+
border-color: var(--nv-field-border-readonly);
|
|
214
|
+
}
|
|
215
|
+
nv-fieldslider .slider-container .input-container:has(input:disabled) {
|
|
216
|
+
opacity: 0.5;
|
|
217
|
+
background-color: var(--components-form-field-background-disabled);
|
|
218
|
+
border-color: var(--nv-field-border-disabled);
|
|
219
|
+
}
|
|
220
|
+
nv-fieldslider .slider-container .input-container input {
|
|
221
|
+
display: flex;
|
|
222
|
+
align-items: center;
|
|
223
|
+
flex: 1 0 0;
|
|
224
|
+
overflow: hidden;
|
|
225
|
+
background-color: transparent;
|
|
226
|
+
color: var(--components-form-field-content-text);
|
|
227
|
+
padding: var(--form-field-padding-y) var(--form-field-padding-x);
|
|
228
|
+
font-size: var(--form-field-font-size);
|
|
229
|
+
font-style: normal;
|
|
230
|
+
font-weight: 500;
|
|
231
|
+
line-height: var(--form-field-line-height);
|
|
232
|
+
width: 100%;
|
|
233
|
+
/* Hide Edge built-in password reveal and clear icons */
|
|
234
|
+
}
|
|
235
|
+
nv-fieldslider .slider-container .input-container input:focus {
|
|
236
|
+
outline: none;
|
|
237
|
+
}
|
|
238
|
+
nv-fieldslider .slider-container .input-container input::placeholder {
|
|
239
|
+
overflow: hidden;
|
|
240
|
+
color: var(--components-form-field-content-placeholder);
|
|
241
|
+
text-overflow: ellipsis;
|
|
242
|
+
font-family: "TT Norms Pro", sans-serif;
|
|
243
|
+
font-size: var(--form-field-font-size);
|
|
244
|
+
font-style: normal;
|
|
245
|
+
font-weight: 400;
|
|
246
|
+
line-height: var(--form-field-line-height);
|
|
247
|
+
}
|
|
248
|
+
nv-fieldslider .slider-container .input-container input[type=password]::-ms-clear, nv-fieldslider .slider-container .input-container input[type=password]::-ms-reveal {
|
|
249
|
+
display: none;
|
|
250
|
+
width: 0;
|
|
251
|
+
height: 0;
|
|
252
|
+
}
|
|
253
|
+
nv-fieldslider[fluid]:not([fluid=false]) {
|
|
254
|
+
max-width: unset;
|
|
255
|
+
}
|
|
256
|
+
nv-fieldslider[error]:not([error=false]) {
|
|
257
|
+
--nv-field-border-default: var(--components-form-field-border-error);
|
|
258
|
+
--nv-field-border-hover: var(--nv-field-border-default);
|
|
259
|
+
--nv-field-border-focus: var(--nv-field-border-default);
|
|
260
|
+
--nv-field-border-disabled: var(--nv-field-border-default);
|
|
261
|
+
--nv-field-border-readonly: var(--nv-field-border-default);
|
|
262
|
+
--nv-field-focus-box-shadow: var(--color-focus-destructive-in-field);
|
|
263
|
+
}
|
|
264
|
+
nv-fieldslider[success]:not([success=false]) {
|
|
265
|
+
--nv-field-border-default: var(--components-form-field-border-success);
|
|
266
|
+
--nv-field-border-hover: var(--nv-field-border-default);
|
|
267
|
+
--nv-field-border-focus: var(--nv-field-border-default);
|
|
268
|
+
--nv-field-border-disabled: var(--nv-field-border-default);
|
|
269
|
+
--nv-field-border-readonly: var(--nv-field-border-default);
|
|
270
|
+
--nv-field-focus-box-shadow: var(--color-focus-success);
|
|
271
|
+
}
|
|
272
|
+
nv-fieldslider[readonly]:not([readonly=false]) {
|
|
273
|
+
--nv-field-border-default: var(--components-form-field-border-readonly);
|
|
274
|
+
--nv-field-border-hover: var(--nv-field-border-default);
|
|
275
|
+
--nv-field-border-focus: var(--components-form-field-border-focus);
|
|
276
|
+
--nv-field-border-disabled: var(--nv-field-border-default);
|
|
277
|
+
--nv-field-border-readonly: var(--nv-field-border-default);
|
|
278
|
+
--nv-field-background: var(--components-form-field-background-readonly);
|
|
279
|
+
}
|
|
280
|
+
nv-fieldslider[readonly]:not([readonly=false]) .track,
|
|
281
|
+
nv-fieldslider[readonly]:not([readonly=false]) .thumb {
|
|
282
|
+
cursor: default;
|
|
283
|
+
}
|
|
284
|
+
nv-fieldslider label {
|
|
285
|
+
display: flex;
|
|
286
|
+
align-items: center;
|
|
287
|
+
gap: var(--form-label-gap);
|
|
288
|
+
align-self: stretch;
|
|
289
|
+
color: var(--components-form-text-label-default);
|
|
290
|
+
font-family: "TT Norms Pro", sans-serif;
|
|
291
|
+
font-size: var(--form-label-font-size);
|
|
292
|
+
font-style: normal;
|
|
293
|
+
font-weight: 500;
|
|
294
|
+
line-height: var(--form-label-line-height);
|
|
295
|
+
}
|
|
296
|
+
nv-fieldslider nv-icon.validation {
|
|
297
|
+
color: var(--nv-field-border-default);
|
|
298
|
+
}
|
|
299
|
+
nv-fieldslider[hide-label]:not([hide-label=false]) label {
|
|
300
|
+
position: absolute;
|
|
301
|
+
width: 1px;
|
|
302
|
+
height: 1px;
|
|
303
|
+
padding: 0;
|
|
304
|
+
margin: -1px;
|
|
305
|
+
overflow: hidden;
|
|
306
|
+
clip: rect(0, 0, 0, 0);
|
|
307
|
+
white-space: nowrap;
|
|
308
|
+
border-width: 0;
|
|
309
|
+
}
|
|
310
|
+
nv-fieldslider[has-field]:not([has-field=false]) .thumb-tooltip {
|
|
311
|
+
display: none;
|
|
312
|
+
}
|
|
313
|
+
nv-fieldslider > .description {
|
|
314
|
+
display: flex;
|
|
315
|
+
align-items: center;
|
|
316
|
+
align-self: stretch;
|
|
317
|
+
gap: var(--spacing-1);
|
|
318
|
+
color: var(--components-form-text-description-default);
|
|
319
|
+
font-family: "TT Norms Pro", sans-serif;
|
|
320
|
+
font-size: var(--form-description-font-size);
|
|
321
|
+
font-style: normal;
|
|
322
|
+
line-height: var(--form-description-line-height);
|
|
323
|
+
}
|
|
324
|
+
nv-fieldslider > .error-description {
|
|
325
|
+
display: flex;
|
|
326
|
+
align-items: center;
|
|
327
|
+
align-self: stretch;
|
|
328
|
+
gap: var(--spacing-1);
|
|
329
|
+
color: var(--components-form-text-description-default);
|
|
330
|
+
font-family: "TT Norms Pro", sans-serif;
|
|
331
|
+
font-size: var(--form-description-font-size);
|
|
332
|
+
font-style: normal;
|
|
333
|
+
line-height: var(--form-description-line-height);
|
|
334
|
+
color: var(--components-form-text-description-error);
|
|
335
|
+
}
|
|
336
|
+
nv-fieldslider > .error-description[hidden] {
|
|
337
|
+
display: none;
|
|
338
|
+
}
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import { describe, it, expect } from "vitest";
|
|
2
|
+
import { clamp, valueToPercent, snapToStep, generateTicks, snapToTicks, } from "../nv-fieldslider.utils";
|
|
3
|
+
describe('nv-fieldslider -> utils', () => {
|
|
4
|
+
describe('clamp', () => {
|
|
5
|
+
it('should clamp value to min when value is below min', () => {
|
|
6
|
+
expect(clamp(-10, 0, 100)).toBe(0);
|
|
7
|
+
});
|
|
8
|
+
it('should clamp value to max when value is above max', () => {
|
|
9
|
+
expect(clamp(150, 0, 100)).toBe(100);
|
|
10
|
+
});
|
|
11
|
+
it('should return value when it is within range', () => {
|
|
12
|
+
expect(clamp(50, 0, 100)).toBe(50);
|
|
13
|
+
});
|
|
14
|
+
it('should handle edge cases', () => {
|
|
15
|
+
expect(clamp(0, 0, 100)).toBe(0);
|
|
16
|
+
expect(clamp(100, 0, 100)).toBe(100);
|
|
17
|
+
});
|
|
18
|
+
it('should handle negative ranges', () => {
|
|
19
|
+
expect(clamp(-150, -200, -100)).toBe(-150);
|
|
20
|
+
expect(clamp(-50, -200, -100)).toBe(-100);
|
|
21
|
+
expect(clamp(-250, -200, -100)).toBe(-200);
|
|
22
|
+
});
|
|
23
|
+
});
|
|
24
|
+
describe('valueToPercent', () => {
|
|
25
|
+
it('should convert value to percentage within range', () => {
|
|
26
|
+
expect(valueToPercent(50, 0, 100)).toBe(50);
|
|
27
|
+
expect(valueToPercent(25, 0, 100)).toBe(25);
|
|
28
|
+
expect(valueToPercent(75, 0, 100)).toBe(75);
|
|
29
|
+
});
|
|
30
|
+
it('should handle values outside the range', () => {
|
|
31
|
+
expect(valueToPercent(-10, 0, 100)).toBe(-10);
|
|
32
|
+
expect(valueToPercent(150, 0, 100)).toBe(150);
|
|
33
|
+
});
|
|
34
|
+
it('should handle custom ranges', () => {
|
|
35
|
+
expect(valueToPercent(30, 20, 40)).toBe(50);
|
|
36
|
+
expect(valueToPercent(10, -10, 10)).toBe(100);
|
|
37
|
+
expect(valueToPercent(0, -10, 10)).toBe(50);
|
|
38
|
+
expect(valueToPercent(-10, -10, 10)).toBe(0);
|
|
39
|
+
});
|
|
40
|
+
it('should return 0 when min equals max', () => {
|
|
41
|
+
expect(valueToPercent(50, 50, 50)).toBe(0);
|
|
42
|
+
expect(valueToPercent(100, 100, 100)).toBe(0);
|
|
43
|
+
});
|
|
44
|
+
it('should handle negative ranges', () => {
|
|
45
|
+
expect(valueToPercent(-150, -200, -100)).toBe(50);
|
|
46
|
+
});
|
|
47
|
+
it('should handle decimal values', () => {
|
|
48
|
+
expect(valueToPercent(2.5, 0, 5)).toBe(50);
|
|
49
|
+
expect(valueToPercent(0.5, 0, 1)).toBe(50);
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
describe('snapToStep', () => {
|
|
53
|
+
it('should snap value to nearest step', () => {
|
|
54
|
+
expect(snapToStep(42, 0, 100, 5)).toBe(40);
|
|
55
|
+
expect(snapToStep(43, 0, 100, 5)).toBe(45);
|
|
56
|
+
expect(snapToStep(2.7, 0, 10, 0.5)).toBe(2.5);
|
|
57
|
+
expect(snapToStep(2.8, 0, 10, 0.5)).toBe(3);
|
|
58
|
+
});
|
|
59
|
+
it('should clamp value to min when below min', () => {
|
|
60
|
+
expect(snapToStep(-10, 0, 100, 5)).toBe(0);
|
|
61
|
+
});
|
|
62
|
+
it('should clamp value to max when above max', () => {
|
|
63
|
+
expect(snapToStep(110, 0, 100, 5)).toBe(100);
|
|
64
|
+
});
|
|
65
|
+
it('should handle edge cases', () => {
|
|
66
|
+
// Exactly on a step
|
|
67
|
+
expect(snapToStep(20, 0, 100, 5)).toBe(20);
|
|
68
|
+
// Min and max values
|
|
69
|
+
expect(snapToStep(0, 0, 100, 5)).toBe(0);
|
|
70
|
+
expect(snapToStep(100, 0, 100, 5)).toBe(100);
|
|
71
|
+
// Value between min and first step
|
|
72
|
+
expect(snapToStep(2, 0, 100, 5)).toBe(0);
|
|
73
|
+
expect(snapToStep(3, 0, 100, 5)).toBe(5);
|
|
74
|
+
});
|
|
75
|
+
it('should handle negative ranges', () => {
|
|
76
|
+
expect(snapToStep(-152, -200, -100, 10)).toBe(-150);
|
|
77
|
+
});
|
|
78
|
+
it("should handle step sizes that don't divide evenly into the range", () => {
|
|
79
|
+
expect(snapToStep(97, 0, 100, 30)).toBe(90);
|
|
80
|
+
expect(snapToStep(98, 0, 100, 30)).toBe(90); // Not 120 because it's clamped to max (100)
|
|
81
|
+
});
|
|
82
|
+
});
|
|
83
|
+
describe('generateTicks', () => {
|
|
84
|
+
it('should generate ticks for a simple range', () => {
|
|
85
|
+
const ticks = generateTicks(0, 10, 2);
|
|
86
|
+
expect(ticks).toEqual([0, 2, 4, 6, 8, 10]);
|
|
87
|
+
});
|
|
88
|
+
it('should include max value when it falls on a step', () => {
|
|
89
|
+
const ticks = generateTicks(0, 10, 5);
|
|
90
|
+
expect(ticks).toEqual([0, 5, 10]);
|
|
91
|
+
});
|
|
92
|
+
it("should include max value even when it doesn't fall on a step", () => {
|
|
93
|
+
const ticks = generateTicks(0, 11, 5);
|
|
94
|
+
expect(ticks).toEqual([0, 5, 10, 11]);
|
|
95
|
+
});
|
|
96
|
+
it('should handle negative ranges', () => {
|
|
97
|
+
const ticks = generateTicks(-10, 0, 2);
|
|
98
|
+
expect(ticks).toEqual([-10, -8, -6, -4, -2, 0]);
|
|
99
|
+
});
|
|
100
|
+
it('should handle floating point step sizes', () => {
|
|
101
|
+
const ticks = generateTicks(0, 1, 0.2);
|
|
102
|
+
// Using toEqual with approximate values due to floating point precision
|
|
103
|
+
expect(ticks).toEqual([0, 0.2, 0.4, 0.6, 0.8, 1]);
|
|
104
|
+
});
|
|
105
|
+
it('should handle small step sizes correctly', () => {
|
|
106
|
+
const ticks = generateTicks(0, 0.5, 0.1);
|
|
107
|
+
expect(ticks).toEqual([0, 0.1, 0.2, 0.3, 0.4, 0.5]);
|
|
108
|
+
});
|
|
109
|
+
it('should handle case when min equals max', () => {
|
|
110
|
+
const ticks = generateTicks(10, 10, 5);
|
|
111
|
+
expect(ticks).toEqual([10]);
|
|
112
|
+
});
|
|
113
|
+
});
|
|
114
|
+
describe('snapToTicks', () => {
|
|
115
|
+
it('should snap value to closest tick', () => {
|
|
116
|
+
const ticks = [
|
|
117
|
+
{ value: 0 },
|
|
118
|
+
{ value: 25 },
|
|
119
|
+
{ value: 50 },
|
|
120
|
+
{ value: 75 },
|
|
121
|
+
{ value: 100 },
|
|
122
|
+
];
|
|
123
|
+
expect(snapToTicks(12, ticks)).toBe(0); // Closer to 0
|
|
124
|
+
expect(snapToTicks(13, ticks)).toBe(25); // Closer to 25
|
|
125
|
+
expect(snapToTicks(37, ticks)).toBe(25); // Closer to 25
|
|
126
|
+
expect(snapToTicks(38, ticks)).toBe(50); // Closer to 50
|
|
127
|
+
expect(snapToTicks(87, ticks)).toBe(75); // Closer to 75
|
|
128
|
+
expect(snapToTicks(88, ticks)).toBe(100); // Closer to 100
|
|
129
|
+
});
|
|
130
|
+
it('should return original value when ticks is empty or undefined', () => {
|
|
131
|
+
expect(snapToTicks(42, [])).toBe(42);
|
|
132
|
+
expect(snapToTicks(42, undefined)).toBe(42);
|
|
133
|
+
});
|
|
134
|
+
it('should return tick value when input exactly matches a tick', () => {
|
|
135
|
+
const ticks = [{ value: 0 }, { value: 50 }, { value: 100 }];
|
|
136
|
+
expect(snapToTicks(0, ticks)).toBe(0);
|
|
137
|
+
expect(snapToTicks(50, ticks)).toBe(50);
|
|
138
|
+
expect(snapToTicks(100, ticks)).toBe(100);
|
|
139
|
+
});
|
|
140
|
+
it('should handle equidistant values by taking the first encountered tick', () => {
|
|
141
|
+
const ticks = [{ value: 0 }, { value: 10 }];
|
|
142
|
+
// Value 5 is exactly equidistant from 0 and 10
|
|
143
|
+
expect(snapToTicks(5, ticks)).toBe(0);
|
|
144
|
+
});
|
|
145
|
+
it('should handle negative and decimal values', () => {
|
|
146
|
+
const ticks = [
|
|
147
|
+
{ value: -10 },
|
|
148
|
+
{ value: -5.5 },
|
|
149
|
+
{ value: 0 },
|
|
150
|
+
{ value: 2.25 },
|
|
151
|
+
];
|
|
152
|
+
expect(snapToTicks(-8, ticks)).toBe(-10);
|
|
153
|
+
expect(snapToTicks(-3, ticks)).toBe(-5.5);
|
|
154
|
+
expect(snapToTicks(1, ticks)).toBe(0);
|
|
155
|
+
expect(snapToTicks(1.5, ticks)).toBe(2.25);
|
|
156
|
+
});
|
|
157
|
+
});
|
|
158
|
+
});
|
|
159
|
+
//# sourceMappingURL=nv-fieldslider.utils.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nv-fieldslider.utils.test.js","sourceRoot":"","sources":["../../../../src/components/nv-fieldslider/test/nv-fieldslider.utils.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { describe, it, expect } from 'vitest';\nimport {\n clamp,\n valueToPercent,\n snapToStep,\n generateTicks,\n snapToTicks,\n} from '../nv-fieldslider.utils';\n\ndescribe('nv-fieldslider -> utils', () => {\n describe('clamp', () => {\n it('should clamp value to min when value is below min', () => {\n expect(clamp(-10, 0, 100)).toBe(0);\n });\n\n it('should clamp value to max when value is above max', () => {\n expect(clamp(150, 0, 100)).toBe(100);\n });\n\n it('should return value when it is within range', () => {\n expect(clamp(50, 0, 100)).toBe(50);\n });\n\n it('should handle edge cases', () => {\n expect(clamp(0, 0, 100)).toBe(0);\n expect(clamp(100, 0, 100)).toBe(100);\n });\n\n it('should handle negative ranges', () => {\n expect(clamp(-150, -200, -100)).toBe(-150);\n expect(clamp(-50, -200, -100)).toBe(-100);\n expect(clamp(-250, -200, -100)).toBe(-200);\n });\n });\n\n describe('valueToPercent', () => {\n it('should convert value to percentage within range', () => {\n expect(valueToPercent(50, 0, 100)).toBe(50);\n expect(valueToPercent(25, 0, 100)).toBe(25);\n expect(valueToPercent(75, 0, 100)).toBe(75);\n });\n\n it('should handle values outside the range', () => {\n expect(valueToPercent(-10, 0, 100)).toBe(-10);\n expect(valueToPercent(150, 0, 100)).toBe(150);\n });\n\n it('should handle custom ranges', () => {\n expect(valueToPercent(30, 20, 40)).toBe(50);\n expect(valueToPercent(10, -10, 10)).toBe(100);\n expect(valueToPercent(0, -10, 10)).toBe(50);\n expect(valueToPercent(-10, -10, 10)).toBe(0);\n });\n\n it('should return 0 when min equals max', () => {\n expect(valueToPercent(50, 50, 50)).toBe(0);\n expect(valueToPercent(100, 100, 100)).toBe(0);\n });\n\n it('should handle negative ranges', () => {\n expect(valueToPercent(-150, -200, -100)).toBe(50);\n });\n\n it('should handle decimal values', () => {\n expect(valueToPercent(2.5, 0, 5)).toBe(50);\n expect(valueToPercent(0.5, 0, 1)).toBe(50);\n });\n });\n\n describe('snapToStep', () => {\n it('should snap value to nearest step', () => {\n expect(snapToStep(42, 0, 100, 5)).toBe(40);\n expect(snapToStep(43, 0, 100, 5)).toBe(45);\n expect(snapToStep(2.7, 0, 10, 0.5)).toBe(2.5);\n expect(snapToStep(2.8, 0, 10, 0.5)).toBe(3);\n });\n\n it('should clamp value to min when below min', () => {\n expect(snapToStep(-10, 0, 100, 5)).toBe(0);\n });\n\n it('should clamp value to max when above max', () => {\n expect(snapToStep(110, 0, 100, 5)).toBe(100);\n });\n\n it('should handle edge cases', () => {\n // Exactly on a step\n expect(snapToStep(20, 0, 100, 5)).toBe(20);\n // Min and max values\n expect(snapToStep(0, 0, 100, 5)).toBe(0);\n expect(snapToStep(100, 0, 100, 5)).toBe(100);\n // Value between min and first step\n expect(snapToStep(2, 0, 100, 5)).toBe(0);\n expect(snapToStep(3, 0, 100, 5)).toBe(5);\n });\n\n it('should handle negative ranges', () => {\n expect(snapToStep(-152, -200, -100, 10)).toBe(-150);\n });\n\n it(\"should handle step sizes that don't divide evenly into the range\", () => {\n expect(snapToStep(97, 0, 100, 30)).toBe(90);\n expect(snapToStep(98, 0, 100, 30)).toBe(90); // Not 120 because it's clamped to max (100)\n });\n });\n\n describe('generateTicks', () => {\n it('should generate ticks for a simple range', () => {\n const ticks = generateTicks(0, 10, 2);\n expect(ticks).toEqual([0, 2, 4, 6, 8, 10]);\n });\n\n it('should include max value when it falls on a step', () => {\n const ticks = generateTicks(0, 10, 5);\n expect(ticks).toEqual([0, 5, 10]);\n });\n\n it(\"should include max value even when it doesn't fall on a step\", () => {\n const ticks = generateTicks(0, 11, 5);\n expect(ticks).toEqual([0, 5, 10, 11]);\n });\n\n it('should handle negative ranges', () => {\n const ticks = generateTicks(-10, 0, 2);\n expect(ticks).toEqual([-10, -8, -6, -4, -2, 0]);\n });\n\n it('should handle floating point step sizes', () => {\n const ticks = generateTicks(0, 1, 0.2);\n // Using toEqual with approximate values due to floating point precision\n expect(ticks).toEqual([0, 0.2, 0.4, 0.6, 0.8, 1]);\n });\n\n it('should handle small step sizes correctly', () => {\n const ticks = generateTicks(0, 0.5, 0.1);\n expect(ticks).toEqual([0, 0.1, 0.2, 0.3, 0.4, 0.5]);\n });\n\n it('should handle case when min equals max', () => {\n const ticks = generateTicks(10, 10, 5);\n expect(ticks).toEqual([10]);\n });\n });\n\n describe('snapToTicks', () => {\n it('should snap value to closest tick', () => {\n const ticks = [\n { value: 0 },\n { value: 25 },\n { value: 50 },\n { value: 75 },\n { value: 100 },\n ];\n\n expect(snapToTicks(12, ticks)).toBe(0); // Closer to 0\n expect(snapToTicks(13, ticks)).toBe(25); // Closer to 25\n expect(snapToTicks(37, ticks)).toBe(25); // Closer to 25\n expect(snapToTicks(38, ticks)).toBe(50); // Closer to 50\n expect(snapToTicks(87, ticks)).toBe(75); // Closer to 75\n expect(snapToTicks(88, ticks)).toBe(100); // Closer to 100\n });\n\n it('should return original value when ticks is empty or undefined', () => {\n expect(snapToTicks(42, [])).toBe(42);\n expect(snapToTicks(42, undefined)).toBe(42);\n });\n\n it('should return tick value when input exactly matches a tick', () => {\n const ticks = [{ value: 0 }, { value: 50 }, { value: 100 }];\n\n expect(snapToTicks(0, ticks)).toBe(0);\n expect(snapToTicks(50, ticks)).toBe(50);\n expect(snapToTicks(100, ticks)).toBe(100);\n });\n\n it('should handle equidistant values by taking the first encountered tick', () => {\n const ticks = [{ value: 0 }, { value: 10 }];\n\n // Value 5 is exactly equidistant from 0 and 10\n expect(snapToTicks(5, ticks)).toBe(0);\n });\n\n it('should handle negative and decimal values', () => {\n const ticks = [\n { value: -10 },\n { value: -5.5 },\n { value: 0 },\n { value: 2.25 },\n ];\n\n expect(snapToTicks(-8, ticks)).toBe(-10);\n expect(snapToTicks(-3, ticks)).toBe(-5.5);\n expect(snapToTicks(1, ticks)).toBe(0);\n expect(snapToTicks(1.5, ticks)).toBe(2.25);\n });\n });\n});\n"]}
|
|
@@ -1,3 +1,41 @@
|
|
|
1
|
+
/* TODO: integrate this logic in the proper structure */
|
|
2
|
+
nv-fieldslider .slider-container .track-container:has(.thumb:hover) .track-range {
|
|
3
|
+
background: var(--components-slider-track-filled-hover);
|
|
4
|
+
}
|
|
5
|
+
nv-fieldslider .slider-container .track-container:has(.thumb:hover) .thumb {
|
|
6
|
+
border-color: var(--components-slider-track-filled-hover);
|
|
7
|
+
}
|
|
8
|
+
nv-fieldslider .slider-container .track-container:has(.thumb:focus) .track-range {
|
|
9
|
+
background: var(--components-slider-track-filled-focus);
|
|
10
|
+
}
|
|
11
|
+
nv-fieldslider .slider-container .track-container:has(.thumb:focus) .thumb {
|
|
12
|
+
border-color: var(--components-slider-track-filled-focus);
|
|
13
|
+
}
|
|
14
|
+
nv-fieldslider[error] .slider-container .track-container .track .track-range {
|
|
15
|
+
background: var(--components-slider-track-filled-error);
|
|
16
|
+
}
|
|
17
|
+
nv-fieldslider[error] .slider-container .track-container .track .thumb {
|
|
18
|
+
border-color: var(--components-slider-track-filled-error);
|
|
19
|
+
}
|
|
20
|
+
nv-fieldslider[error] .slider-container .track-container .track .thumb:hover {
|
|
21
|
+
border-color: var(--components-slider-track-filled-error);
|
|
22
|
+
outline: calc(var(--focus-outline-stroke) * 1) solid var(--components-slider-track-filled-error);
|
|
23
|
+
outline-offset: calc(var(--focus-outline-offset) * 1);
|
|
24
|
+
background-color: var(--components-slider-handler-background-error);
|
|
25
|
+
}
|
|
26
|
+
nv-fieldslider[error] .slider-container .track-container .track .thumb:focus {
|
|
27
|
+
border-color: var(--components-slider-track-filled-error);
|
|
28
|
+
outline: calc(var(--focus-outline-stroke) * 1) solid var(--components-slider-track-filled-error);
|
|
29
|
+
outline-offset: calc(var(--focus-outline-offset) * 1);
|
|
30
|
+
background-color: var(--components-slider-track-filled-error);
|
|
31
|
+
}
|
|
32
|
+
nv-fieldslider[error] .slider-container .track-container:has(.thumb:hover) .track-range {
|
|
33
|
+
background: var(--components-slider-track-filled-error);
|
|
34
|
+
}
|
|
35
|
+
nv-fieldslider[error] .slider-container .track-container:has(.thumb:hover) .thumb {
|
|
36
|
+
border-color: var(--components-slider-track-filled-error);
|
|
37
|
+
}
|
|
38
|
+
|
|
1
39
|
nv-fieldtext {
|
|
2
40
|
--nv-field-border-default: var(--components-form-field-border-default);
|
|
3
41
|
--nv-field-border-hover: var(--components-form-field-border-hover);
|
|
@@ -30,7 +68,7 @@ nv-fieldtext[error]:not([error=false]) {
|
|
|
30
68
|
--nv-field-border-focus: var(--nv-field-border-default);
|
|
31
69
|
--nv-field-border-disabled: var(--nv-field-border-default);
|
|
32
70
|
--nv-field-border-readonly: var(--nv-field-border-default);
|
|
33
|
-
--nv-field-focus-box-shadow: var(--color-focus-destructive);
|
|
71
|
+
--nv-field-focus-box-shadow: var(--color-focus-destructive-in-field);
|
|
34
72
|
}
|
|
35
73
|
nv-fieldtext[success]:not([success=false]) {
|
|
36
74
|
--nv-field-border-default: var(--components-form-field-border-success);
|
|
@@ -95,6 +133,10 @@ nv-fieldtext > .input-wrapper .input-container:has(input:disabled) {
|
|
|
95
133
|
background-color: var(--components-form-field-background-disabled);
|
|
96
134
|
border-color: var(--nv-field-border-disabled);
|
|
97
135
|
}
|
|
136
|
+
nv-fieldtext > .input-wrapper .input-container > [slot=leading-input] {
|
|
137
|
+
display: block;
|
|
138
|
+
margin-left: var(--form-field-padding-x);
|
|
139
|
+
}
|
|
98
140
|
nv-fieldtext > .input-wrapper .input-container input {
|
|
99
141
|
display: flex;
|
|
100
142
|
align-items: center;
|
|
@@ -108,6 +150,7 @@ nv-fieldtext > .input-wrapper .input-container input {
|
|
|
108
150
|
font-weight: 500;
|
|
109
151
|
line-height: var(--form-field-line-height);
|
|
110
152
|
width: 100%;
|
|
153
|
+
/* Hide Edge built-in password reveal and clear icons */
|
|
111
154
|
}
|
|
112
155
|
nv-fieldtext > .input-wrapper .input-container input:focus {
|
|
113
156
|
outline: none;
|
|
@@ -122,12 +165,24 @@ nv-fieldtext > .input-wrapper .input-container input::placeholder {
|
|
|
122
165
|
font-weight: 400;
|
|
123
166
|
line-height: var(--form-field-line-height);
|
|
124
167
|
}
|
|
168
|
+
nv-fieldtext > .input-wrapper .input-container input[type=password]::-ms-clear, nv-fieldtext > .input-wrapper .input-container input[type=password]::-ms-reveal {
|
|
169
|
+
display: none;
|
|
170
|
+
width: 0;
|
|
171
|
+
height: 0;
|
|
172
|
+
}
|
|
125
173
|
nv-fieldtext > .input-wrapper .input-container nv-icon.validation {
|
|
126
174
|
color: var(--nv-field-border-default);
|
|
127
175
|
margin-right: var(--form-gap-x);
|
|
128
176
|
}
|
|
177
|
+
nv-fieldtext > .input-wrapper .input-container > [slot=trailing-input] {
|
|
178
|
+
display: block;
|
|
179
|
+
margin-right: var(--form-field-padding-x);
|
|
180
|
+
}
|
|
129
181
|
nv-fieldtext > .description {
|
|
182
|
+
display: flex;
|
|
183
|
+
align-items: center;
|
|
130
184
|
align-self: stretch;
|
|
185
|
+
gap: var(--spacing-1);
|
|
131
186
|
color: var(--components-form-text-description-default);
|
|
132
187
|
font-family: "TT Norms Pro", sans-serif;
|
|
133
188
|
font-size: var(--form-description-font-size);
|
|
@@ -135,7 +190,10 @@ nv-fieldtext > .description {
|
|
|
135
190
|
line-height: var(--form-description-line-height);
|
|
136
191
|
}
|
|
137
192
|
nv-fieldtext > .error-description {
|
|
193
|
+
display: flex;
|
|
194
|
+
align-items: center;
|
|
138
195
|
align-self: stretch;
|
|
196
|
+
gap: var(--spacing-1);
|
|
139
197
|
color: var(--components-form-text-description-default);
|
|
140
198
|
font-family: "TT Norms Pro", sans-serif;
|
|
141
199
|
font-size: var(--form-description-font-size);
|
|
@@ -169,7 +169,15 @@ const NvFieldtextDocs = {
|
|
|
169
169
|
args: {
|
|
170
170
|
label: 'Leading Input',
|
|
171
171
|
},
|
|
172
|
-
template: (h("nv-fieldtext", { "data-storybook-args": true }, h("nv-badge", { slot: "leading-input", label: "test", dismissible: true
|
|
172
|
+
template: (h("nv-fieldtext", { "data-storybook-args": true }, h("nv-badge", { slot: "leading-input", label: "test", dismissible: true }))),
|
|
173
|
+
},
|
|
174
|
+
{
|
|
175
|
+
name: 'trailingInputSlot',
|
|
176
|
+
description: 'Content to be placed after the input text, within the input container.',
|
|
177
|
+
args: {
|
|
178
|
+
label: 'Trailing Input',
|
|
179
|
+
},
|
|
180
|
+
template: (h("nv-fieldtext", { "data-storybook-args": true }, h("span", { slot: "trailing-input" }, "MWh"))),
|
|
173
181
|
},
|
|
174
182
|
{
|
|
175
183
|
name: 'labelSlot',
|