@esri/calcite-components 1.0.0-next.414 → 1.0.0-next.417
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/calcite/calcite.esm.js +1 -1
- package/dist/calcite/calcite.js +1 -1
- package/dist/calcite/{p-02854dce.system.entry.js → p-02d7cf64.system.entry.js} +1 -1
- package/dist/calcite/p-03c92ad2.entry.js +5 -0
- package/dist/calcite/{p-847fc3a4.system.entry.js → p-052ba882.system.entry.js} +1 -1
- package/dist/calcite/p-07f1f162.system.entry.js +5 -0
- package/dist/calcite/p-1263bcc0.entry.js +5 -0
- package/dist/calcite/p-184049cb.entry.js +5 -0
- package/dist/calcite/p-18be4438.entry.js +5 -0
- package/dist/calcite/p-193749c1.entry.js +5 -0
- package/dist/calcite/{p-129954f1.system.entry.js → p-1aded388.system.entry.js} +1 -1
- package/dist/calcite/p-1aeca42a.system.entry.js +5 -0
- package/dist/calcite/p-1b1bca2d.entry.js +5 -0
- package/dist/calcite/{p-3c773436.system.entry.js → p-1fc943d5.system.entry.js} +1 -1
- package/dist/calcite/p-23145377.entry.js +5 -0
- package/dist/calcite/p-28c333d0.entry.js +5 -0
- package/dist/calcite/p-2bcaed33.entry.js +5 -0
- package/dist/calcite/p-2dd22e8c.system.entry.js +5 -0
- package/dist/calcite/p-2fae8516.system.entry.js +5 -0
- package/dist/calcite/p-3119ffce.system.js +5 -0
- package/dist/calcite/p-31c58f25.entry.js +5 -0
- package/dist/calcite/p-32d6b962.entry.js +5 -0
- package/dist/calcite/{p-475869c9.system.entry.js → p-32efc4cd.system.entry.js} +1 -1
- package/dist/calcite/p-34730e94.entry.js +5 -0
- package/dist/calcite/p-364db271.entry.js +5 -0
- package/dist/calcite/p-3915705c.entry.js +5 -0
- package/dist/calcite/p-3b4662a5.entry.js +5 -0
- package/dist/calcite/p-3b707a1c.system.entry.js +5 -0
- package/dist/calcite/{p-41806a13.system.entry.js → p-3cdee187.system.entry.js} +1 -1
- package/dist/calcite/{p-296c1d5a.system.entry.js → p-3e149640.system.entry.js} +1 -1
- package/dist/calcite/p-3e9d96c6.system.entry.js +5 -0
- package/dist/calcite/{p-f5e91588.system.entry.js → p-3ea157ba.system.entry.js} +1 -1
- package/dist/calcite/p-42227a04.entry.js +5 -0
- package/dist/calcite/p-426f011a.entry.js +5 -0
- package/dist/calcite/p-4570cf6c.js +5 -0
- package/dist/calcite/p-4696e56f.entry.js +5 -0
- package/dist/calcite/p-4730df46.js +5 -0
- package/dist/calcite/p-47d38839.entry.js +5 -0
- package/dist/calcite/{p-aa336fc3.system.entry.js → p-482885ae.system.entry.js} +1 -1
- package/dist/calcite/{p-df3775ba.system.entry.js → p-48637359.system.entry.js} +1 -1
- package/dist/calcite/p-496e907a.system.entry.js +5 -0
- package/dist/calcite/p-4aecbaef.entry.js +5 -0
- package/dist/calcite/p-4afb5a1b.system.entry.js +5 -0
- package/dist/calcite/p-4eae61c5.entry.js +5 -0
- package/dist/calcite/p-5394666a.entry.js +5 -0
- package/dist/calcite/p-54c49493.entry.js +5 -0
- package/dist/calcite/{p-0bd5bb31.system.entry.js → p-55e1a3a0.system.entry.js} +1 -1
- package/dist/calcite/{p-3543ddfe.system.entry.js → p-569150ab.system.entry.js} +1 -1
- package/dist/calcite/p-57e0428a.system.entry.js +5 -0
- package/dist/calcite/{p-9d071e3c.system.js → p-588bfa74.system.js} +1 -1
- package/dist/calcite/{p-a7e2bf9b.system.entry.js → p-58adb34d.system.entry.js} +1 -1
- package/dist/calcite/p-5a8829cd.entry.js +5 -0
- package/dist/calcite/p-5bb4d012.entry.js +5 -0
- package/dist/calcite/p-6261469d.entry.js +5 -0
- package/dist/calcite/p-65dbbfb5.system.js +5 -0
- package/dist/calcite/p-69d2d9cf.system.entry.js +5 -0
- package/dist/calcite/p-6ab3e489.entry.js +5 -0
- package/dist/calcite/p-6b7b23d0.js +5 -0
- package/dist/calcite/{p-a6261f6b.system.entry.js → p-6c4a7041.system.entry.js} +1 -1
- package/dist/calcite/p-6e0103f5.system.entry.js +5 -0
- package/dist/calcite/{p-579d1f1a.system.entry.js → p-6ed27595.system.entry.js} +1 -1
- package/dist/calcite/p-6fba3e1b.system.entry.js +5 -0
- package/dist/calcite/{p-2eb067c8.system.entry.js → p-7247b667.system.entry.js} +1 -1
- package/dist/calcite/p-7260c869.system.entry.js +5 -0
- package/dist/calcite/p-73d23656.entry.js +5 -0
- package/dist/calcite/p-7432e5ef.system.entry.js +5 -0
- package/dist/calcite/p-765c9bef.entry.js +5 -0
- package/dist/calcite/p-78bc502f.entry.js +5 -0
- package/dist/calcite/{p-ee88180e.system.entry.js → p-7bee4942.system.entry.js} +1 -1
- package/dist/calcite/{p-c0e695bd.js → p-7c88d545.js} +1 -1
- package/dist/calcite/p-7dfd6480.system.entry.js +5 -0
- package/dist/calcite/{p-fda8b94b.entry.js → p-824da4be.entry.js} +1 -1
- package/dist/calcite/p-867f7b7a.system.entry.js +5 -0
- package/dist/calcite/p-872e82a6.system.entry.js +5 -0
- package/dist/calcite/p-87888359.entry.js +5 -0
- package/dist/calcite/p-895d22f3.entry.js +5 -0
- package/dist/calcite/p-8a7596e3.entry.js +5 -0
- package/dist/calcite/{p-ba2c5e07.js → p-8ab345f2.js} +1 -1
- package/dist/calcite/{p-4ff0e3a9.system.entry.js → p-8e0dd0af.system.entry.js} +1 -1
- package/dist/calcite/{p-e4c317a4.system.js → p-9385e4b4.system.js} +1 -1
- package/dist/calcite/p-963e9aec.system.entry.js +5 -0
- package/dist/calcite/p-97904e9a.entry.js +5 -0
- package/dist/calcite/p-9940b82a.system.entry.js +5 -0
- package/dist/calcite/p-9ac86d6a.entry.js +5 -0
- package/dist/calcite/p-9ad8c7c5.system.entry.js +5 -0
- package/dist/calcite/p-9c913e3a.entry.js +5 -0
- package/dist/calcite/p-9e61d89d.entry.js +5 -0
- package/dist/calcite/{p-1f82294e.system.entry.js → p-a11ee541.system.entry.js} +1 -1
- package/dist/calcite/p-a3527241.system.entry.js +5 -0
- package/dist/calcite/p-a38fe099.entry.js +5 -0
- package/dist/calcite/{p-7d937b47.entry.js → p-a7770d75.entry.js} +1 -1
- package/dist/calcite/{p-f56ce7ea.js → p-a9b3ef39.js} +1 -1
- package/dist/calcite/p-a9ea7f4f.entry.js +5 -0
- package/dist/calcite/p-aaa21a84.system.entry.js +5 -0
- package/dist/calcite/p-aad14a5d.system.entry.js +5 -0
- package/dist/calcite/p-afe59546.entry.js +5 -0
- package/dist/calcite/p-b10af2b4.entry.js +5 -0
- package/dist/calcite/p-b2493735.entry.js +5 -0
- package/dist/calcite/p-b3c5247b.system.entry.js +5 -0
- package/dist/calcite/p-b47dc903.system.entry.js +5 -0
- package/dist/calcite/{p-c9f280c1.system.js → p-b765d197.system.js} +1 -1
- package/dist/calcite/p-bccbf58a.entry.js +5 -0
- package/dist/calcite/{p-993a9701.system.entry.js → p-bcdc20c3.system.entry.js} +1 -1
- package/dist/calcite/p-bd38ff21.js +5 -0
- package/dist/calcite/{p-cd406e29.system.entry.js → p-bdcb43b1.system.entry.js} +1 -1
- package/dist/calcite/p-bffb4da3.system.entry.js +5 -0
- package/dist/calcite/{p-d1060fb1.system.entry.js → p-c228a1da.system.entry.js} +1 -1
- package/dist/calcite/p-c2adeae4.entry.js +5 -0
- package/dist/calcite/p-c33f47d5.system.js +5 -0
- package/dist/calcite/p-c4cb35ba.system.entry.js +5 -0
- package/dist/calcite/{p-5d52246b.system.js → p-c51699d3.system.js} +1 -1
- package/dist/calcite/p-c5c42405.entry.js +5 -0
- package/dist/calcite/{p-a4cc864a.system.entry.js → p-c9fc13b9.system.entry.js} +1 -1
- package/dist/calcite/p-cafd98e8.entry.js +5 -0
- package/dist/calcite/{p-08c58589.system.js → p-cb57638c.system.js} +1 -1
- package/dist/calcite/p-cb847074.entry.js +5 -0
- package/dist/calcite/p-cbc6fee6.entry.js +5 -0
- package/dist/calcite/p-cc6e7726.entry.js +5 -0
- package/dist/calcite/{p-2277b440.js → p-cd5f5c8f.js} +1 -1
- package/dist/calcite/{p-1d345756.system.entry.js → p-cd9226a1.system.entry.js} +1 -1
- package/dist/calcite/p-da7c2542.entry.js +5 -0
- package/dist/calcite/{p-fedbc6e6.js → p-dcf33bb2.js} +1 -1
- package/dist/calcite/{p-36fa8b0f.system.entry.js → p-dd460534.system.entry.js} +1 -1
- package/dist/calcite/p-e22ab8fa.entry.js +5 -0
- package/dist/calcite/p-e3280a36.system.entry.js +5 -0
- package/dist/calcite/p-e43605c5.entry.js +5 -0
- package/dist/calcite/p-e4d1651b.system.entry.js +5 -0
- package/dist/calcite/p-e5a7ca2a.entry.js +5 -0
- package/dist/calcite/p-e65b6bfb.entry.js +5 -0
- package/dist/calcite/p-e66a8ca1.system.entry.js +5 -0
- package/dist/calcite/p-ea4119b1.system.entry.js +5 -0
- package/dist/calcite/{p-bcd705be.system.entry.js → p-ef17447d.system.entry.js} +1 -1
- package/dist/calcite/p-f09e27b0.system.js +5 -0
- package/dist/calcite/p-f344e163.entry.js +5 -0
- package/dist/calcite/p-fe9380a0.system.js +5 -0
- package/dist/cjs/{ExpandToggle-dbdede53.js → ExpandToggle-f7682a15.js} +1 -1
- package/dist/cjs/{Heading-1870bc0e.js → Heading-ec707493.js} +1 -1
- package/dist/cjs/calcite-accordion_2.cjs.entry.js +3 -3
- package/dist/cjs/calcite-action-bar.cjs.entry.js +4 -4
- package/dist/cjs/calcite-action-group.cjs.entry.js +3 -3
- package/dist/cjs/calcite-action-menu.cjs.entry.js +3 -3
- package/dist/cjs/calcite-action-pad.cjs.entry.js +4 -4
- package/dist/cjs/calcite-action.cjs.entry.js +7 -3
- package/dist/cjs/calcite-alert.cjs.entry.js +2 -2
- package/dist/cjs/calcite-avatar.cjs.entry.js +2 -2
- package/dist/cjs/calcite-block_2.cjs.entry.js +19 -10
- package/dist/cjs/calcite-button.cjs.entry.js +7 -3
- package/dist/cjs/calcite-card.cjs.entry.js +3 -3
- package/dist/cjs/calcite-checkbox.cjs.entry.js +8 -4
- package/dist/cjs/calcite-chip.cjs.entry.js +3 -3
- package/dist/cjs/calcite-color-picker_3.cjs.entry.js +19 -6
- package/dist/cjs/calcite-combobox_3.cjs.entry.js +40 -36
- package/dist/cjs/calcite-date-picker_4.cjs.entry.js +16 -9
- package/dist/cjs/calcite-dropdown_3.cjs.entry.js +34 -15
- package/dist/cjs/calcite-fab.cjs.entry.js +12 -3
- package/dist/cjs/calcite-filter.cjs.entry.js +14 -5
- package/dist/cjs/calcite-flow.cjs.entry.js +2 -2
- package/dist/cjs/calcite-graph_2.cjs.entry.js +7 -5
- package/dist/cjs/calcite-handle.cjs.entry.js +2 -2
- package/dist/cjs/calcite-icon.cjs.entry.js +2 -2
- package/dist/cjs/calcite-inline-editable.cjs.entry.js +12 -10
- package/dist/cjs/calcite-input-date-picker.cjs.entry.js +33 -13
- package/dist/cjs/calcite-input-message.cjs.entry.js +2 -2
- package/dist/cjs/calcite-input-time-picker_2.cjs.entry.js +22 -6
- package/dist/cjs/calcite-input.cjs.entry.js +8 -4
- package/dist/cjs/calcite-label.cjs.entry.js +8 -4
- package/dist/cjs/calcite-link.cjs.entry.js +8 -4
- package/dist/cjs/calcite-list_3.cjs.entry.js +34 -8
- package/dist/cjs/calcite-loader.cjs.entry.js +2 -2
- package/dist/cjs/calcite-modal.cjs.entry.js +3 -3
- package/dist/cjs/calcite-notice.cjs.entry.js +3 -3
- package/dist/cjs/calcite-option_3.cjs.entry.js +10 -6
- package/dist/cjs/calcite-pagination.cjs.entry.js +2 -2
- package/dist/cjs/calcite-panel.cjs.entry.js +16 -7
- package/dist/cjs/calcite-pick-list_3.cjs.entry.js +16 -12
- package/dist/cjs/calcite-popover_2.cjs.entry.js +10 -6
- package/dist/cjs/calcite-progress.cjs.entry.js +2 -2
- package/dist/cjs/calcite-radio-button-group.cjs.entry.js +2 -2
- package/dist/cjs/calcite-radio-button.cjs.entry.js +8 -4
- package/dist/cjs/calcite-radio-group_2.cjs.entry.js +10 -6
- package/dist/cjs/calcite-rating.cjs.entry.js +13 -7
- package/dist/cjs/calcite-scrim.cjs.entry.js +2 -2
- package/dist/cjs/calcite-shell_3.cjs.entry.js +5 -5
- package/dist/cjs/calcite-sortable-list.cjs.entry.js +7 -3
- package/dist/cjs/calcite-split-button.cjs.entry.js +27 -4
- package/dist/cjs/calcite-stepper_2.cjs.entry.js +9 -5
- package/dist/cjs/calcite-switch.cjs.entry.js +8 -11
- package/dist/cjs/calcite-tab_4.cjs.entry.js +11 -8
- package/dist/cjs/calcite-tile-select_2.cjs.entry.js +20 -5
- package/dist/cjs/calcite-tile.cjs.entry.js +8 -4
- package/dist/cjs/calcite-tip_3.cjs.entry.js +6 -6
- package/dist/cjs/calcite-tooltip_2.cjs.entry.js +9 -5
- package/dist/cjs/calcite-tree_2.cjs.entry.js +4 -4
- package/dist/cjs/calcite-value-list_2.cjs.entry.js +16 -11
- package/dist/cjs/calcite.cjs.js +3 -3
- package/dist/cjs/{conditionalSlot-2917212e.js → conditionalSlot-64f9bfd3.js} +1 -1
- package/dist/cjs/{form-d540f0cb.js → form-0ef859c8.js} +1 -1
- package/dist/cjs/{index-8760acaf.js → index-1af0efd3.js} +4 -1
- package/dist/cjs/interactive-87406231.js +44 -0
- package/dist/cjs/loader.cjs.js +3 -3
- package/dist/cjs/{popper-13a2bb46.js → popper-64d89ef7.js} +17 -2
- package/dist/cjs/{resources-1e94d43c.js → resources-7811eb2c.js} +1 -1
- package/dist/cjs/{resources-415f797b.js → resources-daf15d54.js} +34 -9
- package/dist/collection/collection-manifest.json +1 -1
- package/dist/collection/components/action/action.css +9 -0
- package/dist/collection/components/action/action.js +4 -0
- package/dist/collection/components/block/block.css +13 -9
- package/dist/collection/components/block/block.js +13 -4
- package/dist/collection/components/button/button.css +15 -2
- package/dist/collection/components/button/button.js +4 -0
- package/dist/collection/components/checkbox/checkbox.css +7 -0
- package/dist/collection/components/checkbox/checkbox.js +4 -0
- package/dist/collection/components/color-picker/color-picker.css +13 -0
- package/dist/collection/components/color-picker/color-picker.js +32 -1
- package/dist/collection/components/combobox/combobox.css +7 -1
- package/dist/collection/components/combobox/combobox.js +54 -32
- package/dist/collection/components/combobox/resources.js +0 -1
- package/dist/collection/components/combobox-item/combobox-item.css +13 -0
- package/dist/collection/components/combobox-item/combobox-item.js +4 -0
- package/dist/collection/components/date-picker-day/date-picker-day.css +13 -5
- package/dist/collection/components/date-picker-day/date-picker-day.js +8 -1
- package/dist/collection/components/dropdown/dropdown.css +8 -0
- package/dist/collection/components/dropdown/dropdown.js +56 -14
- package/dist/collection/components/dropdown/resources.js +0 -1
- package/dist/collection/components/fab/fab.css +13 -0
- package/dist/collection/components/fab/fab.js +9 -0
- package/dist/collection/components/filter/filter.css +13 -0
- package/dist/collection/components/filter/filter.js +11 -3
- package/dist/collection/components/inline-editable/inline-editable.css +12 -0
- package/dist/collection/components/inline-editable/inline-editable.js +9 -7
- package/dist/collection/components/input/input.css +8 -7
- package/dist/collection/components/input/input.js +4 -0
- package/dist/collection/components/input-date-picker/input-date-picker.css +64 -27
- package/dist/collection/components/input-date-picker/input-date-picker.js +50 -8
- package/dist/collection/components/input-time-picker/input-time-picker.css +13 -0
- package/dist/collection/components/input-time-picker/input-time-picker.js +21 -1
- package/dist/collection/components/label/label.css +12 -0
- package/dist/collection/components/label/label.js +9 -2
- package/dist/collection/components/link/link.css +13 -8
- package/dist/collection/components/link/link.js +5 -1
- package/dist/collection/components/list/list.css +13 -0
- package/dist/collection/components/list/list.js +38 -0
- package/dist/collection/components/list-item/list-item.css +8 -0
- package/dist/collection/components/list-item/list-item.js +9 -0
- package/dist/collection/components/panel/panel.css +13 -0
- package/dist/collection/components/panel/panel.js +11 -2
- package/dist/collection/components/pick-list/pick-list.css +13 -0
- package/dist/collection/components/pick-list/pick-list.js +4 -0
- package/dist/collection/components/pick-list/shared-list-logic.js +30 -6
- package/dist/collection/components/pick-list/shared-list-render.js +2 -2
- package/dist/collection/components/pick-list-item/pick-list-item.css +13 -0
- package/dist/collection/components/pick-list-item/pick-list-item.js +5 -4
- package/dist/collection/components/popover/popover.js +5 -1
- package/dist/collection/components/radio-button/radio-button.css +10 -1
- package/dist/collection/components/radio-button/radio-button.js +4 -0
- package/dist/collection/components/radio-group/radio-group.css +13 -5
- package/dist/collection/components/radio-group/radio-group.js +5 -1
- package/dist/collection/components/rating/rating.css +13 -5
- package/dist/collection/components/rating/rating.js +9 -3
- package/dist/collection/components/select/select.css +13 -7
- package/dist/collection/components/select/select.js +4 -0
- package/dist/collection/components/slider/slider.css +8 -0
- package/dist/collection/components/slider/slider.js +2 -0
- package/dist/collection/components/sortable-list/sortable-list.css +13 -0
- package/dist/collection/components/sortable-list/sortable-list.js +4 -0
- package/dist/collection/components/split-button/split-button.css +12 -0
- package/dist/collection/components/split-button/split-button.js +29 -3
- package/dist/collection/components/stepper-item/stepper-item.css +8 -4
- package/dist/collection/components/stepper-item/stepper-item.js +6 -2
- package/dist/collection/components/switch/switch.css +7 -0
- package/dist/collection/components/switch/switch.js +5 -13
- package/dist/collection/components/tab-title/tab-title.css +9 -0
- package/dist/collection/components/tab-title/tab-title.js +6 -3
- package/dist/collection/components/tile/tile.css +17 -1
- package/dist/collection/components/tile/tile.js +4 -0
- package/dist/collection/components/tile-select/tile-select.css +9 -1
- package/dist/collection/components/tile-select/tile-select.js +4 -0
- package/dist/collection/components/tile-select-group/tile-select-group.css +13 -0
- package/dist/collection/components/tile-select-group/tile-select-group.js +31 -1
- package/dist/collection/components/tooltip/tooltip.js +5 -1
- package/dist/collection/components/value-list/value-list.css +13 -0
- package/dist/collection/components/value-list/value-list.js +6 -5
- package/dist/collection/components/value-list-item/value-list-item.css +13 -0
- package/dist/collection/components/value-list-item/value-list-item.js +5 -1
- package/dist/collection/utils/interactive.js +42 -0
- package/dist/collection/utils/popper.js +66 -0
- package/dist/components/action-group.js +3 -4
- package/dist/components/action-menu.js +3 -4
- package/dist/components/action.js +8 -5
- package/dist/components/button.js +8 -5
- package/dist/components/calcite-accordion-item.js +3 -4
- package/dist/components/calcite-accordion.js +3 -4
- package/dist/components/calcite-action-bar.js +3 -4
- package/dist/components/calcite-action-pad.js +3 -4
- package/dist/components/calcite-alert.js +3 -4
- package/dist/components/calcite-avatar.js +3 -4
- package/dist/components/calcite-block-section.js +3 -4
- package/dist/components/calcite-block.js +17 -9
- package/dist/components/calcite-card.js +3 -4
- package/dist/components/calcite-color-picker.js +19 -6
- package/dist/components/calcite-combobox-item-group.js +4 -5
- package/dist/components/calcite-combobox-item.js +9 -6
- package/dist/components/calcite-combobox.js +35 -35
- package/dist/components/calcite-dropdown-group.js +3 -4
- package/dist/components/calcite-dropdown-item.js +3 -4
- package/dist/components/calcite-fab.js +13 -5
- package/dist/components/calcite-flow.js +3 -4
- package/dist/components/calcite-inline-editable.js +13 -12
- package/dist/components/calcite-input-date-picker.js +33 -13
- package/dist/components/calcite-input-message.js +3 -4
- package/dist/components/calcite-input-time-picker.js +21 -6
- package/dist/components/calcite-list-item-group.js +3 -4
- package/dist/components/calcite-list-item.js +13 -5
- package/dist/components/calcite-list.js +23 -5
- package/dist/components/calcite-modal.js +3 -4
- package/dist/components/calcite-notice.js +3 -4
- package/dist/components/calcite-option-group.js +3 -4
- package/dist/components/calcite-option.js +3 -4
- package/dist/components/calcite-pagination.js +3 -4
- package/dist/components/calcite-panel.js +15 -7
- package/dist/components/calcite-pick-list-group.js +3 -4
- package/dist/components/calcite-pick-list.js +8 -5
- package/dist/components/calcite-popover-manager.js +3 -4
- package/dist/components/calcite-radio-button-group.js +3 -4
- package/dist/components/calcite-radio-button.js +8 -5
- package/dist/components/calcite-radio-group-item.js +3 -4
- package/dist/components/calcite-radio-group.js +9 -6
- package/dist/components/calcite-rating.js +13 -8
- package/dist/components/calcite-select.js +8 -5
- package/dist/components/calcite-shell-center-row.js +3 -4
- package/dist/components/calcite-shell-panel.js +3 -4
- package/dist/components/calcite-shell.js +3 -4
- package/dist/components/calcite-slider.js +6 -5
- package/dist/components/calcite-sortable-list.js +8 -5
- package/dist/components/calcite-split-button.js +29 -7
- package/dist/components/calcite-stepper-item.js +10 -7
- package/dist/components/calcite-stepper.js +3 -4
- package/dist/components/calcite-tile-select-group.js +17 -5
- package/dist/components/calcite-tile-select.js +8 -5
- package/dist/components/calcite-tip-group.js +3 -4
- package/dist/components/calcite-tip-manager.js +3 -4
- package/dist/components/calcite-tip.js +3 -4
- package/dist/components/calcite-tooltip.js +8 -5
- package/dist/components/calcite-tree-item.js +3 -4
- package/dist/components/calcite-tree.js +3 -4
- package/dist/components/calcite-value-list-item.js +8 -5
- package/dist/components/calcite-value-list.js +10 -10
- package/dist/components/checkbox.js +8 -5
- package/dist/components/chip.js +3 -4
- package/dist/components/color-picker-hex-input.js +3 -4
- package/dist/components/color-picker-swatch.js +3 -4
- package/dist/components/date-picker-day.js +12 -6
- package/dist/components/date-picker-month-header.js +3 -4
- package/dist/components/date-picker-month.js +3 -4
- package/dist/components/date-picker.js +3 -4
- package/dist/components/dropdown.js +34 -15
- package/dist/components/filter.js +21 -25
- package/dist/components/graph.js +3 -4
- package/dist/components/handle.js +3 -4
- package/dist/components/icon.js +3 -4
- package/dist/components/input.js +8 -5
- package/dist/components/interactive.js +42 -0
- package/dist/components/label2.js +9 -6
- package/dist/components/link.js +9 -6
- package/dist/components/loader.js +3 -4
- package/dist/components/pick-list-item.js +8 -8
- package/dist/components/popover.js +8 -5
- package/dist/components/popper.js +16 -3
- package/dist/components/progress.js +3 -4
- package/dist/components/scrim.js +3 -4
- package/dist/components/shared-list-render.js +33 -9
- package/dist/components/switch.js +8 -13
- package/dist/components/tab-nav.js +3 -4
- package/dist/components/tab-title.js +9 -7
- package/dist/components/tab.js +3 -4
- package/dist/components/tabs.js +3 -4
- package/dist/components/tile.js +8 -5
- package/dist/components/time-picker.js +3 -4
- package/dist/components/tooltip-manager.js +3 -4
- package/dist/components/utils2.js +1 -2
- package/dist/custom-elements/index.js +529 -232
- package/dist/esm/{ExpandToggle-ed0ae55a.js → ExpandToggle-af224c1e.js} +1 -1
- package/dist/esm/{Heading-8289fa96.js → Heading-d5f1710a.js} +1 -1
- package/dist/esm/calcite-accordion_2.entry.js +3 -3
- package/dist/esm/calcite-action-bar.entry.js +4 -4
- package/dist/esm/calcite-action-group.entry.js +3 -3
- package/dist/esm/calcite-action-menu.entry.js +3 -3
- package/dist/esm/calcite-action-pad.entry.js +4 -4
- package/dist/esm/calcite-action.entry.js +7 -3
- package/dist/esm/calcite-alert.entry.js +2 -2
- package/dist/esm/calcite-avatar.entry.js +2 -2
- package/dist/esm/calcite-block_2.entry.js +19 -10
- package/dist/esm/calcite-button.entry.js +7 -3
- package/dist/esm/calcite-card.entry.js +3 -3
- package/dist/esm/calcite-checkbox.entry.js +8 -4
- package/dist/esm/calcite-chip.entry.js +3 -3
- package/dist/esm/calcite-color-picker_3.entry.js +19 -6
- package/dist/esm/calcite-combobox_3.entry.js +40 -36
- package/dist/esm/calcite-date-picker_4.entry.js +16 -9
- package/dist/esm/calcite-dropdown_3.entry.js +34 -15
- package/dist/esm/calcite-fab.entry.js +12 -3
- package/dist/esm/calcite-filter.entry.js +14 -5
- package/dist/esm/calcite-flow.entry.js +2 -2
- package/dist/esm/calcite-graph_2.entry.js +7 -5
- package/dist/esm/calcite-handle.entry.js +2 -2
- package/dist/esm/calcite-icon.entry.js +2 -2
- package/dist/esm/calcite-inline-editable.entry.js +12 -10
- package/dist/esm/calcite-input-date-picker.entry.js +33 -13
- package/dist/esm/calcite-input-message.entry.js +2 -2
- package/dist/esm/calcite-input-time-picker_2.entry.js +22 -6
- package/dist/esm/calcite-input.entry.js +8 -4
- package/dist/esm/calcite-label.entry.js +8 -4
- package/dist/esm/calcite-link.entry.js +8 -4
- package/dist/esm/calcite-list_3.entry.js +34 -8
- package/dist/esm/calcite-loader.entry.js +2 -2
- package/dist/esm/calcite-modal.entry.js +3 -3
- package/dist/esm/calcite-notice.entry.js +3 -3
- package/dist/esm/calcite-option_3.entry.js +10 -6
- package/dist/esm/calcite-pagination.entry.js +2 -2
- package/dist/esm/calcite-panel.entry.js +16 -7
- package/dist/esm/calcite-pick-list_3.entry.js +16 -12
- package/dist/esm/calcite-popover_2.entry.js +10 -6
- package/dist/esm/calcite-progress.entry.js +2 -2
- package/dist/esm/calcite-radio-button-group.entry.js +2 -2
- package/dist/esm/calcite-radio-button.entry.js +8 -4
- package/dist/esm/calcite-radio-group_2.entry.js +10 -6
- package/dist/esm/calcite-rating.entry.js +13 -7
- package/dist/esm/calcite-scrim.entry.js +2 -2
- package/dist/esm/calcite-shell_3.entry.js +5 -5
- package/dist/esm/calcite-sortable-list.entry.js +7 -3
- package/dist/esm/calcite-split-button.entry.js +27 -4
- package/dist/esm/calcite-stepper_2.entry.js +9 -5
- package/dist/esm/calcite-switch.entry.js +8 -11
- package/dist/esm/calcite-tab_4.entry.js +11 -8
- package/dist/esm/calcite-tile-select_2.entry.js +20 -5
- package/dist/esm/calcite-tile.entry.js +8 -4
- package/dist/esm/calcite-tip_3.entry.js +6 -6
- package/dist/esm/calcite-tooltip_2.entry.js +9 -5
- package/dist/esm/calcite-tree_2.entry.js +4 -4
- package/dist/esm/calcite-value-list_2.entry.js +16 -11
- package/dist/esm/calcite.js +3 -3
- package/dist/esm/{conditionalSlot-c4b6c8b1.js → conditionalSlot-67f579ff.js} +1 -1
- package/dist/esm/{form-d07b2414.js → form-5e4609eb.js} +1 -1
- package/dist/esm/{index-0fefddd1.js → index-bd94948c.js} +4 -1
- package/dist/esm/interactive-48b5cc0f.js +42 -0
- package/dist/esm/loader.js +3 -3
- package/dist/esm/{popper-ae231554.js → popper-da45ec93.js} +16 -3
- package/dist/esm/{resources-431fa051.js → resources-73dac782.js} +1 -1
- package/dist/esm/{resources-999109fa.js → resources-cbfcf4a3.js} +34 -10
- package/dist/esm-es5/{ExpandToggle-ed0ae55a.js → ExpandToggle-af224c1e.js} +1 -1
- package/dist/esm-es5/{Heading-8289fa96.js → Heading-d5f1710a.js} +1 -1
- package/dist/esm-es5/calcite-accordion_2.entry.js +1 -1
- package/dist/esm-es5/calcite-action-bar.entry.js +1 -1
- package/dist/esm-es5/calcite-action-group.entry.js +1 -1
- package/dist/esm-es5/calcite-action-menu.entry.js +1 -1
- package/dist/esm-es5/calcite-action-pad.entry.js +1 -1
- package/dist/esm-es5/calcite-action.entry.js +1 -1
- package/dist/esm-es5/calcite-alert.entry.js +1 -1
- package/dist/esm-es5/calcite-avatar.entry.js +1 -1
- package/dist/esm-es5/calcite-block_2.entry.js +1 -1
- package/dist/esm-es5/calcite-button.entry.js +1 -1
- package/dist/esm-es5/calcite-card.entry.js +1 -1
- package/dist/esm-es5/calcite-checkbox.entry.js +1 -1
- package/dist/esm-es5/calcite-chip.entry.js +1 -1
- package/dist/esm-es5/calcite-color-picker_3.entry.js +1 -1
- package/dist/esm-es5/calcite-combobox_3.entry.js +2 -2
- package/dist/esm-es5/calcite-date-picker_4.entry.js +1 -1
- package/dist/esm-es5/calcite-dropdown_3.entry.js +1 -1
- package/dist/esm-es5/calcite-fab.entry.js +2 -2
- package/dist/esm-es5/calcite-filter.entry.js +1 -1
- package/dist/esm-es5/calcite-flow.entry.js +1 -1
- package/dist/esm-es5/calcite-graph_2.entry.js +1 -1
- package/dist/esm-es5/calcite-handle.entry.js +1 -1
- package/dist/esm-es5/calcite-icon.entry.js +1 -1
- package/dist/esm-es5/calcite-inline-editable.entry.js +1 -1
- package/dist/esm-es5/calcite-input-date-picker.entry.js +1 -1
- package/dist/esm-es5/calcite-input-message.entry.js +1 -1
- package/dist/esm-es5/calcite-input-time-picker_2.entry.js +2 -2
- package/dist/esm-es5/calcite-input.entry.js +1 -1
- package/dist/esm-es5/calcite-label.entry.js +1 -1
- package/dist/esm-es5/calcite-link.entry.js +2 -2
- package/dist/esm-es5/calcite-list_3.entry.js +2 -2
- package/dist/esm-es5/calcite-loader.entry.js +1 -1
- package/dist/esm-es5/calcite-modal.entry.js +1 -1
- package/dist/esm-es5/calcite-notice.entry.js +1 -1
- package/dist/esm-es5/calcite-option_3.entry.js +2 -2
- package/dist/esm-es5/calcite-pagination.entry.js +1 -1
- package/dist/esm-es5/calcite-panel.entry.js +2 -2
- package/dist/esm-es5/calcite-pick-list_3.entry.js +2 -2
- package/dist/esm-es5/calcite-popover_2.entry.js +1 -1
- package/dist/esm-es5/calcite-progress.entry.js +1 -1
- package/dist/esm-es5/calcite-radio-button-group.entry.js +1 -1
- package/dist/esm-es5/calcite-radio-button.entry.js +1 -1
- package/dist/esm-es5/calcite-radio-group_2.entry.js +1 -1
- package/dist/esm-es5/calcite-rating.entry.js +2 -2
- package/dist/esm-es5/calcite-scrim.entry.js +1 -1
- package/dist/esm-es5/calcite-shell_3.entry.js +1 -1
- package/dist/esm-es5/calcite-sortable-list.entry.js +1 -1
- package/dist/esm-es5/calcite-split-button.entry.js +1 -1
- package/dist/esm-es5/calcite-stepper_2.entry.js +1 -1
- package/dist/esm-es5/calcite-switch.entry.js +1 -1
- package/dist/esm-es5/calcite-tab_4.entry.js +2 -2
- package/dist/esm-es5/calcite-tile-select_2.entry.js +2 -2
- package/dist/esm-es5/calcite-tile.entry.js +1 -1
- package/dist/esm-es5/calcite-tip_3.entry.js +1 -1
- package/dist/esm-es5/calcite-tooltip_2.entry.js +2 -2
- package/dist/esm-es5/calcite-tree_2.entry.js +1 -1
- package/dist/esm-es5/calcite-value-list_2.entry.js +1 -1
- package/dist/esm-es5/calcite.js +1 -1
- package/dist/esm-es5/{conditionalSlot-c4b6c8b1.js → conditionalSlot-67f579ff.js} +1 -1
- package/dist/esm-es5/{form-d07b2414.js → form-5e4609eb.js} +1 -1
- package/dist/esm-es5/{index-0fefddd1.js → index-bd94948c.js} +1 -1
- package/dist/esm-es5/interactive-48b5cc0f.js +5 -0
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/popper-da45ec93.js +5 -0
- package/dist/esm-es5/{resources-431fa051.js → resources-73dac782.js} +2 -2
- package/dist/esm-es5/resources-cbfcf4a3.js +5 -0
- package/dist/extras/docs-json.json +115 -24
- package/dist/types/components/action/action.d.ts +3 -1
- package/dist/types/components/block/block.d.ts +3 -1
- package/dist/types/components/button/button.d.ts +3 -1
- package/dist/types/components/checkbox/checkbox.d.ts +3 -1
- package/dist/types/components/color-picker/color-picker.d.ts +9 -1
- package/dist/types/components/combobox/combobox.d.ts +9 -5
- package/dist/types/components/combobox/resources.d.ts +0 -1
- package/dist/types/components/combobox-item/combobox-item.d.ts +3 -1
- package/dist/types/components/date-picker-day/date-picker-day.d.ts +4 -1
- package/dist/types/components/dropdown/dropdown.d.ts +11 -4
- package/dist/types/components/dropdown/interfaces.d.ts +0 -2
- package/dist/types/components/dropdown/resources.d.ts +0 -1
- package/dist/types/components/fab/fab.d.ts +3 -1
- package/dist/types/components/filter/filter.d.ts +3 -1
- package/dist/types/components/inline-editable/inline-editable.d.ts +4 -1
- package/dist/types/components/input/input.d.ts +3 -1
- package/dist/types/components/input-date-picker/input-date-picker.d.ts +9 -2
- package/dist/types/components/input-time-picker/input-time-picker.d.ts +5 -1
- package/dist/types/components/label/label.d.ts +5 -1
- package/dist/types/components/link/link.d.ts +3 -1
- package/dist/types/components/list/list.d.ts +7 -1
- package/dist/types/components/list-item/list-item.d.ts +3 -1
- package/dist/types/components/panel/panel.d.ts +3 -1
- package/dist/types/components/pick-list/pick-list.d.ts +3 -1
- package/dist/types/components/pick-list/shared-list-logic.d.ts +1 -0
- package/dist/types/components/pick-list-item/pick-list-item.d.ts +4 -2
- package/dist/types/components/radio-button/radio-button.d.ts +3 -1
- package/dist/types/components/radio-group/radio-group.d.ts +3 -1
- package/dist/types/components/rating/rating.d.ts +3 -1
- package/dist/types/components/select/select.d.ts +3 -1
- package/dist/types/components/slider/slider.d.ts +2 -1
- package/dist/types/components/sortable-list/sortable-list.d.ts +3 -1
- package/dist/types/components/split-button/split-button.d.ts +5 -1
- package/dist/types/components/stepper-item/stepper-item.d.ts +3 -1
- package/dist/types/components/switch/switch.d.ts +3 -4
- package/dist/types/components/tab-title/tab-title.d.ts +3 -1
- package/dist/types/components/tile/tile.d.ts +3 -1
- package/dist/types/components/tile-select/tile-select.d.ts +3 -1
- package/dist/types/components/tile-select-group/tile-select-group.d.ts +6 -1
- package/dist/types/components/value-list/value-list.d.ts +3 -1
- package/dist/types/components/value-list-item/value-list-item.d.ts +4 -2
- package/dist/types/components.d.ts +56 -6
- package/dist/types/utils/interactive.d.ts +28 -0
- package/dist/types/utils/popper.d.ts +8 -1
- package/hydrate/index.js +446 -144
- package/package.json +9 -9
- package/dist/calcite/p-02b4bcec.entry.js +0 -5
- package/dist/calcite/p-02cc50b9.entry.js +0 -5
- package/dist/calcite/p-0aee798e.entry.js +0 -5
- package/dist/calcite/p-0d09d73b.system.entry.js +0 -5
- package/dist/calcite/p-11413626.system.entry.js +0 -5
- package/dist/calcite/p-125c9edc.entry.js +0 -5
- package/dist/calcite/p-12a4eac6.system.entry.js +0 -5
- package/dist/calcite/p-1370cabf.entry.js +0 -5
- package/dist/calcite/p-1a34e1df.system.entry.js +0 -5
- package/dist/calcite/p-1c1ad353.system.entry.js +0 -5
- package/dist/calcite/p-236b8f2e.system.entry.js +0 -5
- package/dist/calcite/p-26bcdb22.entry.js +0 -5
- package/dist/calcite/p-2c293ed2.entry.js +0 -5
- package/dist/calcite/p-322195bf.system.entry.js +0 -5
- package/dist/calcite/p-35461165.system.entry.js +0 -5
- package/dist/calcite/p-362522e5.js +0 -5
- package/dist/calcite/p-38c5a816.system.entry.js +0 -5
- package/dist/calcite/p-3e522dbe.entry.js +0 -5
- package/dist/calcite/p-43ec3d32.system.entry.js +0 -5
- package/dist/calcite/p-44dcac16.entry.js +0 -5
- package/dist/calcite/p-4cd8449b.system.entry.js +0 -5
- package/dist/calcite/p-5079ec88.entry.js +0 -5
- package/dist/calcite/p-514f6d94.system.entry.js +0 -5
- package/dist/calcite/p-55fa7908.entry.js +0 -5
- package/dist/calcite/p-563bce5c.entry.js +0 -5
- package/dist/calcite/p-57186636.system.entry.js +0 -5
- package/dist/calcite/p-5a7b1bd1.system.entry.js +0 -5
- package/dist/calcite/p-5c425028.entry.js +0 -5
- package/dist/calcite/p-5ecd3b72.system.entry.js +0 -5
- package/dist/calcite/p-633a2c7f.entry.js +0 -5
- package/dist/calcite/p-640a1577.system.entry.js +0 -5
- package/dist/calcite/p-673a3cd9.entry.js +0 -5
- package/dist/calcite/p-6a3357f9.system.js +0 -5
- package/dist/calcite/p-71d1bfb2.entry.js +0 -5
- package/dist/calcite/p-743597e4.entry.js +0 -5
- package/dist/calcite/p-74b8f15f.entry.js +0 -5
- package/dist/calcite/p-77564c0d.entry.js +0 -5
- package/dist/calcite/p-793659d0.entry.js +0 -5
- package/dist/calcite/p-7a0e8fab.system.entry.js +0 -5
- package/dist/calcite/p-7ccf6273.entry.js +0 -5
- package/dist/calcite/p-7d9f20b8.entry.js +0 -5
- package/dist/calcite/p-7dfe915f.entry.js +0 -5
- package/dist/calcite/p-802a05a2.entry.js +0 -5
- package/dist/calcite/p-8046175f.entry.js +0 -5
- package/dist/calcite/p-80ab216e.entry.js +0 -5
- package/dist/calcite/p-818b3ac7.entry.js +0 -5
- package/dist/calcite/p-81a3de30.system.entry.js +0 -5
- package/dist/calcite/p-82c142d8.entry.js +0 -5
- package/dist/calcite/p-84f8db8e.entry.js +0 -5
- package/dist/calcite/p-8683663f.entry.js +0 -5
- package/dist/calcite/p-8c59090d.entry.js +0 -5
- package/dist/calcite/p-8f93be14.system.js +0 -5
- package/dist/calcite/p-91b23d79.system.entry.js +0 -5
- package/dist/calcite/p-949a2fcd.entry.js +0 -5
- package/dist/calcite/p-99da584e.system.entry.js +0 -5
- package/dist/calcite/p-9c86f528.entry.js +0 -5
- package/dist/calcite/p-9d102b23.system.entry.js +0 -5
- package/dist/calcite/p-a0ffad45.entry.js +0 -5
- package/dist/calcite/p-a5397c9d.entry.js +0 -5
- package/dist/calcite/p-a5e8d728.entry.js +0 -5
- package/dist/calcite/p-a6686c30.system.entry.js +0 -5
- package/dist/calcite/p-ad7fbabd.entry.js +0 -5
- package/dist/calcite/p-adfa48bc.entry.js +0 -5
- package/dist/calcite/p-b03b03d5.entry.js +0 -5
- package/dist/calcite/p-b55643f5.entry.js +0 -5
- package/dist/calcite/p-b58cdaca.entry.js +0 -5
- package/dist/calcite/p-b85064fc.entry.js +0 -5
- package/dist/calcite/p-b88fa028.system.entry.js +0 -5
- package/dist/calcite/p-b8ce64ec.entry.js +0 -5
- package/dist/calcite/p-badc48d2.entry.js +0 -5
- package/dist/calcite/p-bfaed65e.entry.js +0 -5
- package/dist/calcite/p-c1018bb4.system.entry.js +0 -5
- package/dist/calcite/p-cc894f09.entry.js +0 -5
- package/dist/calcite/p-cfe2e6ee.system.entry.js +0 -5
- package/dist/calcite/p-d08d1450.entry.js +0 -5
- package/dist/calcite/p-d2a1cbbf.entry.js +0 -5
- package/dist/calcite/p-d359def7.system.entry.js +0 -5
- package/dist/calcite/p-d44165c7.entry.js +0 -5
- package/dist/calcite/p-d648a677.entry.js +0 -5
- package/dist/calcite/p-dcf17450.system.entry.js +0 -5
- package/dist/calcite/p-de562f92.system.js +0 -5
- package/dist/calcite/p-e2047621.system.js +0 -5
- package/dist/calcite/p-e23de208.entry.js +0 -5
- package/dist/calcite/p-e9460f3c.js +0 -5
- package/dist/calcite/p-eeb91710.js +0 -5
- package/dist/calcite/p-efb21590.system.entry.js +0 -5
- package/dist/calcite/p-f20b0a41.system.entry.js +0 -5
- package/dist/calcite/p-f542ba26.entry.js +0 -5
- package/dist/calcite/p-f681fbba.entry.js +0 -5
- package/dist/calcite/p-f6d994ff.entry.js +0 -5
- package/dist/calcite/p-f9d1a58e.entry.js +0 -5
- package/dist/calcite/p-fbbf933d.system.entry.js +0 -5
- package/dist/calcite/p-fc11382c.system.entry.js +0 -5
- package/dist/esm-es5/popper-ae231554.js +0 -5
- package/dist/esm-es5/resources-999109fa.js +0 -5
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
const dom = require('./dom-f3df220d.js');
|
|
8
8
|
const array = require('./array-a5dedf5a.js');
|
|
9
9
|
const debounce = require('./debounce-95979061.js');
|
|
10
|
-
const index = require('./index-
|
|
10
|
+
const index = require('./index-1af0efd3.js');
|
|
11
11
|
|
|
12
12
|
function mutationObserverCallback() {
|
|
13
13
|
this.setUpItems();
|
|
@@ -92,7 +92,7 @@ function calciteListFocusOutHandler(event) {
|
|
|
92
92
|
if (focusedInside) {
|
|
93
93
|
return;
|
|
94
94
|
}
|
|
95
|
-
items.forEach((item) => {
|
|
95
|
+
filterOutDisabled(items).forEach((item) => {
|
|
96
96
|
toggleSingleSelectItemTabbing(item, selectedValues.size === 0 ? item.contains(event.target) || event.target === item : item.selected);
|
|
97
97
|
});
|
|
98
98
|
}
|
|
@@ -108,7 +108,7 @@ function keyDownHandler(event) {
|
|
|
108
108
|
return;
|
|
109
109
|
}
|
|
110
110
|
event.preventDefault();
|
|
111
|
-
const index =
|
|
111
|
+
const index = moveItemIndex(this, target, key === "ArrowUp" ? "up" : "down");
|
|
112
112
|
const item = items[index];
|
|
113
113
|
items.forEach((i) => toggleSingleSelectItemTabbing(i, i === item));
|
|
114
114
|
if (!multiple && selectionFollowsFocus) {
|
|
@@ -116,6 +116,25 @@ function keyDownHandler(event) {
|
|
|
116
116
|
}
|
|
117
117
|
dom.focusElement(item);
|
|
118
118
|
}
|
|
119
|
+
function moveItemIndex(list, item, direction) {
|
|
120
|
+
const { items } = list;
|
|
121
|
+
const { length: totalItems } = items;
|
|
122
|
+
const currentIndex = items.indexOf(item);
|
|
123
|
+
const directionFactor = direction === "up" ? -1 : 1;
|
|
124
|
+
let moveOffset = 1;
|
|
125
|
+
let index = array.getRoundRobinIndex(currentIndex + directionFactor * moveOffset++, totalItems);
|
|
126
|
+
const firstMovedIndex = index;
|
|
127
|
+
while (items[index].disabled) {
|
|
128
|
+
index = array.getRoundRobinIndex(currentIndex + directionFactor * moveOffset++, totalItems);
|
|
129
|
+
if (index === firstMovedIndex) {
|
|
130
|
+
break;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
return index;
|
|
134
|
+
}
|
|
135
|
+
function filterOutDisabled(items) {
|
|
136
|
+
return items.filter((item) => !item.disabled);
|
|
137
|
+
}
|
|
119
138
|
function internalCalciteListChangeEvent() {
|
|
120
139
|
this.calciteListChange.emit(this.selectedValues);
|
|
121
140
|
}
|
|
@@ -136,6 +155,9 @@ function removeItem(event) {
|
|
|
136
155
|
this.emitCalciteListChange();
|
|
137
156
|
}
|
|
138
157
|
function toggleSingleSelectItemTabbing(item, selectable) {
|
|
158
|
+
if (item.disabled) {
|
|
159
|
+
return;
|
|
160
|
+
}
|
|
139
161
|
// using attribute intentionally
|
|
140
162
|
if (selectable) {
|
|
141
163
|
item.removeAttribute("tabindex");
|
|
@@ -145,6 +167,7 @@ function toggleSingleSelectItemTabbing(item, selectable) {
|
|
|
145
167
|
}
|
|
146
168
|
}
|
|
147
169
|
async function setFocus(focusId) {
|
|
170
|
+
var _a;
|
|
148
171
|
if (this.filterEnabled && focusId === "filter") {
|
|
149
172
|
await dom.focusElement(this.filterEl);
|
|
150
173
|
return;
|
|
@@ -154,10 +177,11 @@ async function setFocus(focusId) {
|
|
|
154
177
|
return;
|
|
155
178
|
}
|
|
156
179
|
if (multiple) {
|
|
157
|
-
return items[0].setFocus();
|
|
180
|
+
return (_a = filterOutDisabled(items)[0]) === null || _a === void 0 ? void 0 : _a.setFocus();
|
|
158
181
|
}
|
|
159
|
-
const
|
|
160
|
-
|
|
182
|
+
const filtered = filterOutDisabled(items);
|
|
183
|
+
const focusTarget = filtered.find((item) => item.selected) || filtered[0];
|
|
184
|
+
if (selectionFollowsFocus && focusTarget) {
|
|
161
185
|
focusTarget.selected = true;
|
|
162
186
|
}
|
|
163
187
|
return focusTarget.setFocus();
|
|
@@ -179,7 +203,7 @@ function setUpItems(tagName) {
|
|
|
179
203
|
}
|
|
180
204
|
});
|
|
181
205
|
const [first] = items;
|
|
182
|
-
if (!hasSelected && first) {
|
|
206
|
+
if (!hasSelected && first && !first.disabled) {
|
|
183
207
|
toggleSingleSelectItemTabbing(first, true);
|
|
184
208
|
}
|
|
185
209
|
}
|
|
@@ -299,12 +323,12 @@ var __rest = (undefined && undefined.__rest) || function (s, e) {
|
|
|
299
323
|
const List = (_a) => {
|
|
300
324
|
var { props: { disabled, loading, filterEnabled, dataForFilter, handleFilter, filterPlaceholder, setFilterEl } } = _a, rest = __rest(_a, ["props"]);
|
|
301
325
|
const defaultSlot = index.h("slot", null);
|
|
302
|
-
return (index.h(index.Host, Object.assign({ "aria-busy": loading.toString(),
|
|
326
|
+
return (index.h(index.Host, Object.assign({ "aria-busy": loading.toString(), role: "menu" }, rest),
|
|
303
327
|
index.h("section", null,
|
|
304
328
|
index.h("header", { class: { [CSS$1.sticky]: true } },
|
|
305
329
|
filterEnabled ? (index.h("calcite-filter", { "aria-label": filterPlaceholder, disabled: loading || disabled, items: dataForFilter, onCalciteFilterChange: handleFilter, placeholder: filterPlaceholder, ref: setFilterEl })) : null,
|
|
306
330
|
index.h("slot", { name: SLOTS$1.menuActions })),
|
|
307
|
-
loading
|
|
331
|
+
loading ? index.h("calcite-scrim", { loading: loading }) : null,
|
|
308
332
|
defaultSlot)));
|
|
309
333
|
};
|
|
310
334
|
|
|
@@ -351,6 +375,7 @@ exports.handleFilter = handleFilter;
|
|
|
351
375
|
exports.initialize = initialize;
|
|
352
376
|
exports.initializeObserver = initializeObserver;
|
|
353
377
|
exports.keyDownHandler = keyDownHandler;
|
|
378
|
+
exports.moveItemIndex = moveItemIndex;
|
|
354
379
|
exports.mutationObserverCallback = mutationObserverCallback;
|
|
355
380
|
exports.removeItem = removeItem;
|
|
356
381
|
exports.selectSiblings = selectSiblings;
|
|
@@ -96,6 +96,15 @@
|
|
|
96
96
|
|
|
97
97
|
:host([disabled]) {
|
|
98
98
|
pointer-events: none;
|
|
99
|
+
cursor: default;
|
|
100
|
+
-webkit-user-select: none;
|
|
101
|
+
user-select: none;
|
|
102
|
+
opacity: var(--calcite-ui-opacity-disabled);
|
|
103
|
+
}
|
|
104
|
+
:host([disabled]) ::slotted([calcite-hydrated][disabled]),
|
|
105
|
+
:host([disabled]) [calcite-hydrated][disabled] {
|
|
106
|
+
/* prevent opacity stacking */
|
|
107
|
+
opacity: 1;
|
|
99
108
|
}
|
|
100
109
|
|
|
101
110
|
.button {
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
import { Component, Element, Event, Host, Method, Prop, h, forceUpdate } from "@stencil/core";
|
|
6
6
|
import { CSS, TEXT } from "./resources";
|
|
7
7
|
import { createObserver } from "../../utils/observers";
|
|
8
|
+
import { updateHostInteraction } from "../../utils/interactive";
|
|
8
9
|
/**
|
|
9
10
|
* @slot - A slot for adding a `calcite-icon`.
|
|
10
11
|
*/
|
|
@@ -74,6 +75,9 @@ export class Action {
|
|
|
74
75
|
var _a;
|
|
75
76
|
(_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
76
77
|
}
|
|
78
|
+
componentDidRender() {
|
|
79
|
+
updateHostInteraction(this);
|
|
80
|
+
}
|
|
77
81
|
// --------------------------------------------------------------------------
|
|
78
82
|
//
|
|
79
83
|
// Methods
|
|
@@ -122,6 +122,19 @@
|
|
|
122
122
|
flex-basis: auto;
|
|
123
123
|
}
|
|
124
124
|
|
|
125
|
+
:host([disabled]) {
|
|
126
|
+
pointer-events: none;
|
|
127
|
+
cursor: default;
|
|
128
|
+
-webkit-user-select: none;
|
|
129
|
+
user-select: none;
|
|
130
|
+
opacity: var(--calcite-ui-opacity-disabled);
|
|
131
|
+
}
|
|
132
|
+
:host([disabled]) ::slotted([calcite-hydrated][disabled]),
|
|
133
|
+
:host([disabled]) [calcite-hydrated][disabled] {
|
|
134
|
+
/* prevent opacity stacking */
|
|
135
|
+
opacity: 1;
|
|
136
|
+
}
|
|
137
|
+
|
|
125
138
|
/* Shared styles for header elements */
|
|
126
139
|
.header {
|
|
127
140
|
margin: 0px;
|
|
@@ -325,13 +338,4 @@ calcite-action-menu {
|
|
|
325
338
|
}
|
|
326
339
|
:host([open]) .header .title .heading {
|
|
327
340
|
color: var(--calcite-ui-text-1);
|
|
328
|
-
}
|
|
329
|
-
|
|
330
|
-
:host([disabled]) {
|
|
331
|
-
pointer-events: none;
|
|
332
|
-
-webkit-user-select: none;
|
|
333
|
-
user-select: none;
|
|
334
|
-
}
|
|
335
|
-
:host([disabled]) .header-container {
|
|
336
|
-
opacity: 0.5;
|
|
337
341
|
}
|
|
@@ -7,6 +7,7 @@ import { CSS, HEADING_LEVEL, ICONS, SLOTS, TEXT } from "./resources";
|
|
|
7
7
|
import { getSlotted } from "../../utils/dom";
|
|
8
8
|
import { Heading } from "../functional/Heading";
|
|
9
9
|
import { connectConditionalSlotComponent, disconnectConditionalSlotComponent } from "../../utils/conditionalSlot";
|
|
10
|
+
import { updateHostInteraction } from "../../utils/interactive";
|
|
10
11
|
import { guid } from "../../utils/guid";
|
|
11
12
|
/**
|
|
12
13
|
* @slot - A slot for adding content to the block.
|
|
@@ -60,6 +61,14 @@ export class Block {
|
|
|
60
61
|
this.calciteBlockToggle.emit();
|
|
61
62
|
};
|
|
62
63
|
}
|
|
64
|
+
//--------------------------------------------------------------------------
|
|
65
|
+
//
|
|
66
|
+
// Lifecycle
|
|
67
|
+
//
|
|
68
|
+
//--------------------------------------------------------------------------
|
|
69
|
+
componentDidRender() {
|
|
70
|
+
updateHostInteraction(this);
|
|
71
|
+
}
|
|
63
72
|
// --------------------------------------------------------------------------
|
|
64
73
|
//
|
|
65
74
|
// Lifecycle
|
|
@@ -77,9 +86,9 @@ export class Block {
|
|
|
77
86
|
//
|
|
78
87
|
// --------------------------------------------------------------------------
|
|
79
88
|
renderScrim() {
|
|
80
|
-
const {
|
|
89
|
+
const { loading } = this;
|
|
81
90
|
const defaultSlot = h("slot", null);
|
|
82
|
-
return [loading
|
|
91
|
+
return [loading ? h("calcite-scrim", { loading: loading }) : null, defaultSlot];
|
|
83
92
|
}
|
|
84
93
|
renderIcon() {
|
|
85
94
|
const { el, status } = this;
|
|
@@ -101,7 +110,7 @@ export class Block {
|
|
|
101
110
|
summary ? h("div", { class: CSS.summary }, summary) : null)) : null;
|
|
102
111
|
}
|
|
103
112
|
render() {
|
|
104
|
-
const { collapsible,
|
|
113
|
+
const { collapsible, el, intlCollapse, intlExpand, loading, open, intlLoading } = this;
|
|
105
114
|
const toggleLabel = open ? intlCollapse || TEXT.collapse : intlExpand || TEXT.expand;
|
|
106
115
|
const headerContent = (h("header", { class: CSS.header },
|
|
107
116
|
this.renderIcon(),
|
|
@@ -121,7 +130,7 @@ export class Block {
|
|
|
121
130
|
h("slot", { name: SLOTS.control }))) : null,
|
|
122
131
|
hasMenuActions ? (h("calcite-action-menu", { label: this.intlOptions || TEXT.options },
|
|
123
132
|
h("slot", { name: SLOTS.headerMenuActions }))) : null));
|
|
124
|
-
return (h(Host,
|
|
133
|
+
return (h(Host, null,
|
|
125
134
|
h("article", { "aria-busy": loading.toString(), class: {
|
|
126
135
|
[CSS.article]: true
|
|
127
136
|
} },
|
|
@@ -215,10 +215,23 @@
|
|
|
215
215
|
line-height: inherit;
|
|
216
216
|
}
|
|
217
217
|
|
|
218
|
-
:host([
|
|
218
|
+
:host([disabled]) {
|
|
219
|
+
pointer-events: none;
|
|
220
|
+
cursor: default;
|
|
221
|
+
-webkit-user-select: none;
|
|
222
|
+
user-select: none;
|
|
223
|
+
opacity: var(--calcite-ui-opacity-disabled);
|
|
224
|
+
}
|
|
225
|
+
:host([disabled]) ::slotted([calcite-hydrated][disabled]),
|
|
226
|
+
:host([disabled]) [calcite-hydrated][disabled] {
|
|
227
|
+
/* prevent opacity stacking */
|
|
228
|
+
opacity: 1;
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
:host([loading]) {
|
|
219
232
|
pointer-events: none;
|
|
220
233
|
}
|
|
221
|
-
:host([loading]) button, :host([loading]) a
|
|
234
|
+
:host([loading]) button, :host([loading]) a {
|
|
222
235
|
pointer-events: none;
|
|
223
236
|
opacity: var(--calcite-ui-opacity-disabled);
|
|
224
237
|
}
|
|
@@ -8,6 +8,7 @@ import { CSS, TEXT } from "./resources";
|
|
|
8
8
|
import { closestElementCrossShadowBoundary } from "../../utils/dom";
|
|
9
9
|
import { connectLabel, disconnectLabel, getLabelText } from "../../utils/label";
|
|
10
10
|
import { createObserver } from "../../utils/observers";
|
|
11
|
+
import { updateHostInteraction } from "../../utils/interactive";
|
|
11
12
|
/** Passing a 'href' will render an anchor link, instead of a button. Role will be set to link, or button, depending on this. */
|
|
12
13
|
/** It is the consumers responsibility to add aria information, rel, target, for links, and any button attributes for form submission */
|
|
13
14
|
/** @slot - A slot for adding text. */
|
|
@@ -95,6 +96,9 @@ export class Button {
|
|
|
95
96
|
}
|
|
96
97
|
}
|
|
97
98
|
}
|
|
99
|
+
componentDidRender() {
|
|
100
|
+
updateHostInteraction(this);
|
|
101
|
+
}
|
|
98
102
|
render() {
|
|
99
103
|
const childElType = this.href ? "a" : "button";
|
|
100
104
|
const Tag = childElType;
|
|
@@ -142,8 +142,15 @@
|
|
|
142
142
|
:host([disabled]) {
|
|
143
143
|
pointer-events: none;
|
|
144
144
|
cursor: default;
|
|
145
|
+
-webkit-user-select: none;
|
|
146
|
+
user-select: none;
|
|
145
147
|
opacity: var(--calcite-ui-opacity-disabled);
|
|
146
148
|
}
|
|
149
|
+
:host([disabled]) ::slotted([calcite-hydrated][disabled]),
|
|
150
|
+
:host([disabled]) [calcite-hydrated][disabled] {
|
|
151
|
+
/* prevent opacity stacking */
|
|
152
|
+
opacity: 1;
|
|
153
|
+
}
|
|
147
154
|
|
|
148
155
|
::slotted(input[slot=hidden-form-input]) {
|
|
149
156
|
bottom: 0 !important;
|
|
@@ -7,6 +7,7 @@ import { guid } from "../../utils/guid";
|
|
|
7
7
|
import { HiddenFormInputSlot } from "../../utils/form";
|
|
8
8
|
import { connectLabel, disconnectLabel, getLabelText } from "../../utils/label";
|
|
9
9
|
import { connectForm, disconnectForm } from "../../utils/form";
|
|
10
|
+
import { updateHostInteraction } from "../../utils/interactive";
|
|
10
11
|
export class Checkbox {
|
|
11
12
|
constructor() {
|
|
12
13
|
//--------------------------------------------------------------------------
|
|
@@ -106,6 +107,9 @@ export class Checkbox {
|
|
|
106
107
|
disconnectLabel(this);
|
|
107
108
|
disconnectForm(this);
|
|
108
109
|
}
|
|
110
|
+
componentDidRender() {
|
|
111
|
+
updateHostInteraction(this);
|
|
112
|
+
}
|
|
109
113
|
// --------------------------------------------------------------------------
|
|
110
114
|
//
|
|
111
115
|
// Render Methods
|
|
@@ -85,6 +85,19 @@
|
|
|
85
85
|
font-weight: var(--calcite-font-weight-normal);
|
|
86
86
|
}
|
|
87
87
|
|
|
88
|
+
:host([disabled]) {
|
|
89
|
+
pointer-events: none;
|
|
90
|
+
cursor: default;
|
|
91
|
+
-webkit-user-select: none;
|
|
92
|
+
user-select: none;
|
|
93
|
+
opacity: var(--calcite-ui-opacity-disabled);
|
|
94
|
+
}
|
|
95
|
+
:host([disabled]) ::slotted([calcite-hydrated][disabled]),
|
|
96
|
+
:host([disabled]) [calcite-hydrated][disabled] {
|
|
97
|
+
/* prevent opacity stacking */
|
|
98
|
+
opacity: 1;
|
|
99
|
+
}
|
|
100
|
+
|
|
88
101
|
:host([scale=s]) .container {
|
|
89
102
|
width: 160px;
|
|
90
103
|
}
|
|
@@ -9,6 +9,7 @@ import { focusElement } from "../../utils/dom";
|
|
|
9
9
|
import { colorEqual, CSSColorMode, normalizeHex, parseMode } from "./utils";
|
|
10
10
|
import { throttle } from "lodash-es";
|
|
11
11
|
import { clamp } from "../../utils/math";
|
|
12
|
+
import { updateHostInteraction } from "../../utils/interactive";
|
|
12
13
|
const throttleFor60FpsInMs = 16;
|
|
13
14
|
const defaultValue = normalizeHex(DEFAULT_COLOR.hex());
|
|
14
15
|
const defaultFormat = "auto";
|
|
@@ -33,6 +34,10 @@ export class ColorPicker {
|
|
|
33
34
|
* @internal
|
|
34
35
|
*/
|
|
35
36
|
this.color = DEFAULT_COLOR;
|
|
37
|
+
/**
|
|
38
|
+
* When true, disabled prevents user interaction.
|
|
39
|
+
*/
|
|
40
|
+
this.disabled = false;
|
|
36
41
|
/**
|
|
37
42
|
* The format of the value property.
|
|
38
43
|
*
|
|
@@ -256,10 +261,12 @@ export class ColorPicker {
|
|
|
256
261
|
if (region === "color-field") {
|
|
257
262
|
this.hueThumbState = "drag";
|
|
258
263
|
this.captureColorFieldColor(offsetX, offsetY);
|
|
264
|
+
this.colorFieldScopeNode.focus();
|
|
259
265
|
}
|
|
260
266
|
else if (region === "slider") {
|
|
261
267
|
this.sliderThumbState = "drag";
|
|
262
268
|
this.captureHueSliderColor(offsetX);
|
|
269
|
+
this.hueScopeNode.focus();
|
|
263
270
|
}
|
|
264
271
|
// prevent text selection outside of color field & slider area
|
|
265
272
|
event.preventDefault();
|
|
@@ -378,6 +385,9 @@ export class ColorPicker {
|
|
|
378
385
|
this.storeColorFieldScope = (node) => {
|
|
379
386
|
this.colorFieldScopeNode = node;
|
|
380
387
|
};
|
|
388
|
+
this.storeHueScope = (node) => {
|
|
389
|
+
this.hueScopeNode = node;
|
|
390
|
+
};
|
|
381
391
|
this.renderChannelsTabTitle = (channelMode) => {
|
|
382
392
|
const { channelMode: activeChannelMode, intlRgb, intlHsv } = this;
|
|
383
393
|
const active = channelMode === activeChannelMode;
|
|
@@ -564,6 +574,9 @@ export class ColorPicker {
|
|
|
564
574
|
document.removeEventListener("mousemove", this.globalMouseMoveHandler);
|
|
565
575
|
document.removeEventListener("mouseup", this.globalMouseUpHandler);
|
|
566
576
|
}
|
|
577
|
+
componentDidRender() {
|
|
578
|
+
updateHostInteraction(this);
|
|
579
|
+
}
|
|
567
580
|
//--------------------------------------------------------------------------
|
|
568
581
|
//
|
|
569
582
|
// Render Methods
|
|
@@ -585,7 +598,7 @@ export class ColorPicker {
|
|
|
585
598
|
[CSS.colorFieldAndSliderInteractive]: colorFieldAndSliderInteractive
|
|
586
599
|
}, onMouseDown: this.handleColorFieldAndSliderMouseDown, onMouseEnter: this.handleColorFieldAndSliderMouseEnterOrMove, onMouseLeave: this.handleColorFieldAndSliderMouseLeave, onMouseMove: this.handleColorFieldAndSliderMouseEnterOrMove, ref: this.initColorFieldAndSlider }),
|
|
587
600
|
h("div", { "aria-label": vertical ? this.intlValue : this.intlSaturation, "aria-valuemax": vertical ? HSV_LIMITS.v : HSV_LIMITS.s, "aria-valuemin": "0", "aria-valuenow": (vertical ? color === null || color === void 0 ? void 0 : color.saturationv() : color === null || color === void 0 ? void 0 : color.value()) || "0", class: { [CSS.scope]: true, [CSS.colorFieldScope]: true }, onKeyDown: this.handleColorFieldScopeKeyDown, ref: this.storeColorFieldScope, role: "slider", style: { top: `${colorFieldScopeTop || 0}px`, left: `${colorFieldScopeLeft || 0}px` }, tabindex: "0" }),
|
|
588
|
-
h("div", { "aria-label": this.intlHue, "aria-valuemax": HSV_LIMITS.h, "aria-valuemin": "0", "aria-valuenow": (color === null || color === void 0 ? void 0 : color.round().hue()) || DEFAULT_COLOR.round().hue(), class: { [CSS.scope]: true, [CSS.hueScope]: true }, onKeyDown: this.handleHueScopeKeyDown, role: "slider", style: { top: `${hueTop}px`, left: `${hueLeft}px` }, tabindex: "0" })),
|
|
601
|
+
h("div", { "aria-label": this.intlHue, "aria-valuemax": HSV_LIMITS.h, "aria-valuemin": "0", "aria-valuenow": (color === null || color === void 0 ? void 0 : color.round().hue()) || DEFAULT_COLOR.round().hue(), class: { [CSS.scope]: true, [CSS.hueScope]: true }, onKeyDown: this.handleHueScopeKeyDown, ref: this.storeHueScope, role: "slider", style: { top: `${hueTop}px`, left: `${hueLeft}px` }, tabindex: "0" })),
|
|
589
602
|
hideHex && hideChannels ? null : (h("div", { class: {
|
|
590
603
|
[CSS.controlSection]: true,
|
|
591
604
|
[CSS.section]: true
|
|
@@ -854,6 +867,24 @@ export class ColorPicker {
|
|
|
854
867
|
},
|
|
855
868
|
"defaultValue": "DEFAULT_COLOR"
|
|
856
869
|
},
|
|
870
|
+
"disabled": {
|
|
871
|
+
"type": "boolean",
|
|
872
|
+
"mutable": false,
|
|
873
|
+
"complexType": {
|
|
874
|
+
"original": "boolean",
|
|
875
|
+
"resolved": "boolean",
|
|
876
|
+
"references": {}
|
|
877
|
+
},
|
|
878
|
+
"required": false,
|
|
879
|
+
"optional": false,
|
|
880
|
+
"docs": {
|
|
881
|
+
"tags": [],
|
|
882
|
+
"text": "When true, disabled prevents user interaction."
|
|
883
|
+
},
|
|
884
|
+
"attribute": "disabled",
|
|
885
|
+
"reflect": true,
|
|
886
|
+
"defaultValue": "false"
|
|
887
|
+
},
|
|
857
888
|
"format": {
|
|
858
889
|
"type": "string",
|
|
859
890
|
"mutable": false,
|
|
@@ -92,9 +92,15 @@
|
|
|
92
92
|
|
|
93
93
|
:host([disabled]) {
|
|
94
94
|
pointer-events: none;
|
|
95
|
+
cursor: default;
|
|
95
96
|
-webkit-user-select: none;
|
|
96
97
|
user-select: none;
|
|
97
|
-
opacity:
|
|
98
|
+
opacity: var(--calcite-ui-opacity-disabled);
|
|
99
|
+
}
|
|
100
|
+
:host([disabled]) ::slotted([calcite-hydrated][disabled]),
|
|
101
|
+
:host([disabled]) [calcite-hydrated][disabled] {
|
|
102
|
+
/* prevent opacity stacking */
|
|
103
|
+
opacity: 1;
|
|
98
104
|
}
|
|
99
105
|
|
|
100
106
|
:host([scale=s]) {
|
|
@@ -5,13 +5,14 @@
|
|
|
5
5
|
import { Component, h, Prop, State, Listen, Event, Element, Method, Watch, Host } from "@stencil/core";
|
|
6
6
|
import { filter } from "../../utils/filter";
|
|
7
7
|
import { debounce } from "lodash-es";
|
|
8
|
-
import { createPopper, updatePopper, CSS as PopperCSS } from "../../utils/popper";
|
|
8
|
+
import { createPopper, updatePopper, CSS as PopperCSS, popperMenuFlipPlacements, defaultMenuPlacement } from "../../utils/popper";
|
|
9
9
|
import { guid } from "../../utils/guid";
|
|
10
|
-
import { ComboboxChildSelector, ComboboxItem, ComboboxItemGroup,
|
|
10
|
+
import { ComboboxChildSelector, ComboboxItem, ComboboxItemGroup, TEXT } from "./resources";
|
|
11
11
|
import { getItemAncestors, getItemChildren, hasActiveChildren } from "./utils";
|
|
12
12
|
import { connectLabel, disconnectLabel, getLabelText } from "../../utils/label";
|
|
13
13
|
import { afterConnectDefaultValueSet, connectForm, disconnectForm, HiddenFormInputSlot } from "../../utils/form";
|
|
14
14
|
import { createObserver } from "../../utils/observers";
|
|
15
|
+
import { updateHostInteraction } from "../../utils/interactive";
|
|
15
16
|
const isGroup = (el) => el.tagName === ComboboxItemGroup;
|
|
16
17
|
const itemUidPrefix = "combobox-item-";
|
|
17
18
|
const chipUidPrefix = "combobox-chip-";
|
|
@@ -66,12 +67,10 @@ export class Combobox {
|
|
|
66
67
|
this.groupItems = [];
|
|
67
68
|
this.selectedItems = [];
|
|
68
69
|
this.visibleItems = [];
|
|
69
|
-
this.hideList = !this.active;
|
|
70
70
|
this.activeItemIndex = -1;
|
|
71
71
|
this.activeChipIndex = -1;
|
|
72
72
|
this.activeDescendant = "";
|
|
73
73
|
this.text = "";
|
|
74
|
-
this.open = this.active;
|
|
75
74
|
this.textInput = null;
|
|
76
75
|
this.mutationObserver = createObserver("mutation", () => this.updateItems());
|
|
77
76
|
this.resizeObserver = createObserver("resize", () => this.setMaxScrollerHeight());
|
|
@@ -160,11 +159,11 @@ export class Combobox {
|
|
|
160
159
|
}
|
|
161
160
|
};
|
|
162
161
|
this.toggleCloseEnd = () => {
|
|
163
|
-
this.
|
|
162
|
+
this.active = false;
|
|
164
163
|
this.el.removeEventListener("calciteComboboxClose", this.toggleCloseEnd);
|
|
165
164
|
};
|
|
166
165
|
this.toggleOpenEnd = () => {
|
|
167
|
-
this.
|
|
166
|
+
this.active = true;
|
|
168
167
|
this.el.removeEventListener("calciteComboboxOpen", this.toggleOpenEnd);
|
|
169
168
|
};
|
|
170
169
|
this.transitionEnd = (event) => {
|
|
@@ -198,9 +197,7 @@ export class Combobox {
|
|
|
198
197
|
};
|
|
199
198
|
this.setInactiveIfNotContained = (event) => {
|
|
200
199
|
const composedPath = event.composedPath();
|
|
201
|
-
if (
|
|
202
|
-
composedPath.includes(this.el) ||
|
|
203
|
-
composedPath.includes(this.referenceEl)) {
|
|
200
|
+
if (!this.active || composedPath.includes(this.el) || composedPath.includes(this.referenceEl)) {
|
|
204
201
|
return;
|
|
205
202
|
}
|
|
206
203
|
if (this.allowCustomValues && this.text) {
|
|
@@ -215,7 +212,6 @@ export class Combobox {
|
|
|
215
212
|
this.updateActiveItemIndex(-1);
|
|
216
213
|
}
|
|
217
214
|
this.active = false;
|
|
218
|
-
this.open = false;
|
|
219
215
|
};
|
|
220
216
|
this.setMenuEl = (el) => {
|
|
221
217
|
this.menuEl = el;
|
|
@@ -293,18 +289,18 @@ export class Combobox {
|
|
|
293
289
|
this.setInactiveIfNotContained(event);
|
|
294
290
|
};
|
|
295
291
|
}
|
|
296
|
-
activeHandler(
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
this.open = false;
|
|
301
|
-
}
|
|
302
|
-
else if (!oldValue && newValue) {
|
|
303
|
-
this.el.addEventListener("calciteComboboxOpen", this.toggleOpenEnd);
|
|
304
|
-
this.open = true;
|
|
292
|
+
activeHandler() {
|
|
293
|
+
if (this.disabled) {
|
|
294
|
+
this.active = false;
|
|
295
|
+
return;
|
|
305
296
|
}
|
|
306
297
|
this.reposition();
|
|
307
298
|
}
|
|
299
|
+
handleDisabledChange(value) {
|
|
300
|
+
if (!value) {
|
|
301
|
+
this.active = false;
|
|
302
|
+
}
|
|
303
|
+
}
|
|
308
304
|
maxItemsHandler() {
|
|
309
305
|
this.setMaxScrollerHeight();
|
|
310
306
|
}
|
|
@@ -351,7 +347,7 @@ export class Combobox {
|
|
|
351
347
|
? await updatePopper({
|
|
352
348
|
el: menuEl,
|
|
353
349
|
modifiers,
|
|
354
|
-
placement:
|
|
350
|
+
placement: defaultMenuPlacement,
|
|
355
351
|
popper
|
|
356
352
|
})
|
|
357
353
|
: this.createPopper();
|
|
@@ -390,6 +386,7 @@ export class Combobox {
|
|
|
390
386
|
this.reposition();
|
|
391
387
|
this.inputHeight = this.el.offsetHeight;
|
|
392
388
|
}
|
|
389
|
+
updateHostInteraction(this);
|
|
393
390
|
}
|
|
394
391
|
disconnectedCallback() {
|
|
395
392
|
var _a, _b;
|
|
@@ -414,9 +411,13 @@ export class Combobox {
|
|
|
414
411
|
enabled: true
|
|
415
412
|
};
|
|
416
413
|
flipModifier.options = {
|
|
417
|
-
fallbackPlacements:
|
|
414
|
+
fallbackPlacements: this.flipPlacements || popperMenuFlipPlacements
|
|
415
|
+
};
|
|
416
|
+
const eventListenerModifier = {
|
|
417
|
+
name: "eventListeners",
|
|
418
|
+
enabled: this.active
|
|
418
419
|
};
|
|
419
|
-
return [flipModifier];
|
|
420
|
+
return [flipModifier, eventListenerModifier];
|
|
420
421
|
}
|
|
421
422
|
createPopper() {
|
|
422
423
|
this.destroyPopper();
|
|
@@ -426,7 +427,7 @@ export class Combobox {
|
|
|
426
427
|
el: menuEl,
|
|
427
428
|
modifiers,
|
|
428
429
|
overlayPositioning,
|
|
429
|
-
placement:
|
|
430
|
+
placement: defaultMenuPlacement,
|
|
430
431
|
referenceEl
|
|
431
432
|
});
|
|
432
433
|
}
|
|
@@ -707,15 +708,15 @@ export class Combobox {
|
|
|
707
708
|
return this.visibleItems.map((item) => (h("li", { "aria-selected": (!!item.selected).toString(), id: item.guid ? `${itemUidPrefix}${item.guid}` : null, role: "option", tabindex: "-1" }, item.textLabel)));
|
|
708
709
|
}
|
|
709
710
|
renderPopperContainer() {
|
|
710
|
-
const { active, setMenuEl, setListContainerEl
|
|
711
|
+
const { active, setMenuEl, setListContainerEl } = this;
|
|
711
712
|
const classes = {
|
|
712
713
|
"list-container": true,
|
|
713
714
|
[PopperCSS.animation]: true,
|
|
714
715
|
[PopperCSS.animationActive]: active
|
|
715
716
|
};
|
|
716
|
-
return (h("div", { "aria-hidden": "true", class: { "popper-container": true, "popper-container--active":
|
|
717
|
+
return (h("div", { "aria-hidden": "true", class: { "popper-container": true, "popper-container--active": active }, ref: setMenuEl },
|
|
717
718
|
h("div", { class: classes, onTransitionEnd: this.transitionEnd, ref: setListContainerEl },
|
|
718
|
-
h("ul", { class: { list: true, "list--hide":
|
|
719
|
+
h("ul", { class: { list: true, "list--hide": !active } },
|
|
719
720
|
h("slot", null)))));
|
|
720
721
|
}
|
|
721
722
|
renderIconStart() {
|
|
@@ -729,13 +730,13 @@ export class Combobox {
|
|
|
729
730
|
h("calcite-icon", { icon: "chevron-down", scale: "s" })));
|
|
730
731
|
}
|
|
731
732
|
render() {
|
|
732
|
-
const {
|
|
733
|
+
const { active, guid, label } = this;
|
|
733
734
|
const single = this.selectionMode === "single";
|
|
734
735
|
return (h(Host, { onKeyDown: this.keydownHandler },
|
|
735
|
-
h("div", { "aria-autocomplete": "list", "aria-expanded":
|
|
736
|
+
h("div", { "aria-autocomplete": "list", "aria-expanded": active.toString(), "aria-haspopup": "listbox", "aria-labelledby": `${labelUidPrefix}${guid}`, "aria-owns": `${listboxUidPrefix}${guid}`, class: {
|
|
736
737
|
wrapper: true,
|
|
737
738
|
"wrapper--single": single || !this.selectedItems.length,
|
|
738
|
-
"wrapper--active":
|
|
739
|
+
"wrapper--active": active
|
|
739
740
|
}, onClick: this.setFocusClick, ref: this.setReferenceEl, role: "combobox" },
|
|
740
741
|
h("div", { class: "grid-input" },
|
|
741
742
|
this.renderIconStart(),
|
|
@@ -1006,6 +1007,26 @@ export class Combobox {
|
|
|
1006
1007
|
"attribute": "intl-remove-tag",
|
|
1007
1008
|
"reflect": false,
|
|
1008
1009
|
"defaultValue": "TEXT.removeTag"
|
|
1010
|
+
},
|
|
1011
|
+
"flipPlacements": {
|
|
1012
|
+
"type": "unknown",
|
|
1013
|
+
"mutable": false,
|
|
1014
|
+
"complexType": {
|
|
1015
|
+
"original": "ComputedPlacement[]",
|
|
1016
|
+
"resolved": "ComputedPlacement[]",
|
|
1017
|
+
"references": {
|
|
1018
|
+
"ComputedPlacement": {
|
|
1019
|
+
"location": "import",
|
|
1020
|
+
"path": "../../utils/popper"
|
|
1021
|
+
}
|
|
1022
|
+
}
|
|
1023
|
+
},
|
|
1024
|
+
"required": false,
|
|
1025
|
+
"optional": true,
|
|
1026
|
+
"docs": {
|
|
1027
|
+
"tags": [],
|
|
1028
|
+
"text": "Defines the available placements that can be used when a flip occurs."
|
|
1029
|
+
}
|
|
1009
1030
|
}
|
|
1010
1031
|
}; }
|
|
1011
1032
|
static get states() { return {
|
|
@@ -1014,12 +1035,10 @@ export class Combobox {
|
|
|
1014
1035
|
"selectedItems": {},
|
|
1015
1036
|
"visibleItems": {},
|
|
1016
1037
|
"needsIcon": {},
|
|
1017
|
-
"hideList": {},
|
|
1018
1038
|
"activeItemIndex": {},
|
|
1019
1039
|
"activeChipIndex": {},
|
|
1020
1040
|
"activeDescendant": {},
|
|
1021
|
-
"text": {}
|
|
1022
|
-
"open": {}
|
|
1041
|
+
"text": {}
|
|
1023
1042
|
}; }
|
|
1024
1043
|
static get events() { return [{
|
|
1025
1044
|
"method": "calciteLookupChange",
|
|
@@ -1171,6 +1190,9 @@ export class Combobox {
|
|
|
1171
1190
|
static get watchers() { return [{
|
|
1172
1191
|
"propName": "active",
|
|
1173
1192
|
"methodName": "activeHandler"
|
|
1193
|
+
}, {
|
|
1194
|
+
"propName": "disabled",
|
|
1195
|
+
"methodName": "handleDisabledChange"
|
|
1174
1196
|
}, {
|
|
1175
1197
|
"propName": "maxItems",
|
|
1176
1198
|
"methodName": "maxItemsHandler"
|