@esri/calcite-components 1.0.0-next.596 → 1.0.0-next.597
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/assets/date-picker/nls/messages.json +31 -0
- package/dist/calcite/assets/date-picker/t9n/index.d.ts +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_ar.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_bg.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_bs.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_ca.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_cs.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_da.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_de.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_el.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_en.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_es.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_et.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_fi.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_fr.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_he.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_hr.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_hu.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_id.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_it.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_ja.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_ko.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_lt.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_lv.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_nl.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_no.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_pl.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_pt-BR.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_pt-PT.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_ro.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_ru.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_sk.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_sl.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_sr.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_sv.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_th.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_tr.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_uk.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_vi.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_zh-CN.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_zh-HK.json +5 -0
- package/dist/calcite/assets/date-picker/t9n/messages_zh-TW.json +5 -0
- package/dist/calcite/calcite.css +1 -1
- package/dist/calcite/calcite.esm.js +2 -2
- package/dist/calcite/index.esm.js +1 -1
- package/dist/calcite/p-0043efc4.js +6 -0
- package/dist/calcite/p-016cee24.entry.js +6 -0
- package/dist/calcite/p-01cb5477.js +6 -0
- package/dist/calcite/{p-9a3c3fc8.js → p-034710a1.js} +1 -1
- package/dist/calcite/p-06505dc6.entry.js +6 -0
- package/dist/calcite/{p-f848a6b0.js → p-1085e82f.js} +2 -2
- package/dist/calcite/p-10c17d1c.entry.js +6 -0
- package/dist/calcite/{p-311e41bb.js → p-1421f9ec.js} +1 -1
- package/dist/calcite/p-14c442cb.entry.js +6 -0
- package/dist/calcite/{p-d7f23fcf.js → p-179ed97a.js} +1 -1
- package/dist/calcite/p-19c7faaf.entry.js +6 -0
- package/dist/calcite/p-1b9e3fb0.entry.js +6 -0
- package/dist/calcite/{p-770a316f.js → p-205462c9.js} +1 -1
- package/dist/calcite/p-21931632.entry.js +6 -0
- package/dist/calcite/p-228315da.entry.js +6 -0
- package/dist/calcite/p-27969266.entry.js +6 -0
- package/dist/calcite/{p-1689e7ab.js → p-2a88fa13.js} +1 -1
- package/dist/calcite/p-2e141574.entry.js +6 -0
- package/dist/calcite/p-36aa3ea2.entry.js +6 -0
- package/dist/calcite/p-3d1ef84a.entry.js +6 -0
- package/dist/calcite/{p-8d83e629.js → p-3d3d179c.js} +2 -2
- package/dist/calcite/p-416510d6.js +6 -0
- package/dist/calcite/p-421dc091.entry.js +6 -0
- package/dist/calcite/p-46ff1ae6.entry.js +6 -0
- package/dist/calcite/p-4c8218d4.entry.js +6 -0
- package/dist/calcite/p-4e7b4c6c.entry.js +6 -0
- package/dist/calcite/{p-df63f732.js → p-576a4d3b.js} +2 -2
- package/dist/calcite/p-59772111.js +6 -0
- package/dist/calcite/p-5a81c608.entry.js +6 -0
- package/dist/calcite/p-5da89821.entry.js +6 -0
- package/dist/calcite/{p-6377d482.js → p-5dc47d03.js} +1 -1
- package/dist/calcite/p-61cbec79.entry.js +6 -0
- package/dist/calcite/{p-6b45b297.js → p-627b4177.js} +1 -1
- package/dist/calcite/p-6505334e.entry.js +6 -0
- package/dist/calcite/{p-6fab9a7a.js → p-65e8434d.js} +1 -1
- package/dist/calcite/{p-ddb5353c.js → p-672cf3c2.js} +2 -2
- package/dist/calcite/{p-44c85d7f.js → p-67890d9f.js} +2 -2
- package/dist/calcite/{p-a8c6757c.js → p-67c0d879.js} +1 -1
- package/dist/calcite/{p-93647858.js → p-6b8d9887.js} +2 -2
- package/dist/calcite/p-6bf1fe3b.entry.js +6 -0
- package/dist/calcite/p-6e070c45.entry.js +6 -0
- package/dist/calcite/p-7dddc346.js +6 -0
- package/dist/calcite/p-7e36e2c5.entry.js +6 -0
- package/dist/calcite/p-80a6379c.entry.js +6 -0
- package/dist/calcite/p-86384397.entry.js +6 -0
- package/dist/calcite/p-91db8a1d.entry.js +6 -0
- package/dist/calcite/p-975aba66.js +7 -0
- package/dist/calcite/p-9804459d.entry.js +6 -0
- package/dist/calcite/p-99889377.entry.js +6 -0
- package/dist/calcite/{p-409af2eb.js → p-a0db47b9.js} +1 -1
- package/dist/calcite/p-a25cc528.entry.js +6 -0
- package/dist/calcite/p-a5ec748f.entry.js +6 -0
- package/dist/calcite/p-a71a4bc5.entry.js +6 -0
- package/dist/calcite/p-a7626d19.entry.js +6 -0
- package/dist/calcite/p-a8b04902.entry.js +6 -0
- package/dist/calcite/p-ab03590a.entry.js +6 -0
- package/dist/calcite/p-ae8f6623.entry.js +6 -0
- package/dist/calcite/{p-b6d7bb31.js → p-b072ee90.js} +2 -2
- package/dist/calcite/p-b31ac46b.entry.js +6 -0
- package/dist/calcite/p-b7dafefc.entry.js +6 -0
- package/dist/calcite/p-b8492482.entry.js +6 -0
- package/dist/calcite/{p-13eef16b.js → p-b9542a0a.js} +1 -1
- package/dist/calcite/p-ba334a9d.entry.js +6 -0
- package/dist/calcite/p-bb21323e.entry.js +6 -0
- package/dist/calcite/{p-8a29e1f5.js → p-c2258fac.js} +1 -1
- package/dist/calcite/p-ce15d4a4.entry.js +6 -0
- package/dist/calcite/p-ce171933.entry.js +6 -0
- package/dist/calcite/{p-3e4bf2de.js → p-d16a1324.js} +1 -1
- package/dist/calcite/p-d465da16.entry.js +6 -0
- package/dist/calcite/p-d4bab92e.entry.js +6 -0
- package/dist/calcite/p-d6067141.entry.js +6 -0
- package/dist/calcite/p-d758a89d.entry.js +6 -0
- package/dist/calcite/p-da5fac1a.entry.js +6 -0
- package/dist/calcite/p-df9538a5.entry.js +6 -0
- package/dist/calcite/p-dfd51f34.entry.js +6 -0
- package/dist/calcite/p-e1c801a6.entry.js +6 -0
- package/dist/calcite/p-e9ccd0bc.entry.js +6 -0
- package/dist/calcite/p-ec1d7ff7.entry.js +6 -0
- package/dist/calcite/p-ec7e67d0.entry.js +6 -0
- package/dist/calcite/p-ed51bd87.entry.js +6 -0
- package/dist/calcite/p-f52edbbb.entry.js +6 -0
- package/dist/calcite/p-f64286c8.entry.js +6 -0
- package/dist/calcite/{p-9e4453d8.entry.js → p-f66dfaea.entry.js} +2 -2
- package/dist/calcite/p-f827044c.entry.js +6 -0
- package/dist/calcite/p-f94b6442.entry.js +6 -0
- package/dist/calcite/{p-10d16edb.js → p-fb5602cf.js} +2 -2
- package/dist/calcite/{p-9f8a6b31.js → p-fd6d1ed1.js} +1 -1
- package/dist/calcite/p-ff82e6f2.entry.js +6 -0
- package/dist/cjs/{ExpandToggle-80ef82c7.js → ExpandToggle-73285037.js} +5 -5
- package/dist/cjs/{Heading-33db6b85.js → Heading-5409de6d.js} +2 -2
- package/dist/cjs/{app-globals-fd934cae.js → app-globals-77859a02.js} +2 -2
- package/dist/cjs/{array-c0cc85de.js → array-f86c9258.js} +1 -1
- package/dist/cjs/calcite-accordion_2.cjs.entry.js +9 -9
- package/dist/cjs/calcite-action-bar.cjs.entry.js +12 -12
- package/dist/cjs/calcite-action-group.cjs.entry.js +10 -10
- package/dist/cjs/calcite-action-menu.cjs.entry.js +11 -10
- package/dist/cjs/calcite-action-pad.cjs.entry.js +11 -11
- package/dist/cjs/calcite-action.cjs.entry.js +8 -8
- package/dist/cjs/calcite-alert.cjs.entry.js +22 -9
- package/dist/cjs/calcite-avatar.cjs.entry.js +7 -7
- package/dist/cjs/calcite-block_2.cjs.entry.js +12 -12
- package/dist/cjs/calcite-button.cjs.entry.js +10 -10
- package/dist/cjs/calcite-card.cjs.entry.js +8 -8
- package/dist/cjs/calcite-checkbox.cjs.entry.js +11 -11
- package/dist/cjs/calcite-chip.cjs.entry.js +9 -9
- package/dist/cjs/calcite-color-picker_3.cjs.entry.js +13 -13
- package/dist/cjs/calcite-combobox_3.cjs.entry.js +21 -19
- package/dist/cjs/calcite-date-picker_4.cjs.entry.js +25 -20
- package/dist/cjs/calcite-dropdown_3.cjs.entry.js +17 -15
- package/dist/cjs/calcite-fab.cjs.entry.js +8 -8
- package/dist/cjs/calcite-filter.cjs.entry.js +9 -9
- package/dist/cjs/calcite-flow-item.cjs.entry.js +14 -16
- package/dist/cjs/calcite-flow.cjs.entry.js +4 -4
- package/dist/cjs/calcite-graph_2.cjs.entry.js +24 -20
- package/dist/cjs/calcite-handle.cjs.entry.js +6 -6
- package/dist/cjs/calcite-icon.cjs.entry.js +7 -7
- package/dist/cjs/calcite-inline-editable.cjs.entry.js +9 -9
- package/dist/cjs/calcite-input-date-picker.cjs.entry.js +45 -40
- package/dist/cjs/calcite-input-message.cjs.entry.js +9 -9
- package/dist/cjs/calcite-input-number.cjs.entry.js +56 -37
- package/dist/cjs/calcite-input-text.cjs.entry.js +12 -12
- package/dist/cjs/calcite-input-time-picker_2.cjs.entry.js +77 -71
- package/dist/cjs/calcite-input.cjs.entry.js +81 -59
- package/dist/cjs/calcite-label.cjs.entry.js +16 -16
- package/dist/cjs/calcite-link.cjs.entry.js +9 -9
- package/dist/cjs/calcite-list_3.cjs.entry.js +12 -12
- package/dist/cjs/calcite-loader.cjs.entry.js +4 -4
- package/dist/cjs/calcite-modal.cjs.entry.js +9 -9
- package/dist/cjs/calcite-notice.cjs.entry.js +9 -9
- package/dist/cjs/calcite-option_3.cjs.entry.js +13 -13
- package/dist/cjs/calcite-pagination.cjs.entry.js +19 -12
- package/dist/cjs/calcite-panel.cjs.entry.js +17 -19
- package/dist/cjs/calcite-pick-list_3.cjs.entry.js +15 -15
- package/dist/cjs/calcite-popover_2.cjs.entry.js +16 -14
- package/dist/cjs/calcite-progress.cjs.entry.js +3 -3
- package/dist/cjs/calcite-radio-button-group.cjs.entry.js +5 -5
- package/dist/cjs/calcite-radio-button.cjs.entry.js +11 -11
- package/dist/cjs/calcite-radio-group_2.cjs.entry.js +14 -14
- package/dist/cjs/calcite-rating.cjs.entry.js +11 -11
- package/dist/cjs/calcite-scrim.cjs.entry.js +3 -3
- package/dist/cjs/calcite-shell_3.cjs.entry.js +12 -12
- package/dist/cjs/calcite-sortable-list.cjs.entry.js +6 -6
- package/dist/cjs/calcite-split-button.cjs.entry.js +7 -5
- package/dist/cjs/calcite-stepper_2.cjs.entry.js +8 -8
- package/dist/cjs/calcite-switch.cjs.entry.js +11 -11
- package/dist/cjs/calcite-tab_4.cjs.entry.js +13 -13
- package/dist/cjs/calcite-tile-select_2.cjs.entry.js +7 -7
- package/dist/cjs/calcite-tile.cjs.entry.js +9 -9
- package/dist/cjs/calcite-tip_3.cjs.entry.js +11 -11
- package/dist/cjs/calcite-tooltip_2.cjs.entry.js +12 -10
- package/dist/cjs/calcite-tree_2.cjs.entry.js +131 -84
- package/dist/cjs/calcite-value-list_2.cjs.entry.js +14 -14
- package/dist/cjs/calcite.cjs.js +6 -6
- package/dist/cjs/{conditionalSlot-6bcc1a43.js → conditionalSlot-cdf70b61.js} +3 -3
- package/dist/cjs/{debounce-7a430467.js → debounce-1f3af549.js} +1 -1
- package/dist/cjs/{dom-58cda112.js → dom-9409deef.js} +29 -3
- package/dist/cjs/{filter-b7bd3662.js → filter-6497f68a.js} +3 -4
- package/dist/cjs/{floating-ui-a78b95ef.js → floating-ui-40005e27.js} +2 -2
- package/dist/cjs/{form-e31078d9.js → form-ed16c84e.js} +3 -3
- package/dist/cjs/{guid-8b3a200d.js → guid-07011a93.js} +1 -1
- package/dist/cjs/{index-f9989f5d.js → index-dbaff4c6.js} +1117 -946
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/{interactive-a77d0ef0.js → interactive-825762eb.js} +1 -1
- package/dist/cjs/{interfaces-522c5f39.js → interfaces-a747d1cf.js} +1 -1
- package/dist/cjs/{key-167ee472.js → key-40cfbef8.js} +1 -1
- package/dist/cjs/{label-762f03a5.js → label-942c98df.js} +2 -2
- package/dist/cjs/loader.cjs.js +6 -6
- package/dist/cjs/locale-3b5c2d93.js +385 -0
- package/dist/cjs/{math-42a15095.js → math-19d2ae8c.js} +1 -1
- package/dist/cjs/observers-2571ea25.js +48 -0
- package/dist/cjs/{openCloseComponent-d20e03e7.js → openCloseComponent-c152728d.js} +1 -1
- package/dist/cjs/{resources-8912222b.js → resources-110e5929.js} +1 -1
- package/dist/cjs/{resources-aba47c80.js → resources-24f7e730.js} +11 -31
- package/dist/cjs/{resources-f2712948.js → resources-5f061484.js} +5 -5
- package/dist/cjs/{resources-8a806639.js → resources-adfdf58d.js} +1 -1
- package/dist/cjs/{resources-cd1870a1.js → resources-b88532e5.js} +1 -1
- package/dist/cjs/{resources-8ffd1200.js → resources-e5387109.js} +1 -1
- package/dist/cjs/{sortable.esm-cd4b2dcd.js → sortable.esm-9b594ce7.js} +1 -1
- package/dist/cjs/{utils-6617f268.js → utils-0af662a9.js} +1 -1
- package/dist/collection/collection-manifest.json +2 -2
- package/dist/collection/components/accordion/accordion.e2e.js +183 -0
- package/dist/collection/components/accordion/accordion.js +160 -151
- package/dist/collection/components/accordion/interfaces.js +0 -5
- package/dist/collection/components/accordion-item/accordion-item.e2e.js +8 -0
- package/dist/collection/components/accordion-item/accordion-item.js +301 -305
- package/dist/collection/components/accordion-item/interfaces.js +0 -5
- package/dist/collection/components/accordion-item/resources.js +1 -1
- package/dist/collection/components/action/action.e2e.js +93 -0
- package/dist/collection/components/action/action.js +293 -290
- package/dist/collection/components/action/resources.js +1 -1
- package/dist/collection/components/action-bar/action-bar.e2e.js +290 -0
- package/dist/collection/components/action-bar/action-bar.js +239 -232
- package/dist/collection/components/action-bar/resources.js +1 -1
- package/dist/collection/components/action-bar/utils.js +1 -1
- package/dist/collection/components/action-group/action-group.e2e.js +23 -0
- package/dist/collection/components/action-group/action-group.js +136 -133
- package/dist/collection/components/action-group/resources.js +1 -1
- package/dist/collection/components/action-menu/action-menu.e2e.js +153 -0
- package/dist/collection/components/action-menu/action-menu.js +220 -209
- package/dist/collection/components/action-menu/resources.js +1 -1
- package/dist/collection/components/action-pad/action-pad.e2e.js +178 -0
- package/dist/collection/components/action-pad/action-pad.js +196 -189
- package/dist/collection/components/action-pad/resources.js +1 -1
- package/dist/collection/components/alert/alert.css +1 -1
- package/dist/collection/components/alert/alert.e2e.js +294 -0
- package/dist/collection/components/alert/alert.js +410 -372
- package/dist/collection/components/alert/interfaces.js +1 -1
- package/dist/collection/components/alert/resources.js +1 -1
- package/dist/collection/components/avatar/avatar.e2e.js +55 -0
- package/dist/collection/components/avatar/avatar.js +107 -99
- package/dist/collection/components/avatar/avatar.spec.js +42 -0
- package/dist/collection/components/avatar/utils.js +1 -1
- package/dist/collection/components/block/block.e2e.js +194 -0
- package/dist/collection/components/block/block.js +319 -326
- package/dist/collection/components/block/resources.js +1 -1
- package/dist/collection/components/block-section/block-section.e2e.js +132 -0
- package/dist/collection/components/block-section/block-section.js +143 -145
- package/dist/collection/components/block-section/interfaces.js +0 -5
- package/dist/collection/components/block-section/resources.js +1 -1
- package/dist/collection/components/button/button.e2e.js +529 -0
- package/dist/collection/components/button/button.js +430 -424
- package/dist/collection/components/button/interfaces.js +0 -5
- package/dist/collection/components/button/resources.js +1 -1
- package/dist/collection/components/card/card.e2e.js +87 -0
- package/dist/collection/components/card/card.js +171 -179
- package/dist/collection/components/card/resources.js +1 -1
- package/dist/collection/components/checkbox/checkbox.e2e.js +105 -0
- package/dist/collection/components/checkbox/checkbox.js +269 -264
- package/dist/collection/components/chip/chip.e2e.js +149 -0
- package/dist/collection/components/chip/chip.js +258 -253
- package/dist/collection/components/chip/interfaces.js +0 -5
- package/dist/collection/components/chip/resources.js +1 -1
- package/dist/collection/components/color-picker/color-picker.e2e.js +1068 -0
- package/dist/collection/components/color-picker/color-picker.js +779 -780
- package/dist/collection/components/color-picker/interfaces.js +0 -5
- package/dist/collection/components/color-picker/resources.js +1 -1
- package/dist/collection/components/color-picker/utils.js +1 -1
- package/dist/collection/components/color-picker/utils.spec.js +66 -0
- package/dist/collection/components/color-picker-hex-input/color-picker-hex-input.e2e.js +281 -0
- package/dist/collection/components/color-picker-hex-input/color-picker-hex-input.js +189 -170
- package/dist/collection/components/color-picker-hex-input/resources.js +1 -1
- package/dist/collection/components/color-picker-swatch/color-picker-swatch.e2e.js +71 -0
- package/dist/collection/components/color-picker-swatch/color-picker-swatch.js +81 -75
- package/dist/collection/components/color-picker-swatch/resources.js +1 -1
- package/dist/collection/components/combobox/combobox.e2e.js +1043 -0
- package/dist/collection/components/combobox/combobox.js +551 -550
- package/dist/collection/components/combobox/interfaces.js +0 -5
- package/dist/collection/components/combobox/resources.js +1 -1
- package/dist/collection/components/combobox/utils.js +1 -1
- package/dist/collection/components/combobox-item/combobox-item.e2e.js +7 -0
- package/dist/collection/components/combobox-item/combobox-item.js +241 -235
- package/dist/collection/components/combobox-item/resources.js +1 -1
- package/dist/collection/components/combobox-item-group/combobox-item-group.js +50 -47
- package/dist/collection/components/combobox-item-group/resources.js +1 -1
- package/dist/collection/components/date-picker/assets/date-picker/nls/messages.json +31 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/index.d.ts +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_ar.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_bg.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_bs.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_ca.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_cs.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_da.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_de.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_el.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_en.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_es.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_et.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_fi.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_fr.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_he.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_hr.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_hu.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_id.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_it.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_ja.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_ko.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_lt.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_lv.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_nl.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_no.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_pl.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_pt-BR.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_pt-PT.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_ro.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_ru.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_sk.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_sl.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_sr.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_sv.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_th.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_tr.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_uk.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_vi.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_zh-CN.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_zh-HK.json +5 -0
- package/dist/collection/components/date-picker/assets/date-picker/t9n/messages_zh-TW.json +5 -0
- package/dist/collection/components/date-picker/date-picker.e2e.js +195 -0
- package/dist/collection/components/date-picker/date-picker.js +462 -447
- package/dist/collection/components/date-picker/interfaces.js +0 -5
- package/dist/collection/components/date-picker/resources.js +1 -1
- package/dist/collection/components/date-picker/utils.js +2 -22
- package/dist/collection/components/date-picker/utils.spec.js +55 -0
- package/dist/collection/components/date-picker-day/date-picker-day.css +48 -24
- package/dist/collection/components/date-picker-day/date-picker-day.e2e.js +16 -0
- package/dist/collection/components/date-picker-day/date-picker-day.js +284 -278
- package/dist/collection/components/date-picker-month/date-picker-month.js +256 -249
- package/dist/collection/components/date-picker-month-header/date-picker-month-header.e2e.js +72 -0
- package/dist/collection/components/date-picker-month-header/date-picker-month-header.js +228 -227
- package/dist/collection/components/date-picker-month-header/resources.js +1 -1
- package/dist/collection/components/dropdown/dropdown.e2e.js +1030 -0
- package/dist/collection/components/dropdown/dropdown.js +422 -411
- package/dist/collection/components/dropdown/interfaces.js +0 -5
- package/dist/collection/components/dropdown/resources.js +1 -1
- package/dist/collection/components/dropdown-group/dropdown-group.e2e.js +5 -0
- package/dist/collection/components/dropdown-group/dropdown-group.js +113 -107
- package/dist/collection/components/dropdown-group/interfaces.js +0 -5
- package/dist/collection/components/dropdown-group/resources.js +1 -1
- package/dist/collection/components/dropdown-item/dropdown-item.e2e.js +6 -0
- package/dist/collection/components/dropdown-item/dropdown-item.js +292 -282
- package/dist/collection/components/dropdown-item/resources.js +1 -1
- package/dist/collection/components/fab/fab.e2e.js +114 -0
- package/dist/collection/components/fab/fab.js +205 -197
- package/dist/collection/components/fab/resources.js +1 -1
- package/dist/collection/components/filter/filter.e2e.js +205 -0
- package/dist/collection/components/filter/filter.js +200 -191
- package/dist/collection/components/filter/resources.js +1 -1
- package/dist/collection/components/flow/flow.e2e.js +166 -0
- package/dist/collection/components/flow/flow.js +55 -46
- package/dist/collection/components/flow/interfaces.js +0 -5
- package/dist/collection/components/flow/resources.js +1 -1
- package/dist/collection/components/flow-item/flow-item.e2e.js +72 -0
- package/dist/collection/components/flow-item/flow-item.js +396 -394
- package/dist/collection/components/flow-item/resources.js +1 -1
- package/dist/collection/components/functional/ExpandToggle.js +1 -1
- package/dist/collection/components/functional/Heading.js +1 -1
- package/dist/collection/components/functional/Heading.spec.js +33 -0
- package/dist/collection/components/graph/graph.e2e.js +69 -0
- package/dist/collection/components/graph/graph.js +125 -125
- package/dist/collection/components/graph/interfaces.js +0 -5
- package/dist/collection/components/graph/util.js +1 -1
- package/dist/collection/components/handle/handle.e2e.js +30 -0
- package/dist/collection/components/handle/handle.js +94 -85
- package/dist/collection/components/handle/resources.js +1 -1
- package/dist/collection/components/icon/icon.e2e.js +75 -0
- package/dist/collection/components/icon/icon.js +107 -98
- package/dist/collection/components/icon/resources.js +1 -1
- package/dist/collection/components/icon/utils.js +1 -1
- package/dist/collection/components/icon/utils.spec.js +61 -0
- package/dist/collection/components/inline-editable/inline-editable.e2e.js +327 -0
- package/dist/collection/components/inline-editable/inline-editable.js +274 -266
- package/dist/collection/components/inline-editable/resources.js +1 -1
- package/dist/collection/components/input/input.e2e.js +1192 -0
- package/dist/collection/components/input/input.js +873 -856
- package/dist/collection/components/input/interfaces.js +0 -5
- package/dist/collection/components/input/resources.js +1 -1
- package/dist/collection/components/input-date-picker/input-date-picker.css +1 -1
- package/dist/collection/components/input-date-picker/input-date-picker.e2e.js +295 -0
- package/dist/collection/components/input-date-picker/input-date-picker.js +799 -793
- package/dist/collection/components/input-date-picker/resources.js +1 -1
- package/dist/collection/components/input-message/input-message.css +1 -1
- package/dist/collection/components/input-message/input-message.e2e.js +122 -0
- package/dist/collection/components/input-message/input-message.js +124 -118
- package/dist/collection/components/input-message/interfaces.js +1 -1
- package/dist/collection/components/input-number/input-number.e2e.js +1004 -0
- package/dist/collection/components/input-number/input-number.js +803 -787
- package/dist/collection/components/input-number/interfaces.js +0 -5
- package/dist/collection/components/input-number/resources.js +1 -1
- package/dist/collection/components/input-text/input-text.e2e.js +276 -0
- package/dist/collection/components/input-text/input-text.js +596 -597
- package/dist/collection/components/input-text/resources.js +1 -1
- package/dist/collection/components/input-time-picker/input-time-picker.e2e.js +241 -0
- package/dist/collection/components/input-time-picker/input-time-picker.js +591 -577
- package/dist/collection/components/interfaces.js +0 -5
- package/dist/collection/components/label/label.css +1 -1
- package/dist/collection/components/label/label.e2e.js +156 -0
- package/dist/collection/components/label/label.js +189 -183
- package/dist/collection/components/label/resources.js +1 -1
- package/dist/collection/components/link/link.e2e.js +257 -0
- package/dist/collection/components/link/link.js +186 -180
- package/dist/collection/components/list/list.e2e.js +32 -0
- package/dist/collection/components/list/list.js +75 -69
- package/dist/collection/components/list/resources.js +1 -1
- package/dist/collection/components/list-item/list-item.e2e.js +46 -0
- package/dist/collection/components/list-item/list-item.js +107 -111
- package/dist/collection/components/list-item/resources.js +1 -1
- package/dist/collection/components/list-item-group/list-item-group.e2e.js +16 -0
- package/dist/collection/components/list-item-group/list-item-group.js +54 -51
- package/dist/collection/components/list-item-group/resources.js +1 -1
- package/dist/collection/components/loader/loader.css +2 -2
- package/dist/collection/components/loader/loader.e2e.js +49 -0
- package/dist/collection/components/loader/loader.js +166 -169
- package/dist/collection/components/modal/interfaces.js +0 -5
- package/dist/collection/components/modal/modal.e2e.js +382 -0
- package/dist/collection/components/modal/modal.js +470 -473
- package/dist/collection/components/modal/resources.js +1 -1
- package/dist/collection/components/notice/notice.e2e.js +127 -0
- package/dist/collection/components/notice/notice.js +263 -261
- package/dist/collection/components/notice/resources.js +1 -1
- package/dist/collection/components/option/option.e2e.js +56 -0
- package/dist/collection/components/option/option.js +117 -107
- package/dist/collection/components/option-group/option-group.e2e.js +26 -0
- package/dist/collection/components/option-group/option-group.js +80 -72
- package/dist/collection/components/pagination/pagination.e2e.js +208 -0
- package/dist/collection/components/pagination/pagination.js +265 -257
- package/dist/collection/components/pagination/resources.js +1 -1
- package/dist/collection/components/panel/panel.css +1 -1
- package/dist/collection/components/panel/panel.e2e.js +281 -0
- package/dist/collection/components/panel/panel.js +543 -552
- package/dist/collection/components/panel/resources.js +1 -1
- package/dist/collection/components/pick-list/pick-list.e2e.js +157 -0
- package/dist/collection/components/pick-list/pick-list.js +249 -235
- package/dist/collection/components/pick-list/resources.js +1 -1
- package/dist/collection/components/pick-list/shared-list-logic.js +1 -1
- package/dist/collection/components/pick-list/shared-list-render.js +2 -9
- package/dist/collection/components/pick-list/shared-list-tests.js +463 -0
- package/dist/collection/components/pick-list-group/pick-list-group.e2e.js +54 -0
- package/dist/collection/components/pick-list-group/pick-list-group.js +54 -52
- package/dist/collection/components/pick-list-group/resources.js +1 -1
- package/dist/collection/components/pick-list-item/pick-list-item.e2e.js +124 -0
- package/dist/collection/components/pick-list-item/pick-list-item.js +346 -344
- package/dist/collection/components/pick-list-item/resources.js +1 -1
- package/dist/collection/components/popover/PopoverManager.js +1 -1
- package/dist/collection/components/popover/popover.e2e.js +454 -0
- package/dist/collection/components/popover/popover.js +539 -534
- package/dist/collection/components/popover/resources.js +1 -1
- package/dist/collection/components/popover-manager/popover-manager.e2e.js +38 -0
- package/dist/collection/components/popover-manager/popover-manager.js +60 -52
- package/dist/collection/components/progress/progress.e2e.js +7 -0
- package/dist/collection/components/progress/progress.js +105 -102
- package/dist/collection/components/radio-button/radio-button.e2e.js +332 -0
- package/dist/collection/components/radio-button/radio-button.js +345 -334
- package/dist/collection/components/radio-button/resources.js +1 -1
- package/dist/collection/components/radio-button-group/radio-button-group.e2e.js +384 -0
- package/dist/collection/components/radio-button-group/radio-button-group.js +169 -158
- package/dist/collection/components/radio-group/interfaces.js +0 -5
- package/dist/collection/components/radio-group/radio-group.e2e.js +258 -0
- package/dist/collection/components/radio-group/radio-group.js +254 -242
- package/dist/collection/components/radio-group-item/radio-group-item.e2e.js +92 -0
- package/dist/collection/components/radio-group-item/radio-group-item.js +178 -175
- package/dist/collection/components/radio-group-item/resources.js +1 -1
- package/dist/collection/components/rating/rating.e2e.js +450 -0
- package/dist/collection/components/rating/rating.js +273 -274
- package/dist/collection/components/rating/resources.js +1 -1
- package/dist/collection/components/scrim/resources.js +1 -1
- package/dist/collection/components/scrim/scrim.e2e.js +122 -0
- package/dist/collection/components/scrim/scrim.js +56 -53
- package/dist/collection/components/select/resources.js +1 -1
- package/dist/collection/components/select/select.e2e.js +266 -0
- package/dist/collection/components/select/select.js +226 -217
- package/dist/collection/components/shell/resources.js +1 -1
- package/dist/collection/components/shell/shell.e2e.js +126 -0
- package/dist/collection/components/shell/shell.js +38 -43
- package/dist/collection/components/shell-center-row/resources.js +1 -1
- package/dist/collection/components/shell-center-row/shell-center-row.e2e.js +66 -0
- package/dist/collection/components/shell-center-row/shell-center-row.js +79 -75
- package/dist/collection/components/shell-panel/resources.js +1 -1
- package/dist/collection/components/shell-panel/shell-panel.e2e.js +282 -0
- package/dist/collection/components/shell-panel/shell-panel.js +183 -175
- package/dist/collection/components/slider/resources.js +1 -1
- package/dist/collection/components/slider/slider.e2e.js +648 -0
- package/dist/collection/components/slider/slider.js +592 -629
- package/dist/collection/components/sortable-list/resources.js +1 -1
- package/dist/collection/components/sortable-list/sortable-list.e2e.js +57 -0
- package/dist/collection/components/sortable-list/sortable-list.js +153 -142
- package/dist/collection/components/split-button/resources.js +1 -1
- package/dist/collection/components/split-button/split-button.e2e.js +206 -0
- package/dist/collection/components/split-button/split-button.js +363 -357
- package/dist/collection/components/stepper/interfaces.js +0 -5
- package/dist/collection/components/stepper/stepper.e2e.js +558 -0
- package/dist/collection/components/stepper/stepper.js +248 -236
- package/dist/collection/components/stepper-item/stepper-item.e2e.js +6 -0
- package/dist/collection/components/stepper-item/stepper-item.js +395 -392
- package/dist/collection/components/switch/switch.e2e.js +91 -0
- package/dist/collection/components/switch/switch.js +187 -179
- package/dist/collection/components/tab/interfaces.js +0 -5
- package/dist/collection/components/tab/tab.e2e.js +49 -0
- package/dist/collection/components/tab/tab.js +192 -179
- package/dist/collection/components/tab-nav/tab-nav.e2e.js +143 -0
- package/dist/collection/components/tab-nav/tab-nav.js +285 -275
- package/dist/collection/components/tab-title/tab-title.e2e.js +222 -0
- package/dist/collection/components/tab-title/tab-title.js +465 -453
- package/dist/collection/components/tabs/interfaces.js +0 -5
- package/dist/collection/components/tabs/resources.js +1 -1
- package/dist/collection/components/tabs/tabs.e2e.js +281 -0
- package/dist/collection/components/tabs/tabs.js +131 -124
- package/dist/collection/components/tile/resources.js +1 -1
- package/dist/collection/components/tile/tile.e2e.js +79 -0
- package/dist/collection/components/tile/tile.js +170 -174
- package/dist/collection/components/tile-select/interfaces.js +0 -5
- package/dist/collection/components/tile-select/resources.js +1 -1
- package/dist/collection/components/tile-select/tile-select.e2e.js +133 -0
- package/dist/collection/components/tile-select/tile-select.js +347 -333
- package/dist/collection/components/tile-select-group/interfaces.js +0 -5
- package/dist/collection/components/tile-select-group/tile-select-group.e2e.js +14 -0
- package/dist/collection/components/tile-select-group/tile-select-group.js +56 -50
- package/dist/collection/components/time-picker/resources.js +1 -1
- package/dist/collection/components/time-picker/time-picker.e2e.js +737 -0
- package/dist/collection/components/time-picker/time-picker.js +533 -544
- package/dist/collection/components/tip/resources.js +1 -1
- package/dist/collection/components/tip/tip.e2e.js +42 -0
- package/dist/collection/components/tip/tip.js +142 -143
- package/dist/collection/components/tip-group/tip-group.e2e.js +6 -0
- package/dist/collection/components/tip-group/tip-group.js +33 -27
- package/dist/collection/components/tip-manager/resources.js +1 -1
- package/dist/collection/components/tip-manager/tip-manager.e2e.js +176 -0
- package/dist/collection/components/tip-manager/tip-manager.js +225 -221
- package/dist/collection/components/tip-manager/tip-manager.spec.js +13 -0
- package/dist/collection/components/tooltip/TooltipManager.js +1 -1
- package/dist/collection/components/tooltip/resources.js +1 -1
- package/dist/collection/components/tooltip/tooltip.e2e.js +359 -0
- package/dist/collection/components/tooltip/tooltip.js +220 -210
- package/dist/collection/components/tooltip-manager/tooltip-manager.e2e.js +19 -0
- package/dist/collection/components/tooltip-manager/tooltip-manager.js +37 -31
- package/dist/collection/components/tree/interfaces.js +1 -1
- package/dist/collection/components/tree/tree.e2e.js +586 -0
- package/dist/collection/components/tree/tree.js +276 -244
- package/dist/collection/components/tree/utils.js +21 -0
- package/dist/collection/components/tree-item/interfaces.js +0 -5
- package/dist/collection/components/tree-item/resources.js +1 -1
- package/dist/collection/components/tree-item/tree-item.css +17 -3
- package/dist/collection/components/tree-item/tree-item.e2e.js +302 -0
- package/dist/collection/components/tree-item/tree-item.js +298 -268
- package/dist/collection/components/value-list/interfaces.js +0 -5
- package/dist/collection/components/value-list/resources.js +1 -1
- package/dist/collection/components/value-list/utils.js +1 -1
- package/dist/collection/components/value-list/value-list.e2e.js +205 -0
- package/dist/collection/components/value-list/value-list.js +341 -327
- package/dist/collection/components/value-list-item/resources.js +1 -1
- package/dist/collection/components/value-list-item/value-list-item.e2e.js +96 -0
- package/dist/collection/components/value-list-item/value-list-item.js +282 -275
- package/dist/collection/demos/_assets/demo-dom-swapper.js +45 -0
- package/dist/collection/demos/_assets/demo-spacer.js +17 -0
- package/dist/collection/demos/_assets/demo-template.js +24 -0
- package/dist/collection/demos/_assets/head.js +48 -0
- package/dist/collection/demos/_assets/locales.js +223 -0
- package/dist/collection/tests/commonTests.js +596 -0
- package/dist/collection/tests/utils.js +200 -0
- package/dist/collection/utils/array.js +1 -1
- package/dist/collection/utils/conditionalSlot.js +1 -1
- package/dist/collection/utils/date.js +1 -1
- package/dist/collection/utils/date.spec.js +153 -0
- package/dist/collection/utils/dom.e2e.js +107 -0
- package/dist/collection/utils/dom.js +26 -1
- package/dist/collection/utils/dom.spec.js +273 -0
- package/dist/collection/utils/filter.js +2 -3
- package/dist/collection/utils/floating-ui.js +1 -1
- package/dist/collection/utils/floating-ui.spec.js +23 -0
- package/dist/collection/utils/form.js +1 -1
- package/dist/collection/utils/form.spec.js +16 -0
- package/dist/collection/utils/globalAttributes.js +1 -1
- package/dist/collection/utils/globalAttributes.spec.js +36 -0
- package/dist/collection/utils/globalScript.js +1 -1
- package/dist/collection/utils/guid.js +1 -1
- package/dist/collection/utils/guid.spec.js +7 -0
- package/dist/collection/utils/interactive.js +1 -1
- package/dist/collection/utils/interactive.spec.js +20 -0
- package/dist/collection/utils/key.js +1 -1
- package/dist/collection/utils/label.js +1 -1
- package/dist/collection/utils/label.spec.js +188 -0
- package/dist/collection/utils/locale.js +173 -64
- package/dist/collection/utils/locale.spec.js +44 -0
- package/dist/collection/utils/math.js +1 -1
- package/dist/collection/utils/math.spec.js +8 -0
- package/dist/collection/utils/number.js +33 -31
- package/dist/collection/utils/number.spec.js +113 -0
- package/dist/collection/utils/observers.js +31 -7
- package/dist/collection/utils/openCloseComponent.js +1 -1
- package/dist/collection/utils/popper.js +121 -0
- package/dist/collection/utils/resources.js +1 -1
- package/dist/collection/utils/t9n.js +110 -0
- package/dist/collection/utils/theme.js +1 -1
- package/dist/collection/utils/time.js +4 -2
- package/dist/components/ExpandToggle.js +1 -1
- package/dist/components/Heading.js +1 -1
- package/dist/components/action-group.js +2 -2
- package/dist/components/action-menu.js +4 -3
- package/dist/components/action.js +3 -3
- package/dist/components/array.js +1 -1
- package/dist/components/button.js +2 -2
- package/dist/components/calcite-accordion-item.js +2 -2
- package/dist/components/calcite-accordion.js +2 -2
- package/dist/components/calcite-action-bar.js +2 -2
- package/dist/components/calcite-action-group.js +1 -1
- package/dist/components/calcite-action-menu.js +1 -1
- package/dist/components/calcite-action-pad.js +2 -2
- package/dist/components/calcite-action.js +1 -1
- package/dist/components/calcite-alert.js +16 -3
- package/dist/components/calcite-avatar.js +2 -2
- package/dist/components/calcite-block-section.js +2 -2
- package/dist/components/calcite-block.js +2 -2
- package/dist/components/calcite-button.js +1 -1
- package/dist/components/calcite-card.js +2 -2
- package/dist/components/calcite-checkbox.js +1 -1
- package/dist/components/calcite-chip.js +1 -1
- package/dist/components/calcite-color-picker-hex-input.js +1 -1
- package/dist/components/calcite-color-picker-swatch.js +1 -1
- package/dist/components/calcite-color-picker.js +2 -2
- package/dist/components/calcite-combobox-item-group.js +2 -2
- package/dist/components/calcite-combobox-item.js +2 -2
- package/dist/components/calcite-combobox.js +6 -4
- package/dist/components/calcite-date-picker-day.js +1 -1
- package/dist/components/calcite-date-picker-month-header.js +1 -1
- package/dist/components/calcite-date-picker-month.js +1 -1
- package/dist/components/calcite-date-picker.js +1 -1
- package/dist/components/calcite-dropdown-group.js +2 -2
- package/dist/components/calcite-dropdown-item.js +2 -2
- package/dist/components/calcite-dropdown.js +1 -1
- package/dist/components/calcite-fab.js +3 -3
- package/dist/components/calcite-filter.js +1 -1
- package/dist/components/calcite-flow-item.js +8 -10
- package/dist/components/calcite-flow.js +2 -2
- package/dist/components/calcite-graph.js +1 -1
- package/dist/components/calcite-handle.js +1 -1
- package/dist/components/calcite-icon.js +1 -1
- package/dist/components/calcite-inline-editable.js +2 -2
- package/dist/components/calcite-input-date-picker.js +36 -30
- package/dist/components/calcite-input-message.js +5 -5
- package/dist/components/calcite-input-number.js +38 -19
- package/dist/components/calcite-input-text.js +4 -4
- package/dist/components/calcite-input-time-picker.js +32 -28
- package/dist/components/calcite-input.js +1 -1
- package/dist/components/calcite-label.js +1 -1
- package/dist/components/calcite-link.js +1 -1
- package/dist/components/calcite-list-item-group.js +2 -2
- package/dist/components/calcite-list-item.js +2 -2
- package/dist/components/calcite-list.js +2 -2
- package/dist/components/calcite-loader.js +1 -1
- package/dist/components/calcite-modal.js +2 -2
- package/dist/components/calcite-notice.js +2 -2
- package/dist/components/calcite-option-group.js +2 -2
- package/dist/components/calcite-option.js +2 -2
- package/dist/components/calcite-pagination.js +14 -10
- package/dist/components/calcite-panel.js +1 -1
- package/dist/components/calcite-pick-list-group.js +2 -2
- package/dist/components/calcite-pick-list-item.js +1 -1
- package/dist/components/calcite-pick-list.js +2 -2
- package/dist/components/calcite-popover-manager.js +2 -2
- package/dist/components/calcite-popover.js +1 -1
- package/dist/components/calcite-progress.js +1 -1
- package/dist/components/calcite-radio-button-group.js +3 -3
- package/dist/components/calcite-radio-button.js +3 -3
- package/dist/components/calcite-radio-group-item.js +5 -5
- package/dist/components/calcite-radio-group.js +3 -3
- package/dist/components/calcite-rating.js +3 -3
- package/dist/components/calcite-scrim.js +1 -1
- package/dist/components/calcite-select.js +3 -3
- package/dist/components/calcite-shell-center-row.js +3 -3
- package/dist/components/calcite-shell-panel.js +2 -2
- package/dist/components/calcite-shell.js +2 -2
- package/dist/components/calcite-slider.js +14 -10
- package/dist/components/calcite-sortable-list.js +2 -2
- package/dist/components/calcite-split-button.js +5 -3
- package/dist/components/calcite-stepper-item.js +2 -2
- package/dist/components/calcite-stepper.js +2 -2
- package/dist/components/calcite-switch.js +1 -1
- package/dist/components/calcite-tab-nav.js +1 -1
- package/dist/components/calcite-tab-title.js +1 -1
- package/dist/components/calcite-tab.js +1 -1
- package/dist/components/calcite-tabs.js +1 -1
- package/dist/components/calcite-tile-select-group.js +3 -3
- package/dist/components/calcite-tile-select.js +2 -2
- package/dist/components/calcite-tile.js +1 -1
- package/dist/components/calcite-time-picker.js +1 -1
- package/dist/components/calcite-tip-group.js +2 -2
- package/dist/components/calcite-tip-manager.js +2 -2
- package/dist/components/calcite-tip.js +2 -2
- package/dist/components/calcite-tooltip-manager.js +2 -2
- package/dist/components/calcite-tooltip.js +1 -1
- package/dist/components/calcite-tree-item.js +12 -3
- package/dist/components/calcite-tree.js +115 -76
- package/dist/components/calcite-value-list-item.js +2 -2
- package/dist/components/calcite-value-list.js +2 -2
- package/dist/components/checkbox.js +3 -3
- package/dist/components/chip.js +3 -3
- package/dist/components/color-picker-hex-input.js +2 -2
- package/dist/components/color-picker-swatch.js +2 -2
- package/dist/components/conditionalSlot.js +1 -1
- package/dist/components/date-picker-day.js +2 -2
- package/dist/components/date-picker-month-header.js +2 -2
- package/dist/components/date-picker-month.js +2 -2
- package/dist/components/date-picker.js +14 -28
- package/dist/components/date.js +1 -1
- package/dist/components/debounce.js +1 -1
- package/dist/components/dom.js +27 -2
- package/dist/components/dropdown.js +5 -3
- package/dist/components/filter.js +2 -2
- package/dist/components/filter2.js +2 -3
- package/dist/components/floating-ui.js +1 -1
- package/dist/components/form.js +1 -1
- package/dist/components/graph.js +2 -2
- package/dist/components/guid.js +1 -1
- package/dist/components/handle.js +2 -2
- package/dist/components/icon.js +2 -2
- package/dist/components/index.js +1 -1
- package/dist/components/input.js +63 -41
- package/dist/components/interactive.js +1 -1
- package/dist/components/interfaces.js +1 -1
- package/dist/components/interfaces2.js +1 -1
- package/dist/components/key.js +1 -1
- package/dist/components/label.js +11 -11
- package/dist/components/label2.js +1 -1
- package/dist/components/link.js +6 -6
- package/dist/components/loader.js +2 -2
- package/dist/components/locale.js +374 -0
- package/dist/components/math.js +1 -1
- package/dist/components/observers.js +31 -7
- package/dist/components/openCloseComponent.js +1 -1
- package/dist/components/panel.js +8 -10
- package/dist/components/pick-list-item.js +2 -2
- package/dist/components/popover.js +5 -3
- package/dist/components/progress.js +2 -2
- package/dist/components/resources.js +1 -1
- package/dist/components/resources2.js +1 -1
- package/dist/components/resources3.js +1 -1
- package/dist/components/scrim.js +2 -2
- package/dist/components/shared-list-render.js +1 -1
- package/dist/components/sortable.esm.js +1 -1
- package/dist/components/switch.js +3 -3
- package/dist/components/tab-nav.js +2 -2
- package/dist/components/tab-title.js +3 -3
- package/dist/components/tab.js +3 -3
- package/dist/components/tabs.js +2 -2
- package/dist/components/tile.js +2 -2
- package/dist/components/time-picker.js +22 -20
- package/dist/components/tooltip.js +5 -3
- package/dist/components/utils.js +1 -1
- package/dist/components/utils2.js +1 -1
- package/dist/esm/{ExpandToggle-b94e1fe2.js → ExpandToggle-21a5493f.js} +5 -5
- package/dist/esm/{Heading-9398c9e6.js → Heading-0da1d231.js} +2 -2
- package/dist/esm/{app-globals-1f65a164.js → app-globals-53484588.js} +2 -2
- package/dist/esm/{array-3ac5d2ad.js → array-afca26e4.js} +1 -1
- package/dist/esm/calcite-accordion_2.entry.js +9 -9
- package/dist/esm/calcite-action-bar.entry.js +12 -12
- package/dist/esm/calcite-action-group.entry.js +10 -10
- package/dist/esm/calcite-action-menu.entry.js +11 -10
- package/dist/esm/calcite-action-pad.entry.js +11 -11
- package/dist/esm/calcite-action.entry.js +8 -8
- package/dist/esm/calcite-alert.entry.js +22 -9
- package/dist/esm/calcite-avatar.entry.js +7 -7
- package/dist/esm/calcite-block_2.entry.js +12 -12
- package/dist/esm/calcite-button.entry.js +10 -10
- package/dist/esm/calcite-card.entry.js +8 -8
- package/dist/esm/calcite-checkbox.entry.js +11 -11
- package/dist/esm/calcite-chip.entry.js +9 -9
- package/dist/esm/calcite-color-picker_3.entry.js +13 -13
- package/dist/esm/calcite-combobox_3.entry.js +21 -19
- package/dist/esm/calcite-date-picker_4.entry.js +25 -20
- package/dist/esm/calcite-dropdown_3.entry.js +17 -15
- package/dist/esm/calcite-fab.entry.js +8 -8
- package/dist/esm/calcite-filter.entry.js +9 -9
- package/dist/esm/calcite-flow-item.entry.js +14 -16
- package/dist/esm/calcite-flow.entry.js +4 -4
- package/dist/esm/calcite-graph_2.entry.js +24 -20
- package/dist/esm/calcite-handle.entry.js +6 -6
- package/dist/esm/calcite-icon.entry.js +7 -7
- package/dist/esm/calcite-inline-editable.entry.js +9 -9
- package/dist/esm/calcite-input-date-picker.entry.js +45 -40
- package/dist/esm/calcite-input-message.entry.js +9 -9
- package/dist/esm/calcite-input-number.entry.js +47 -28
- package/dist/esm/calcite-input-text.entry.js +12 -12
- package/dist/esm/calcite-input-time-picker_2.entry.js +57 -51
- package/dist/esm/calcite-input.entry.js +72 -50
- package/dist/esm/calcite-label.entry.js +16 -16
- package/dist/esm/calcite-link.entry.js +9 -9
- package/dist/esm/calcite-list_3.entry.js +12 -12
- package/dist/esm/calcite-loader.entry.js +4 -4
- package/dist/esm/calcite-modal.entry.js +9 -9
- package/dist/esm/calcite-notice.entry.js +9 -9
- package/dist/esm/calcite-option_3.entry.js +13 -13
- package/dist/esm/calcite-pagination.entry.js +19 -12
- package/dist/esm/calcite-panel.entry.js +17 -19
- package/dist/esm/calcite-pick-list_3.entry.js +15 -15
- package/dist/esm/calcite-popover_2.entry.js +16 -14
- package/dist/esm/calcite-progress.entry.js +3 -3
- package/dist/esm/calcite-radio-button-group.entry.js +5 -5
- package/dist/esm/calcite-radio-button.entry.js +11 -11
- package/dist/esm/calcite-radio-group_2.entry.js +14 -14
- package/dist/esm/calcite-rating.entry.js +11 -11
- package/dist/esm/calcite-scrim.entry.js +3 -3
- package/dist/esm/calcite-shell_3.entry.js +12 -12
- package/dist/esm/calcite-sortable-list.entry.js +6 -6
- package/dist/esm/calcite-split-button.entry.js +7 -5
- package/dist/esm/calcite-stepper_2.entry.js +8 -8
- package/dist/esm/calcite-switch.entry.js +11 -11
- package/dist/esm/calcite-tab_4.entry.js +13 -13
- package/dist/esm/calcite-tile-select_2.entry.js +7 -7
- package/dist/esm/calcite-tile.entry.js +9 -9
- package/dist/esm/calcite-tip_3.entry.js +11 -11
- package/dist/esm/calcite-tooltip_2.entry.js +12 -10
- package/dist/esm/calcite-tree_2.entry.js +131 -84
- package/dist/esm/calcite-value-list_2.entry.js +14 -14
- package/dist/esm/calcite.js +6 -6
- package/dist/esm/{conditionalSlot-5b35c2f6.js → conditionalSlot-e50c9f14.js} +3 -3
- package/dist/esm/{debounce-3b1693a8.js → debounce-6816d02c.js} +1 -1
- package/dist/esm/{dom-4436bd07.js → dom-1ac7b489.js} +29 -4
- package/dist/esm/{filter-8af4eb80.js → filter-1cca1a38.js} +3 -4
- package/dist/esm/{floating-ui-fcf59cab.js → floating-ui-41bd9b35.js} +2 -2
- package/dist/esm/{form-c902fafa.js → form-08544720.js} +3 -3
- package/dist/esm/{guid-cd505852.js → guid-57e25130.js} +1 -1
- package/dist/esm/{index-61da5fbc.js → index-5326c3af.js} +1117 -946
- package/dist/esm/index.js +1 -1
- package/dist/esm/{interactive-6cafa58c.js → interactive-c086cb04.js} +1 -1
- package/dist/esm/{interfaces-401a4071.js → interfaces-ba4e7fb1.js} +1 -1
- package/dist/esm/{key-d6e66ea5.js → key-42705c39.js} +1 -1
- package/dist/esm/{label-6c6aade5.js → label-a209a39c.js} +2 -2
- package/dist/esm/loader.js +6 -6
- package/dist/esm/locale-6840e756.js +374 -0
- package/dist/esm/{math-35a0e454.js → math-e13ce572.js} +1 -1
- package/dist/esm/observers-68c33472.js +46 -0
- package/dist/esm/{openCloseComponent-16d8c6cb.js → openCloseComponent-f9f51e92.js} +1 -1
- package/dist/esm/polyfills/css-shim.js +1 -1
- package/dist/esm/{resources-54732430.js → resources-a65a8ad1.js} +1 -1
- package/dist/esm/{resources-1e0c6832.js → resources-ba2025cb.js} +1 -1
- package/dist/esm/{resources-ce568df4.js → resources-bf3cbf16.js} +1 -1
- package/dist/esm/{resources-cd0c5121.js → resources-c69a833c.js} +3 -23
- package/dist/esm/{resources-6e9455eb.js → resources-d0f37d22.js} +5 -5
- package/dist/esm/{resources-54c26d1b.js → resources-d2b2a177.js} +1 -1
- package/dist/esm/{sortable.esm-dcbb5a29.js → sortable.esm-1ad7cec8.js} +1 -1
- package/dist/esm/{utils-ad1cc5e3.js → utils-f163e9f8.js} +1 -1
- package/dist/extras/docs-json.json +888 -272
- package/dist/index.js +1 -1
- package/dist/loader/cdn.js +1 -1
- package/dist/loader/index.cjs.js +1 -1
- package/dist/loader/index.es2017.js +1 -1
- package/dist/loader/index.js +2 -2
- package/dist/loader/package.json +1 -0
- package/dist/types/components/accordion-item/accordion-item.d.ts +4 -4
- package/dist/types/components/action/action.d.ts +2 -2
- package/dist/types/components/action/assets/action/t9n/index.d.ts +3 -0
- package/dist/types/components/action-bar/action-bar.d.ts +1 -1
- package/dist/types/components/action-bar/assets/action-bar/t9n/index.d.ts +4 -0
- package/dist/types/components/action-group/assets/action-group/t9n/index.d.ts +3 -0
- package/dist/types/components/action-menu/action-menu.d.ts +2 -1
- package/dist/types/components/action-pad/assets/action-pad/t9n/index.d.ts +4 -0
- package/dist/types/components/alert/alert.d.ts +7 -1
- package/dist/types/components/alert/assets/alert/t9n/index.d.ts +3 -0
- package/dist/types/components/block/assets/block/t9n/index.d.ts +6 -0
- package/dist/types/components/block-section/assets/block-section/t9n/index.d.ts +4 -0
- package/dist/types/components/button/assets/button/t9n/index.d.ts +3 -0
- package/dist/types/components/button/button.d.ts +3 -3
- package/dist/types/components/card/assets/card/t9n/index.d.ts +5 -0
- package/dist/types/components/checkbox/checkbox.d.ts +1 -1
- package/dist/types/components/chip/assets/chip/t9n/index.d.ts +3 -0
- package/dist/types/components/chip/chip.d.ts +3 -3
- package/dist/types/components/color-picker/assets/color-picker/t9n/index.d.ts +21 -0
- package/dist/types/components/color-picker/color-picker.d.ts +3 -2
- package/dist/types/components/color-picker-hex-input/color-picker-hex-input.d.ts +3 -2
- package/dist/types/components/combobox/assets/combobox/t9n/index.d.ts +3 -0
- package/dist/types/components/combobox/combobox.d.ts +5 -3
- package/dist/types/components/combobox-item/combobox-item.d.ts +1 -1
- package/dist/types/components/date-picker/assets/date-picker/t9n/index.d.ts +5 -0
- package/dist/types/components/date-picker/date-picker.d.ts +4 -4
- package/dist/types/components/dropdown/dropdown.d.ts +4 -2
- package/dist/types/components/dropdown-item/dropdown-item.d.ts +3 -3
- package/dist/types/components/fab/fab.d.ts +1 -1
- package/dist/types/components/filter/assets/filter/t9n/index.d.ts +4 -0
- package/dist/types/components/flow/flow.d.ts +1 -1
- package/dist/types/components/flow-item/flow-item.d.ts +6 -8
- package/dist/types/components/handle/handle.d.ts +1 -1
- package/dist/types/components/inline-editable/assets/inline-editable/t9n/index.d.ts +5 -0
- package/dist/types/components/inline-editable/inline-editable.d.ts +1 -1
- package/dist/types/components/input/assets/input/t9n/index.d.ts +4 -0
- package/dist/types/components/input/input.d.ts +25 -26
- package/dist/types/components/input-date-picker/input-date-picker.d.ts +45 -40
- package/dist/types/components/input-message/input-message.d.ts +6 -9
- package/dist/types/components/input-number/assets/input-number/t9n/index.d.ts +4 -0
- package/dist/types/components/input-number/input-number.d.ts +9 -11
- package/dist/types/components/input-text/assets/input-text/t9n/index.d.ts +4 -0
- package/dist/types/components/input-text/input-text.d.ts +3 -3
- package/dist/types/components/input-time-picker/input-time-picker.d.ts +31 -28
- package/dist/types/components/label/label.d.ts +10 -10
- package/dist/types/components/link/link.d.ts +8 -8
- package/dist/types/components/modal/assets/modal/t9n/index.d.ts +3 -0
- package/dist/types/components/notice/assets/notice/t9n/index.d.ts +3 -0
- package/dist/types/components/notice/notice.d.ts +1 -2
- package/dist/types/components/pagination/assets/pagination/t9n/index.d.ts +4 -0
- package/dist/types/components/pagination/pagination.d.ts +4 -7
- package/dist/types/components/panel/assets/panel/t9n/index.d.ts +6 -0
- package/dist/types/components/panel/panel.d.ts +6 -8
- package/dist/types/components/pick-list/assets/pick-list/t9n/index.d.ts +3 -0
- package/dist/types/components/pick-list/pick-list.d.ts +1 -1
- package/dist/types/components/pick-list-item/assets/pick-list-item/t9n/index.d.ts +3 -0
- package/dist/types/components/popover/assets/popover/t9n/index.d.ts +3 -0
- package/dist/types/components/popover/popover.d.ts +3 -1
- package/dist/types/components/popover-manager/popover-manager.d.ts +1 -1
- package/dist/types/components/radio-button/radio-button.d.ts +1 -1
- package/dist/types/components/radio-button-group/radio-button-group.d.ts +2 -2
- package/dist/types/components/radio-group/radio-group.d.ts +1 -1
- package/dist/types/components/radio-group-item/radio-group-item.d.ts +7 -7
- package/dist/types/components/rating/assets/rating/t9n/index.d.ts +4 -0
- package/dist/types/components/rating/rating.d.ts +1 -1
- package/dist/types/components/scrim/assets/scrim/t9n/index.d.ts +3 -0
- package/dist/types/components/select/select.d.ts +1 -1
- package/dist/types/components/shell-center-row/shell-center-row.d.ts +1 -1
- package/dist/types/components/shell-panel/assets/shell-panel/t9n/index.d.ts +3 -0
- package/dist/types/components/shell-panel/shell-panel.d.ts +1 -1
- package/dist/types/components/slider/slider.d.ts +7 -9
- package/dist/types/components/sortable-list/sortable-list.d.ts +1 -1
- package/dist/types/components/split-button/split-button.d.ts +6 -4
- package/dist/types/components/stepper-item/stepper-item.d.ts +2 -2
- package/dist/types/components/switch/switch.d.ts +1 -1
- package/dist/types/components/tab/tab.d.ts +1 -1
- package/dist/types/components/tab-title/tab-title.d.ts +4 -4
- package/dist/types/components/tile-select-group/tile-select-group.d.ts +1 -1
- package/dist/types/components/time-picker/assets/time-picker/t9n/index.d.ts +14 -0
- package/dist/types/components/time-picker/time-picker.d.ts +7 -7
- package/dist/types/components/tip/assets/tip/t9n/index.d.ts +3 -0
- package/dist/types/components/tip-manager/assets/tip-manager/t9n/index.d.ts +7 -0
- package/dist/types/components/tip-manager/tip-manager.d.ts +2 -2
- package/dist/types/components/tooltip/tooltip.d.ts +3 -1
- package/dist/types/components/tree/tree.d.ts +1 -1
- package/dist/types/components/tree/utils.d.ts +1 -0
- package/dist/types/components/tree-item/tree-item.d.ts +8 -2
- package/dist/types/components/value-list/assets/value-list/t9n/index.d.ts +7 -0
- package/dist/types/components/value-list/value-list.d.ts +1 -1
- package/dist/types/components.d.ts +341 -330
- package/dist/types/stencil-public-runtime.d.ts +15 -4
- package/dist/types/utils/dom.d.ts +10 -0
- package/dist/types/utils/locale.d.ts +79 -11
- package/dist/types/utils/number.d.ts +3 -5
- package/dist/types/utils/observers.d.ts +5 -1
- package/dist/types/utils/t9n.d.ts +88 -0
- package/dist/types/utils/time.d.ts +1 -1
- package/hydrate/index.d.ts +1 -1
- package/hydrate/index.js +1585 -1357
- package/package.json +21 -18
- package/dist/calcite/calcite.js +0 -131
- package/dist/calcite/p-01084455.entry.js +0 -6
- package/dist/calcite/p-0171edf2.entry.js +0 -6
- package/dist/calcite/p-053beb3b.system.entry.js +0 -6
- package/dist/calcite/p-066e7b95.entry.js +0 -6
- package/dist/calcite/p-078bf287.system.entry.js +0 -6
- package/dist/calcite/p-08582520.system.entry.js +0 -6
- package/dist/calcite/p-0a33ea71.entry.js +0 -6
- package/dist/calcite/p-0e5463f9.entry.js +0 -6
- package/dist/calcite/p-0ecef714.js +0 -6
- package/dist/calcite/p-0f1d9b98.system.entry.js +0 -6
- package/dist/calcite/p-0f4d2a35.system.entry.js +0 -6
- package/dist/calcite/p-0fe5235a.system.js +0 -6
- package/dist/calcite/p-0ff05607.entry.js +0 -6
- package/dist/calcite/p-10eee6b3.system.js +0 -6
- package/dist/calcite/p-128503da.entry.js +0 -6
- package/dist/calcite/p-14ccc0d9.entry.js +0 -6
- package/dist/calcite/p-153c05a0.js +0 -7
- package/dist/calcite/p-178adc2e.system.entry.js +0 -6
- package/dist/calcite/p-195fae84.entry.js +0 -6
- package/dist/calcite/p-1a31ff14.entry.js +0 -6
- package/dist/calcite/p-1ae41816.system.entry.js +0 -6
- package/dist/calcite/p-1b21cf49.entry.js +0 -6
- package/dist/calcite/p-1df9515b.entry.js +0 -6
- package/dist/calcite/p-1f71a1f3.entry.js +0 -6
- package/dist/calcite/p-21df7481.entry.js +0 -6
- package/dist/calcite/p-2286c402.entry.js +0 -6
- package/dist/calcite/p-23829a7c.system.entry.js +0 -6
- package/dist/calcite/p-2ae16ecd.system.js +0 -6
- package/dist/calcite/p-2c1b84b8.system.entry.js +0 -6
- package/dist/calcite/p-2dbafa0e.system.entry.js +0 -6
- package/dist/calcite/p-2ddf20c1.entry.js +0 -6
- package/dist/calcite/p-2e41fabd.system.entry.js +0 -6
- package/dist/calcite/p-2e9f9c77.entry.js +0 -6
- package/dist/calcite/p-2f7e077f.system.entry.js +0 -6
- package/dist/calcite/p-30cc3512.system.js +0 -6
- package/dist/calcite/p-3308bd8c.system.entry.js +0 -6
- package/dist/calcite/p-336737ce.system.entry.js +0 -6
- package/dist/calcite/p-34565e87.system.js +0 -6
- package/dist/calcite/p-37a1e422.system.js +0 -6
- package/dist/calcite/p-37bd9759.system.entry.js +0 -6
- package/dist/calcite/p-3a51faac.system.entry.js +0 -6
- package/dist/calcite/p-3b0ab13f.entry.js +0 -6
- package/dist/calcite/p-3fa648a6.system.js +0 -6
- package/dist/calcite/p-4855edd6.system.entry.js +0 -6
- package/dist/calcite/p-4ae05971.system.entry.js +0 -6
- package/dist/calcite/p-4e650ae3.entry.js +0 -6
- package/dist/calcite/p-4ea81ee8.system.entry.js +0 -6
- package/dist/calcite/p-4f999803.system.entry.js +0 -6
- package/dist/calcite/p-4fab2c01.system.js +0 -7
- package/dist/calcite/p-50352c86.system.js +0 -6
- package/dist/calcite/p-5463e965.entry.js +0 -6
- package/dist/calcite/p-56aa2ee6.system.js +0 -6
- package/dist/calcite/p-5a1d3074.system.js +0 -6
- package/dist/calcite/p-5c0d6300.system.entry.js +0 -6
- package/dist/calcite/p-5c193aaf.entry.js +0 -6
- package/dist/calcite/p-5d681f1f.system.js +0 -6
- package/dist/calcite/p-5e1a4c6a.entry.js +0 -6
- package/dist/calcite/p-5ef02486.system.js +0 -6
- package/dist/calcite/p-603b3f3b.system.js +0 -6
- package/dist/calcite/p-65f981cc.system.js +0 -6
- package/dist/calcite/p-66d6175b.system.entry.js +0 -6
- package/dist/calcite/p-6817a388.system.entry.js +0 -6
- package/dist/calcite/p-712673ee.entry.js +0 -6
- package/dist/calcite/p-7148500f.entry.js +0 -6
- package/dist/calcite/p-715ff3ee.system.js +0 -6
- package/dist/calcite/p-71e932d2.system.js +0 -6
- package/dist/calcite/p-74f40869.entry.js +0 -6
- package/dist/calcite/p-768b7c96.system.entry.js +0 -6
- package/dist/calcite/p-77fadf98.entry.js +0 -6
- package/dist/calcite/p-7932a17d.system.js +0 -12
- package/dist/calcite/p-7aed292d.js +0 -6
- package/dist/calcite/p-7bf8e945.entry.js +0 -6
- package/dist/calcite/p-7d3c6c3c.entry.js +0 -6
- package/dist/calcite/p-7e96bb79.entry.js +0 -6
- package/dist/calcite/p-821266d4.entry.js +0 -6
- package/dist/calcite/p-82283c1d.entry.js +0 -6
- package/dist/calcite/p-830c7c7b.system.js +0 -6
- package/dist/calcite/p-8358768c.system.entry.js +0 -6
- package/dist/calcite/p-882c15d1.system.entry.js +0 -6
- package/dist/calcite/p-8bd8264d.js +0 -6
- package/dist/calcite/p-8ca19c2d.js +0 -6
- package/dist/calcite/p-8d36d6c1.system.entry.js +0 -6
- package/dist/calcite/p-8d996e47.system.entry.js +0 -6
- package/dist/calcite/p-8d9f078a.system.entry.js +0 -6
- package/dist/calcite/p-8e370f1d.js +0 -6
- package/dist/calcite/p-9026d51a.system.entry.js +0 -6
- package/dist/calcite/p-93ce252a.entry.js +0 -6
- package/dist/calcite/p-93fd0e15.entry.js +0 -6
- package/dist/calcite/p-9644ce73.system.entry.js +0 -6
- package/dist/calcite/p-9771d02c.system.entry.js +0 -6
- package/dist/calcite/p-9ad62baa.system.js +0 -6
- package/dist/calcite/p-9b342cc2.system.entry.js +0 -6
- package/dist/calcite/p-9e433f85.entry.js +0 -6
- package/dist/calcite/p-a0e5beec.system.entry.js +0 -6
- package/dist/calcite/p-a4a80ad0.system.entry.js +0 -6
- package/dist/calcite/p-a53f4584.entry.js +0 -6
- package/dist/calcite/p-ab184638.system.js +0 -6
- package/dist/calcite/p-afb01982.system.entry.js +0 -6
- package/dist/calcite/p-b0749063.entry.js +0 -6
- package/dist/calcite/p-b13fc832.system.js +0 -6
- package/dist/calcite/p-b154a711.system.entry.js +0 -6
- package/dist/calcite/p-b19c45da.system.entry.js +0 -6
- package/dist/calcite/p-b45030e3.system.js +0 -6
- package/dist/calcite/p-b723b411.system.js +0 -6
- package/dist/calcite/p-b7b68db9.system.entry.js +0 -6
- package/dist/calcite/p-ba97422d.system.entry.js +0 -6
- package/dist/calcite/p-bb928b37.system.entry.js +0 -6
- package/dist/calcite/p-bed458d9.system.js +0 -6
- package/dist/calcite/p-bef6e5cc.system.entry.js +0 -6
- package/dist/calcite/p-bf6a1418.system.js +0 -6
- package/dist/calcite/p-bf992e7a.entry.js +0 -6
- package/dist/calcite/p-c1ea949b.entry.js +0 -6
- package/dist/calcite/p-c2044303.system.entry.js +0 -6
- package/dist/calcite/p-c2ab7bb3.entry.js +0 -6
- package/dist/calcite/p-c2afef79.entry.js +0 -6
- package/dist/calcite/p-c58167a4.entry.js +0 -6
- package/dist/calcite/p-c586e438.system.entry.js +0 -6
- package/dist/calcite/p-c6747d09.system.entry.js +0 -6
- package/dist/calcite/p-c84e0441.entry.js +0 -6
- package/dist/calcite/p-c8e901fa.system.entry.js +0 -6
- package/dist/calcite/p-c8ed9108.system.js +0 -6
- package/dist/calcite/p-c907abab.entry.js +0 -6
- package/dist/calcite/p-c9351ade.system.entry.js +0 -6
- package/dist/calcite/p-c9a7c2c2.system.entry.js +0 -6
- package/dist/calcite/p-ce7ed50c.entry.js +0 -6
- package/dist/calcite/p-d1dda926.system.entry.js +0 -6
- package/dist/calcite/p-d2357828.system.js +0 -6
- package/dist/calcite/p-d2f50dc3.entry.js +0 -6
- package/dist/calcite/p-d7972096.entry.js +0 -6
- package/dist/calcite/p-d8309ad2.entry.js +0 -6
- package/dist/calcite/p-da51f48c.system.js +0 -6
- package/dist/calcite/p-e0c6fe94.entry.js +0 -6
- package/dist/calcite/p-e1c06b29.system.js +0 -6
- package/dist/calcite/p-e3709f3d.system.entry.js +0 -6
- package/dist/calcite/p-e3e7945b.entry.js +0 -6
- package/dist/calcite/p-e5b27fdb.system.entry.js +0 -6
- package/dist/calcite/p-e66cb253.entry.js +0 -6
- package/dist/calcite/p-eafab2ea.system.entry.js +0 -6
- package/dist/calcite/p-eb07d147.system.entry.js +0 -6
- package/dist/calcite/p-ec392994.system.entry.js +0 -6
- package/dist/calcite/p-eca10afe.entry.js +0 -6
- package/dist/calcite/p-ed27f58a.system.entry.js +0 -6
- package/dist/calcite/p-eda06163.entry.js +0 -6
- package/dist/calcite/p-f1bc4c1d.system.entry.js +0 -6
- package/dist/calcite/p-f2da8856.entry.js +0 -6
- package/dist/calcite/p-f4371c35.entry.js +0 -6
- package/dist/calcite/p-f43a332b.system.entry.js +0 -6
- package/dist/calcite/p-f5c1ecd3.entry.js +0 -6
- package/dist/calcite/p-f5c909b7.entry.js +0 -6
- package/dist/calcite/p-f7865770.system.entry.js +0 -6
- package/dist/calcite/p-f814cb24.entry.js +0 -6
- package/dist/calcite/p-f8697a29.system.entry.js +0 -6
- package/dist/calcite/p-f9723480.entry.js +0 -6
- package/dist/calcite/p-fb075d49.system.entry.js +0 -6
- package/dist/calcite/p-fb93c365.entry.js +0 -6
- package/dist/cjs/globalAttributes-39b0e7d7.js +0 -335
- package/dist/cjs/observers-03ac940c.js +0 -27
- package/dist/components/globalAttributes.js +0 -324
- package/dist/custom-elements/index.d.ts +0 -597
- package/dist/custom-elements/index.js +0 -28879
- package/dist/esm/globalAttributes-6affbda6.js +0 -324
- package/dist/esm/observers-5010a9dd.js +0 -25
- package/dist/esm-es5/ExpandToggle-b94e1fe2.js +0 -6
- package/dist/esm-es5/Heading-9398c9e6.js +0 -6
- package/dist/esm-es5/app-globals-1f65a164.js +0 -6
- package/dist/esm-es5/array-3ac5d2ad.js +0 -6
- package/dist/esm-es5/calcite-accordion_2.entry.js +0 -6
- package/dist/esm-es5/calcite-action-bar.entry.js +0 -6
- package/dist/esm-es5/calcite-action-group.entry.js +0 -6
- package/dist/esm-es5/calcite-action-menu.entry.js +0 -6
- package/dist/esm-es5/calcite-action-pad.entry.js +0 -6
- package/dist/esm-es5/calcite-action.entry.js +0 -6
- package/dist/esm-es5/calcite-alert.entry.js +0 -6
- package/dist/esm-es5/calcite-avatar.entry.js +0 -6
- package/dist/esm-es5/calcite-block_2.entry.js +0 -6
- package/dist/esm-es5/calcite-button.entry.js +0 -6
- package/dist/esm-es5/calcite-card.entry.js +0 -6
- package/dist/esm-es5/calcite-checkbox.entry.js +0 -6
- package/dist/esm-es5/calcite-chip.entry.js +0 -6
- package/dist/esm-es5/calcite-color-picker_3.entry.js +0 -6
- package/dist/esm-es5/calcite-combobox_3.entry.js +0 -6
- package/dist/esm-es5/calcite-date-picker_4.entry.js +0 -6
- package/dist/esm-es5/calcite-dropdown_3.entry.js +0 -6
- package/dist/esm-es5/calcite-fab.entry.js +0 -6
- package/dist/esm-es5/calcite-filter.entry.js +0 -6
- package/dist/esm-es5/calcite-flow-item.entry.js +0 -6
- package/dist/esm-es5/calcite-flow.entry.js +0 -6
- package/dist/esm-es5/calcite-graph_2.entry.js +0 -6
- package/dist/esm-es5/calcite-handle.entry.js +0 -6
- package/dist/esm-es5/calcite-icon.entry.js +0 -6
- package/dist/esm-es5/calcite-inline-editable.entry.js +0 -6
- package/dist/esm-es5/calcite-input-date-picker.entry.js +0 -6
- package/dist/esm-es5/calcite-input-message.entry.js +0 -6
- package/dist/esm-es5/calcite-input-number.entry.js +0 -6
- package/dist/esm-es5/calcite-input-text.entry.js +0 -6
- package/dist/esm-es5/calcite-input-time-picker_2.entry.js +0 -6
- package/dist/esm-es5/calcite-input.entry.js +0 -6
- package/dist/esm-es5/calcite-label.entry.js +0 -6
- package/dist/esm-es5/calcite-link.entry.js +0 -6
- package/dist/esm-es5/calcite-list_3.entry.js +0 -6
- package/dist/esm-es5/calcite-loader.entry.js +0 -6
- package/dist/esm-es5/calcite-modal.entry.js +0 -6
- package/dist/esm-es5/calcite-notice.entry.js +0 -6
- package/dist/esm-es5/calcite-option_3.entry.js +0 -6
- package/dist/esm-es5/calcite-pagination.entry.js +0 -6
- package/dist/esm-es5/calcite-panel.entry.js +0 -6
- package/dist/esm-es5/calcite-pick-list_3.entry.js +0 -6
- package/dist/esm-es5/calcite-popover_2.entry.js +0 -6
- package/dist/esm-es5/calcite-progress.entry.js +0 -6
- package/dist/esm-es5/calcite-radio-button-group.entry.js +0 -6
- package/dist/esm-es5/calcite-radio-button.entry.js +0 -6
- package/dist/esm-es5/calcite-radio-group_2.entry.js +0 -6
- package/dist/esm-es5/calcite-rating.entry.js +0 -6
- package/dist/esm-es5/calcite-scrim.entry.js +0 -6
- package/dist/esm-es5/calcite-shell_3.entry.js +0 -6
- package/dist/esm-es5/calcite-sortable-list.entry.js +0 -6
- package/dist/esm-es5/calcite-split-button.entry.js +0 -6
- package/dist/esm-es5/calcite-stepper_2.entry.js +0 -6
- package/dist/esm-es5/calcite-switch.entry.js +0 -6
- package/dist/esm-es5/calcite-tab_4.entry.js +0 -6
- package/dist/esm-es5/calcite-tile-select_2.entry.js +0 -6
- package/dist/esm-es5/calcite-tile.entry.js +0 -6
- package/dist/esm-es5/calcite-tip_3.entry.js +0 -6
- package/dist/esm-es5/calcite-tooltip_2.entry.js +0 -6
- package/dist/esm-es5/calcite-tree_2.entry.js +0 -6
- package/dist/esm-es5/calcite-value-list_2.entry.js +0 -6
- package/dist/esm-es5/calcite.js +0 -6
- package/dist/esm-es5/conditionalSlot-5b35c2f6.js +0 -6
- package/dist/esm-es5/debounce-3b1693a8.js +0 -6
- package/dist/esm-es5/dom-4436bd07.js +0 -6
- package/dist/esm-es5/filter-8af4eb80.js +0 -6
- package/dist/esm-es5/floating-ui-fcf59cab.js +0 -6
- package/dist/esm-es5/form-c902fafa.js +0 -6
- package/dist/esm-es5/globalAttributes-6affbda6.js +0 -6
- package/dist/esm-es5/guid-cd505852.js +0 -6
- package/dist/esm-es5/index-61da5fbc.js +0 -7
- package/dist/esm-es5/index.js +0 -5
- package/dist/esm-es5/interactive-6cafa58c.js +0 -6
- package/dist/esm-es5/interfaces-401a4071.js +0 -6
- package/dist/esm-es5/key-d6e66ea5.js +0 -6
- package/dist/esm-es5/label-6c6aade5.js +0 -6
- package/dist/esm-es5/loader.js +0 -6
- package/dist/esm-es5/math-35a0e454.js +0 -6
- package/dist/esm-es5/observers-5010a9dd.js +0 -6
- package/dist/esm-es5/openCloseComponent-16d8c6cb.js +0 -6
- package/dist/esm-es5/resources-1e0c6832.js +0 -6
- package/dist/esm-es5/resources-54732430.js +0 -6
- package/dist/esm-es5/resources-54c26d1b.js +0 -6
- package/dist/esm-es5/resources-6e9455eb.js +0 -6
- package/dist/esm-es5/resources-cd0c5121.js +0 -6
- package/dist/esm-es5/resources-ce568df4.js +0 -6
- package/dist/esm-es5/sortable.esm-dcbb5a29.js +0 -12
- package/dist/esm-es5/utils-ad1cc5e3.js +0 -6
|
@@ -0,0 +1,1043 @@
|
|
|
1
|
+
import { newE2EPage } from "@stencil/core/testing";
|
|
2
|
+
import { renders, hidden, accessible, defaults, labelable, floatingUIOwner, formAssociated, disabled } from "../../tests/commonTests";
|
|
3
|
+
import { html } from "../../../support/formatting";
|
|
4
|
+
import { TEXT, CSS } from "./resources";
|
|
5
|
+
describe("calcite-combobox", () => {
|
|
6
|
+
it("renders", async () => renders("calcite-combobox", { display: "block" }));
|
|
7
|
+
it("defaults", async () => defaults("calcite-combobox", [
|
|
8
|
+
{
|
|
9
|
+
propertyName: "overlayPositioning",
|
|
10
|
+
defaultValue: "absolute"
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
propertyName: "intlRemoveTag",
|
|
14
|
+
defaultValue: TEXT.removeTag
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
propertyName: "flipPlacements",
|
|
18
|
+
defaultValue: undefined
|
|
19
|
+
}
|
|
20
|
+
]));
|
|
21
|
+
it("honors hidden attribute", async () => hidden("calcite-combobox"));
|
|
22
|
+
it("is accessible", async () => accessible(`
|
|
23
|
+
<calcite-combobox label="Trees" value="Trees">
|
|
24
|
+
<calcite-combobox-item value="Pine" text-label="Pine"></calcite-combobox-item>
|
|
25
|
+
</calcite-combobox>
|
|
26
|
+
`));
|
|
27
|
+
it("is accessible with item group", async () => accessible(`
|
|
28
|
+
<calcite-combobox label="Trees" value="Trees">
|
|
29
|
+
<calcite-combobox-item-group label="Conifers">
|
|
30
|
+
<calcite-combobox-item value="Pine" text-label="Pine"></calcite-combobox-item>
|
|
31
|
+
</calcite-combobox-item-group>
|
|
32
|
+
</calcite-combobox>
|
|
33
|
+
`));
|
|
34
|
+
it("is accessible with active selected items (deprecated)", async () => accessible(`
|
|
35
|
+
<calcite-combobox active label="Trees" value="Trees">
|
|
36
|
+
<calcite-combobox-item-group label="Conifers">
|
|
37
|
+
<calcite-combobox-item selected value="Pine" text-label="Pine"></calcite-combobox-item>
|
|
38
|
+
<calcite-combobox-item selected value="Spruce" text-label="Spruce"></calcite-combobox-item>
|
|
39
|
+
</calcite-combobox-item-group>
|
|
40
|
+
</calcite-combobox>
|
|
41
|
+
`));
|
|
42
|
+
it("is accessible with open selected items", async () => accessible(`
|
|
43
|
+
<calcite-combobox open label="Trees" value="Trees">
|
|
44
|
+
<calcite-combobox-item-group label="Conifers">
|
|
45
|
+
<calcite-combobox-item selected value="Pine" text-label="Pine"></calcite-combobox-item>
|
|
46
|
+
<calcite-combobox-item selected value="Spruce" text-label="Spruce"></calcite-combobox-item>
|
|
47
|
+
</calcite-combobox-item-group>
|
|
48
|
+
</calcite-combobox>
|
|
49
|
+
`));
|
|
50
|
+
it("is labelable", async () => labelable("calcite-combobox"));
|
|
51
|
+
it("can be disabled", () => disabled("calcite-combobox"));
|
|
52
|
+
it("filtering does not match property with value of undefined", async () => {
|
|
53
|
+
const page = await newE2EPage({
|
|
54
|
+
html: html `
|
|
55
|
+
<calcite-combobox id="myCombobox">
|
|
56
|
+
<calcite-combobox-item value="Raising Arizona" text-label="Raising Arizona"></calcite-combobox-item>
|
|
57
|
+
<calcite-combobox-item value="Miller's Crossing" text-label="Miller's Crossing"></calcite-combobox-item>
|
|
58
|
+
<calcite-combobox-item value="The Hudsucker Proxy" text-label="The Hudsucker Proxy"></calcite-combobox-item>
|
|
59
|
+
<calcite-combobox-item value="Inside Llewyn Davis" text-label="Inside Llewyn Davis"></calcite-combobox-item>
|
|
60
|
+
</calcite-combobox>
|
|
61
|
+
`
|
|
62
|
+
});
|
|
63
|
+
const combobox = await page.find("calcite-combobox");
|
|
64
|
+
const input = await page.find("calcite-combobox >>> input");
|
|
65
|
+
const items = await page.findAll("calcite-combobox-item");
|
|
66
|
+
await combobox.click();
|
|
67
|
+
await page.waitForChanges();
|
|
68
|
+
await input.type("undefined");
|
|
69
|
+
await page.waitForChanges();
|
|
70
|
+
expect(await items[0].isVisible()).toBe(false);
|
|
71
|
+
expect(await items[1].isVisible()).toBe(false);
|
|
72
|
+
expect(await items[2].isVisible()).toBe(false);
|
|
73
|
+
expect(await items[3].isVisible()).toBe(false);
|
|
74
|
+
});
|
|
75
|
+
it("should filter the items in listbox when typing into the input", async () => {
|
|
76
|
+
const page = await newE2EPage({
|
|
77
|
+
html: html `
|
|
78
|
+
<calcite-combobox id="myCombobox">
|
|
79
|
+
<calcite-combobox-item value="Raising Arizona" text-label="Raising Arizona"></calcite-combobox-item>
|
|
80
|
+
<calcite-combobox-item value="Miller's Crossing" text-label="Miller's Crossing"></calcite-combobox-item>
|
|
81
|
+
<calcite-combobox-item value="The Hudsucker Proxy" text-label="The Hudsucker Proxy"></calcite-combobox-item>
|
|
82
|
+
<calcite-combobox-item value="Inside Llewyn Davis" text-label="Inside Llewyn Davis"></calcite-combobox-item>
|
|
83
|
+
</calcite-combobox>
|
|
84
|
+
`
|
|
85
|
+
});
|
|
86
|
+
const combobox = await page.find("calcite-combobox");
|
|
87
|
+
const input = await page.find("calcite-combobox >>> input");
|
|
88
|
+
const items = await page.findAll("calcite-combobox-item");
|
|
89
|
+
const openEvent = await combobox.spyOnEvent("calciteComboboxOpen");
|
|
90
|
+
const filterEventSpy = await combobox.spyOnEvent("calciteComboboxFilterChange");
|
|
91
|
+
await combobox.click();
|
|
92
|
+
await page.waitForChanges();
|
|
93
|
+
expect(openEvent).toHaveReceivedEventTimes(1);
|
|
94
|
+
await input.press("s");
|
|
95
|
+
await page.waitForChanges();
|
|
96
|
+
expect(filterEventSpy).toHaveReceivedEventTimes(1);
|
|
97
|
+
expect(await items[0].isVisible()).toBe(true);
|
|
98
|
+
expect(await items[1].isVisible()).toBe(true);
|
|
99
|
+
expect(await items[2].isVisible()).toBe(true);
|
|
100
|
+
expect(await items[3].isVisible()).toBe(true);
|
|
101
|
+
expect(await filterEventSpy.lastEvent.detail.visibleItems.length).toBe(4);
|
|
102
|
+
await input.press("i");
|
|
103
|
+
await page.waitForChanges();
|
|
104
|
+
expect(filterEventSpy).toHaveReceivedEventTimes(2);
|
|
105
|
+
expect(await items[0].isVisible()).toBe(true);
|
|
106
|
+
expect(await items[1].isVisible()).toBe(true);
|
|
107
|
+
expect(await items[2].isVisible()).toBe(false);
|
|
108
|
+
expect(await items[3].isVisible()).toBe(true);
|
|
109
|
+
expect(await filterEventSpy.lastEvent.detail.visibleItems.length).toBe(3);
|
|
110
|
+
await input.press("n");
|
|
111
|
+
await page.waitForChanges();
|
|
112
|
+
expect(filterEventSpy).toHaveReceivedEventTimes(3);
|
|
113
|
+
expect(await items[0].isVisible()).toBe(true);
|
|
114
|
+
expect(await items[1].isVisible()).toBe(true);
|
|
115
|
+
expect(await items[2].isVisible()).toBe(false);
|
|
116
|
+
expect(await items[3].isVisible()).toBe(false);
|
|
117
|
+
expect(await filterEventSpy.lastEvent.detail.visibleItems.length).toBe(2);
|
|
118
|
+
});
|
|
119
|
+
it("should control max items displayed", async () => {
|
|
120
|
+
const page = await newE2EPage();
|
|
121
|
+
const maxItems = 7;
|
|
122
|
+
await page.setContent(`
|
|
123
|
+
<calcite-combobox max-items="${maxItems}">
|
|
124
|
+
<calcite-combobox-item id="item-0" value="item-0" text-label="item-0">
|
|
125
|
+
<calcite-combobox-item id="item-1" value="item-1" text-label="item-1"></calcite-combobox-item>
|
|
126
|
+
<calcite-combobox-item id="item-2" value="item-2" text-label="item-2"></calcite-combobox-item>
|
|
127
|
+
<calcite-combobox-item id="item-3" value="item-3" text-label="item-3"></calcite-combobox-item>
|
|
128
|
+
<calcite-combobox-item id="item-4" value="item-4" text-label="item-4"></calcite-combobox-item>
|
|
129
|
+
<calcite-combobox-item id="item-5" value="item-5" text-label="item-5"></calcite-combobox-item>
|
|
130
|
+
</calcite-combobox-item>
|
|
131
|
+
<calcite-combobox-item id="item-6" value="item-6" text-label="item-6">
|
|
132
|
+
<calcite-combobox-item id="item-7" value="item-7" text-label="item-7"></calcite-combobox-item>
|
|
133
|
+
<calcite-combobox-item id="item-8" value="item-8" text-label="item-8"></calcite-combobox-item>
|
|
134
|
+
<calcite-combobox-item id="item-9" value="item-9" text-label="item-9"></calcite-combobox-item>
|
|
135
|
+
<calcite-combobox-item id="item-10" value="item-10" text-label="item-10"></calcite-combobox-item>
|
|
136
|
+
</calcite-combobox-item>
|
|
137
|
+
</calcite-combobox>
|
|
138
|
+
`);
|
|
139
|
+
await page.waitForChanges();
|
|
140
|
+
const element = await page.find("calcite-combobox");
|
|
141
|
+
await element.click();
|
|
142
|
+
await page.waitForChanges();
|
|
143
|
+
const items = await page.findAll("calcite-combobox-item, calcite-combobox-item-group");
|
|
144
|
+
for (let i = 0; i < items.length; i++) {
|
|
145
|
+
expect(await items[i].isIntersectingViewport()).toBe(i < maxItems);
|
|
146
|
+
}
|
|
147
|
+
});
|
|
148
|
+
it("should control max items displayed with group", async () => {
|
|
149
|
+
const page = await newE2EPage();
|
|
150
|
+
const maxItems = 8;
|
|
151
|
+
await page.setContent(`
|
|
152
|
+
<calcite-combobox max-items="${maxItems}">
|
|
153
|
+
<calcite-combobox-item id="item-0" value="item-0" text-label="item-0">
|
|
154
|
+
<calcite-combobox-item id="item-1" value="item-1" text-label="item-1"></calcite-combobox-item>
|
|
155
|
+
<calcite-combobox-item id="item-2" value="item-2" text-label="item-2"></calcite-combobox-item>
|
|
156
|
+
<calcite-combobox-item id="item-3" value="item-3" text-label="item-3"></calcite-combobox-item>
|
|
157
|
+
<calcite-combobox-item id="item-4" value="item-4" text-label="item-4"></calcite-combobox-item>
|
|
158
|
+
<calcite-combobox-item id="item-5" value="item-5" text-label="item-5"></calcite-combobox-item>
|
|
159
|
+
</calcite-combobox-item>
|
|
160
|
+
<calcite-combobox-item-group id="item-6" label="item-6">
|
|
161
|
+
<calcite-combobox-item id="item-7" value="item-7" text-label="item-7"></calcite-combobox-item>
|
|
162
|
+
<calcite-combobox-item id="item-8" value="item-8" text-label="item-8"></calcite-combobox-item>
|
|
163
|
+
<calcite-combobox-item id="item-9" value="item-9" text-label="item-9"></calcite-combobox-item>
|
|
164
|
+
<calcite-combobox-item id="item-10" value="item-10" text-label="item-10"></calcite-combobox-item>
|
|
165
|
+
</calcite-combobox-item-group>
|
|
166
|
+
</calcite-combobox>
|
|
167
|
+
`);
|
|
168
|
+
await page.waitForChanges();
|
|
169
|
+
const element = await page.find("calcite-combobox");
|
|
170
|
+
await element.click();
|
|
171
|
+
await page.waitForChanges();
|
|
172
|
+
const items = await page.findAll("calcite-combobox-item, calcite-combobox-item-group");
|
|
173
|
+
for (let i = 0; i < items.length; i++) {
|
|
174
|
+
expect(await items[i].isIntersectingViewport()).toBe(i < maxItems);
|
|
175
|
+
}
|
|
176
|
+
});
|
|
177
|
+
it("should show correct max items when nested", async () => {
|
|
178
|
+
const page = await newE2EPage();
|
|
179
|
+
const maxItems = 6;
|
|
180
|
+
await page.setContent(`
|
|
181
|
+
<calcite-combobox label="custom values" allow-custom-values placeholder="placeholder" max-items="6">
|
|
182
|
+
<calcite-combobox-item value="Trees" text-label="Trees" selected>
|
|
183
|
+
<calcite-combobox-item value="Pine" text-label="Pine">
|
|
184
|
+
<calcite-combobox-item value="Pine Nested" text-label="Pine Nested"></calcite-combobox-item>
|
|
185
|
+
</calcite-combobox-item>
|
|
186
|
+
<calcite-combobox-item value="Sequoia" disabled text-label="Sequoia"></calcite-combobox-item>
|
|
187
|
+
<calcite-combobox-item value="Douglas Fir" text-label="Douglas Fir"></calcite-combobox-item>
|
|
188
|
+
</calcite-combobox-item>
|
|
189
|
+
<calcite-combobox-item value="Flowers" text-label="Flowers">
|
|
190
|
+
<calcite-combobox-item value="Daffodil" text-label="Daffodil"></calcite-combobox-item>
|
|
191
|
+
<calcite-combobox-item value="Black Eyed Susan" text-label="Black Eyed Susan"></calcite-combobox-item>
|
|
192
|
+
<calcite-combobox-item value="Nasturtium" text-label="Nasturtium"></calcite-combobox-item>
|
|
193
|
+
</calcite-combobox-item>
|
|
194
|
+
<calcite-combobox-item value="Animals" text-label="Animals">
|
|
195
|
+
<calcite-combobox-item value="Birds" text-label="Birds"></calcite-combobox-item>
|
|
196
|
+
<calcite-combobox-item value="Reptiles" text-label="Reptiles"></calcite-combobox-item>
|
|
197
|
+
<calcite-combobox-item value="Amphibians" text-label="Amphibians"></calcite-combobox-item>
|
|
198
|
+
</calcite-combobox-item>
|
|
199
|
+
<calcite-combobox-item value="Rocks" text-label="Rocks"></calcite-combobox-item>
|
|
200
|
+
<calcite-combobox-item value="Insects" text-label="Insects"></calcite-combobox-item>
|
|
201
|
+
<calcite-combobox-item value="Rivers" text-label="Rivers"></calcite-combobox-item>
|
|
202
|
+
</calcite-combobox>
|
|
203
|
+
`);
|
|
204
|
+
await page.waitForChanges();
|
|
205
|
+
const element = await page.find("calcite-combobox");
|
|
206
|
+
await element.click();
|
|
207
|
+
await page.waitForChanges();
|
|
208
|
+
const items = await page.findAll("calcite-combobox-item, calcite-combobox-item-group");
|
|
209
|
+
for (let i = 0; i < items.length; i++) {
|
|
210
|
+
expect(await items[i].isIntersectingViewport()).toBe(i < maxItems);
|
|
211
|
+
}
|
|
212
|
+
});
|
|
213
|
+
it("should show correct max items after selection", async () => {
|
|
214
|
+
const page = await newE2EPage();
|
|
215
|
+
const maxItems = 6;
|
|
216
|
+
await page.setContent(html `
|
|
217
|
+
<calcite-combobox label="custom values" allow-custom-values placeholder="placeholder" max-items="6">
|
|
218
|
+
<calcite-combobox-item value="Sequoia" disabled text-label="Sequoia"></calcite-combobox-item>
|
|
219
|
+
<calcite-combobox-item value="Douglas Fir" text-label="Douglas Fir"></calcite-combobox-item>
|
|
220
|
+
<calcite-combobox-item value="Daffodil" text-label="Daffodil"></calcite-combobox-item>
|
|
221
|
+
<calcite-combobox-item value="Black Eyed Susan" text-label="Black Eyed Susan"></calcite-combobox-item>
|
|
222
|
+
<calcite-combobox-item value="Nasturtium" text-label="Nasturtium"></calcite-combobox-item>
|
|
223
|
+
<calcite-combobox-item value="Birds" text-label="Birds"></calcite-combobox-item>
|
|
224
|
+
<calcite-combobox-item value="Reptiles" text-label="Reptiles"></calcite-combobox-item>
|
|
225
|
+
<calcite-combobox-item value="Amphibians" text-label="Amphibians"></calcite-combobox-item>
|
|
226
|
+
<calcite-combobox-item value="Rocks" text-label="Rocks"></calcite-combobox-item>
|
|
227
|
+
<calcite-combobox-item value="Insects" text-label="Insects"></calcite-combobox-item>
|
|
228
|
+
<calcite-combobox-item value="Rivers" text-label="Rivers"></calcite-combobox-item>
|
|
229
|
+
</calcite-combobox>
|
|
230
|
+
`);
|
|
231
|
+
const element = await page.find("calcite-combobox");
|
|
232
|
+
const openEvent = page.waitForEvent("calciteComboboxOpen");
|
|
233
|
+
await element.click();
|
|
234
|
+
await openEvent;
|
|
235
|
+
await element.press("p");
|
|
236
|
+
await element.press("i");
|
|
237
|
+
await page.waitForChanges();
|
|
238
|
+
await element.press("Enter");
|
|
239
|
+
await page.waitForChanges();
|
|
240
|
+
const items = await page.findAll("calcite-combobox-item, calcite-combobox-item-group");
|
|
241
|
+
for (let i = 0; i < items.length; i++) {
|
|
242
|
+
expect(await items[i].isIntersectingViewport()).toBe(i < maxItems);
|
|
243
|
+
}
|
|
244
|
+
});
|
|
245
|
+
describe("item selection", () => {
|
|
246
|
+
it("should add/remove item to the selected items when an item is clicked", async () => {
|
|
247
|
+
const page = await newE2EPage();
|
|
248
|
+
await page.setContent(html `
|
|
249
|
+
<calcite-combobox>
|
|
250
|
+
<calcite-combobox-item value="one" text-label="one"></calcite-combobox-item>
|
|
251
|
+
<calcite-combobox-item value="two" text-label="two"></calcite-combobox-item>
|
|
252
|
+
</calcite-combobox>
|
|
253
|
+
`);
|
|
254
|
+
const cbox = await page.find("calcite-combobox");
|
|
255
|
+
const openEvent = page.waitForEvent("calciteComboboxOpen");
|
|
256
|
+
await cbox.click();
|
|
257
|
+
await openEvent;
|
|
258
|
+
let item1 = await cbox.find("calcite-combobox-item[value=one]");
|
|
259
|
+
await item1.click();
|
|
260
|
+
let chip = await page.find("calcite-combobox >>> calcite-chip");
|
|
261
|
+
expect(chip).toBeDefined();
|
|
262
|
+
item1 = await cbox.find("calcite-combobox-item[value=one]");
|
|
263
|
+
await item1.click();
|
|
264
|
+
await page.waitForChanges();
|
|
265
|
+
chip = await page.find("calcite-combobox >>> calcite-chip");
|
|
266
|
+
expect(chip).toBeNull();
|
|
267
|
+
});
|
|
268
|
+
it("should select parent in ancestor selection mode", async () => {
|
|
269
|
+
const page = await newE2EPage();
|
|
270
|
+
await page.setContent(html `
|
|
271
|
+
<calcite-combobox selection-mode="ancestors">
|
|
272
|
+
<calcite-combobox-item value="one" text-label="one">
|
|
273
|
+
<calcite-combobox-item value="child1" text-label="child1"></calcite-combobox-item>
|
|
274
|
+
</calcite-combobox-item>
|
|
275
|
+
</calcite-combobox>
|
|
276
|
+
`);
|
|
277
|
+
const cbox = await page.find("calcite-combobox");
|
|
278
|
+
const openEvent = page.waitForEvent("calciteComboboxOpen");
|
|
279
|
+
await cbox.click();
|
|
280
|
+
await openEvent;
|
|
281
|
+
const item1 = await cbox.find("calcite-combobox-item[value=child1]");
|
|
282
|
+
await item1.click();
|
|
283
|
+
const parent = await cbox.find("calcite-combobox-item[value=one]");
|
|
284
|
+
expect(parent).toBeDefined();
|
|
285
|
+
expect(parent).toHaveAttribute("selected");
|
|
286
|
+
const chips = await page.findAll("calcite-combobox >>> calcite-chip");
|
|
287
|
+
expect(chips.length).toBe(1);
|
|
288
|
+
});
|
|
289
|
+
it("should clear children in ancestor selection mode", async () => {
|
|
290
|
+
const page = await newE2EPage();
|
|
291
|
+
await page.setContent(html `
|
|
292
|
+
<calcite-combobox selection-mode="ancestors">
|
|
293
|
+
<calcite-combobox-item value="parent" text-label="parent">
|
|
294
|
+
<calcite-combobox-item value="child1" text-label="child1"></calcite-combobox-item>
|
|
295
|
+
<calcite-combobox-item value="child2" text-label="child2"></calcite-combobox-item>
|
|
296
|
+
</calcite-combobox-item>
|
|
297
|
+
</calcite-combobox>
|
|
298
|
+
`);
|
|
299
|
+
const cbox = await page.find("calcite-combobox");
|
|
300
|
+
const openEvent = page.waitForEvent("calciteComboboxOpen");
|
|
301
|
+
await cbox.click();
|
|
302
|
+
await openEvent;
|
|
303
|
+
const parent = await cbox.find("calcite-combobox-item[value=parent]");
|
|
304
|
+
const parentItem = await cbox.find("calcite-combobox-item[value=parent] >>> li");
|
|
305
|
+
const item1 = await cbox.find("calcite-combobox-item[value=child1]");
|
|
306
|
+
const item2 = await cbox.find("calcite-combobox-item[value=child2]");
|
|
307
|
+
await item1.click();
|
|
308
|
+
await item2.click();
|
|
309
|
+
await page.waitForChanges();
|
|
310
|
+
let chips = await page.findAll("calcite-combobox >>> calcite-chip");
|
|
311
|
+
expect(chips.length).toBe(2);
|
|
312
|
+
expect(parent).toHaveAttribute("selected");
|
|
313
|
+
await parentItem.click();
|
|
314
|
+
chips = await page.findAll("calcite-combobox >>> calcite-chip");
|
|
315
|
+
expect(chips.length).toBe(0);
|
|
316
|
+
expect(parent).not.toHaveAttribute("selected");
|
|
317
|
+
expect(item1).not.toHaveAttribute("selected");
|
|
318
|
+
expect(item2).not.toHaveAttribute("selected");
|
|
319
|
+
});
|
|
320
|
+
it("clicking a chip should remove the selected item", async () => {
|
|
321
|
+
const page = await newE2EPage();
|
|
322
|
+
await page.setContent(html `
|
|
323
|
+
<calcite-combobox>
|
|
324
|
+
<calcite-combobox-item value="one" text-label="one"></calcite-combobox-item>
|
|
325
|
+
<calcite-combobox-item value="two" text-label="two"></calcite-combobox-item>
|
|
326
|
+
</calcite-combobox>
|
|
327
|
+
`);
|
|
328
|
+
const cbox = await page.find("calcite-combobox");
|
|
329
|
+
const openEvent = page.waitForEvent("calciteComboboxOpen");
|
|
330
|
+
await cbox.click();
|
|
331
|
+
await openEvent;
|
|
332
|
+
const item1 = await cbox.find("calcite-combobox-item[value=one]");
|
|
333
|
+
await item1.click();
|
|
334
|
+
let chip = await page.find("calcite-combobox >>> calcite-chip");
|
|
335
|
+
expect(chip).not.toBeNull();
|
|
336
|
+
expect(await cbox.getProperty("active")).toBe(true);
|
|
337
|
+
expect(await cbox.getProperty("open")).toBe(true);
|
|
338
|
+
await page.evaluate(() => {
|
|
339
|
+
const combobox = document.querySelector("calcite-combobox");
|
|
340
|
+
const chip = combobox.shadowRoot.querySelector("calcite-chip");
|
|
341
|
+
const closeButton = chip.shadowRoot.querySelector(".close");
|
|
342
|
+
closeButton.click();
|
|
343
|
+
});
|
|
344
|
+
await page.waitForChanges();
|
|
345
|
+
chip = await page.find("calcite-combobox >>> calcite-chip");
|
|
346
|
+
expect(chip).toBeNull();
|
|
347
|
+
expect(await cbox.getProperty("active")).toBe(false);
|
|
348
|
+
expect(await cbox.getProperty("open")).toBe(false);
|
|
349
|
+
});
|
|
350
|
+
it("should honor calciteComboboxChipDismiss", async () => {
|
|
351
|
+
const page = await newE2EPage({
|
|
352
|
+
html: `<calcite-combobox>
|
|
353
|
+
<calcite-combobox-item value="one" selected text-label="one"></calcite-combobox-item>
|
|
354
|
+
</calcite-combobox>`
|
|
355
|
+
});
|
|
356
|
+
const eventSpy = await page.spyOnEvent("calciteComboboxChipDismiss", "window");
|
|
357
|
+
const chip = await page.find("calcite-combobox >>> calcite-chip");
|
|
358
|
+
chip.triggerEvent("calciteChipDismiss");
|
|
359
|
+
await page.waitForChanges();
|
|
360
|
+
expect(eventSpy).toHaveReceivedEventTimes(1);
|
|
361
|
+
});
|
|
362
|
+
it("should auto-select new custom value if selection is empty", async () => {
|
|
363
|
+
const page = await newE2EPage();
|
|
364
|
+
await page.setContent(html `
|
|
365
|
+
<calcite-combobox allow-custom-values selection-mode="single">
|
|
366
|
+
<calcite-combobox-item id="one" value="one" text-label="one"></calcite-combobox-item>
|
|
367
|
+
<calcite-combobox-item id="two" value="two" text-label="two"></calcite-combobox-item>
|
|
368
|
+
<calcite-combobox-item id="three" value="three" text-label="three"></calcite-combobox-item>
|
|
369
|
+
</calcite-combobox>
|
|
370
|
+
`);
|
|
371
|
+
const eventSpy = await page.spyOnEvent("calciteComboboxChange");
|
|
372
|
+
const input = await page.find("calcite-combobox >>> input");
|
|
373
|
+
await input.click();
|
|
374
|
+
await input.press("K");
|
|
375
|
+
await input.press("Enter");
|
|
376
|
+
await input.press("Escape");
|
|
377
|
+
await page.waitForChanges();
|
|
378
|
+
const item = await page.find("calcite-combobox-item:last-child");
|
|
379
|
+
const label = await page.find("calcite-combobox >>> .label");
|
|
380
|
+
expect(label.textContent).toBe("K");
|
|
381
|
+
expect(eventSpy.lastEvent.detail.selectedItems.length).toBe(1);
|
|
382
|
+
expect(await item.getProperty("selected")).toBe(true);
|
|
383
|
+
});
|
|
384
|
+
it("should replace current value to new custom value in single selection mode", async () => {
|
|
385
|
+
const page = await newE2EPage();
|
|
386
|
+
await page.setContent(html `
|
|
387
|
+
<calcite-combobox allow-custom-values selection-mode="single">
|
|
388
|
+
<calcite-combobox-item selected id="one" value="one" text-label="one"></calcite-combobox-item>
|
|
389
|
+
<calcite-combobox-item id="two" value="two" text-label="two"></calcite-combobox-item>
|
|
390
|
+
<calcite-combobox-item id="three" value="three" text-label="three"></calcite-combobox-item>
|
|
391
|
+
</calcite-combobox>
|
|
392
|
+
`);
|
|
393
|
+
const eventSpy = await page.spyOnEvent("calciteComboboxChange");
|
|
394
|
+
const input = await page.find("calcite-combobox >>> input");
|
|
395
|
+
await input.click();
|
|
396
|
+
await input.press("K");
|
|
397
|
+
await input.press("Enter");
|
|
398
|
+
await input.press("Escape");
|
|
399
|
+
await page.waitForChanges();
|
|
400
|
+
const item1 = await page.find("calcite-combobox-item#one");
|
|
401
|
+
const item2 = await page.find("calcite-combobox-item:last-child");
|
|
402
|
+
const label = await page.find("calcite-combobox >>> .label");
|
|
403
|
+
expect(label.textContent).toBe("K");
|
|
404
|
+
expect(eventSpy.lastEvent.detail.selectedItems.length).toBe(1);
|
|
405
|
+
expect(await item1.getProperty("selected")).toBe(false);
|
|
406
|
+
expect(await item2.getProperty("selected")).toBe(true);
|
|
407
|
+
});
|
|
408
|
+
it("should auto-select new custom values in multi selection mode", async () => {
|
|
409
|
+
const page = await newE2EPage();
|
|
410
|
+
await page.setContent(html `
|
|
411
|
+
<calcite-combobox allow-custom-values>
|
|
412
|
+
<calcite-combobox-item selected id="one" value="one" text-label="one"></calcite-combobox-item>
|
|
413
|
+
<calcite-combobox-item selected id="two" value="two" text-label="two"></calcite-combobox-item>
|
|
414
|
+
<calcite-combobox-item id="three" value="three" text-label="three"></calcite-combobox-item>
|
|
415
|
+
</calcite-combobox>
|
|
416
|
+
`);
|
|
417
|
+
const eventSpy = await page.spyOnEvent("calciteComboboxChange");
|
|
418
|
+
const input = await page.find("calcite-combobox >>> input");
|
|
419
|
+
await input.click();
|
|
420
|
+
await input.press("K");
|
|
421
|
+
await input.press("Enter");
|
|
422
|
+
await input.press("Escape");
|
|
423
|
+
await page.waitForChanges();
|
|
424
|
+
const item1 = await page.find("calcite-combobox-item#one");
|
|
425
|
+
const item2 = await page.find("calcite-combobox-item#two");
|
|
426
|
+
const item3 = await page.find("calcite-combobox-item:last-child");
|
|
427
|
+
const chips = await page.findAll("calcite-combobox >>> calcite-chip");
|
|
428
|
+
expect(eventSpy.lastEvent.detail.selectedItems.length).toBe(3);
|
|
429
|
+
expect(chips[2].textContent).toBe("K");
|
|
430
|
+
expect(await item1.getProperty("selected")).toBe(true);
|
|
431
|
+
expect(await item2.getProperty("selected")).toBe(true);
|
|
432
|
+
expect(await item3.getProperty("selected")).toBe(true);
|
|
433
|
+
});
|
|
434
|
+
});
|
|
435
|
+
describe("keyboard navigation", () => {
|
|
436
|
+
let page;
|
|
437
|
+
const scrollablePageSizeInPx = 2400;
|
|
438
|
+
// PageUp/Down scroll test fails without the delay
|
|
439
|
+
const scrollTestDelayInMilliseconds = 500;
|
|
440
|
+
beforeEach(async () => {
|
|
441
|
+
page = await newE2EPage();
|
|
442
|
+
await page.setContent(html `
|
|
443
|
+
<calcite-combobox id="myCombobox">
|
|
444
|
+
<calcite-combobox-item id="one" value="one" label="one"></calcite-combobox-item>
|
|
445
|
+
<calcite-combobox-item id="two" value="two" label="two"></calcite-combobox-item>
|
|
446
|
+
<calcite-combobox-item-group label="Last Item">
|
|
447
|
+
<calcite-combobox-item id="three" value="three" label="three"></calcite-combobox-item>
|
|
448
|
+
</calcite-combobox-item-group>
|
|
449
|
+
</calcite-combobox>
|
|
450
|
+
`);
|
|
451
|
+
});
|
|
452
|
+
it("should not show the listbox when it receives focus", async () => {
|
|
453
|
+
const input = await page.find(`#myCombobox >>> input`);
|
|
454
|
+
await input.focus();
|
|
455
|
+
await page.waitForChanges();
|
|
456
|
+
expect(await page.evaluate(() => document.activeElement.id)).toBe("myCombobox");
|
|
457
|
+
const container = await page.find(`#myCombobox >>> .floating-ui-container`);
|
|
458
|
+
const visible = await container.isVisible();
|
|
459
|
+
expect(visible).toBe(false);
|
|
460
|
+
});
|
|
461
|
+
it("tab moves to next input, but doesn’t open the item group", async () => {
|
|
462
|
+
await page.keyboard.press("Tab");
|
|
463
|
+
expect(await page.evaluate(() => document.activeElement.id)).toBe("myCombobox");
|
|
464
|
+
const floatingUI = await page.find("#myCombobox >>> .floating-ui-container--active");
|
|
465
|
+
expect(floatingUI).toBeNull();
|
|
466
|
+
});
|
|
467
|
+
it("tab will close the item group if it’s open", async () => {
|
|
468
|
+
const inputEl = await page.find(`#myCombobox >>> input`);
|
|
469
|
+
await inputEl.focus();
|
|
470
|
+
await page.waitForChanges();
|
|
471
|
+
expect(await page.evaluate(() => document.activeElement.id)).toBe("myCombobox");
|
|
472
|
+
await page.keyboard.press("Space");
|
|
473
|
+
await page.waitForChanges();
|
|
474
|
+
let floatingUI = await page.find("#myCombobox >>> .floating-ui-container--active");
|
|
475
|
+
expect(floatingUI).toBeTruthy();
|
|
476
|
+
await page.keyboard.press("Tab");
|
|
477
|
+
await page.waitForChanges();
|
|
478
|
+
floatingUI = await page.find("#myCombobox >>> .floating-ui-container--active");
|
|
479
|
+
expect(floatingUI).toBeNull();
|
|
480
|
+
});
|
|
481
|
+
it(`ArrowDown opens the item group for combobox in focus and jumps to the first item`, async () => {
|
|
482
|
+
const inputEl = await page.find(`#myCombobox >>> input`);
|
|
483
|
+
await inputEl.focus();
|
|
484
|
+
await page.waitForChanges();
|
|
485
|
+
expect(await page.evaluate(() => document.activeElement.id)).toBe("myCombobox");
|
|
486
|
+
await page.keyboard.press("ArrowDown");
|
|
487
|
+
await page.waitForChanges();
|
|
488
|
+
const firstFocusedGroupItem = await page.find("#one >>> .label--active");
|
|
489
|
+
expect(firstFocusedGroupItem).toBeTruthy();
|
|
490
|
+
});
|
|
491
|
+
it(`Escape closes the dropdown, but remains focused`, async () => {
|
|
492
|
+
const inputEl = await page.find(`#myCombobox >>> input`);
|
|
493
|
+
await inputEl.focus();
|
|
494
|
+
await page.waitForChanges();
|
|
495
|
+
expect(await page.evaluate(() => document.activeElement.id)).toBe("myCombobox");
|
|
496
|
+
await page.keyboard.press("Space");
|
|
497
|
+
await page.waitForChanges();
|
|
498
|
+
let floatingUI = await page.find("#myCombobox >>> .floating-ui-container--active");
|
|
499
|
+
expect(floatingUI).toBeTruthy();
|
|
500
|
+
await page.keyboard.press("Escape");
|
|
501
|
+
await page.waitForChanges();
|
|
502
|
+
floatingUI = await page.find("#myCombobox >>> .floating-ui-container--active");
|
|
503
|
+
expect(floatingUI).toBeNull();
|
|
504
|
+
expect(await page.evaluate(() => document.activeElement.id)).toBe("myCombobox");
|
|
505
|
+
});
|
|
506
|
+
it(`Space opens dropdown and puts focus on first item`, async () => {
|
|
507
|
+
const inputEl = await page.find(`#myCombobox >>> input`);
|
|
508
|
+
await inputEl.focus();
|
|
509
|
+
await page.waitForChanges();
|
|
510
|
+
expect(await page.evaluate(() => document.activeElement.id)).toBe("myCombobox");
|
|
511
|
+
await page.keyboard.press("Space");
|
|
512
|
+
await page.waitForChanges();
|
|
513
|
+
const firstFocusedGroupItem = await page.find("#one >>> .label--active");
|
|
514
|
+
expect(firstFocusedGroupItem).toBeTruthy();
|
|
515
|
+
const visible = await firstFocusedGroupItem.isVisible();
|
|
516
|
+
expect(visible).toBe(true);
|
|
517
|
+
});
|
|
518
|
+
it("when the combobox is focused & closed, Page up/down (fn arrow up/down) scrolls up and down the page", async () => {
|
|
519
|
+
await page.addStyleTag({
|
|
520
|
+
// set body to overflow so we can test the scroll functionality;
|
|
521
|
+
// set default margin/padding to 0 to not have to adjust for it in position calculations
|
|
522
|
+
content: `body {
|
|
523
|
+
height: ${scrollablePageSizeInPx}px;
|
|
524
|
+
width: ${scrollablePageSizeInPx}px;
|
|
525
|
+
}
|
|
526
|
+
html, body {
|
|
527
|
+
margin: 0;
|
|
528
|
+
padding: 0;
|
|
529
|
+
}
|
|
530
|
+
`
|
|
531
|
+
});
|
|
532
|
+
const combobox = await page.find("calcite-combobox");
|
|
533
|
+
await combobox.callMethod(`setFocus`);
|
|
534
|
+
const activeContainer = await page.find("#myCombobox >>> .floating-ui-container--active");
|
|
535
|
+
expect(activeContainer).toBeNull();
|
|
536
|
+
expect(await page.evaluate(() => window.scrollY)).toEqual(0);
|
|
537
|
+
await page.keyboard.press("PageDown");
|
|
538
|
+
await page.waitForTimeout(scrollTestDelayInMilliseconds);
|
|
539
|
+
const scrollPosition = await page.evaluate(() => window.scrollY);
|
|
540
|
+
expect(scrollPosition).toBeTruthy();
|
|
541
|
+
await page.keyboard.press("PageUp");
|
|
542
|
+
await page.waitForTimeout(scrollTestDelayInMilliseconds);
|
|
543
|
+
expect(await page.evaluate((scrollPosition) => {
|
|
544
|
+
return window.scrollY < scrollPosition;
|
|
545
|
+
}, scrollPosition)).toBeTruthy();
|
|
546
|
+
});
|
|
547
|
+
it("should cycle through items on ArrowUp/ArrowDown and toggle selection on/off on Enter", async () => {
|
|
548
|
+
const eventSpy = await page.spyOnEvent("calciteComboboxChange", "window");
|
|
549
|
+
const item1 = await page.find("calcite-combobox-item#one");
|
|
550
|
+
const item2 = await page.find("calcite-combobox-item#two");
|
|
551
|
+
const item3 = await page.find("calcite-combobox-item#three");
|
|
552
|
+
const element = await page.find("calcite-combobox");
|
|
553
|
+
await element.click();
|
|
554
|
+
expect(await item1.getProperty("active")).toBe(true);
|
|
555
|
+
await element.press("ArrowDown");
|
|
556
|
+
expect(await item1.getProperty("active")).toBe(true);
|
|
557
|
+
await element.press("ArrowUp");
|
|
558
|
+
expect(await item3.getProperty("active")).toBe(true);
|
|
559
|
+
expect(await item1.getProperty("active")).toBe(false);
|
|
560
|
+
await element.press("ArrowUp");
|
|
561
|
+
expect(await item2.getProperty("active")).toBe(true);
|
|
562
|
+
expect(await item3.getProperty("active")).toBe(false);
|
|
563
|
+
await element.press("ArrowDown");
|
|
564
|
+
await element.press("ArrowDown");
|
|
565
|
+
expect(await item1.getProperty("active")).toBe(true);
|
|
566
|
+
await element.press("Enter");
|
|
567
|
+
expect(await item1.getProperty("selected")).toBe(true);
|
|
568
|
+
expect(eventSpy).toHaveReceivedEventTimes(1);
|
|
569
|
+
await element.press("Enter");
|
|
570
|
+
expect(await item1.getProperty("selected")).toBe(false);
|
|
571
|
+
expect(eventSpy).toHaveReceivedEventTimes(2);
|
|
572
|
+
});
|
|
573
|
+
describe("keyboard interaction with chips", () => {
|
|
574
|
+
let element;
|
|
575
|
+
let chips;
|
|
576
|
+
beforeEach(async () => {
|
|
577
|
+
element = await page.find("#myCombobox");
|
|
578
|
+
await element.click();
|
|
579
|
+
const item1 = await page.find("calcite-combobox-item#one");
|
|
580
|
+
const item2 = await page.find("calcite-combobox-item#two");
|
|
581
|
+
const item3 = await page.find("calcite-combobox-item:last-child");
|
|
582
|
+
await item1.click();
|
|
583
|
+
await item2.click();
|
|
584
|
+
await item3.click();
|
|
585
|
+
chips = await page.findAll("#myCombobox >>> calcite-chip");
|
|
586
|
+
});
|
|
587
|
+
it("should cycle through chips on left/right keys", async () => {
|
|
588
|
+
expect(chips[0]).not.toBeNull();
|
|
589
|
+
expect(chips[1]).not.toBeNull();
|
|
590
|
+
expect(chips[2]).not.toBeNull();
|
|
591
|
+
await element.click();
|
|
592
|
+
await element.press("ArrowLeft");
|
|
593
|
+
expect(chips[2]).toHaveClass("chip--active");
|
|
594
|
+
await element.press("ArrowLeft");
|
|
595
|
+
expect(await chips[1]).toHaveClass("chip--active");
|
|
596
|
+
expect(chips[2]).not.toHaveClass("chip--active");
|
|
597
|
+
await element.press("Delete");
|
|
598
|
+
chips = await page.findAll("#myCombobox >>> calcite-chip");
|
|
599
|
+
expect(chips.length).toEqual(2);
|
|
600
|
+
});
|
|
601
|
+
it("should delete last chip on Delete", async () => {
|
|
602
|
+
expect(chips[0]).not.toBeNull();
|
|
603
|
+
expect(chips[1]).not.toBeNull();
|
|
604
|
+
expect(chips[2]).not.toBeNull();
|
|
605
|
+
await element.click();
|
|
606
|
+
await element.press("Backspace");
|
|
607
|
+
chips = await page.findAll("#myCombobox >>> calcite-chip");
|
|
608
|
+
expect(chips.length).toEqual(2);
|
|
609
|
+
});
|
|
610
|
+
});
|
|
611
|
+
});
|
|
612
|
+
describe("calciteComboboxChange", () => {
|
|
613
|
+
it("should have 1 selectedItem when single select", async () => {
|
|
614
|
+
const page = await newE2EPage();
|
|
615
|
+
await page.setContent(html `
|
|
616
|
+
<calcite-combobox selection-mode="single">
|
|
617
|
+
<calcite-combobox-item id="one" value="one" text-label="one" selected></calcite-combobox-item>
|
|
618
|
+
<calcite-combobox-item id="two" value="two" text-label="two"></calcite-combobox-item>
|
|
619
|
+
<calcite-combobox-item id="three" value="three" text-label="three"></calcite-combobox-item>
|
|
620
|
+
</calcite-combobox>
|
|
621
|
+
`);
|
|
622
|
+
await page.waitForChanges();
|
|
623
|
+
const element = await page.find("calcite-combobox");
|
|
624
|
+
await element.click();
|
|
625
|
+
await page.waitForChanges();
|
|
626
|
+
const eventSpy = await page.spyOnEvent("calciteComboboxChange");
|
|
627
|
+
const two = await page.find("#two");
|
|
628
|
+
const event = page.waitForEvent("calciteComboboxChange");
|
|
629
|
+
await two.click();
|
|
630
|
+
await event;
|
|
631
|
+
expect(eventSpy).toHaveReceivedEventTimes(1);
|
|
632
|
+
expect(eventSpy.lastEvent.detail.selectedItems.length).toBe(1);
|
|
633
|
+
});
|
|
634
|
+
it("should have 2 selectedItems when not in single select", async () => {
|
|
635
|
+
const page = await newE2EPage();
|
|
636
|
+
await page.setContent(html `
|
|
637
|
+
<calcite-combobox selection-mode="multi">
|
|
638
|
+
<calcite-combobox-item id="one" value="one" text-label="one" selected></calcite-combobox-item>
|
|
639
|
+
<calcite-combobox-item id="two" value="two" text-label="two"></calcite-combobox-item>
|
|
640
|
+
<calcite-combobox-item id="three" value="three" text-label="three"></calcite-combobox-item>
|
|
641
|
+
</calcite-combobox>
|
|
642
|
+
`);
|
|
643
|
+
await page.waitForChanges();
|
|
644
|
+
const element = await page.find("calcite-combobox");
|
|
645
|
+
await element.click();
|
|
646
|
+
await page.waitForChanges();
|
|
647
|
+
const eventSpy = await page.spyOnEvent("calciteComboboxChange");
|
|
648
|
+
const two = await page.find("#two");
|
|
649
|
+
const event = page.waitForEvent("calciteComboboxChange");
|
|
650
|
+
await two.click();
|
|
651
|
+
await event;
|
|
652
|
+
expect(eventSpy).toHaveReceivedEventTimes(1);
|
|
653
|
+
expect(eventSpy.lastEvent.detail.selectedItems.length).toBe(2);
|
|
654
|
+
});
|
|
655
|
+
});
|
|
656
|
+
describe("calciteComboboxItemChange event correctly updates active item index", () => {
|
|
657
|
+
let page;
|
|
658
|
+
let element;
|
|
659
|
+
let comboboxItem;
|
|
660
|
+
let itemNestedLi;
|
|
661
|
+
let closeEvent;
|
|
662
|
+
beforeEach(async () => {
|
|
663
|
+
page = await newE2EPage();
|
|
664
|
+
await page.setContent(html `
|
|
665
|
+
<calcite-combobox id="myCombobox">
|
|
666
|
+
<calcite-combobox-item value="Trees">
|
|
667
|
+
<calcite-combobox-item value="Pine">
|
|
668
|
+
<calcite-combobox-item id="PineNested" value="Pine Nested"></calcite-combobox-item>
|
|
669
|
+
</calcite-combobox-item>
|
|
670
|
+
<calcite-combobox-item value="Sequoia"></calcite-combobox-item>
|
|
671
|
+
<calcite-combobox-item value="Douglas Fir"></calcite-combobox-item>
|
|
672
|
+
</calcite-combobox-item>
|
|
673
|
+
<calcite-combobox-item value="Flowers">
|
|
674
|
+
<calcite-combobox-item value="Daffodil"></calcite-combobox-item>
|
|
675
|
+
<calcite-combobox-item value="Black Eyed Susan"></calcite-combobox-item>
|
|
676
|
+
<calcite-combobox-item value="Nasturtium"></calcite-combobox-item>
|
|
677
|
+
</calcite-combobox-item>
|
|
678
|
+
</calcite-combobox>
|
|
679
|
+
`);
|
|
680
|
+
element = await page.find("calcite-combobox");
|
|
681
|
+
await element.click();
|
|
682
|
+
comboboxItem = await page.find("calcite-combobox-item#PineNested");
|
|
683
|
+
await comboboxItem.click();
|
|
684
|
+
await page.waitForChanges();
|
|
685
|
+
itemNestedLi = await page.find("calcite-combobox-item#PineNested >>> li");
|
|
686
|
+
closeEvent = page.waitForEvent("calciteComboboxClose");
|
|
687
|
+
});
|
|
688
|
+
it("clicking on Listbox item focuses on the item and closes out of Listbox with tab", async () => {
|
|
689
|
+
expect(itemNestedLi).toHaveClass(CSS.labelActive);
|
|
690
|
+
await element.press("Tab");
|
|
691
|
+
await closeEvent;
|
|
692
|
+
await element.press("Tab");
|
|
693
|
+
expect(await page.evaluate(() => document.activeElement.id)).not.toBe("calcite-combobox");
|
|
694
|
+
});
|
|
695
|
+
it("after click interaction with listbox, user can transition to using keyboard “enter” to toggle selected on/off", async () => {
|
|
696
|
+
expect(itemNestedLi).toHaveClass(CSS.labelActive);
|
|
697
|
+
await itemNestedLi.press("Enter");
|
|
698
|
+
expect(itemNestedLi).not.toHaveClass(CSS.labelSelected);
|
|
699
|
+
expect(itemNestedLi).toHaveClass(CSS.labelActive);
|
|
700
|
+
await itemNestedLi.press("Enter");
|
|
701
|
+
expect(itemNestedLi).toHaveClass(CSS.labelSelected);
|
|
702
|
+
expect(itemNestedLi).toHaveClass(CSS.labelActive);
|
|
703
|
+
await element.press("Tab");
|
|
704
|
+
await closeEvent;
|
|
705
|
+
await element.press("Tab");
|
|
706
|
+
expect(await page.evaluate(() => document.activeElement.id)).not.toBe("calcite-combobox");
|
|
707
|
+
});
|
|
708
|
+
});
|
|
709
|
+
describe("allows free entry of text", () => {
|
|
710
|
+
it("should allow typing a new unknown tag", async () => {
|
|
711
|
+
const page = await newE2EPage();
|
|
712
|
+
await page.setContent(html `
|
|
713
|
+
<calcite-combobox allow-custom-values>
|
|
714
|
+
<calcite-combobox-item id="one" value="one" text-label="one"></calcite-combobox-item>
|
|
715
|
+
<calcite-combobox-item id="two" value="two" text-label="two"></calcite-combobox-item>
|
|
716
|
+
<calcite-combobox-item id="three" value="three" text-label="three"></calcite-combobox-item>
|
|
717
|
+
</calcite-combobox>
|
|
718
|
+
`);
|
|
719
|
+
let chip = await page.find("calcite-combobox >>> calcite-chip");
|
|
720
|
+
expect(chip).toBeNull();
|
|
721
|
+
const element = await page.find("calcite-combobox");
|
|
722
|
+
await element.click();
|
|
723
|
+
await element.press("K");
|
|
724
|
+
await element.press("Enter");
|
|
725
|
+
chip = await page.find("calcite-combobox >>> calcite-chip");
|
|
726
|
+
expect(chip).toBeDefined();
|
|
727
|
+
expect(await chip.getProperty("value")).toBe("K");
|
|
728
|
+
await element.click();
|
|
729
|
+
await element.press("K");
|
|
730
|
+
await element.press("Enter");
|
|
731
|
+
const chips = await page.findAll("calcite-combobox >>> calcite-chip");
|
|
732
|
+
expect(chips.length).toBe(1);
|
|
733
|
+
});
|
|
734
|
+
it("should fire calciteComboboxChange when entering new unknown tag", async () => {
|
|
735
|
+
const page = await newE2EPage();
|
|
736
|
+
await page.setContent(html `
|
|
737
|
+
<calcite-combobox allow-custom-values>
|
|
738
|
+
<calcite-combobox-item id="one" value="one" text-label="one"></calcite-combobox-item>
|
|
739
|
+
<calcite-combobox-item id="two" value="two" text-label="two"></calcite-combobox-item>
|
|
740
|
+
<calcite-combobox-item id="three" value="three" text-label="three"></calcite-combobox-item>
|
|
741
|
+
</calcite-combobox>
|
|
742
|
+
`);
|
|
743
|
+
const eventSpy = await page.spyOnEvent("calciteComboboxChange");
|
|
744
|
+
const input = await page.find("calcite-combobox >>> input");
|
|
745
|
+
await input.click();
|
|
746
|
+
await input.press("K");
|
|
747
|
+
await input.press("Enter");
|
|
748
|
+
expect(eventSpy).toHaveReceivedEventTimes(1);
|
|
749
|
+
});
|
|
750
|
+
it("should allow enter unknown tag when tabbing away", async () => {
|
|
751
|
+
const page = await newE2EPage();
|
|
752
|
+
await page.setContent(html `
|
|
753
|
+
<calcite-combobox allow-custom-values>
|
|
754
|
+
<calcite-combobox-item id="one" value="one" text-label="one"></calcite-combobox-item>
|
|
755
|
+
<calcite-combobox-item id="two" value="two" text-label="two"></calcite-combobox-item>
|
|
756
|
+
<calcite-combobox-item id="three" value="three" text-label="three"></calcite-combobox-item>
|
|
757
|
+
</calcite-combobox>
|
|
758
|
+
<button>OK</button>
|
|
759
|
+
`);
|
|
760
|
+
const chip = await page.find("calcite-combobox >>> calcite-chip");
|
|
761
|
+
expect(chip).toBeNull();
|
|
762
|
+
const input = await page.find("calcite-combobox >>> input");
|
|
763
|
+
const button = await page.find("button");
|
|
764
|
+
await input.click();
|
|
765
|
+
await input.press("o");
|
|
766
|
+
await input.press("Tab");
|
|
767
|
+
let chips = await page.findAll("calcite-combobox >>> calcite-chip");
|
|
768
|
+
expect(chips.length).toBe(1);
|
|
769
|
+
await input.press("j");
|
|
770
|
+
await button.click();
|
|
771
|
+
chips = await page.findAll("calcite-combobox >>> calcite-chip");
|
|
772
|
+
expect(chips.length).toBe(2);
|
|
773
|
+
});
|
|
774
|
+
it("should select known tag when input", async () => {
|
|
775
|
+
const page = await newE2EPage();
|
|
776
|
+
await page.setContent(html `
|
|
777
|
+
<calcite-combobox allow-custom-values>
|
|
778
|
+
<calcite-combobox-item id="one" value="one" text-label="one"></calcite-combobox-item>
|
|
779
|
+
<calcite-combobox-item id="two" value="two" text-label="two"></calcite-combobox-item>
|
|
780
|
+
<calcite-combobox-item id="three" value="three" text-label="three"></calcite-combobox-item>
|
|
781
|
+
</calcite-combobox>
|
|
782
|
+
`);
|
|
783
|
+
let chip = await page.find("calcite-combobox >>> calcite-chip");
|
|
784
|
+
expect(chip).toBeNull();
|
|
785
|
+
const input = await page.find("calcite-combobox >>> input");
|
|
786
|
+
await input.click();
|
|
787
|
+
await input.press("o");
|
|
788
|
+
await input.press("n");
|
|
789
|
+
await input.press("e");
|
|
790
|
+
await input.press("Enter");
|
|
791
|
+
chip = await page.find("calcite-combobox >>> calcite-chip");
|
|
792
|
+
expect(chip).toBeDefined();
|
|
793
|
+
expect(await chip.getProperty("value")).toBe("one");
|
|
794
|
+
const item1 = await page.find("calcite-combobox-item#one");
|
|
795
|
+
expect(await item1.getProperty("selected")).toBe(true);
|
|
796
|
+
});
|
|
797
|
+
});
|
|
798
|
+
describe("single select", () => {
|
|
799
|
+
it("should allow selection of single item", async () => {
|
|
800
|
+
const page = await newE2EPage();
|
|
801
|
+
await page.setContent(html `
|
|
802
|
+
<calcite-combobox selection-mode="single">
|
|
803
|
+
<calcite-combobox-item id="one" value="one" text-label="One"></calcite-combobox-item>
|
|
804
|
+
<calcite-combobox-item id="two" value="two" text-label="Two"></calcite-combobox-item>
|
|
805
|
+
<calcite-combobox-item id="three" value="three" text-label="Three"></calcite-combobox-item>
|
|
806
|
+
</calcite-combobox>
|
|
807
|
+
`);
|
|
808
|
+
const chip = await page.find("calcite-combobox >>> calcite-chip");
|
|
809
|
+
expect(chip).toBeNull();
|
|
810
|
+
const input = await page.find("calcite-combobox >>> input");
|
|
811
|
+
const value = await input.getProperty("value");
|
|
812
|
+
expect(value).toBe("");
|
|
813
|
+
await input.click();
|
|
814
|
+
const container = await page.find("calcite-combobox >>> .floating-ui-container");
|
|
815
|
+
let visible = await container.isVisible();
|
|
816
|
+
expect(visible).toBe(true);
|
|
817
|
+
const items = await page.findAll("calcite-combobox-item");
|
|
818
|
+
expect(items.length).toBe(3);
|
|
819
|
+
const item1 = await page.find("calcite-combobox-item[value=one]");
|
|
820
|
+
const closeEvent = page.waitForEvent("calciteComboboxClose");
|
|
821
|
+
await item1.click();
|
|
822
|
+
await closeEvent;
|
|
823
|
+
const label = await page.find("calcite-combobox >>> .label");
|
|
824
|
+
await page.waitForChanges();
|
|
825
|
+
const labelVisible = await label.isVisible();
|
|
826
|
+
expect(labelVisible).toBe(true);
|
|
827
|
+
expect(label.textContent).toBe("One");
|
|
828
|
+
visible = await container.isVisible();
|
|
829
|
+
expect(visible).toBe(false);
|
|
830
|
+
});
|
|
831
|
+
});
|
|
832
|
+
describe("custom icons", () => {
|
|
833
|
+
it("should use icons if set on items", async () => {
|
|
834
|
+
const page = await newE2EPage();
|
|
835
|
+
await page.setContent(html `
|
|
836
|
+
<calcite-combobox>
|
|
837
|
+
<calcite-combobox-item id="one" icon="banana" value="one" text-label="One"></calcite-combobox-item>
|
|
838
|
+
<calcite-combobox-item id="two" icon="beaker" value="two" text-label="Two"></calcite-combobox-item>
|
|
839
|
+
<calcite-combobox-item id="three" value="three" text-label="Three"></calcite-combobox-item>
|
|
840
|
+
</calcite-combobox>
|
|
841
|
+
`);
|
|
842
|
+
const chip = await page.find("calcite-combobox >>> calcite-chip");
|
|
843
|
+
expect(chip).toBeNull();
|
|
844
|
+
const cbox = await page.find("calcite-combobox");
|
|
845
|
+
const openEvent = page.waitForEvent("calciteComboboxOpen");
|
|
846
|
+
await cbox.click();
|
|
847
|
+
await openEvent;
|
|
848
|
+
const items = await page.findAll("calcite-combobox-item");
|
|
849
|
+
await items[0].click();
|
|
850
|
+
await items[1].click();
|
|
851
|
+
await items[2].click();
|
|
852
|
+
await page.waitForChanges();
|
|
853
|
+
const chips = await page.findAll("calcite-combobox >>> calcite-chip");
|
|
854
|
+
const icon1 = await chips[0].getProperty("icon");
|
|
855
|
+
const icon2 = await chips[1].getProperty("icon");
|
|
856
|
+
const icon3 = await chips[2].getProperty("icon");
|
|
857
|
+
expect(icon1).toBe("banana");
|
|
858
|
+
expect(icon2).toBe("beaker");
|
|
859
|
+
expect(icon3).toBeUndefined();
|
|
860
|
+
});
|
|
861
|
+
it("should use icon in single select", async () => {
|
|
862
|
+
const page = await newE2EPage();
|
|
863
|
+
await page.setContent(html `
|
|
864
|
+
<calcite-combobox selection-mode="single">
|
|
865
|
+
<calcite-combobox-item id="one" icon="banana" value="one" text-label="One"></calcite-combobox-item>
|
|
866
|
+
<calcite-combobox-item id="two" icon="beaker" value="two" text-label="Two"></calcite-combobox-item>
|
|
867
|
+
<calcite-combobox-item id="three" value="three" text-label="Three"></calcite-combobox-item>
|
|
868
|
+
</calcite-combobox>
|
|
869
|
+
`);
|
|
870
|
+
const element = await page.find("calcite-combobox");
|
|
871
|
+
let selected = await page.find("calcite-combobox >>> .selected-icon");
|
|
872
|
+
expect(selected).toBeNull();
|
|
873
|
+
await element.click();
|
|
874
|
+
await page.waitForChanges();
|
|
875
|
+
const items = await page.findAll("calcite-combobox-item");
|
|
876
|
+
await items[0].click();
|
|
877
|
+
await page.waitForChanges();
|
|
878
|
+
selected = await page.find("calcite-combobox >>> .selected-icon");
|
|
879
|
+
let icon = await selected.getProperty("icon");
|
|
880
|
+
expect(icon).toBe("banana");
|
|
881
|
+
await element.click();
|
|
882
|
+
await page.waitForChanges();
|
|
883
|
+
await items[1].click();
|
|
884
|
+
await page.waitForChanges();
|
|
885
|
+
selected = await page.find("calcite-combobox >>> .selected-icon");
|
|
886
|
+
icon = await selected.getProperty("icon");
|
|
887
|
+
expect(icon).toBe("beaker");
|
|
888
|
+
await element.click();
|
|
889
|
+
await page.waitForChanges();
|
|
890
|
+
await items[2].click();
|
|
891
|
+
await page.waitForChanges();
|
|
892
|
+
selected = await page.find("calcite-combobox >>> .selected-icon");
|
|
893
|
+
expect(selected).toBeNull();
|
|
894
|
+
});
|
|
895
|
+
});
|
|
896
|
+
it("respects the constant item property", async () => {
|
|
897
|
+
const page = await newE2EPage();
|
|
898
|
+
await page.setContent(`
|
|
899
|
+
<calcite-combobox selection-mode="single">
|
|
900
|
+
<calcite-combobox-item id="one" constant value="one" text-label="One"></calcite-combobox-item>
|
|
901
|
+
<calcite-combobox-item id="two" value="two" text-label="Two"></calcite-combobox-item>
|
|
902
|
+
<calcite-combobox-item id="three" value="three" text-label="Three"></calcite-combobox-item>
|
|
903
|
+
</calcite-combobox>
|
|
904
|
+
`);
|
|
905
|
+
await page.waitForChanges();
|
|
906
|
+
const input = await page.find("calcite-combobox >>> .wrapper");
|
|
907
|
+
await input.click();
|
|
908
|
+
await page.keyboard.type("two");
|
|
909
|
+
await page.waitForChanges();
|
|
910
|
+
const one = await (await page.find("#one")).isVisible();
|
|
911
|
+
const two = await (await page.find("#two")).isVisible();
|
|
912
|
+
const three = await (await page.find("#three")).isVisible();
|
|
913
|
+
expect(one).toBeTruthy();
|
|
914
|
+
expect(two).toBeTruthy();
|
|
915
|
+
expect(three).toBeFalsy();
|
|
916
|
+
});
|
|
917
|
+
it("respects the filterDisabled item property", async () => {
|
|
918
|
+
const page = await newE2EPage();
|
|
919
|
+
await page.setContent(`
|
|
920
|
+
<calcite-combobox selection-mode="single">
|
|
921
|
+
<calcite-combobox-item id="one" value="one" text-label="One"></calcite-combobox-item>
|
|
922
|
+
<calcite-combobox-item id="two" value="two" text-label="Two" ></calcite-combobox-item>
|
|
923
|
+
<calcite-combobox-item id="three" value="three" text-label="Three" filter-disabled></calcite-combobox-item>
|
|
924
|
+
</calcite-combobox>
|
|
925
|
+
`);
|
|
926
|
+
await page.waitForChanges();
|
|
927
|
+
const input = await page.find("calcite-combobox >>> .wrapper");
|
|
928
|
+
await input.click();
|
|
929
|
+
await page.keyboard.type("two");
|
|
930
|
+
await page.waitForChanges();
|
|
931
|
+
const one = await (await page.find("#one")).isVisible();
|
|
932
|
+
const two = await (await page.find("#two")).isVisible();
|
|
933
|
+
const three = await (await page.find("#three")).isVisible();
|
|
934
|
+
expect(one).toBeFalsy();
|
|
935
|
+
expect(two).toBeTruthy();
|
|
936
|
+
expect(three).toBeTruthy();
|
|
937
|
+
});
|
|
938
|
+
it("works correctly inside a shadowRoot", async () => {
|
|
939
|
+
const page = await newE2EPage();
|
|
940
|
+
await page.setContent(`
|
|
941
|
+
<div></div>
|
|
942
|
+
<template>
|
|
943
|
+
<calcite-combobox selection-mode="single">
|
|
944
|
+
<calcite-combobox-item id="one" icon="banana" value="one" text-label="One"></calcite-combobox-item>
|
|
945
|
+
<calcite-combobox-item id="two" icon="beaker" value="two" text-label="Two"></calcite-combobox-item>
|
|
946
|
+
<calcite-combobox-item id="three" value="three" text-label="Three"></calcite-combobox-item>
|
|
947
|
+
</calcite-combobox>
|
|
948
|
+
</template>
|
|
949
|
+
<script>
|
|
950
|
+
const shadowRootDiv = document.querySelector("div");
|
|
951
|
+
const shadowRoot = shadowRootDiv.attachShadow({ mode: "open" });
|
|
952
|
+
shadowRoot.append(document.querySelector("template").content.cloneNode(true));
|
|
953
|
+
</script>
|
|
954
|
+
`);
|
|
955
|
+
await page.waitForChanges();
|
|
956
|
+
const combobox = await page.find("div >>> calcite-combobox");
|
|
957
|
+
const input = await page.find("div >>> calcite-combobox >>> .wrapper");
|
|
958
|
+
expect(await combobox.getProperty("active")).toBeFalsy();
|
|
959
|
+
expect(await combobox.getProperty("open")).toBeFalsy();
|
|
960
|
+
await input.click();
|
|
961
|
+
expect(await combobox.getProperty("active")).toBe(true);
|
|
962
|
+
expect(await combobox.getProperty("open")).toBe(true);
|
|
963
|
+
});
|
|
964
|
+
it("is form-associated", () => formAssociated(html `<calcite-combobox selection-mode="single">
|
|
965
|
+
<calcite-combobox-item id="one" icon="banana" value="one" text-label="One"></calcite-combobox-item>
|
|
966
|
+
<calcite-combobox-item id="two" icon="beaker" value="two" text-label="Two" selected></calcite-combobox-item>
|
|
967
|
+
<calcite-combobox-item id="three" value="three" text-label="Three"></calcite-combobox-item>
|
|
968
|
+
</calcite-combobox>`, { testValue: "two", submitsOnEnter: true }));
|
|
969
|
+
it("owns a floating-ui", () => floatingUIOwner(html ` <calcite-combobox>
|
|
970
|
+
<calcite-combobox-item id="one" icon="banana" value="one" text-label="One"></calcite-combobox-item>
|
|
971
|
+
<calcite-combobox-item id="two" icon="beaker" value="two" text-label="Two" selected></calcite-combobox-item>
|
|
972
|
+
<calcite-combobox-item id="three" value="three" text-label="Three"></calcite-combobox-item>
|
|
973
|
+
</calcite-combobox>`, "open", { shadowSelector: ".floating-ui-container" }));
|
|
974
|
+
it("should emit component status for transition-chained events: 'calciteComoboxBeforeOpen', 'calciteComboboxOpen', 'calciteComboboxBeforeClose', 'calciteComboboxClose'", async () => {
|
|
975
|
+
const page = await newE2EPage();
|
|
976
|
+
await page.setContent(html `
|
|
977
|
+
<calcite-combobox id="myCombobox">
|
|
978
|
+
<calcite-combobox-item value="Raising Arizona" text-label="Raising Arizona"></calcite-combobox-item>
|
|
979
|
+
<calcite-combobox-item value="Miller's Crossing" text-label="Miller's Crossing"></calcite-combobox-item>
|
|
980
|
+
<calcite-combobox-item value="The Hudsucker Proxy" text-label="The Hudsucker Proxy"></calcite-combobox-item>
|
|
981
|
+
<calcite-combobox-item value="Inside Llewyn Davis" text-label="Inside Llewyn Davis"></calcite-combobox-item>
|
|
982
|
+
</calcite-combobox>
|
|
983
|
+
`);
|
|
984
|
+
const element = await page.find("calcite-combobox");
|
|
985
|
+
const container = await page.find(`calcite-combobox >>> .${CSS.listContainer}`);
|
|
986
|
+
expect(await container.isVisible()).toBe(false);
|
|
987
|
+
const calciteComboboxBeforeOpenEvent = page.waitForEvent("calciteComboboxBeforeOpen");
|
|
988
|
+
const calciteComboboxOpenEvent = page.waitForEvent("calciteComboboxOpen");
|
|
989
|
+
const calciteComboboxBeforeOpenSpy = await element.spyOnEvent("calciteComboboxBeforeOpen");
|
|
990
|
+
const calciteComboboxOpenSpy = await element.spyOnEvent("calciteComboboxOpen");
|
|
991
|
+
await element.setProperty("active", true);
|
|
992
|
+
await element.setProperty("open", true);
|
|
993
|
+
await page.waitForChanges();
|
|
994
|
+
await calciteComboboxBeforeOpenEvent;
|
|
995
|
+
await calciteComboboxOpenEvent;
|
|
996
|
+
expect(calciteComboboxBeforeOpenSpy).toHaveReceivedEventTimes(1);
|
|
997
|
+
expect(calciteComboboxOpenSpy).toHaveReceivedEventTimes(1);
|
|
998
|
+
expect(await container.isVisible()).toBe(true);
|
|
999
|
+
const calciteComboboxBeforeCloseEvent = page.waitForEvent("calciteComboboxBeforeClose");
|
|
1000
|
+
const calciteComboboxCloseEvent = page.waitForEvent("calciteComboboxClose");
|
|
1001
|
+
const calciteComboboxBeforeCloseSpy = await element.spyOnEvent("calciteComboboxBeforeClose");
|
|
1002
|
+
const calciteComboboxClose = await element.spyOnEvent("calciteComboboxClose");
|
|
1003
|
+
await element.setProperty("active", false);
|
|
1004
|
+
await element.setProperty("open", false);
|
|
1005
|
+
await page.waitForChanges();
|
|
1006
|
+
await calciteComboboxBeforeCloseEvent;
|
|
1007
|
+
await calciteComboboxCloseEvent;
|
|
1008
|
+
expect(calciteComboboxBeforeCloseSpy).toHaveReceivedEventTimes(1);
|
|
1009
|
+
expect(calciteComboboxClose).toHaveReceivedEventTimes(1);
|
|
1010
|
+
expect(await container.isVisible()).toBe(false);
|
|
1011
|
+
});
|
|
1012
|
+
it("should have input--icon class when placeholder-icon is parsed", async () => {
|
|
1013
|
+
const page = await newE2EPage();
|
|
1014
|
+
await page.setContent(html ` <calcite-combobox
|
|
1015
|
+
placeholder="What's scarier than 5G?"
|
|
1016
|
+
selection-mode="single"
|
|
1017
|
+
placeholder-icon="car"
|
|
1018
|
+
>
|
|
1019
|
+
<calcite-combobox-item value="Bluetooth" text-label="Bluetooth" icon="bluetooth"> </calcite-combobox-item>
|
|
1020
|
+
<calcite-combobox-item value="Exercise" text-label="Exercise"> </calcite-combobox-item>
|
|
1021
|
+
<calcite-combobox-item value="Space Lasers" text-label="Space Lasers" icon="satellite-3"> </calcite-combobox-item>
|
|
1022
|
+
</calcite-combobox>`);
|
|
1023
|
+
const comboboxEl = await page.find("calcite-combobox");
|
|
1024
|
+
const inputEl = await page.find("calcite-combobox >>> span");
|
|
1025
|
+
await page.waitForChanges();
|
|
1026
|
+
expect(inputEl).toHaveClass("icon-start");
|
|
1027
|
+
comboboxEl.setProperty("open", true);
|
|
1028
|
+
await page.waitForChanges();
|
|
1029
|
+
expect(inputEl).toHaveClass("icon-start");
|
|
1030
|
+
});
|
|
1031
|
+
it("should be able to type when tab through the component once", async () => {
|
|
1032
|
+
const page = await newE2EPage();
|
|
1033
|
+
await page.setContent(html ` <calcite-combobox>
|
|
1034
|
+
<calcite-combobox-item value="Bluetooth" text-label="Bluetooth"> </calcite-combobox-item>
|
|
1035
|
+
</calcite-combobox>`);
|
|
1036
|
+
const inputEl = await page.find("calcite-combobox >>> input");
|
|
1037
|
+
await page.keyboard.press("Tab");
|
|
1038
|
+
await page.waitForChanges();
|
|
1039
|
+
await page.keyboard.type("Blue");
|
|
1040
|
+
await page.waitForChanges();
|
|
1041
|
+
expect(await inputEl.getProperty("value")).toBe("Blue");
|
|
1042
|
+
});
|
|
1043
|
+
});
|