@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,1004 @@
|
|
|
1
|
+
import { newE2EPage } from "@stencil/core/testing";
|
|
2
|
+
import { defaults, disabled, focusable, formAssociated, labelable, reflects, renders, hidden } from "../../tests/commonTests";
|
|
3
|
+
import { html } from "../../../support/formatting";
|
|
4
|
+
import { letterKeys, numberKeys } from "../../utils/key";
|
|
5
|
+
import { getDecimalSeparator, locales, localizeNumberString } from "../../utils/locale";
|
|
6
|
+
import { getElementXY } from "../../tests/utils";
|
|
7
|
+
describe("calcite-input-number", () => {
|
|
8
|
+
const delayFor2UpdatesInMs = 200;
|
|
9
|
+
/**
|
|
10
|
+
* This helper wraps number typing to work around test instability
|
|
11
|
+
*
|
|
12
|
+
* @param page
|
|
13
|
+
* @param numberAsText
|
|
14
|
+
*/
|
|
15
|
+
async function typeNumberValue(page, numberAsText) {
|
|
16
|
+
await page.keyboard.type(numberAsText, numberAsText.length > 1 ? { delay: 100 } : undefined);
|
|
17
|
+
}
|
|
18
|
+
it("is labelable", async () => labelable("calcite-input-number"));
|
|
19
|
+
it("renders", () => renders("calcite-input-number", { display: "block" }));
|
|
20
|
+
it("honors hidden attribute", async () => hidden("calcite-input-number"));
|
|
21
|
+
it("reflects", async () => reflects("calcite-input-number", [
|
|
22
|
+
{
|
|
23
|
+
propertyName: "status",
|
|
24
|
+
value: "valid"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
propertyName: "alignment",
|
|
28
|
+
value: "center"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
propertyName: "numberButtonType",
|
|
32
|
+
value: "horizontal"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
propertyName: "scale",
|
|
36
|
+
value: "s"
|
|
37
|
+
}
|
|
38
|
+
]));
|
|
39
|
+
it("has defaults", async () => defaults("calcite-input-number", [
|
|
40
|
+
{
|
|
41
|
+
propertyName: "status",
|
|
42
|
+
defaultValue: "idle"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
propertyName: "alignment",
|
|
46
|
+
defaultValue: "start"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
propertyName: "numberButtonType",
|
|
50
|
+
defaultValue: "vertical"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
propertyName: "scale",
|
|
54
|
+
defaultValue: "m"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
propertyName: "value",
|
|
58
|
+
defaultValue: ""
|
|
59
|
+
}
|
|
60
|
+
]));
|
|
61
|
+
it("can be disabled", () => disabled("calcite-input-number"));
|
|
62
|
+
it("when disabled, spinner buttons should not be interactive/should not nudge the number", async () => {
|
|
63
|
+
const page = await newE2EPage();
|
|
64
|
+
await page.setContent(html `<calcite-input-number disabled></calcite-input-number>`);
|
|
65
|
+
const numberButtonItem = await page.find("calcite-input-number >>> .number-button-item");
|
|
66
|
+
const calciteInputInput = await page.spyOnEvent("calciteInputNumberInput");
|
|
67
|
+
await numberButtonItem.click();
|
|
68
|
+
await page.waitForChanges();
|
|
69
|
+
expect(calciteInputInput).not.toHaveReceivedEvent();
|
|
70
|
+
});
|
|
71
|
+
it("inherits requested props when from wrapping calcite-label when props are provided", async () => {
|
|
72
|
+
const page = await newE2EPage();
|
|
73
|
+
await page.setContent(html `
|
|
74
|
+
<calcite-label status="invalid" scale="s">
|
|
75
|
+
Label text
|
|
76
|
+
<calcite-input-number></calcite-input-number>
|
|
77
|
+
</calcite-label>
|
|
78
|
+
`);
|
|
79
|
+
const deprecatedLabelStatusElement = await page.find("calcite-input-number");
|
|
80
|
+
expect(await deprecatedLabelStatusElement.getProperty("status")).toEqual("invalid");
|
|
81
|
+
expect(await deprecatedLabelStatusElement.getProperty("scale")).toEqual("s");
|
|
82
|
+
});
|
|
83
|
+
it("renders an icon when explicit Calcite UI is requested, and is a type without a default icon", async () => {
|
|
84
|
+
const page = await newE2EPage();
|
|
85
|
+
await page.setContent(html `<calcite-input-number icon="key"></calcite-input-number>`);
|
|
86
|
+
const icon = await page.find("calcite-input-number >>> .icon");
|
|
87
|
+
expect(icon).not.toBeNull();
|
|
88
|
+
});
|
|
89
|
+
it("does not render an icon when requested without an explicit Calcite UI, and is a type without a default icon", async () => {
|
|
90
|
+
const page = await newE2EPage();
|
|
91
|
+
await page.setContent(html `<calcite-input-number icon></calcite-input-number>`);
|
|
92
|
+
const icon = await page.find("calcite-input-number >>> .icon");
|
|
93
|
+
expect(icon).toBeNull();
|
|
94
|
+
});
|
|
95
|
+
it("renders number buttons in default vertical alignment", async () => {
|
|
96
|
+
const page = await newE2EPage();
|
|
97
|
+
await page.setContent(html `<calcite-input-number></calcite-input-number>`);
|
|
98
|
+
const numberVerticalWrapper = await page.find("calcite-input-number >>> .number-button-wrapper");
|
|
99
|
+
const numberHorizontalItemDown = await page.find("calcite-input-number >>> .number-button-item--horizontal[data-adjustment='down']");
|
|
100
|
+
const numberHorizontalItemUp = await page.find("calcite-input-number >>> .number-button-item--horizontal[data-adjustment='up']");
|
|
101
|
+
expect(numberVerticalWrapper).not.toBeNull();
|
|
102
|
+
expect(numberHorizontalItemDown).toBeNull();
|
|
103
|
+
expect(numberHorizontalItemUp).toBeNull();
|
|
104
|
+
});
|
|
105
|
+
it("renders number buttons in horizontal vertical alignment and number button type is horizontal", async () => {
|
|
106
|
+
const page = await newE2EPage();
|
|
107
|
+
await page.setContent(html `<calcite-input-number number-button-type="horizontal"></calcite-input-number>`);
|
|
108
|
+
const numberVerticalWrapper = await page.find("calcite-input-number >>> .number-button-wrapper");
|
|
109
|
+
const numberHorizontalItemDown = await page.find("calcite-input-number >>> .number-button-item--horizontal[data-adjustment='down']");
|
|
110
|
+
const numberHorizontalItemUp = await page.find("calcite-input-number >>> .number-button-item--horizontal[data-adjustment='up']");
|
|
111
|
+
expect(numberVerticalWrapper).toBeNull();
|
|
112
|
+
expect(numberHorizontalItemDown).not.toBeNull();
|
|
113
|
+
expect(numberHorizontalItemUp).not.toBeNull();
|
|
114
|
+
});
|
|
115
|
+
it("does not render number buttons in default vertical alignment and read-only", async () => {
|
|
116
|
+
const page = await newE2EPage();
|
|
117
|
+
await page.setContent(html `<calcite-input-number read-only></calcite-input-number>`);
|
|
118
|
+
const numberVerticalWrapper = await page.find("calcite-input-number >>> .number-button-wrapper");
|
|
119
|
+
expect(numberVerticalWrapper).toBeNull();
|
|
120
|
+
});
|
|
121
|
+
it("does not render number buttons in horizontal alignment, number button type is horizontal, and read-only", async () => {
|
|
122
|
+
const page = await newE2EPage();
|
|
123
|
+
await page.setContent(html `<calcite-input-number number-button-type="horizontal" read-only></calcite-input-number>`);
|
|
124
|
+
const numberHorizontalItemDown = await page.find("calcite-input-number >>> .number-button-item--horizontal[data-adjustment='down']");
|
|
125
|
+
const numberHorizontalItemUp = await page.find("calcite-input-number >>> .number-button-item--horizontal[data-adjustment='up']");
|
|
126
|
+
expect(numberHorizontalItemDown).toBeNull();
|
|
127
|
+
expect(numberHorizontalItemUp).toBeNull();
|
|
128
|
+
});
|
|
129
|
+
it("renders no buttons and number button type is none", async () => {
|
|
130
|
+
const page = await newE2EPage();
|
|
131
|
+
await page.setContent(html `<calcite-input-number number-button-type="none"></calcite-input-number>`);
|
|
132
|
+
const numberVerticalWrapper = await page.find("calcite-input-number >>> .number-button-wrapper");
|
|
133
|
+
const numberHorizontalItemDown = await page.find("calcite-input-number >>> .number-button-item--horizontal[data-adjustment='down']");
|
|
134
|
+
const numberHorizontalItemUp = await page.find("calcite-input-number >>> .number-button-item--horizontal[data-adjustment='up']");
|
|
135
|
+
expect(numberVerticalWrapper).toBeNull();
|
|
136
|
+
expect(numberHorizontalItemDown).toBeNull();
|
|
137
|
+
expect(numberHorizontalItemUp).toBeNull();
|
|
138
|
+
});
|
|
139
|
+
it("is focusable", async () => focusable(`calcite-input-number`, {
|
|
140
|
+
shadowFocusTargetSelector: "input"
|
|
141
|
+
}));
|
|
142
|
+
describe("increment/decrement functionality", () => {
|
|
143
|
+
let page;
|
|
144
|
+
beforeEach(async () => {
|
|
145
|
+
page = await newE2EPage();
|
|
146
|
+
});
|
|
147
|
+
it("correctly increments and decrements decimal value when number buttons are clicked and the step precision matches the precision of the initial value", async () => {
|
|
148
|
+
await page.setContent(html `<calcite-input-number value="3.123" step="0.001"></calcite-input-number>`);
|
|
149
|
+
const element = await page.find("calcite-input-number");
|
|
150
|
+
const numberHorizontalItemDown = await page.find("calcite-input-number >>> .number-button-item[data-adjustment='down']");
|
|
151
|
+
const numberHorizontalItemUp = await page.find("calcite-input-number >>> .number-button-item[data-adjustment='up']");
|
|
152
|
+
expect(await element.getProperty("value")).toBe("3.123");
|
|
153
|
+
await numberHorizontalItemDown.click();
|
|
154
|
+
await page.waitForChanges();
|
|
155
|
+
expect(await element.getProperty("value")).toBe("3.122");
|
|
156
|
+
await numberHorizontalItemUp.click();
|
|
157
|
+
await page.waitForChanges();
|
|
158
|
+
expect(await element.getProperty("value")).toBe("3.123");
|
|
159
|
+
await numberHorizontalItemUp.click();
|
|
160
|
+
await page.waitForChanges();
|
|
161
|
+
expect(await element.getProperty("value")).toBe("3.124");
|
|
162
|
+
await numberHorizontalItemUp.click();
|
|
163
|
+
await numberHorizontalItemUp.click();
|
|
164
|
+
await numberHorizontalItemUp.click();
|
|
165
|
+
await numberHorizontalItemUp.click();
|
|
166
|
+
await numberHorizontalItemUp.click();
|
|
167
|
+
await numberHorizontalItemUp.click();
|
|
168
|
+
await numberHorizontalItemUp.click();
|
|
169
|
+
await numberHorizontalItemUp.click();
|
|
170
|
+
await numberHorizontalItemUp.click();
|
|
171
|
+
await numberHorizontalItemUp.click();
|
|
172
|
+
expect(await element.getProperty("value")).toBe("3.134");
|
|
173
|
+
});
|
|
174
|
+
it("correctly increments and decrements initial decimal value by 1 when number buttons are clicked and step is set to default of 1.", async () => {
|
|
175
|
+
await page.setContent(html `<calcite-input-number value="3.123"></calcite-input-number>`);
|
|
176
|
+
const element = await page.find("calcite-input-number");
|
|
177
|
+
const numberHorizontalItemDown = await page.find("calcite-input-number >>> .number-button-item[data-adjustment='down']");
|
|
178
|
+
const numberHorizontalItemUp = await page.find("calcite-input-number >>> .number-button-item[data-adjustment='up']");
|
|
179
|
+
expect(await element.getProperty("value")).toBe("3.123");
|
|
180
|
+
await numberHorizontalItemDown.click();
|
|
181
|
+
await page.waitForChanges();
|
|
182
|
+
expect(await element.getProperty("value")).toBe("2.123");
|
|
183
|
+
await numberHorizontalItemUp.click();
|
|
184
|
+
await page.waitForChanges();
|
|
185
|
+
expect(await element.getProperty("value")).toBe("3.123");
|
|
186
|
+
await numberHorizontalItemUp.click();
|
|
187
|
+
await page.waitForChanges();
|
|
188
|
+
expect(await element.getProperty("value")).toBe("4.123");
|
|
189
|
+
await numberHorizontalItemUp.click();
|
|
190
|
+
await numberHorizontalItemUp.click();
|
|
191
|
+
await numberHorizontalItemUp.click();
|
|
192
|
+
await numberHorizontalItemUp.click();
|
|
193
|
+
await numberHorizontalItemUp.click();
|
|
194
|
+
await numberHorizontalItemUp.click();
|
|
195
|
+
await numberHorizontalItemUp.click();
|
|
196
|
+
await numberHorizontalItemUp.click();
|
|
197
|
+
await numberHorizontalItemUp.click();
|
|
198
|
+
await numberHorizontalItemUp.click();
|
|
199
|
+
expect(await element.getProperty("value")).toBe("14.123");
|
|
200
|
+
});
|
|
201
|
+
it("correctly increments and decrements value when number buttons are clicked and step is set to an integer", async () => {
|
|
202
|
+
await page.setContent(html `<calcite-input-number step="10" value="15"></calcite-input-number>`);
|
|
203
|
+
const element = await page.find("calcite-input-number");
|
|
204
|
+
const numberHorizontalItemDown = await page.find("calcite-input-number >>> .number-button-item[data-adjustment='down']");
|
|
205
|
+
const numberHorizontalItemUp = await page.find("calcite-input-number >>> .number-button-item[data-adjustment='up']");
|
|
206
|
+
await numberHorizontalItemDown.click();
|
|
207
|
+
await page.waitForChanges();
|
|
208
|
+
expect(await element.getProperty("value")).toBe("5");
|
|
209
|
+
await numberHorizontalItemUp.click();
|
|
210
|
+
await page.waitForChanges();
|
|
211
|
+
expect(await element.getProperty("value")).toBe("15");
|
|
212
|
+
await numberHorizontalItemUp.click();
|
|
213
|
+
await page.waitForChanges();
|
|
214
|
+
expect(await element.getProperty("value")).toBe("25");
|
|
215
|
+
});
|
|
216
|
+
it("correctly increments and decrements on long hold on mousedown and step is set to a decimal", async () => {
|
|
217
|
+
await page.setContent(html `<calcite-input-number value="0" step="0.01"></calcite-input-number>`);
|
|
218
|
+
const input = await page.find("calcite-input-number");
|
|
219
|
+
const [buttonUpLocationX, buttonUpLocationY] = await getElementXY(page, "calcite-input-number", ".number-button-item[data-adjustment='up']");
|
|
220
|
+
const inputEventSpy = await input.spyOnEvent("calciteInputNumberInput");
|
|
221
|
+
await page.mouse.move(buttonUpLocationX, buttonUpLocationY);
|
|
222
|
+
await page.mouse.down();
|
|
223
|
+
await page.waitForTimeout(delayFor2UpdatesInMs);
|
|
224
|
+
await page.mouse.up();
|
|
225
|
+
await page.waitForChanges();
|
|
226
|
+
const totalNudgesUp = inputEventSpy.length;
|
|
227
|
+
expect(await input.getProperty("value")).toBe(`0.0${totalNudgesUp}`);
|
|
228
|
+
const [buttonDownLocationX, buttonDownLocationY] = await getElementXY(page, "calcite-input-number", ".number-button-item[data-adjustment='down']");
|
|
229
|
+
await page.mouse.move(buttonDownLocationX, buttonDownLocationY);
|
|
230
|
+
await page.mouse.down();
|
|
231
|
+
await page.waitForTimeout(delayFor2UpdatesInMs);
|
|
232
|
+
await page.mouse.up();
|
|
233
|
+
await page.waitForChanges();
|
|
234
|
+
const totalNudgesDown = inputEventSpy.length - totalNudgesUp;
|
|
235
|
+
const finalNudgedValue = totalNudgesUp - totalNudgesDown;
|
|
236
|
+
expect(await input.getProperty("value")).toBe(finalNudgedValue === 0 ? "0" : `0.0${finalNudgedValue}`);
|
|
237
|
+
});
|
|
238
|
+
it("correctly increments and decrements value by one when any is set for step", async () => {
|
|
239
|
+
await page.setContent(html `<calcite-input-number step="any" value="5.5"></calcite-input-number>`);
|
|
240
|
+
const element = await page.find("calcite-input-number");
|
|
241
|
+
const numberHorizontalItemDown = await page.find("calcite-input-number >>> .number-button-item[data-adjustment='down']");
|
|
242
|
+
const numberHorizontalItemUp = await page.find("calcite-input-number >>> .number-button-item[data-adjustment='up']");
|
|
243
|
+
await numberHorizontalItemDown.click();
|
|
244
|
+
await page.waitForChanges();
|
|
245
|
+
expect(await element.getProperty("value")).toBe("4.5");
|
|
246
|
+
await numberHorizontalItemUp.click();
|
|
247
|
+
await page.waitForChanges();
|
|
248
|
+
expect(await element.getProperty("value")).toBe("5.5");
|
|
249
|
+
await numberHorizontalItemUp.click();
|
|
250
|
+
await page.waitForChanges();
|
|
251
|
+
expect(await element.getProperty("value")).toBe("6.5");
|
|
252
|
+
});
|
|
253
|
+
it("correctly increments and decrements value by one when step is undefined", async () => {
|
|
254
|
+
await page.setContent(html `<calcite-input-number value="5"></calcite-input-number>`);
|
|
255
|
+
const element = await page.find("calcite-input-number");
|
|
256
|
+
const numberHorizontalItemDown = await page.find("calcite-input-number >>> .number-button-item[data-adjustment='down']");
|
|
257
|
+
const numberHorizontalItemUp = await page.find("calcite-input-number >>> .number-button-item[data-adjustment='up']");
|
|
258
|
+
await numberHorizontalItemDown.click();
|
|
259
|
+
await page.waitForChanges();
|
|
260
|
+
expect(await element.getProperty("value")).toBe("4");
|
|
261
|
+
await numberHorizontalItemUp.click();
|
|
262
|
+
await page.waitForChanges();
|
|
263
|
+
expect(await element.getProperty("value")).toBe("5");
|
|
264
|
+
await numberHorizontalItemUp.click();
|
|
265
|
+
await page.waitForChanges();
|
|
266
|
+
expect(await element.getProperty("value")).toBe("6");
|
|
267
|
+
});
|
|
268
|
+
it("correctly stops decrementing value when min is set", async () => {
|
|
269
|
+
await page.setContent(html `<calcite-input-number min="10" value="11"></calcite-input-number>`);
|
|
270
|
+
const element = await page.find("calcite-input-number");
|
|
271
|
+
const numberHorizontalItemDown = await page.find("calcite-input-number >>> .number-button-item[data-adjustment='down']");
|
|
272
|
+
await numberHorizontalItemDown.click();
|
|
273
|
+
await page.waitForChanges();
|
|
274
|
+
expect(await element.getProperty("value")).toBe("10");
|
|
275
|
+
await numberHorizontalItemDown.click();
|
|
276
|
+
await page.waitForChanges();
|
|
277
|
+
expect(await element.getProperty("value")).toBe("10");
|
|
278
|
+
});
|
|
279
|
+
it("correctly stops incrementing value when max is set", async () => {
|
|
280
|
+
await page.setContent(html `<calcite-input-number max="10" value="9"></calcite-input-number>`);
|
|
281
|
+
const element = await page.find("calcite-input-number");
|
|
282
|
+
const numberHorizontalItemUp = await page.find("calcite-input-number >>> .number-button-item[data-adjustment='up']");
|
|
283
|
+
await numberHorizontalItemUp.click();
|
|
284
|
+
await page.waitForChanges();
|
|
285
|
+
expect(await element.getProperty("value")).toBe("10");
|
|
286
|
+
await numberHorizontalItemUp.click();
|
|
287
|
+
await page.waitForChanges();
|
|
288
|
+
expect(await element.getProperty("value")).toBe("10");
|
|
289
|
+
});
|
|
290
|
+
it("should emit event when up or down clicked", async () => {
|
|
291
|
+
await page.setContent(html `<calcite-input-number max="0" value="-2"></calcite-input-number>`);
|
|
292
|
+
const calciteInputNumberInput = await page.spyOnEvent("calciteInputNumberInput");
|
|
293
|
+
const numberHorizontalItemUp = await page.find("calcite-input-number >>> .number-button-item[data-adjustment='up']");
|
|
294
|
+
expect(calciteInputNumberInput).toHaveReceivedEventTimes(0);
|
|
295
|
+
await numberHorizontalItemUp.click();
|
|
296
|
+
await page.waitForChanges();
|
|
297
|
+
expect(calciteInputNumberInput).toHaveReceivedEventTimes(1);
|
|
298
|
+
const numberHorizontalItemDown = await page.find("calcite-input-number >>> .number-button-item[data-adjustment='down']");
|
|
299
|
+
await numberHorizontalItemDown.click();
|
|
300
|
+
await page.waitForChanges();
|
|
301
|
+
expect(calciteInputNumberInput).toHaveReceivedEventTimes(2);
|
|
302
|
+
await numberHorizontalItemDown.click();
|
|
303
|
+
await page.waitForChanges();
|
|
304
|
+
expect(calciteInputNumberInput).toHaveReceivedEventTimes(3);
|
|
305
|
+
});
|
|
306
|
+
it("should emit an event on an interval when ArrowUp/ArrowDown keys are down and stop on key up", async () => {
|
|
307
|
+
await page.setContent(html `<calcite-input-number value="0"></calcite-input-number>`);
|
|
308
|
+
const calciteInputNumberInput = await page.spyOnEvent("calciteInputNumberInput");
|
|
309
|
+
const input = await page.find("calcite-input-number");
|
|
310
|
+
expect(calciteInputNumberInput).toHaveReceivedEventTimes(0);
|
|
311
|
+
await input.callMethod("setFocus");
|
|
312
|
+
await page.keyboard.down("ArrowUp");
|
|
313
|
+
await page.waitForTimeout(delayFor2UpdatesInMs);
|
|
314
|
+
await page.waitForEvent("calciteInputNumberInput");
|
|
315
|
+
await page.keyboard.up("ArrowUp");
|
|
316
|
+
await page.waitForChanges();
|
|
317
|
+
const totalNudgesUp = calciteInputNumberInput.length;
|
|
318
|
+
expect(await input.getProperty("value")).toBe(`${totalNudgesUp}`);
|
|
319
|
+
await page.keyboard.down("ArrowDown");
|
|
320
|
+
await page.waitForTimeout(delayFor2UpdatesInMs);
|
|
321
|
+
await page.keyboard.up("ArrowDown");
|
|
322
|
+
await page.waitForChanges();
|
|
323
|
+
const totalNudgesDown = calciteInputNumberInput.length - totalNudgesUp;
|
|
324
|
+
const finalNudgedValue = totalNudgesUp - totalNudgesDown;
|
|
325
|
+
expect(await input.getProperty("value")).toBe(`${finalNudgedValue}`);
|
|
326
|
+
});
|
|
327
|
+
it.skip("should emit an event on an interval when up/down buttons are down and stop on mouseup/mouseleave", async () => {
|
|
328
|
+
await page.setContent(html `<calcite-input-number value="0"></calcite-input-number>`);
|
|
329
|
+
const input = await page.find("calcite-input-number");
|
|
330
|
+
const calciteInputNumberInput = await page.spyOnEvent("calciteInputNumberInput");
|
|
331
|
+
const [buttonUpLocationX, buttonUpLocationY] = await getElementXY(page, "calcite-input-number", ".number-button-item[data-adjustment='up']");
|
|
332
|
+
expect(calciteInputNumberInput).toHaveReceivedEventTimes(0);
|
|
333
|
+
await page.mouse.move(buttonUpLocationX, buttonUpLocationY);
|
|
334
|
+
await page.mouse.down();
|
|
335
|
+
await page.waitForTimeout(delayFor2UpdatesInMs);
|
|
336
|
+
await page.mouse.up();
|
|
337
|
+
await page.waitForChanges();
|
|
338
|
+
let totalNudgesUp = calciteInputNumberInput.length;
|
|
339
|
+
expect(await input.getProperty("value")).toBe(`${totalNudgesUp}`);
|
|
340
|
+
await page.mouse.down();
|
|
341
|
+
await page.waitForTimeout(delayFor2UpdatesInMs);
|
|
342
|
+
await page.mouse.move(buttonUpLocationX - 1, buttonUpLocationY - 1);
|
|
343
|
+
totalNudgesUp = calciteInputNumberInput.length;
|
|
344
|
+
expect(await input.getProperty("value")).toBe(`${totalNudgesUp}`);
|
|
345
|
+
// assert changes no longer emitted after moving away from stepper
|
|
346
|
+
await page.waitForTimeout(delayFor2UpdatesInMs);
|
|
347
|
+
expect(await input.getProperty("value")).toBe(`${totalNudgesUp}`);
|
|
348
|
+
await page.mouse.up(); // mouseleave assertion done, we release
|
|
349
|
+
const [buttonDownLocationX, buttonDownLocationY] = await getElementXY(page, "calcite-input-number", ".number-button-item[data-adjustment='down']");
|
|
350
|
+
await page.mouse.move(buttonDownLocationX, buttonDownLocationY);
|
|
351
|
+
await page.mouse.down();
|
|
352
|
+
await page.waitForTimeout(delayFor2UpdatesInMs);
|
|
353
|
+
await page.mouse.up();
|
|
354
|
+
await page.waitForChanges();
|
|
355
|
+
let totalNudgesDown = calciteInputNumberInput.length - totalNudgesUp;
|
|
356
|
+
let finalNudgedValue = totalNudgesUp - totalNudgesDown;
|
|
357
|
+
expect(await input.getProperty("value")).toBe(`${finalNudgedValue}`);
|
|
358
|
+
await page.mouse.down();
|
|
359
|
+
await page.waitForTimeout(delayFor2UpdatesInMs);
|
|
360
|
+
await page.mouse.move(buttonDownLocationX - 1, buttonDownLocationY - 1);
|
|
361
|
+
totalNudgesDown = calciteInputNumberInput.length - totalNudgesUp;
|
|
362
|
+
finalNudgedValue = totalNudgesUp - totalNudgesDown;
|
|
363
|
+
expect(await input.getProperty("value")).toBe(`${finalNudgedValue}`);
|
|
364
|
+
// assert changes no longer emitted after moving away from stepper
|
|
365
|
+
await page.waitForTimeout(delayFor2UpdatesInMs);
|
|
366
|
+
expect(await input.getProperty("value")).toBe(`${finalNudgedValue}`);
|
|
367
|
+
});
|
|
368
|
+
it("when both 'ArrowUp' and 'ArrowDown' are pressed at the same time most recently pressed key takes over", async () => {
|
|
369
|
+
await page.setContent(html `<calcite-input-number value="0"></calcite-input-number>`);
|
|
370
|
+
const element = await page.find("calcite-input-number");
|
|
371
|
+
await element.callMethod("setFocus");
|
|
372
|
+
const arrowUpDown = page.keyboard.down("ArrowUp");
|
|
373
|
+
const arrowDownDown = page.keyboard.down("ArrowDown");
|
|
374
|
+
await Promise.all([arrowUpDown, arrowDownDown]);
|
|
375
|
+
await page.waitForTimeout(delayFor2UpdatesInMs);
|
|
376
|
+
expect(await element.getProperty("value")).toBe("-1");
|
|
377
|
+
});
|
|
378
|
+
it("should emit event only twice when toggled fast between up/down arrows", async () => {
|
|
379
|
+
await page.setContent(html `<calcite-input-number value="0"></calcite-input-number>`);
|
|
380
|
+
const calciteInputNumberInput = await page.spyOnEvent("calciteInputNumberInput");
|
|
381
|
+
const element = await page.find("calcite-input-number");
|
|
382
|
+
await element.callMethod("setFocus");
|
|
383
|
+
const arrowUpDown = page.keyboard.down("ArrowUp");
|
|
384
|
+
const arrowUpUp = page.keyboard.up("ArrowUp");
|
|
385
|
+
const arrowDownDown = page.keyboard.down("ArrowDown");
|
|
386
|
+
const arrowDownUp = page.keyboard.up("ArrowDown");
|
|
387
|
+
await Promise.all([arrowUpDown, arrowUpUp, arrowDownDown, arrowDownUp]);
|
|
388
|
+
await page.waitForChanges();
|
|
389
|
+
expect(calciteInputNumberInput).toHaveReceivedEventTimes(2);
|
|
390
|
+
});
|
|
391
|
+
it("up/down arrow keys increments and decrements correctly when the step is a decimal", async () => {
|
|
392
|
+
await page.setContent(html `<calcite-input-number step="0.1"></calcite-input-number> `);
|
|
393
|
+
const input = await page.find("calcite-input-number");
|
|
394
|
+
await input.callMethod("setFocus");
|
|
395
|
+
await page.keyboard.press("ArrowUp");
|
|
396
|
+
await page.waitForChanges();
|
|
397
|
+
expect(await input.getProperty("value")).toBe("0.1");
|
|
398
|
+
await page.keyboard.press("ArrowUp");
|
|
399
|
+
await page.waitForChanges();
|
|
400
|
+
expect(await input.getProperty("value")).toBe("0.2");
|
|
401
|
+
await page.keyboard.press("ArrowDown");
|
|
402
|
+
await page.waitForChanges();
|
|
403
|
+
expect(await input.getProperty("value")).toBe("0.1");
|
|
404
|
+
await page.keyboard.press("ArrowDown");
|
|
405
|
+
await page.waitForChanges();
|
|
406
|
+
expect(await input.getProperty("value")).toBe("0");
|
|
407
|
+
});
|
|
408
|
+
it("up/down arrow keys increments and decrements correctly when the step is an integer and the value is a decimal", async () => {
|
|
409
|
+
await page.setContent(html `<calcite-input-number step="5" value="1.008"></calcite-input-number>`);
|
|
410
|
+
const input = await page.find("calcite-input-number");
|
|
411
|
+
await input.callMethod("setFocus");
|
|
412
|
+
await page.keyboard.press("ArrowUp");
|
|
413
|
+
await page.waitForChanges();
|
|
414
|
+
expect(await input.getProperty("value")).toBe("6.008");
|
|
415
|
+
await page.keyboard.press("ArrowUp");
|
|
416
|
+
await page.waitForChanges();
|
|
417
|
+
expect(await input.getProperty("value")).toBe("11.008");
|
|
418
|
+
await page.keyboard.press("ArrowDown");
|
|
419
|
+
await page.waitForChanges();
|
|
420
|
+
expect(await input.getProperty("value")).toBe("6.008");
|
|
421
|
+
await page.keyboard.press("ArrowDown");
|
|
422
|
+
await page.waitForChanges();
|
|
423
|
+
expect(await input.getProperty("value")).toBe("1.008");
|
|
424
|
+
});
|
|
425
|
+
});
|
|
426
|
+
describe("direct changes to the value", () => {
|
|
427
|
+
let page;
|
|
428
|
+
beforeEach(async () => {
|
|
429
|
+
page = await newE2EPage();
|
|
430
|
+
});
|
|
431
|
+
it("incrementing correctly updates the value after focus and blur events", async () => {
|
|
432
|
+
await page.setContent(html `<calcite-input-number value="1"></calcite-input-number>`);
|
|
433
|
+
const element = await page.find("calcite-input-number");
|
|
434
|
+
await element.click();
|
|
435
|
+
await page.waitForChanges;
|
|
436
|
+
await element.callMethod("blur");
|
|
437
|
+
await page.waitForChanges;
|
|
438
|
+
element.setProperty("value", "2");
|
|
439
|
+
await page.waitForChanges();
|
|
440
|
+
expect(await element.getProperty("value")).toBe("2");
|
|
441
|
+
const input = await page.find("calcite-input-number >>> input");
|
|
442
|
+
expect(await input.getProperty("value")).toBe("2");
|
|
443
|
+
});
|
|
444
|
+
});
|
|
445
|
+
describe("emits events when value is modified", () => {
|
|
446
|
+
async function assertChangeEvents() {
|
|
447
|
+
const page = await newE2EPage();
|
|
448
|
+
await page.setContent(html `<calcite-input-number></calcite-input-number>`);
|
|
449
|
+
const element = await page.find("calcite-input-number");
|
|
450
|
+
const calciteInputNumberInput = await element.spyOnEvent("calciteInputNumberInput");
|
|
451
|
+
const calciteInputNumberChange = await element.spyOnEvent("calciteInputNumberChange");
|
|
452
|
+
const inputFirstPart = "12345";
|
|
453
|
+
await element.callMethod("setFocus");
|
|
454
|
+
await typeNumberValue(page, inputFirstPart);
|
|
455
|
+
expect(await element.getProperty("value")).toBe(inputFirstPart);
|
|
456
|
+
expect(calciteInputNumberInput).toHaveReceivedEventTimes(5);
|
|
457
|
+
expect(calciteInputNumberChange).toHaveReceivedEventTimes(0);
|
|
458
|
+
await element.callMethod("setFocus");
|
|
459
|
+
await page.keyboard.press("Enter");
|
|
460
|
+
expect(calciteInputNumberInput).toHaveReceivedEventTimes(5);
|
|
461
|
+
expect(calciteInputNumberChange).toHaveReceivedEventTimes(1);
|
|
462
|
+
await element.callMethod("setFocus");
|
|
463
|
+
await page.keyboard.press("Enter");
|
|
464
|
+
expect(calciteInputNumberInput).toHaveReceivedEventTimes(5);
|
|
465
|
+
expect(calciteInputNumberChange).toHaveReceivedEventTimes(1);
|
|
466
|
+
const textSecondPart = "67890";
|
|
467
|
+
await element.callMethod("setFocus");
|
|
468
|
+
await typeNumberValue(page, textSecondPart);
|
|
469
|
+
expect(calciteInputNumberInput).toHaveReceivedEventTimes(10);
|
|
470
|
+
expect(calciteInputNumberChange).toHaveReceivedEventTimes(1);
|
|
471
|
+
await element.callMethod("setFocus");
|
|
472
|
+
await page.keyboard.press("Tab");
|
|
473
|
+
expect(calciteInputNumberInput).toHaveReceivedEventTimes(10);
|
|
474
|
+
expect(calciteInputNumberChange).toHaveReceivedEventTimes(2);
|
|
475
|
+
expect(await element.getProperty("value")).toBe(`${inputFirstPart}${textSecondPart}`);
|
|
476
|
+
await element.callMethod("setFocus");
|
|
477
|
+
await page.keyboard.press("Tab");
|
|
478
|
+
expect(calciteInputNumberInput).toHaveReceivedEventTimes(10);
|
|
479
|
+
expect(calciteInputNumberChange).toHaveReceivedEventTimes(2);
|
|
480
|
+
expect(await element.getProperty("value")).toBe(`${inputFirstPart}${textSecondPart}`);
|
|
481
|
+
const programmaticSetValue = "1337";
|
|
482
|
+
element.setProperty("value", programmaticSetValue);
|
|
483
|
+
await page.waitForChanges();
|
|
484
|
+
expect(await element.getProperty("value")).toBe(programmaticSetValue);
|
|
485
|
+
expect(calciteInputNumberInput).toHaveReceivedEventTimes(10);
|
|
486
|
+
expect(calciteInputNumberChange).toHaveReceivedEventTimes(2);
|
|
487
|
+
}
|
|
488
|
+
it("emits events", () => assertChangeEvents());
|
|
489
|
+
});
|
|
490
|
+
it("value stays in sync when value property is controlled with javascript", async () => {
|
|
491
|
+
const page = await newE2EPage();
|
|
492
|
+
await page.setContent(html `<calcite-input-number></calcite-input-number>`);
|
|
493
|
+
const calciteInput = await page.find("calcite-input-number");
|
|
494
|
+
const input = await page.find("calcite-input-number >>> input");
|
|
495
|
+
await page.evaluate(() => {
|
|
496
|
+
document
|
|
497
|
+
.querySelector("calcite-input-number")
|
|
498
|
+
.addEventListener("calciteInputNumberInput", (event) => {
|
|
499
|
+
const target = event.target;
|
|
500
|
+
target.value = "5";
|
|
501
|
+
});
|
|
502
|
+
});
|
|
503
|
+
await calciteInput.click();
|
|
504
|
+
await typeNumberValue(page, "1");
|
|
505
|
+
await page.waitForChanges();
|
|
506
|
+
expect(await calciteInput.getProperty("value")).toBe("5");
|
|
507
|
+
expect(await input.getProperty("value")).toBe("5");
|
|
508
|
+
await typeNumberValue(page, "2");
|
|
509
|
+
await page.waitForChanges();
|
|
510
|
+
expect(await calciteInput.getProperty("value")).toBe("5");
|
|
511
|
+
expect(await input.getProperty("value")).toBe("5");
|
|
512
|
+
});
|
|
513
|
+
it("doesn't round numbers larger than double-precision floating-point", async () => {
|
|
514
|
+
const preciseNumber = "4.9999999999999999";
|
|
515
|
+
const page = await newE2EPage();
|
|
516
|
+
await page.setContent(html `<calcite-input-number value=${preciseNumber}></calcite-input-number>`);
|
|
517
|
+
const element = await page.find("calcite-input-number");
|
|
518
|
+
expect(await element.getProperty("value")).toBe(preciseNumber);
|
|
519
|
+
});
|
|
520
|
+
it("allows typing negative decimal values", async () => {
|
|
521
|
+
const page = await newE2EPage();
|
|
522
|
+
await page.setContent(html `<calcite-input-number></calcite-input-number>`);
|
|
523
|
+
const element = await page.find("calcite-input-number");
|
|
524
|
+
await element.callMethod("setFocus");
|
|
525
|
+
await page.waitForChanges();
|
|
526
|
+
await typeNumberValue(page, "-");
|
|
527
|
+
await page.waitForChanges();
|
|
528
|
+
expect(await element.getProperty("value")).toBe("");
|
|
529
|
+
await typeNumberValue(page, "0.001");
|
|
530
|
+
await page.waitForChanges();
|
|
531
|
+
expect(await element.getProperty("value")).toBe("-0.001");
|
|
532
|
+
});
|
|
533
|
+
it("allows exponential number format", async () => {
|
|
534
|
+
const page = await newE2EPage();
|
|
535
|
+
await page.setContent(html `<calcite-input-number></calcite-input-number>`);
|
|
536
|
+
const element = await page.find("calcite-input-number");
|
|
537
|
+
await element.callMethod("setFocus");
|
|
538
|
+
await page.waitForChanges();
|
|
539
|
+
await typeNumberValue(page, "1.2e5");
|
|
540
|
+
await page.waitForChanges();
|
|
541
|
+
expect(Number(await element.getProperty("value"))).toBe(120000);
|
|
542
|
+
await page.keyboard.press("ArrowLeft");
|
|
543
|
+
await page.waitForChanges();
|
|
544
|
+
await typeNumberValue(page, "-");
|
|
545
|
+
await page.waitForChanges();
|
|
546
|
+
expect(Number(await element.getProperty("value"))).toBe(0.000012);
|
|
547
|
+
});
|
|
548
|
+
it("sanitizes numbers when using exponential format", async () => {
|
|
549
|
+
const page = await newE2EPage();
|
|
550
|
+
await page.setContent(html `<calcite-input-number></calcite-input-number>`);
|
|
551
|
+
const element = await page.find("calcite-input-number");
|
|
552
|
+
await element.callMethod("setFocus");
|
|
553
|
+
await page.waitForChanges();
|
|
554
|
+
await typeNumberValue(page, "------000005eeee00005----eee");
|
|
555
|
+
await page.waitForChanges();
|
|
556
|
+
expect(await element.getProperty("value")).toBe("-5e5");
|
|
557
|
+
expect(Number(await element.getProperty("value"))).toBe(-500000);
|
|
558
|
+
});
|
|
559
|
+
it("increments correctly with exponential numbers", async () => {
|
|
560
|
+
const page = await newE2EPage();
|
|
561
|
+
await page.setContent(html `<calcite-input-number></calcite-input-number>`);
|
|
562
|
+
const element = await page.find("calcite-input-number");
|
|
563
|
+
await element.callMethod("setFocus");
|
|
564
|
+
await page.waitForChanges();
|
|
565
|
+
await typeNumberValue(page, "2e-2");
|
|
566
|
+
await page.waitForChanges();
|
|
567
|
+
expect(Number(await element.getProperty("value"))).toBe(0.02);
|
|
568
|
+
await page.waitForChanges();
|
|
569
|
+
await page.keyboard.press("ArrowUp");
|
|
570
|
+
await page.waitForChanges();
|
|
571
|
+
expect(Number(await element.getProperty("value"))).toBe(1.02);
|
|
572
|
+
});
|
|
573
|
+
it("decrements correctly with exponential numbers", async () => {
|
|
574
|
+
const page = await newE2EPage();
|
|
575
|
+
await page.setContent(html `<calcite-input-number step="5"></calcite-input-number>`);
|
|
576
|
+
const element = await page.find("calcite-input-number");
|
|
577
|
+
await element.callMethod("setFocus");
|
|
578
|
+
await page.waitForChanges();
|
|
579
|
+
await typeNumberValue(page, "2e2");
|
|
580
|
+
await page.waitForChanges();
|
|
581
|
+
expect(Number(await element.getProperty("value"))).toBe(200);
|
|
582
|
+
await page.waitForChanges();
|
|
583
|
+
await page.keyboard.press("ArrowDown");
|
|
584
|
+
await page.waitForChanges();
|
|
585
|
+
expect(Number(await element.getProperty("value"))).toBe(195);
|
|
586
|
+
});
|
|
587
|
+
it("disallows typing number with shift modifier key down", async () => {
|
|
588
|
+
const page = await newE2EPage();
|
|
589
|
+
await page.setContent(html `<calcite-input-number></calcite-input-number>`);
|
|
590
|
+
const calciteInput = await page.find("calcite-input-number");
|
|
591
|
+
const input = await page.find("calcite-input-number >>> input");
|
|
592
|
+
await calciteInput.callMethod("setFocus");
|
|
593
|
+
for (let i = 0; i < numberKeys.length; i++) {
|
|
594
|
+
await page.keyboard.down("Shift");
|
|
595
|
+
await page.keyboard.press(numberKeys[i]);
|
|
596
|
+
await page.keyboard.up("Shift");
|
|
597
|
+
expect(await calciteInput.getProperty("value")).toBeFalsy();
|
|
598
|
+
expect(await input.getProperty("value")).toBeFalsy();
|
|
599
|
+
}
|
|
600
|
+
const nonELetterKeys = letterKeys.filter((key) => key !== "e");
|
|
601
|
+
for (let i = 0; i < nonELetterKeys.length; i++) {
|
|
602
|
+
await page.keyboard.down("Shift");
|
|
603
|
+
await page.keyboard.press(nonELetterKeys[i]);
|
|
604
|
+
await page.keyboard.up("Shift");
|
|
605
|
+
expect(await calciteInput.getProperty("value")).toBeFalsy();
|
|
606
|
+
expect(await input.getProperty("value")).toBeFalsy();
|
|
607
|
+
}
|
|
608
|
+
});
|
|
609
|
+
it("allows shift tabbing", async () => {
|
|
610
|
+
const page = await newE2EPage();
|
|
611
|
+
await page.setContent(html `
|
|
612
|
+
<calcite-input-number id="input1" label="one"></calcite-input-number>
|
|
613
|
+
<calcite-input-number id="input2" label="two"></calcite-input-number>
|
|
614
|
+
`);
|
|
615
|
+
const calciteInput2 = await page.find("#input2");
|
|
616
|
+
await calciteInput2.callMethod("setFocus");
|
|
617
|
+
expect(await page.evaluate(() => document.activeElement.getAttribute("label"))).toEqual("two");
|
|
618
|
+
await page.keyboard.down("Shift");
|
|
619
|
+
await page.keyboard.press("Tab");
|
|
620
|
+
expect(await page.evaluate(() => document.activeElement.getAttribute("label"))).toEqual("one");
|
|
621
|
+
});
|
|
622
|
+
it("typing zero and then a non-zero number sets and emits the non-zero number", async () => {
|
|
623
|
+
const page = await newE2EPage();
|
|
624
|
+
await page.setContent(html `<calcite-input-number></calcite-input-number>`);
|
|
625
|
+
const calciteInputNumberInput = await page.spyOnEvent("calciteInputNumberInput");
|
|
626
|
+
const calciteInput = await page.find("calcite-input-number");
|
|
627
|
+
await calciteInput.callMethod("setFocus");
|
|
628
|
+
await page.keyboard.press("0");
|
|
629
|
+
await page.waitForChanges();
|
|
630
|
+
expect(await calciteInput.getProperty("value")).toBe("0");
|
|
631
|
+
expect(calciteInputNumberInput).toHaveReceivedEventTimes(1);
|
|
632
|
+
await page.keyboard.press("1");
|
|
633
|
+
await page.waitForChanges();
|
|
634
|
+
expect(await calciteInput.getProperty("value")).toBe("1");
|
|
635
|
+
expect(calciteInputNumberInput).toHaveReceivedEventTimes(2);
|
|
636
|
+
});
|
|
637
|
+
it("allows any valid number", async () => {
|
|
638
|
+
const page = await newE2EPage();
|
|
639
|
+
await page.setContent(html `<calcite-input-number></calcite-input-number>`);
|
|
640
|
+
const input = await page.find("calcite-input-number");
|
|
641
|
+
await input.callMethod("setFocus");
|
|
642
|
+
await typeNumberValue(page, "1.005");
|
|
643
|
+
await page.waitForChanges();
|
|
644
|
+
expect(await input.getProperty("value")).toBe("1.005");
|
|
645
|
+
});
|
|
646
|
+
it("allows clearing value with an empty string", async () => {
|
|
647
|
+
const page = await newE2EPage();
|
|
648
|
+
await page.setContent(html `<calcite-input-number value="1"></calcite-input-number>`);
|
|
649
|
+
const input = await page.find("calcite-input-number");
|
|
650
|
+
input.setProperty("value", "");
|
|
651
|
+
await page.waitForChanges();
|
|
652
|
+
expect(await input.getProperty("value")).toBe("");
|
|
653
|
+
});
|
|
654
|
+
describe("number locale support", () => {
|
|
655
|
+
// "nb" and "es-MX" locales skipped per: https://github.com/Esri/calcite-components/issues/2323
|
|
656
|
+
const localesWithIssues = ["ar", "bs", "mk", "nb", "es-MX"];
|
|
657
|
+
locales
|
|
658
|
+
.filter((locale) => !localesWithIssues.includes(locale))
|
|
659
|
+
.forEach((locale) => {
|
|
660
|
+
it(`displays decimal separator on initial load for ${locale} locale`, async () => {
|
|
661
|
+
const value = "1234.56";
|
|
662
|
+
const page = await newE2EPage();
|
|
663
|
+
await page.setContent(html `<calcite-input-number lang="${locale}" value="${value}"></calcite-input-number>`);
|
|
664
|
+
const calciteInput = await page.find("calcite-input-number");
|
|
665
|
+
const input = await page.find("calcite-input-number >>> input");
|
|
666
|
+
expect(await calciteInput.getProperty("value")).toBe(value);
|
|
667
|
+
expect(await input.getProperty("value")).toBe(localizeNumberString(value, locale));
|
|
668
|
+
});
|
|
669
|
+
it(`displays group and decimal separator on initial load for ${locale} locale using opt-in prop`, async () => {
|
|
670
|
+
const value = "1234.56";
|
|
671
|
+
const page = await newE2EPage();
|
|
672
|
+
await page.setContent(html `<calcite-input-number lang="${locale}" value="${value}" group-separator></calcite-input-number>`);
|
|
673
|
+
const calciteInput = await page.find("calcite-input-number");
|
|
674
|
+
const input = await page.find("calcite-input-number >>> input");
|
|
675
|
+
expect(await calciteInput.getProperty("value")).toBe(value);
|
|
676
|
+
expect(await input.getProperty("value")).toBe(localizeNumberString(value, locale, true));
|
|
677
|
+
});
|
|
678
|
+
it(`allows typing valid decimal characters for ${locale} locale`, async () => {
|
|
679
|
+
const page = await newE2EPage();
|
|
680
|
+
await page.setContent(html `<calcite-input-number lang="${locale}"></calcite-input-number>`);
|
|
681
|
+
const calciteInput = await page.find("calcite-input-number");
|
|
682
|
+
const input = await page.find("calcite-input-number >>> input");
|
|
683
|
+
const decimal = getDecimalSeparator(locale);
|
|
684
|
+
const unformattedValue = "1234.56";
|
|
685
|
+
await page.keyboard.press("Tab");
|
|
686
|
+
await typeNumberValue(page, "1234");
|
|
687
|
+
await page.keyboard.sendCharacter(decimal);
|
|
688
|
+
await input.press("5");
|
|
689
|
+
await input.press("6");
|
|
690
|
+
expect(await calciteInput.getProperty("value")).toBe(`1234.56`);
|
|
691
|
+
expect(await input.getProperty("value")).toBe(localizeNumberString(unformattedValue, locale));
|
|
692
|
+
});
|
|
693
|
+
it(`displays correct formatted value when using exponential numbers for ${locale} locale`, async () => {
|
|
694
|
+
const page = await newE2EPage();
|
|
695
|
+
await page.setContent(html `<calcite-input-number lang="${locale}"></calcite-input-number>`);
|
|
696
|
+
const calciteInput = await page.find("calcite-input-number");
|
|
697
|
+
const input = await page.find("calcite-input-number >>> input");
|
|
698
|
+
const decimal = getDecimalSeparator(locale);
|
|
699
|
+
await page.keyboard.press("Tab");
|
|
700
|
+
await page.waitForChanges();
|
|
701
|
+
await typeNumberValue(page, `1${decimal}5e-6`);
|
|
702
|
+
await page.waitForChanges();
|
|
703
|
+
expect(await calciteInput.getProperty("value")).toBe(`1.5e-6`);
|
|
704
|
+
expect(await input.getProperty("value")).toBe(localizeNumberString("1.5e-6", locale));
|
|
705
|
+
});
|
|
706
|
+
it(`displays correct formatted value when the value is changed programmatically for ${locale} locale`, async () => {
|
|
707
|
+
const page = await newE2EPage();
|
|
708
|
+
await page.setContent(html `<calcite-input-number lang="${locale}"></calcite-input-number><input id="external" />`);
|
|
709
|
+
await page.evaluate(() => {
|
|
710
|
+
const input = document.getElementById("external");
|
|
711
|
+
const calciteInput = document.querySelector("calcite-input-number");
|
|
712
|
+
input.addEventListener("input", (event) => {
|
|
713
|
+
const value = event.target.value;
|
|
714
|
+
if (value.endsWith(".")) {
|
|
715
|
+
return;
|
|
716
|
+
}
|
|
717
|
+
calciteInput.value = value;
|
|
718
|
+
});
|
|
719
|
+
});
|
|
720
|
+
const assertedValue = "1234567.891011";
|
|
721
|
+
const externalInput = await page.find("#external");
|
|
722
|
+
const calciteInput = await page.find("calcite-input-number");
|
|
723
|
+
const internalLocaleInput = await page.find("calcite-input-number >>> input");
|
|
724
|
+
await externalInput.click();
|
|
725
|
+
await typeNumberValue(page, assertedValue);
|
|
726
|
+
await page.waitForChanges();
|
|
727
|
+
expect(await calciteInput.getProperty("value")).toBe(assertedValue);
|
|
728
|
+
expect(await internalLocaleInput.getProperty("value")).toBe(localizeNumberString(assertedValue, locale));
|
|
729
|
+
});
|
|
730
|
+
});
|
|
731
|
+
});
|
|
732
|
+
it(`allows negative, decimal numbers for ar locale`, async () => {
|
|
733
|
+
const value = "-0001.0001";
|
|
734
|
+
const page = await newE2EPage();
|
|
735
|
+
await page.setContent(html `<calcite-input-number lang="ar"></calcite-input-number>`);
|
|
736
|
+
const element = await page.find("calcite-input-number");
|
|
737
|
+
await element.callMethod("setFocus");
|
|
738
|
+
await typeNumberValue(page, value);
|
|
739
|
+
await page.waitForChanges();
|
|
740
|
+
await page.keyboard.press("Tab");
|
|
741
|
+
expect(await element.getProperty("value")).toBe("-1.0001");
|
|
742
|
+
});
|
|
743
|
+
it(`Using the select method selects all text`, async () => {
|
|
744
|
+
const value = "-98.76";
|
|
745
|
+
const page = await newE2EPage();
|
|
746
|
+
await page.setContent(html `<calcite-input-number value="123.45"></calcite-input-number>`);
|
|
747
|
+
const element = await page.find("calcite-input-number");
|
|
748
|
+
// overwrite initial value by selecting and typing
|
|
749
|
+
await element.callMethod("selectText");
|
|
750
|
+
await element.callMethod("setFocus");
|
|
751
|
+
await typeNumberValue(page, value);
|
|
752
|
+
await page.waitForChanges();
|
|
753
|
+
expect(await element.getProperty("value")).toBe(value);
|
|
754
|
+
});
|
|
755
|
+
it(`allows clearing value`, async () => {
|
|
756
|
+
const page = await newE2EPage();
|
|
757
|
+
await page.setContent(html `<calcite-input-number value="1"></calcite-input-number>`);
|
|
758
|
+
const input = await page.find("calcite-input-number");
|
|
759
|
+
input.setProperty("value", null);
|
|
760
|
+
await page.waitForChanges();
|
|
761
|
+
expect(await input.getProperty("value")).toBe("");
|
|
762
|
+
input.setProperty("value", undefined);
|
|
763
|
+
await page.waitForChanges();
|
|
764
|
+
expect(await input.getProperty("value")).toBe("");
|
|
765
|
+
});
|
|
766
|
+
it(`disallows setting text value`, async () => {
|
|
767
|
+
const nonNumberValue = "i am a text value";
|
|
768
|
+
const page = await newE2EPage();
|
|
769
|
+
await page.setContent(html `<calcite-input-number value=${nonNumberValue}></calcite-input-number>`);
|
|
770
|
+
const calciteInput = await page.find("calcite-input-number");
|
|
771
|
+
const input = await page.find("calcite-input-number >>> input");
|
|
772
|
+
expect(await calciteInput.getProperty("value")).toBe("");
|
|
773
|
+
expect(await input.getProperty("value")).toBe("");
|
|
774
|
+
const numberValue = "1234";
|
|
775
|
+
calciteInput.setProperty("value", numberValue);
|
|
776
|
+
await page.waitForChanges();
|
|
777
|
+
expect(await calciteInput.getProperty("value")).toBe(numberValue);
|
|
778
|
+
expect(await input.getProperty("value")).toBe(numberValue);
|
|
779
|
+
calciteInput.setProperty("value", nonNumberValue);
|
|
780
|
+
await page.waitForChanges();
|
|
781
|
+
expect(await calciteInput.getProperty("value")).toBe(numberValue);
|
|
782
|
+
expect(await input.getProperty("value")).toBe(numberValue);
|
|
783
|
+
});
|
|
784
|
+
it(`disallows pasting just text characters with no initial value`, async () => {
|
|
785
|
+
const page = await newE2EPage();
|
|
786
|
+
await page.setContent(html `<calcite-input-number></calcite-input-number><input id="copy" value="invalid number" />`);
|
|
787
|
+
const calciteInput = await page.find("calcite-input-number");
|
|
788
|
+
const input = await page.find("calcite-input-number >>> input");
|
|
789
|
+
const copyInput = await page.find("#copy");
|
|
790
|
+
expect(await calciteInput.getProperty("value")).toBe("");
|
|
791
|
+
expect(await input.getProperty("value")).toBe("");
|
|
792
|
+
await copyInput.focus();
|
|
793
|
+
await page.keyboard.down("Meta");
|
|
794
|
+
await page.keyboard.press("a");
|
|
795
|
+
await page.keyboard.press("c");
|
|
796
|
+
await page.keyboard.up("Meta");
|
|
797
|
+
await calciteInput.callMethod("setFocus");
|
|
798
|
+
await page.keyboard.down("Meta");
|
|
799
|
+
await page.keyboard.press("v");
|
|
800
|
+
await page.keyboard.up("Meta");
|
|
801
|
+
expect(await calciteInput.getProperty("value")).toBe("");
|
|
802
|
+
expect(await input.getProperty("value")).toBe("");
|
|
803
|
+
});
|
|
804
|
+
it(`disallows pasting just text characters with existing number value`, async () => {
|
|
805
|
+
const initialValue = "1234.56";
|
|
806
|
+
const page = await newE2EPage();
|
|
807
|
+
await page.setContent(html `<calcite-input-number value="1234.56"></calcite-input-number><input id="copy" value="invalid number" />`);
|
|
808
|
+
const calciteInput = await page.find("calcite-input-number");
|
|
809
|
+
const input = await page.find("calcite-input-number >>> input");
|
|
810
|
+
const copyInput = await page.find("#copy");
|
|
811
|
+
expect(await calciteInput.getProperty("value")).toBe(initialValue);
|
|
812
|
+
expect(await input.getProperty("value")).toBe(initialValue);
|
|
813
|
+
await copyInput.focus();
|
|
814
|
+
await page.keyboard.down("Meta");
|
|
815
|
+
await page.keyboard.press("a");
|
|
816
|
+
await page.keyboard.press("c");
|
|
817
|
+
await page.keyboard.up("Meta");
|
|
818
|
+
await calciteInput.callMethod("setFocus");
|
|
819
|
+
await page.keyboard.down("Meta");
|
|
820
|
+
await page.keyboard.press("v");
|
|
821
|
+
await page.keyboard.up("Meta");
|
|
822
|
+
expect(await calciteInput.getProperty("value")).toBe(initialValue);
|
|
823
|
+
expect(await input.getProperty("value")).toBe(initialValue);
|
|
824
|
+
});
|
|
825
|
+
it(`disallows pasting just text characters with no initial value with group separator`, async () => {
|
|
826
|
+
const page = await newE2EPage();
|
|
827
|
+
await page.setContent(html `<calcite-input-number group-separator></calcite-input-number><input id="copy" value="invalid number" />`);
|
|
828
|
+
const calciteInput = await page.find("calcite-input-number");
|
|
829
|
+
const input = await page.find("calcite-input-number >>> input");
|
|
830
|
+
const copyInput = await page.find("#copy");
|
|
831
|
+
expect(await calciteInput.getProperty("value")).toBe("");
|
|
832
|
+
expect(await input.getProperty("value")).toBe("");
|
|
833
|
+
await copyInput.focus();
|
|
834
|
+
await page.keyboard.down("Meta");
|
|
835
|
+
await page.keyboard.press("a");
|
|
836
|
+
await page.keyboard.press("c");
|
|
837
|
+
await page.keyboard.up("Meta");
|
|
838
|
+
await calciteInput.callMethod("setFocus");
|
|
839
|
+
await page.keyboard.down("Meta");
|
|
840
|
+
await page.keyboard.press("v");
|
|
841
|
+
await page.keyboard.up("Meta");
|
|
842
|
+
expect(await calciteInput.getProperty("value")).toBe("");
|
|
843
|
+
expect(await input.getProperty("value")).toBe("");
|
|
844
|
+
});
|
|
845
|
+
it(`disallows pasting just text characters with existing number value with group separator`, async () => {
|
|
846
|
+
const initialValue = "1234.56";
|
|
847
|
+
const page = await newE2EPage();
|
|
848
|
+
await page.setContent(html `<calcite-input-number value="1234.56" group-separator></calcite-input-number
|
|
849
|
+
><input id="copy" value="invalid number" />`);
|
|
850
|
+
const calciteInput = await page.find("calcite-input-number");
|
|
851
|
+
const input = await page.find("calcite-input-number >>> input");
|
|
852
|
+
const copyInput = await page.find("#copy");
|
|
853
|
+
expect(await calciteInput.getProperty("value")).toBe(initialValue);
|
|
854
|
+
expect(await input.getProperty("value")).toBe(localizeNumberString(initialValue, "en-US", true));
|
|
855
|
+
await copyInput.focus();
|
|
856
|
+
await page.keyboard.down("Meta");
|
|
857
|
+
await page.keyboard.press("a");
|
|
858
|
+
await page.keyboard.press("c");
|
|
859
|
+
await page.keyboard.up("Meta");
|
|
860
|
+
await calciteInput.callMethod("setFocus");
|
|
861
|
+
await page.keyboard.down("Meta");
|
|
862
|
+
await page.keyboard.press("v");
|
|
863
|
+
await page.keyboard.up("Meta");
|
|
864
|
+
expect(await calciteInput.getProperty("value")).toBe(initialValue);
|
|
865
|
+
expect(await input.getProperty("value")).toBe(localizeNumberString(initialValue, "en-US", true));
|
|
866
|
+
});
|
|
867
|
+
it("cannot be modified when readOnly is true", async () => {
|
|
868
|
+
const page = await newE2EPage();
|
|
869
|
+
await page.setContent(html `<calcite-input-number read-only value="123" clearable></calcite-input-number>`);
|
|
870
|
+
const calciteInputNumberInput = await page.spyOnEvent("calciteInputNumberInput");
|
|
871
|
+
const element = await page.find("calcite-input-number");
|
|
872
|
+
expect(await element.getProperty("value")).toBe("123");
|
|
873
|
+
await element.callMethod("setFocus");
|
|
874
|
+
await page.keyboard.press("4");
|
|
875
|
+
await page.waitForChanges();
|
|
876
|
+
expect(await element.getProperty("value")).toBe("123");
|
|
877
|
+
await page.keyboard.press("Escape");
|
|
878
|
+
await page.waitForChanges();
|
|
879
|
+
expect(await element.getProperty("value")).toBe("123");
|
|
880
|
+
expect(calciteInputNumberInput).toHaveReceivedEventTimes(0);
|
|
881
|
+
});
|
|
882
|
+
it("number cannot be modified when readOnly is true", async () => {
|
|
883
|
+
const page = await newE2EPage();
|
|
884
|
+
await page.setContent(html `<calcite-input-number read-only value="5"></calcite-input-number>`);
|
|
885
|
+
const calciteInputNumberInput = await page.spyOnEvent("calciteInputNumberInput");
|
|
886
|
+
const element = await page.find("calcite-input-number");
|
|
887
|
+
expect(await element.getProperty("value")).toBe("5");
|
|
888
|
+
await element.callMethod("setFocus");
|
|
889
|
+
await page.keyboard.press("ArrowUp");
|
|
890
|
+
await page.waitForChanges();
|
|
891
|
+
expect(await element.getProperty("value")).toBe("5");
|
|
892
|
+
await page.keyboard.press("Escape");
|
|
893
|
+
await page.waitForChanges();
|
|
894
|
+
expect(await element.getProperty("value")).toBe("5");
|
|
895
|
+
expect(calciteInputNumberInput).toHaveReceivedEventTimes(0);
|
|
896
|
+
});
|
|
897
|
+
it("sets internals to readOnly or disabled when readOnly is true", async () => {
|
|
898
|
+
const page = await newE2EPage();
|
|
899
|
+
await page.setContent(html `<calcite-input-number read-only></calcite-input-number>`);
|
|
900
|
+
const inputs = await page.findAll("calcite-input-number >>> input");
|
|
901
|
+
for (const input of inputs) {
|
|
902
|
+
expect(await input.getProperty("readOnly")).toBe(true);
|
|
903
|
+
}
|
|
904
|
+
const buttons = await page.findAll("calcite-input-number button");
|
|
905
|
+
for (const button of buttons) {
|
|
906
|
+
expect(await button.getProperty("disabled")).toBe(true);
|
|
907
|
+
}
|
|
908
|
+
});
|
|
909
|
+
it("input event fires when number ends with a decimal", async () => {
|
|
910
|
+
const page = await newE2EPage();
|
|
911
|
+
await page.setContent(`
|
|
912
|
+
<calcite-input-number value="1.2"></calcite-input-number>
|
|
913
|
+
`);
|
|
914
|
+
const calciteInputNumberInput = await page.spyOnEvent("calciteInputNumberInput");
|
|
915
|
+
const element = await page.find("calcite-input-number");
|
|
916
|
+
expect(await element.getProperty("value")).toBe("1.2");
|
|
917
|
+
await element.callMethod("setFocus");
|
|
918
|
+
await page.keyboard.press("Backspace");
|
|
919
|
+
await page.waitForChanges();
|
|
920
|
+
expect(await element.getProperty("value")).toBe("1");
|
|
921
|
+
expect(calciteInputNumberInput).toHaveReceivedEventTimes(1);
|
|
922
|
+
});
|
|
923
|
+
it("sanitize leading zeros from value", async () => {
|
|
924
|
+
const page = await newE2EPage();
|
|
925
|
+
await page.setContent(`
|
|
926
|
+
<calcite-input-number></calcite-input-number>
|
|
927
|
+
`);
|
|
928
|
+
const element = await page.find("calcite-input-number");
|
|
929
|
+
await element.callMethod("setFocus");
|
|
930
|
+
await typeNumberValue(page, "0000000");
|
|
931
|
+
await page.waitForChanges();
|
|
932
|
+
expect(await element.getProperty("value")).toBe("0");
|
|
933
|
+
await typeNumberValue(page, "1");
|
|
934
|
+
await page.waitForChanges();
|
|
935
|
+
expect(await element.getProperty("value")).toBe("1");
|
|
936
|
+
await typeNumberValue(page, "0000000");
|
|
937
|
+
await page.waitForChanges();
|
|
938
|
+
expect(await element.getProperty("value")).toBe("10000000");
|
|
939
|
+
});
|
|
940
|
+
it("sanitize extra dashes from value", async () => {
|
|
941
|
+
const page = await newE2EPage();
|
|
942
|
+
await page.setContent(`<calcite-input-number></calcite-input-number>`);
|
|
943
|
+
const element = await page.find("calcite-input-number");
|
|
944
|
+
await element.callMethod("setFocus");
|
|
945
|
+
await typeNumberValue(page, "1--2---3");
|
|
946
|
+
await page.waitForChanges();
|
|
947
|
+
expect(await element.getProperty("value")).toBe("123");
|
|
948
|
+
await page.keyboard.press("ArrowLeft");
|
|
949
|
+
await page.keyboard.press("ArrowLeft");
|
|
950
|
+
await page.keyboard.press("ArrowLeft");
|
|
951
|
+
await typeNumberValue(page, "----");
|
|
952
|
+
await page.waitForChanges();
|
|
953
|
+
expect(await element.getProperty("value")).toBe("-123");
|
|
954
|
+
});
|
|
955
|
+
describe("ArrowUp/ArrowDown function of moving caret to the beginning/end of text", () => {
|
|
956
|
+
let page;
|
|
957
|
+
const determineCaretIndex = (position) => {
|
|
958
|
+
return page.evaluate((position) => {
|
|
959
|
+
const element = document.querySelector("calcite-input-number");
|
|
960
|
+
const el = element.shadowRoot.querySelector("input");
|
|
961
|
+
return el.selectionStart === (position !== undefined ? position : el.value.length);
|
|
962
|
+
}, position);
|
|
963
|
+
};
|
|
964
|
+
beforeEach(async () => {
|
|
965
|
+
page = await newE2EPage();
|
|
966
|
+
});
|
|
967
|
+
it("should not work, but increment instead", async () => {
|
|
968
|
+
await page.setContent(`<calcite-input-number></calcite-input-number>`);
|
|
969
|
+
const element = await page.find("calcite-input-number");
|
|
970
|
+
await element.callMethod("setFocus");
|
|
971
|
+
await page.keyboard.type("12345");
|
|
972
|
+
await page.waitForChanges();
|
|
973
|
+
await page.keyboard.press("ArrowUp");
|
|
974
|
+
await page.waitForChanges();
|
|
975
|
+
expect(await determineCaretIndex()).toBeTruthy();
|
|
976
|
+
expect(await element.getProperty("value")).toBe("12346");
|
|
977
|
+
await page.keyboard.press("ArrowDown");
|
|
978
|
+
await page.waitForChanges();
|
|
979
|
+
expect(await determineCaretIndex()).toBeTruthy();
|
|
980
|
+
expect(await element.getProperty("value")).toBe("12345");
|
|
981
|
+
});
|
|
982
|
+
it("does not jump to the beginning of input while incrementing on ArrowUp held down", async () => {
|
|
983
|
+
await page.setContent(html `<calcite-input-number value="0"></calcite-input-number>`);
|
|
984
|
+
let cursorHomeCount = 0;
|
|
985
|
+
await page.keyboard.down("ArrowUp");
|
|
986
|
+
await page.$eval("calcite-input-number", (element) => {
|
|
987
|
+
document.addEventListener("calciteInputNumberInput", async () => {
|
|
988
|
+
const input = element.shadowRoot.querySelector("input");
|
|
989
|
+
if (input.selectionStart === 0) {
|
|
990
|
+
cursorHomeCount++;
|
|
991
|
+
}
|
|
992
|
+
});
|
|
993
|
+
}, cursorHomeCount);
|
|
994
|
+
await page.waitForTimeout(delayFor2UpdatesInMs);
|
|
995
|
+
await page.keyboard.up("ArrowUp");
|
|
996
|
+
await page.waitForChanges();
|
|
997
|
+
expect(cursorHomeCount).toBe(0);
|
|
998
|
+
});
|
|
999
|
+
});
|
|
1000
|
+
it("is form-associated", () => formAssociated("<calcite-input-number></calcite-input-number>", {
|
|
1001
|
+
testValue: 5,
|
|
1002
|
+
submitsOnEnter: true
|
|
1003
|
+
}));
|
|
1004
|
+
});
|