q2-tecton-elements 1.71.4 → 1.73.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundle-report.json +32564 -26687
- package/dist/cjs/{charting-ClN1ldqv.js → charting-CdNTrVBe.js} +80 -0
- package/dist/cjs/click-elsewhere_3.cjs.entry.js +85 -20
- package/dist/cjs/{dataSample-BYR-wrOn.js → dataSample-B4blhlH4.js} +1 -1
- package/dist/cjs/date-picker-helpers-UYvPn98R.js +257 -0
- package/dist/cjs/{index-SpDCZABA.js → index-BqyWHpNu.js} +2 -2
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{q2-action-group_2.cjs.entry.js → q2-action-group.cjs.entry.js} +1 -89
- package/dist/cjs/q2-action-sheet.cjs.entry.js +98 -18
- package/dist/cjs/q2-avatar.cjs.entry.js +1 -1
- package/dist/cjs/q2-badge_2.cjs.entry.js +113 -12
- package/dist/cjs/q2-btn_2.cjs.entry.js +2 -2
- package/dist/cjs/q2-calendar.cjs.entry.js +14 -7
- package/dist/cjs/q2-card-image.cjs.entry.js +4 -4
- package/dist/cjs/q2-card.cjs.entry.js +1 -1
- package/dist/cjs/q2-carousel-pane.cjs.entry.js +3 -3
- package/dist/cjs/q2-carousel.cjs.entry.js +20 -6
- package/dist/cjs/q2-chart-area.cjs.entry.js +38 -7
- package/dist/cjs/q2-chart-bar.cjs.entry.js +39 -8
- package/dist/cjs/q2-chart-donut.cjs.entry.js +31 -13
- package/dist/cjs/q2-checkbox-group.cjs.entry.js +3 -3
- package/dist/cjs/q2-checkbox_2.cjs.entry.js +9 -6
- package/dist/cjs/q2-context.cjs.entry.js +6 -5
- package/dist/cjs/q2-currency.cjs.entry.js +1 -1
- package/dist/cjs/q2-data-table.cjs.entry.js +7 -7
- package/dist/cjs/q2-date-calendar.cjs.entry.js +452 -0
- package/dist/cjs/q2-date-picker_2.cjs.entry.js +968 -0
- package/dist/cjs/q2-detail.cjs.entry.js +2 -2
- package/dist/cjs/q2-dropdown-item.cjs.entry.js +1 -1
- package/dist/cjs/q2-dropdown.cjs.entry.js +4 -4
- package/dist/cjs/q2-editable-field.cjs.entry.js +51 -37
- package/dist/cjs/q2-example.cjs.entry.js +1 -1
- package/dist/cjs/q2-file-picker.cjs.entry.js +60 -4
- package/dist/cjs/q2-form.cjs.entry.js +1 -1
- package/dist/cjs/q2-formatted-text.cjs.entry.js +1 -1
- package/dist/cjs/q2-icon.cjs.entry.js +1 -1
- package/dist/cjs/q2-item.cjs.entry.js +21 -3
- package/dist/cjs/q2-legend.cjs.entry.js +1 -1
- package/dist/cjs/q2-link_2.cjs.entry.js +2 -2
- package/dist/cjs/q2-loc.cjs.entry.js +1 -1
- package/dist/cjs/q2-message.cjs.entry.js +3 -3
- package/dist/cjs/q2-meter.cjs.entry.js +2 -2
- package/dist/cjs/q2-modal.cjs.entry.js +59 -17
- package/dist/cjs/q2-month-picker.cjs.entry.js +3 -3
- package/dist/cjs/q2-mutation-observer.cjs.entry.js +1 -1
- package/dist/cjs/q2-option.cjs.entry.js +1 -1
- package/dist/cjs/q2-otp.cjs.entry.js +5 -5
- package/dist/cjs/q2-pagination.cjs.entry.js +4 -4
- package/dist/cjs/q2-pill.cjs.entry.js +8 -5
- package/dist/cjs/q2-radio-group.cjs.entry.js +22 -4
- package/dist/cjs/q2-radio.cjs.entry.js +3 -3
- package/dist/cjs/q2-relative-time.cjs.entry.js +3 -3
- package/dist/cjs/q2-resize-observer.cjs.entry.js +92 -0
- package/dist/cjs/q2-search.cjs.entry.js +4 -4
- package/dist/cjs/q2-section.cjs.entry.js +7 -7
- package/dist/cjs/q2-select.cjs.entry.js +41 -21
- package/dist/cjs/q2-stepper-pane.cjs.entry.js +2 -2
- package/dist/cjs/q2-stepper-vertical.cjs.entry.js +2 -2
- package/dist/cjs/q2-stepper.cjs.entry.js +2 -2
- package/dist/cjs/q2-surface.cjs.entry.js +1 -1
- package/dist/cjs/q2-tab-container.cjs.entry.js +2 -2
- package/dist/cjs/q2-tab-pane.cjs.entry.js +1 -1
- package/dist/cjs/q2-tecton-elements.cjs.js +1 -1
- package/dist/cjs/q2-textarea.cjs.entry.js +2 -2
- package/dist/cjs/q2-toast.cjs.entry.js +1 -1
- package/dist/cjs/q2-tooltip.cjs.entry.js +1 -1
- package/dist/cjs/{sectorHelper-9TWL-3dw.js → sectorHelper-CxhDl5ql.js} +1 -1
- package/dist/cjs/tecton-tab-pane.cjs.entry.js +5 -3
- package/dist/collection/collection-manifest.json +2 -0
- package/dist/collection/components/q2-action-sheet/q2-action-sheet.css +52 -0
- package/dist/collection/components/q2-action-sheet/q2-action-sheet.js +98 -18
- package/dist/collection/components/q2-action-sheet/test/q2-action-sheet-test.vr.js +124 -0
- package/dist/collection/components/q2-avatar/q2-avatar.js +1 -1
- package/dist/collection/components/q2-btn/q2-btn.css +152 -146
- package/dist/collection/components/q2-btn/q2-btn.js +10 -4
- package/dist/collection/components/q2-btn/test/q2-btn-test.vr.js +229 -20
- package/dist/collection/components/q2-calendar/q2-calendar.css +3 -0
- package/dist/collection/components/q2-calendar/q2-calendar.js +20 -7
- package/dist/collection/components/q2-calendar/q2-month-picker.js +2 -2
- package/dist/collection/components/q2-calendar/test/q2-calendar-test.vr.js +26 -15
- package/dist/collection/components/q2-card/test/q2-card-test.vr.js +4 -0
- package/dist/collection/components/q2-card-image/q2-card-image.css +89 -134
- package/dist/collection/components/q2-card-image/q2-card-image.js +4 -4
- package/dist/collection/components/q2-card-image/test/q2-card-image-test.vr.js +4 -0
- package/dist/collection/components/q2-carousel/q2-carousel.js +19 -5
- package/dist/collection/components/q2-carousel/test/q2-carousel-test.vr.js +45 -0
- package/dist/collection/components/q2-carousel-pane/q2-carousel-pane.js +2 -2
- package/dist/collection/components/q2-chart-area/q2-chart-area.css +11 -0
- package/dist/collection/components/q2-chart-area/q2-chart-area.js +53 -7
- package/dist/collection/components/q2-chart-area/test/q2-chart-area-test.vr.js +14 -0
- package/dist/collection/components/q2-chart-bar/q2-chart-bar.css +11 -0
- package/dist/collection/components/q2-chart-bar/q2-chart-bar.js +50 -4
- package/dist/collection/components/q2-chart-bar/test/q2-chart-bar-test.vr.js +14 -0
- package/dist/collection/components/q2-chart-donut/q2-chart-donut.js +30 -10
- package/dist/collection/components/q2-chart-donut/test/q2-chart-donut-test.vr.js +25 -0
- package/dist/collection/components/q2-checkbox/q2-checkbox.css +2 -2
- package/dist/collection/components/q2-checkbox/q2-checkbox.js +6 -3
- package/dist/collection/components/q2-checkbox-group/q2-checkbox-group.css +2 -0
- package/dist/collection/components/q2-checkbox-group/q2-checkbox-group.js +6 -3
- package/dist/collection/components/q2-context/q2-context.css +5 -0
- package/dist/collection/components/q2-context/q2-context.js +4 -3
- package/dist/collection/components/q2-context/test/q2-context-test.vr.js +14 -4
- package/dist/collection/components/q2-currency/q2-currency.js +1 -1
- package/dist/collection/components/q2-data-table/q2-data-table.css +6 -0
- package/dist/collection/components/q2-data-table/q2-data-table.js +5 -5
- package/dist/collection/components/q2-data-table/test/q2-data-table-test.vr.js +52 -0
- package/dist/collection/components/q2-date-calendar/q2-date-calendar.css +393 -0
- package/dist/collection/components/q2-date-calendar/q2-date-calendar.js +1022 -0
- package/dist/collection/components/q2-date-calendar/test/q2-date-calendar-test.vr.js +111 -0
- package/dist/collection/components/q2-date-picker/q2-date-picker.css +138 -0
- package/dist/collection/components/q2-date-picker/q2-date-picker.js +2010 -0
- package/dist/collection/components/q2-date-picker/test/q2-date-picker-test.vr.js +179 -0
- package/dist/collection/components/q2-detail/q2-detail.js +1 -1
- package/dist/collection/components/q2-dropdown/q2-dropdown.css +2 -0
- package/dist/collection/components/q2-dropdown/q2-dropdown.js +5 -5
- package/dist/collection/components/q2-dropdown/test/q2-dropdown-test.vr.js +30 -0
- package/dist/collection/components/q2-editable-field/q2-editable-field.css +2 -0
- package/dist/collection/components/q2-editable-field/q2-editable-field.js +59 -45
- package/dist/collection/components/q2-example/q2-example.js +1 -1
- package/dist/collection/components/q2-file-picker/q2-file-picker.css +27 -0
- package/dist/collection/components/q2-file-picker/q2-file-picker.js +98 -2
- package/dist/collection/components/q2-file-picker/test/q2-file-picker-test.vr.js +22 -0
- package/dist/collection/components/q2-form/q2-form.js +1 -1
- package/dist/collection/components/q2-formatted-text/q2-formatted-text.js +1 -1
- package/dist/collection/components/q2-input/q2-input.css +67 -1
- package/dist/collection/components/q2-input/q2-input.js +160 -15
- package/dist/collection/components/q2-input/test/q2-input-test.vr.js +35 -0
- package/dist/collection/components/q2-item/q2-item.css +3 -1
- package/dist/collection/components/q2-item/q2-item.js +19 -1
- package/dist/collection/components/q2-item/test/q2-item-test.vr.js +8 -2
- package/dist/collection/components/q2-legend/q2-legend.js +1 -1
- package/dist/collection/components/q2-list/q2-list.js +1 -1
- package/dist/collection/components/q2-message/q2-message.css +5 -5
- package/dist/collection/components/q2-message/q2-message.js +1 -1
- package/dist/collection/components/q2-meter/q2-meter.js +1 -1
- package/dist/collection/components/q2-modal/q2-modal.css +40 -3
- package/dist/collection/components/q2-modal/q2-modal.js +100 -16
- package/dist/collection/components/q2-modal/test/q2-modal-test.vr.js +32 -7
- package/dist/collection/components/q2-mutation-observer/q2-mutation-observer.js +1 -1
- package/dist/collection/components/q2-optgroup/q2-optgroup.js +1 -1
- package/dist/collection/components/q2-option-list/q2-option-list.js +33 -4
- package/dist/collection/components/q2-otp/q2-otp.js +4 -4
- package/dist/collection/components/q2-pagination/q2-pagination.js +3 -3
- package/dist/collection/components/q2-pill/q2-pill.css +2 -2
- package/dist/collection/components/q2-pill/q2-pill.js +6 -3
- package/dist/collection/components/q2-popover/q2-popover.css +4 -2
- package/dist/collection/components/q2-popover/q2-popover.js +50 -14
- package/dist/collection/components/q2-radio/q2-radio.css +158 -104
- package/dist/collection/components/q2-radio/q2-radio.js +5 -2
- package/dist/collection/components/q2-radio/test/q2-radio-test.vr.js +25 -2
- package/dist/collection/components/q2-radio-group/q2-radio-group.css +39 -2
- package/dist/collection/components/q2-radio-group/q2-radio-group.js +73 -4
- package/dist/collection/components/q2-radio-group/test/q2-radio-group-test.vr.js +43 -1
- package/dist/collection/components/q2-relative-time/q2-relative-time.js +2 -2
- package/dist/collection/components/q2-resize-observer/q2-resize-observer.js +1 -1
- package/dist/collection/components/q2-search/q2-search.css +2 -0
- package/dist/collection/components/q2-search/q2-search.js +6 -3
- package/dist/collection/components/q2-section/q2-section.css +2 -0
- package/dist/collection/components/q2-section/q2-section.js +6 -6
- package/dist/collection/components/q2-select/q2-select.css +3 -0
- package/dist/collection/components/q2-select/q2-select.js +48 -22
- package/dist/collection/components/q2-select/test/q2-select-test.vr.js +13 -0
- package/dist/collection/components/q2-stepper/q2-stepper.js +1 -1
- package/dist/collection/components/q2-stepper-pane/q2-stepper-pane.js +1 -1
- package/dist/collection/components/q2-stepper-vertical/q2-stepper-vertical.js +1 -1
- package/dist/collection/components/q2-surface/q2-surface.js +1 -1
- package/dist/collection/components/q2-surface/test/q2-surface-test.vr.js +2 -2
- package/dist/collection/components/q2-tab-container/q2-tab-container.js +1 -1
- package/dist/collection/components/q2-tab-pane/q2-tab-pane.js +1 -1
- package/dist/collection/components/q2-tag/q2-tag.js +6 -3
- package/dist/collection/components/q2-textarea/q2-textarea.js +6 -3
- package/dist/collection/components/q2-tooltip/test/q2-tooltip-test.vr.js +1 -1
- package/dist/collection/components/tecton-tab-pane/tecton-tab-pane.js +5 -3
- package/dist/collection/utils/chart-keyboard.js +76 -0
- package/dist/collection/utils/date-picker/date-picker-helpers.js +239 -0
- package/dist/collection/utils/date-picker/date-picker-types.js +1 -0
- package/dist/collection/utils/index.js +2 -2
- package/dist/collection/utils/test/vr-helpers.js +16 -2
- package/dist/components/charting.js +1603 -1532
- package/dist/components/dataSample.js +7 -7
- package/dist/components/index.js +57 -53
- package/dist/components/index2.js +3 -3
- package/dist/components/q2-action-sheet.js +224 -103
- package/dist/components/q2-avatar2.js +8 -8
- package/dist/components/q2-btn2.js +2 -2
- package/dist/components/q2-calendar.js +15 -10
- package/dist/components/q2-card-image.js +24 -24
- package/dist/components/q2-carousel-pane2.js +3 -3
- package/dist/components/q2-carousel.js +37 -24
- package/dist/components/q2-chart-area.js +415 -369
- package/dist/components/q2-chart-bar.js +193 -148
- package/dist/components/q2-chart-donut.js +185 -158
- package/dist/components/q2-checkbox-group.js +12 -12
- package/dist/components/q2-checkbox2.js +12 -12
- package/dist/components/q2-context.js +30 -29
- package/dist/components/q2-currency.js +9 -9
- package/dist/components/q2-data-table.js +111 -111
- package/dist/components/q2-date-calendar.d.ts +11 -0
- package/dist/components/q2-date-calendar.js +5 -0
- package/dist/components/q2-date-calendar2.js +678 -0
- package/dist/components/q2-date-picker.d.ts +11 -0
- package/dist/components/q2-date-picker.js +5 -0
- package/dist/components/q2-date-picker2.js +875 -0
- package/dist/components/q2-detail.js +3 -3
- package/dist/components/q2-dropdown.js +13 -13
- package/dist/components/q2-editable-field.js +45 -36
- package/dist/components/q2-example.js +11 -11
- package/dist/components/q2-file-picker.js +71 -11
- package/dist/components/q2-form.js +6 -6
- package/dist/components/q2-formatted-text.js +2 -2
- package/dist/components/q2-input2.js +268 -163
- package/dist/components/q2-item2.js +33 -23
- package/dist/components/q2-legend2.js +7 -7
- package/dist/components/q2-list2.js +6 -6
- package/dist/components/q2-message2.js +29 -29
- package/dist/components/q2-meter.js +7 -7
- package/dist/components/q2-modal.js +94 -76
- package/dist/components/q2-month-picker.js +17 -17
- package/dist/components/q2-mutation-observer.js +1 -1
- package/dist/components/q2-optgroup2.js +7 -7
- package/dist/components/q2-option-list2.js +52 -32
- package/dist/components/q2-otp.js +8 -8
- package/dist/components/q2-pagination.js +67 -67
- package/dist/components/q2-pill.js +17 -15
- package/dist/components/q2-popover2.js +77 -53
- package/dist/components/q2-radio-group.js +70 -40
- package/dist/components/q2-radio.js +40 -55
- package/dist/components/q2-relative-time.js +5 -5
- package/dist/components/q2-resize-observer2.js +23 -23
- package/dist/components/q2-search.js +6 -6
- package/dist/components/q2-section.js +33 -33
- package/dist/components/q2-select2.js +47 -40
- package/dist/components/q2-stepper-pane.js +17 -13
- package/dist/components/q2-stepper-vertical.js +4 -4
- package/dist/components/q2-stepper.js +57 -57
- package/dist/components/q2-surface.js +3 -3
- package/dist/components/q2-tab-container.js +18 -18
- package/dist/components/q2-tab-pane.js +2 -2
- package/dist/components/q2-tag2.js +8 -6
- package/dist/components/q2-textarea.js +3 -3
- package/dist/components/sectorHelper.js +78 -78
- package/dist/components/tecton-tab-pane.js +12 -11
- package/dist/esm/{charting-DOZct-UB.js → charting-DFXJklqs.js} +79 -1
- package/dist/esm/click-elsewhere_3.entry.js +85 -20
- package/dist/esm/{dataSample-Dm1zpQNi.js → dataSample-CP_VKNqt.js} +1 -1
- package/dist/esm/date-picker-helpers-D8QnN_AS.js +242 -0
- package/dist/esm/{index-Cps4jSQM.js → index-CP8pXJ-l.js} +2 -2
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{q2-action-group_2.entry.js → q2-action-group.entry.js} +3 -90
- package/dist/esm/q2-action-sheet.entry.js +99 -19
- package/dist/esm/q2-avatar.entry.js +1 -1
- package/dist/esm/q2-badge_2.entry.js +113 -12
- package/dist/esm/q2-btn_2.entry.js +2 -2
- package/dist/esm/q2-calendar.entry.js +14 -7
- package/dist/esm/q2-card-image.entry.js +4 -4
- package/dist/esm/q2-card.entry.js +1 -1
- package/dist/esm/q2-carousel-pane.entry.js +3 -3
- package/dist/esm/q2-carousel.entry.js +20 -6
- package/dist/esm/q2-chart-area.entry.js +38 -7
- package/dist/esm/q2-chart-bar.entry.js +39 -8
- package/dist/esm/q2-chart-donut.entry.js +31 -13
- package/dist/esm/q2-checkbox-group.entry.js +3 -3
- package/dist/esm/q2-checkbox_2.entry.js +9 -6
- package/dist/esm/q2-context.entry.js +6 -5
- package/dist/esm/q2-currency.entry.js +1 -1
- package/dist/esm/q2-data-table.entry.js +7 -7
- package/dist/esm/q2-date-calendar.entry.js +450 -0
- package/dist/esm/q2-date-picker_2.entry.js +965 -0
- package/dist/esm/q2-detail.entry.js +2 -2
- package/dist/esm/q2-dropdown-item.entry.js +1 -1
- package/dist/esm/q2-dropdown.entry.js +4 -4
- package/dist/esm/q2-editable-field.entry.js +51 -37
- package/dist/esm/q2-example.entry.js +1 -1
- package/dist/esm/q2-file-picker.entry.js +60 -4
- package/dist/esm/q2-form.entry.js +1 -1
- package/dist/esm/q2-formatted-text.entry.js +1 -1
- package/dist/esm/q2-icon.entry.js +1 -1
- package/dist/esm/q2-item.entry.js +21 -3
- package/dist/esm/q2-legend.entry.js +1 -1
- package/dist/esm/q2-link_2.entry.js +2 -2
- package/dist/esm/q2-loc.entry.js +1 -1
- package/dist/esm/q2-message.entry.js +3 -3
- package/dist/esm/q2-meter.entry.js +2 -2
- package/dist/esm/q2-modal.entry.js +59 -17
- package/dist/esm/q2-month-picker.entry.js +3 -3
- package/dist/esm/q2-mutation-observer.entry.js +1 -1
- package/dist/esm/q2-option.entry.js +1 -1
- package/dist/esm/q2-otp.entry.js +5 -5
- package/dist/esm/q2-pagination.entry.js +4 -4
- package/dist/esm/q2-pill.entry.js +8 -5
- package/dist/esm/q2-radio-group.entry.js +22 -4
- package/dist/esm/q2-radio.entry.js +3 -3
- package/dist/esm/q2-relative-time.entry.js +3 -3
- package/dist/esm/q2-resize-observer.entry.js +90 -0
- package/dist/esm/q2-search.entry.js +4 -4
- package/dist/esm/q2-section.entry.js +7 -7
- package/dist/esm/q2-select.entry.js +41 -21
- package/dist/esm/q2-stepper-pane.entry.js +2 -2
- package/dist/esm/q2-stepper-vertical.entry.js +2 -2
- package/dist/esm/q2-stepper.entry.js +2 -2
- package/dist/esm/q2-surface.entry.js +1 -1
- package/dist/esm/q2-tab-container.entry.js +2 -2
- package/dist/esm/q2-tab-pane.entry.js +1 -1
- package/dist/esm/q2-tecton-elements.js +1 -1
- package/dist/esm/q2-textarea.entry.js +2 -2
- package/dist/esm/q2-toast.entry.js +1 -1
- package/dist/esm/q2-tooltip.entry.js +1 -1
- package/dist/esm/{sectorHelper--RMGWGAy.js → sectorHelper-DBtkWtpl.js} +1 -1
- package/dist/esm/tecton-tab-pane.entry.js +5 -3
- package/dist/q2-tecton-elements/{charting-DOZct-UB.js → charting-DFXJklqs.js} +1625 -1554
- package/dist/q2-tecton-elements/click-elsewhere_3.entry.js +98 -54
- package/dist/q2-tecton-elements/{dataSample-Dm1zpQNi.js → dataSample-CP_VKNqt.js} +33 -33
- package/dist/q2-tecton-elements/date-picker-helpers-D8QnN_AS.js +153 -0
- package/dist/q2-tecton-elements/{index-Cps4jSQM.js → index-CP8pXJ-l.js} +2 -2
- package/dist/q2-tecton-elements/{q2-action-group_2.entry.js → q2-action-group.entry.js} +35 -113
- package/dist/q2-tecton-elements/q2-action-sheet.entry.js +169 -84
- package/dist/q2-tecton-elements/q2-avatar.entry.js +8 -8
- package/dist/q2-tecton-elements/q2-badge_2.entry.js +240 -140
- package/dist/q2-tecton-elements/q2-btn_2.entry.js +23 -23
- package/dist/q2-tecton-elements/q2-calendar.entry.js +18 -13
- package/dist/q2-tecton-elements/q2-card-image.entry.js +9 -9
- package/dist/q2-tecton-elements/q2-card.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-carousel-pane.entry.js +4 -4
- package/dist/q2-tecton-elements/q2-carousel.entry.js +24 -11
- package/dist/q2-tecton-elements/q2-chart-area.entry.js +190 -144
- package/dist/q2-tecton-elements/q2-chart-bar.entry.js +382 -338
- package/dist/q2-tecton-elements/q2-chart-donut.entry.js +186 -160
- package/dist/q2-tecton-elements/q2-checkbox-group.entry.js +8 -8
- package/dist/q2-tecton-elements/q2-checkbox_2.entry.js +21 -19
- package/dist/q2-tecton-elements/q2-context.entry.js +18 -17
- package/dist/q2-tecton-elements/q2-currency.entry.js +9 -9
- package/dist/q2-tecton-elements/q2-data-table.entry.js +38 -38
- package/dist/q2-tecton-elements/q2-date-calendar.entry.js +438 -0
- package/dist/q2-tecton-elements/q2-date-picker_2.entry.js +792 -0
- package/dist/q2-tecton-elements/q2-detail.entry.js +4 -4
- package/dist/q2-tecton-elements/q2-dropdown-item.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-dropdown.entry.js +10 -10
- package/dist/q2-tecton-elements/q2-editable-field.entry.js +50 -41
- package/dist/q2-tecton-elements/q2-example.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-file-picker.entry.js +62 -7
- package/dist/q2-tecton-elements/q2-form.entry.js +2 -2
- package/dist/q2-tecton-elements/q2-formatted-text.entry.js +2 -2
- package/dist/q2-tecton-elements/q2-icon.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-item.entry.js +27 -17
- package/dist/q2-tecton-elements/q2-legend.entry.js +2 -2
- package/dist/q2-tecton-elements/q2-link_2.entry.js +7 -7
- package/dist/q2-tecton-elements/q2-loc.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-message.entry.js +30 -30
- package/dist/q2-tecton-elements/q2-meter.entry.js +8 -8
- package/dist/q2-tecton-elements/q2-modal.entry.js +61 -45
- package/dist/q2-tecton-elements/q2-month-picker.entry.js +14 -14
- package/dist/q2-tecton-elements/q2-mutation-observer.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-option.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-otp.entry.js +9 -9
- package/dist/q2-tecton-elements/q2-pagination.entry.js +20 -20
- package/dist/q2-tecton-elements/q2-pill.entry.js +43 -41
- package/dist/q2-tecton-elements/q2-radio-group.entry.js +55 -34
- package/dist/q2-tecton-elements/q2-radio.entry.js +38 -53
- package/dist/q2-tecton-elements/q2-relative-time.entry.js +11 -11
- package/dist/q2-tecton-elements/q2-resize-observer.entry.js +81 -0
- package/dist/q2-tecton-elements/q2-search.entry.js +7 -7
- package/dist/q2-tecton-elements/q2-section.entry.js +25 -25
- package/dist/q2-tecton-elements/q2-select.entry.js +28 -21
- package/dist/q2-tecton-elements/q2-stepper-pane.entry.js +19 -15
- package/dist/q2-tecton-elements/q2-stepper-vertical.entry.js +9 -9
- package/dist/q2-tecton-elements/q2-stepper.entry.js +45 -45
- package/dist/q2-tecton-elements/q2-surface.entry.js +3 -3
- package/dist/q2-tecton-elements/q2-tab-container.entry.js +15 -15
- package/dist/q2-tecton-elements/q2-tab-pane.entry.js +9 -9
- package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
- package/dist/q2-tecton-elements/q2-textarea.entry.js +3 -3
- package/dist/q2-tecton-elements/q2-toast.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-tooltip.entry.js +1 -1
- package/dist/q2-tecton-elements/{sectorHelper--RMGWGAy.js → sectorHelper-DBtkWtpl.js} +56 -56
- package/dist/q2-tecton-elements/tecton-tab-pane.entry.js +8 -7
- package/dist/types/components/q2-action-sheet/q2-action-sheet.d.ts +21 -1
- package/dist/types/components/q2-action-sheet/test/q2-action-sheet-test.vr.d.ts +1 -0
- package/dist/types/components/q2-btn/q2-btn.d.ts +7 -3
- package/dist/types/components/q2-calendar/q2-calendar.d.ts +10 -2
- package/dist/types/components/q2-card-image/q2-card-image.d.ts +1 -1
- package/dist/types/components/q2-carousel/q2-carousel.d.ts +5 -0
- package/dist/types/components/q2-chart-area/q2-chart-area.d.ts +11 -2
- package/dist/types/components/q2-chart-bar/q2-chart-bar.d.ts +9 -0
- package/dist/types/components/q2-chart-donut/q2-chart-donut.d.ts +1 -0
- package/dist/types/components/q2-checkbox/q2-checkbox.d.ts +4 -3
- package/dist/types/components/q2-checkbox-group/q2-checkbox-group.d.ts +4 -2
- package/dist/types/components/q2-date-calendar/q2-date-calendar.d.ts +122 -0
- package/dist/types/components/q2-date-calendar/test/q2-date-calendar-test.vr.d.ts +1 -0
- package/dist/types/components/q2-date-picker/q2-date-picker.d.ts +304 -0
- package/dist/types/components/q2-date-picker/test/q2-date-picker-test.vr.d.ts +1 -0
- package/dist/types/components/q2-dropdown/q2-dropdown.d.ts +3 -3
- package/dist/types/components/q2-dropdown/test/q2-dropdown-test.vr.d.ts +1 -0
- package/dist/types/components/q2-editable-field/q2-editable-field.d.ts +20 -2
- package/dist/types/components/q2-file-picker/q2-file-picker.d.ts +20 -0
- package/dist/types/components/q2-input/q2-input.d.ts +32 -4
- package/dist/types/components/q2-item/q2-item.d.ts +3 -0
- package/dist/types/components/q2-modal/q2-modal.d.ts +10 -1
- package/dist/types/components/q2-option-list/q2-option-list.d.ts +1 -0
- package/dist/types/components/q2-popover/q2-popover.d.ts +4 -0
- package/dist/types/components/q2-radio/q2-radio.d.ts +3 -2
- package/dist/types/components/q2-radio-group/q2-radio-group.d.ts +18 -2
- package/dist/types/components/q2-search/q2-search.d.ts +3 -1
- package/dist/types/components/q2-select/q2-select.d.ts +12 -4
- package/dist/types/components/q2-textarea/q2-textarea.d.ts +4 -2
- package/dist/types/components.d.ts +1112 -195
- package/dist/types/global.d.ts +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/utils/chart-keyboard.d.ts +16 -0
- package/dist/types/utils/date-picker/date-picker-helpers.d.ts +47 -0
- package/dist/types/utils/date-picker/date-picker-types.d.ts +42 -0
- package/dist/types/utils/test/vr-helpers.d.ts +2 -0
- package/package.json +3 -3
- package/dist/cjs/q2-optgroup.cjs.entry.js +0 -70
- package/dist/esm/q2-optgroup.entry.js +0 -68
- package/dist/q2-tecton-elements/q2-optgroup.entry.js +0 -88
|
@@ -41,6 +41,7 @@ export class Q2Popover {
|
|
|
41
41
|
this.displayBuffer = 10;
|
|
42
42
|
this.orientationChanged = false;
|
|
43
43
|
this.pendingAnimationResolve = null;
|
|
44
|
+
this.platformScrollUnsubscribe = null;
|
|
44
45
|
// #endregion
|
|
45
46
|
// #region State Properties
|
|
46
47
|
this.animationState = 'idle';
|
|
@@ -52,11 +53,30 @@ export class Q2Popover {
|
|
|
52
53
|
/** Aligns the popover to the left or right side of the control element. */
|
|
53
54
|
this.align = 'left';
|
|
54
55
|
this.mode = null;
|
|
56
|
+
this.handleInsideScroll = (event) => {
|
|
57
|
+
const { containerElement } = this;
|
|
58
|
+
if (!containerElement)
|
|
59
|
+
return;
|
|
60
|
+
if (containerElement.scrollHeight > containerElement.clientHeight)
|
|
61
|
+
return;
|
|
62
|
+
event.preventDefault();
|
|
63
|
+
};
|
|
55
64
|
this.handleMinHeight = () => {
|
|
56
65
|
if (this.minHeight) {
|
|
57
66
|
handleDeprecationWarning(this, 'minHeight', 'prop');
|
|
58
67
|
}
|
|
59
68
|
};
|
|
69
|
+
this.handleOutsideScroll = (event) => {
|
|
70
|
+
if (!this.open)
|
|
71
|
+
return;
|
|
72
|
+
if (event.composedPath().includes(this.hostElement))
|
|
73
|
+
return;
|
|
74
|
+
this.open = false;
|
|
75
|
+
};
|
|
76
|
+
this.handlePlatformScroll = () => {
|
|
77
|
+
if (this.open)
|
|
78
|
+
this.open = false;
|
|
79
|
+
};
|
|
60
80
|
this.handlePopoverToggleEvent = (event) => {
|
|
61
81
|
mirrorEmit(this, ['popoverStateChanged', 'tctPopoverStateChanged'], { open: event.newState === 'open' });
|
|
62
82
|
};
|
|
@@ -117,10 +137,10 @@ export class Q2Popover {
|
|
|
117
137
|
const isScrollableIframe = isModule && isInScrollableContainer(this.hostElement);
|
|
118
138
|
if (currentDirection === 'up') {
|
|
119
139
|
if (isModule && !isScrollableIframe) {
|
|
120
|
-
containerElement.style.setProperty('--comp-pop-
|
|
140
|
+
containerElement.style.setProperty('--comp-pop-top', `${controlTop}px`);
|
|
121
141
|
}
|
|
122
142
|
else {
|
|
123
|
-
containerElement.style.setProperty('--comp-pop-
|
|
143
|
+
containerElement.style.setProperty('--comp-pop-top', `${controlTop + scrollY}px`);
|
|
124
144
|
}
|
|
125
145
|
}
|
|
126
146
|
if (currentDirection === 'down') {
|
|
@@ -171,8 +191,10 @@ export class Q2Popover {
|
|
|
171
191
|
this.handleMinHeight();
|
|
172
192
|
if (this.supportsPopoverAPI)
|
|
173
193
|
(_a = this.containerElement) === null || _a === void 0 ? void 0 : _a.addEventListener('toggle', this.handlePopoverToggleEvent);
|
|
174
|
-
if (this.open)
|
|
194
|
+
if (this.open) {
|
|
195
|
+
this.addViewportListeners();
|
|
175
196
|
this.determinePopDirection();
|
|
197
|
+
}
|
|
176
198
|
}
|
|
177
199
|
// #endregion
|
|
178
200
|
// #region Listeners
|
|
@@ -265,14 +287,22 @@ export class Q2Popover {
|
|
|
265
287
|
return isNaN(maxHeight) ? undefined : maxHeight;
|
|
266
288
|
}
|
|
267
289
|
addViewportListeners() {
|
|
268
|
-
var _a;
|
|
290
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
|
|
269
291
|
window.addEventListener('resize', this.viewPortOrientationChanged);
|
|
270
|
-
visualViewport === null ||
|
|
292
|
+
(_b = (_a = window.visualViewport) === null || _a === void 0 ? void 0 : _a.addEventListener) === null || _b === void 0 ? void 0 : _b.call(_a, 'resize', this.viewPortChanged);
|
|
271
293
|
if (isInScrollableContainer(this.hostElement) && !isMobile()) {
|
|
272
294
|
window.addEventListener('scroll', this.viewPortChanged, { passive: true, capture: true });
|
|
273
295
|
}
|
|
274
|
-
(
|
|
296
|
+
(_e = (_d = (_c = window.screen) === null || _c === void 0 ? void 0 : _c.orientation) === null || _d === void 0 ? void 0 : _d.addEventListener) === null || _e === void 0 ? void 0 : _e.call(_d, 'orientationchange', this.viewPortOrientationChanged);
|
|
275
297
|
window.addEventListener('orientationchange', this.viewPortOrientationChanged);
|
|
298
|
+
if (!isMobile()) {
|
|
299
|
+
window.addEventListener('scroll', this.handleOutsideScroll, { passive: true, capture: true });
|
|
300
|
+
}
|
|
301
|
+
(_f = this.containerElement) === null || _f === void 0 ? void 0 : _f.addEventListener('wheel', this.handleInsideScroll, { passive: false });
|
|
302
|
+
(_g = this.containerElement) === null || _g === void 0 ? void 0 : _g.addEventListener('touchmove', this.handleInsideScroll, { passive: false });
|
|
303
|
+
(_h = this.platformScrollUnsubscribe) === null || _h === void 0 ? void 0 : _h.call(this);
|
|
304
|
+
this.platformScrollUnsubscribe =
|
|
305
|
+
(_l = (_k = (_j = window.TectonElements) === null || _j === void 0 ? void 0 : _j.platformScrollChanged) === null || _k === void 0 ? void 0 : _k.call(_j, this.handlePlatformScroll)) !== null && _l !== void 0 ? _l : null;
|
|
276
306
|
}
|
|
277
307
|
clearCSSProperties() {
|
|
278
308
|
if (!this.containerElement)
|
|
@@ -287,7 +317,7 @@ export class Q2Popover {
|
|
|
287
317
|
this.containerElement.style.removeProperty('--comp-pop-position');
|
|
288
318
|
}
|
|
289
319
|
async determinePopDirection() {
|
|
290
|
-
var _a, _b, _c;
|
|
320
|
+
var _a, _b, _c, _d;
|
|
291
321
|
const { containerElement, controlElement, providedDirection, displayBuffer } = this;
|
|
292
322
|
if (containerElement)
|
|
293
323
|
containerElement.style.maxHeight = null;
|
|
@@ -320,9 +350,10 @@ export class Q2Popover {
|
|
|
320
350
|
: viewableSpaceBelow - displayBuffer;
|
|
321
351
|
}
|
|
322
352
|
else {
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
353
|
+
const { height = window.innerHeight, offsetTop = 0 } = (_d = window.visualViewport) !== null && _d !== void 0 ? _d : {};
|
|
354
|
+
windowHeight = height;
|
|
355
|
+
maxSpaceAbove = controlTop - offsetTop - displayBuffer;
|
|
356
|
+
maxSpaceBelow = offsetTop + windowHeight - controlBottom - displayBuffer;
|
|
326
357
|
}
|
|
327
358
|
const directionWithMostSpace = maxSpaceAbove > maxSpaceBelow ? 'up' : 'down';
|
|
328
359
|
// We do not want to update the max height once the popover is open unless the page orientation shifts (resize or mobile use cases)
|
|
@@ -352,12 +383,17 @@ export class Q2Popover {
|
|
|
352
383
|
}
|
|
353
384
|
}
|
|
354
385
|
removeViewportListeners() {
|
|
355
|
-
var _a;
|
|
386
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
356
387
|
window.removeEventListener('resize', this.viewPortOrientationChanged);
|
|
357
|
-
visualViewport === null ||
|
|
388
|
+
(_b = (_a = window.visualViewport) === null || _a === void 0 ? void 0 : _a.removeEventListener) === null || _b === void 0 ? void 0 : _b.call(_a, 'resize', this.viewPortChanged);
|
|
358
389
|
window.removeEventListener('scroll', this.viewPortChanged, { capture: true });
|
|
359
|
-
(
|
|
390
|
+
(_e = (_d = (_c = window.screen) === null || _c === void 0 ? void 0 : _c.orientation) === null || _d === void 0 ? void 0 : _d.removeEventListener) === null || _e === void 0 ? void 0 : _e.call(_d, 'orientationchange', this.viewPortOrientationChanged);
|
|
360
391
|
window.removeEventListener('orientationchange', this.viewPortOrientationChanged);
|
|
392
|
+
window.removeEventListener('scroll', this.handleOutsideScroll, { capture: true });
|
|
393
|
+
(_f = this.containerElement) === null || _f === void 0 ? void 0 : _f.removeEventListener('wheel', this.handleInsideScroll);
|
|
394
|
+
(_g = this.containerElement) === null || _g === void 0 ? void 0 : _g.removeEventListener('touchmove', this.handleInsideScroll);
|
|
395
|
+
(_h = this.platformScrollUnsubscribe) === null || _h === void 0 ? void 0 : _h.call(this);
|
|
396
|
+
this.platformScrollUnsubscribe = null;
|
|
361
397
|
}
|
|
362
398
|
setDirectionAndShow(direction) {
|
|
363
399
|
var _a;
|
|
@@ -392,7 +428,7 @@ export class Q2Popover {
|
|
|
392
428
|
containerClasses.push('animating-open');
|
|
393
429
|
if (this.animationState === 'closing')
|
|
394
430
|
containerClasses.push('animating-close');
|
|
395
|
-
return (h("div", { key: '
|
|
431
|
+
return (h("div", { key: 'f608766723c6ae6737181318b5baf8b52ed7fc0f', ref: el => (this.containerElement = el), class: containerClasses.join(' '), "test-id": "outerContainer", tabIndex: -1, popover: "manual" }, h("div", { key: '477f1a209cf4abc984a82324d0c6fc07ede82160', ref: el => (this.contentElement = el), class: "content" }, h("slot", { key: '5b48ff13907b952a2cdcffc1b6e271e4982c78ad' }))));
|
|
396
432
|
}
|
|
397
433
|
static get is() { return "q2-popover"; }
|
|
398
434
|
static get encapsulation() { return "shadow"; }
|
|
@@ -88,9 +88,9 @@ button {
|
|
|
88
88
|
}
|
|
89
89
|
}
|
|
90
90
|
/**
|
|
91
|
-
* @prop --tct-radio-margin: (<length-percentage>+) Controls the outer margin of the radio container.
|
|
92
91
|
* @prop --tct-radio-transition: (*) Controls the transition timing of radio state changes.
|
|
93
|
-
* @prop --tct-radio-
|
|
92
|
+
* @prop --tct-radio-mark-size: (<length>) Controls the width and height of the radio mark.
|
|
93
|
+
* @prop --tct-radio-stroke-width: (<number>) Controls the stroke width of the radio circles in the default state. Values above `2` are clipped by the radio mark envelope.
|
|
94
94
|
* @prop --tct-radio-stroke-color: (<color>) Controls the stroke color of the radio circles in the default state.
|
|
95
95
|
* @prop --tct-radio-background-fill?: (<color>) Controls the optional background fill of the radio in the default state.
|
|
96
96
|
* @prop --tct-radio-background-stroke: (<color>) Controls the stroke color of the radio in the default state.
|
|
@@ -109,6 +109,7 @@ button {
|
|
|
109
109
|
* @prop --tct-radio-background-stroke-active: (<color>) Controls the stroke color when the radio is active.
|
|
110
110
|
* @prop --tct-radio-hover-background-fill?: (<color>) Controls the optional background fill when the radio is hovered.
|
|
111
111
|
* @prop --tct-radio-hover-stroke-color: (<color>) Controls the stroke color when the radio is hovered.
|
|
112
|
+
* @prop --tct-radio-checked-hover-stroke-color: (<color>) Controls the stroke color when a checked radio is hovered.
|
|
112
113
|
* @prop --tct-radio-hover-label-color?: (<color>) Controls the optional label text color when the radio is hovered.
|
|
113
114
|
* @prop --tct-radio-focus-background-fill?: (<color>) Controls the optional background fill when the radio is focused.
|
|
114
115
|
* @prop --tct-radio-focus-stroke-color: (<color>) Controls the stroke color when the radio is focused.
|
|
@@ -129,65 +130,81 @@ button {
|
|
|
129
130
|
* @prop --tct-radio-checked-label-letter-spacing: (<length>) Controls the label letter spacing when the radio is checked (legacy alias).
|
|
130
131
|
* @prop --tct-radio-label-gap: (<length-percentage>) Controls the gap between the radio circle and label content.
|
|
131
132
|
* @prop --tct-radio-label-margin-right: (<length-percentage>) Controls the right margin of the radio label.
|
|
133
|
+
* @prop --tct-radio-min-height: (<length>) Controls the minimum height of the radio label row.
|
|
132
134
|
* @prop --tct-radio-hidden-columns: (*) Controls the grid-template-columns when the label is visually hidden.
|
|
133
135
|
* @prop --tct-radio-label-hidden-columns?: (*) Controls the optional grid-template-columns when the label is visually hidden.
|
|
134
|
-
* @prop --tct-radio-tile-border-radius: (<length-percentage>) Controls the corner radius of the radio tile.
|
|
135
136
|
* @prop --tct-radio-tile-label-font-size: (<length-percentage>) Controls the font size of the radio tile label.
|
|
137
|
+
* @prop --tct-radio-tile-padding: (<length-percentage>+) Controls the inner padding of a radio tile.
|
|
138
|
+
* @prop --tct-radio-tile-divider-width: (<length>) Controls the width of the divider between radio tiles.
|
|
139
|
+
* @prop --tct-radio-tile-divider-color: (<color>) Controls the color of the divider between radio tiles.
|
|
140
|
+
* @prop --tct-radio-tile-hover-background-fill: (<color>) Controls the background of an unselected radio tile on hover.
|
|
141
|
+
* @prop --tct-radio-tile-active-background-fill: (<color>) Controls the background of an unselected radio tile while active.
|
|
142
|
+
* @prop --tct-radio-tile-checked-background-fill: (<color>) Controls the background of a selected radio tile.
|
|
143
|
+
* @prop --tct-radio-tile-checked-label-color: (<color>) Controls the label color of a selected radio tile.
|
|
144
|
+
* @prop --tct-radio-tile-indicator-height: (<length>) Controls the height of the selected radio tile indicator.
|
|
145
|
+
* @prop --tct-radio-tile-indicator-border-radius: (<length-percentage>+) Controls the selected radio tile indicator radius.
|
|
136
146
|
* @prop --tct-radio-tile-checked-stroke-color: (<color>) Controls the border color of the radio tile when checked.
|
|
137
|
-
* @prop --tct-radio-tile-focus-stroke-color: (<color>) Controls the border color of the radio tile when focused.
|
|
138
147
|
* @prop --tct-radio-tile-focus-box-shadow: (*) Controls the box shadow of the radio tile when focused via keyboard.
|
|
139
148
|
*/
|
|
140
149
|
:host {
|
|
141
150
|
display: block;
|
|
151
|
+
letter-spacing: var(--tct-radio-label-letter-spacing, inherit);
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
:host([checked]:not([checked=false])) {
|
|
155
|
+
letter-spacing: var(--tct-radio-label-letter-spacing-checked, var(--tct-radio-checked-label-letter-spacing, var(--tct-checkbox-selected-letter-spacing, var(--tct-radio-label-letter-spacing, inherit))));
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
:host(:active) {
|
|
159
|
+
letter-spacing: var(--tct-radio-label-letter-spacing-active, var(--tct-radio-label-letter-spacing, inherit));
|
|
142
160
|
}
|
|
143
161
|
|
|
144
162
|
.radio-container {
|
|
145
|
-
--comp-radio-
|
|
146
|
-
--comp-
|
|
147
|
-
--comp-
|
|
148
|
-
--comp-
|
|
149
|
-
--comp-
|
|
150
|
-
--comp-
|
|
163
|
+
--comp-radio-mark-track-size: 36px;
|
|
164
|
+
--comp-radio-mark-size: var(--tct-radio-mark-size, 20px);
|
|
165
|
+
--comp-radio-mark-fill: var(--tct-radio-background-fill, transparent);
|
|
166
|
+
--comp-radio-mark-stroke: var(--tct-radio-background-stroke, var(--tct-radio-stroke-color, var(--t-a11y-gray-color-AA, #949494)));
|
|
167
|
+
--comp-radio-mark-stroke-width: var(--tct-radio-background-stroke-width, var(--tct-radio-stroke-width, 2));
|
|
168
|
+
--comp-radio-mark-color-transition: background-color var(--tct-radio-background-transition, var(--tct-checkbox-tween, var(--app-tween-1, 0.15s ease))), border-color var(--tct-radio-background-transition, var(--tct-checkbox-tween, var(--app-tween-1, 0.15s ease)));
|
|
169
|
+
--comp-radio-mark-dot-fill: var(--tct-radio-select-fill-default, transparent);
|
|
151
170
|
--comp-label-content-color: var(--tct-radio-label-color, inherit);
|
|
152
171
|
--comp-label-content-font-weight: var(--tct-radio-label-font-weight, var(--tct-radio-font-weight, var(--tct-checkbox-font-weight, 400)));
|
|
153
|
-
--comp-label-content-
|
|
154
|
-
--comp-label-content-
|
|
155
|
-
--comp-label-
|
|
156
|
-
--comp-
|
|
157
|
-
--comp-
|
|
158
|
-
--comp-
|
|
159
|
-
--comp-
|
|
160
|
-
--comp-
|
|
161
|
-
--comp-
|
|
162
|
-
--comp-label-content-font-weight-checked: var(--tct-radio-label-font-weight-checked, var(--tct-radio-checked-label-font-weight, var(--tct-checkbox-selected-font-weight, 600)));
|
|
163
|
-
--comp-label-content-letter-spacing-checked: var(--tct-radio-label-letter-spacing-checked, var(--tct-radio-checked-label-letter-spacing, var(--tct-checkbox-selected-letter-spacing, var(--comp-label-content-letter-spacing))));
|
|
172
|
+
--comp-label-content-margin-right: var(--tct-radio-label-margin-right, 0);
|
|
173
|
+
--comp-label-content-gap: var(--tct-radio-label-gap, 0);
|
|
174
|
+
--comp-label-hidden-columns: var(--tct-radio-hidden-columns, var(--tct-radio-label-hidden-columns, var(--comp-radio-mark-track-size) 1fr));
|
|
175
|
+
--comp-radio-mark-transition: box-shadow var(--tct-radio-transition, var(--tct-tween-1, var(--app-tween-1, 0.15s ease))), transform var(--tct-radio-transition, var(--tct-tween-1, var(--app-tween-1, 0.15s ease)));
|
|
176
|
+
--comp-radio-mark-box-shadow: var(--tct-radio-box-shadow, none);
|
|
177
|
+
--comp-radio-mark-fill-checked: var(--tct-radio-checked-background-fill, var(--t-base, #ffffff));
|
|
178
|
+
--comp-radio-mark-stroke-checked: var(--tct-radio-checked-stroke-color, var(--t-primary, #6a4a9e));
|
|
179
|
+
--comp-radio-mark-dot-fill-checked: var(--tct-radio-select-fill-checked, var(--tct-radio-checked-fill, var(--tct-checkbox-check-stroke-color, var(--t-checkbox-fill, var(--t-primary, #6a4a9e)))));
|
|
180
|
+
--comp-label-content-font-weight-checked: var(--tct-radio-label-font-weight-checked, var(--tct-radio-checked-label-font-weight, var(--tct-checkbox-selected-font-weight, var(--comp-label-content-font-weight))));
|
|
164
181
|
--comp-label-content-color-checked: var(--tct-radio-label-font-color-checked, var(--tct-radio-checked-label-font-color, var(--tct-radio-checked-label-color, inherit)));
|
|
165
|
-
--comp-
|
|
166
|
-
--comp-
|
|
167
|
-
--comp-
|
|
182
|
+
--comp-radio-mark-fill-active: var(--tct-radio-background-fill-active, #e8ddef);
|
|
183
|
+
--comp-radio-mark-stroke-active: var(--tct-radio-background-stroke-active, var(--t-primary-d2, #553b7e));
|
|
184
|
+
--comp-radio-mark-dot-fill-active: var(--tct-radio-selected-fill-active, var(--comp-radio-mark-dot-fill-checked));
|
|
168
185
|
--comp-label-content-font-weight-active: var(--tct-radio-label-font-weight-active, var(--comp-label-content-font-weight));
|
|
169
|
-
--comp-label-content-letter-spacing-active: var(--tct-radio-label-letter-spacing-active, var(--comp-label-content-letter-spacing));
|
|
170
186
|
--comp-label-content-color-active: var(--tct-radio-label-color-active, var(--comp-label-content-color));
|
|
171
|
-
--comp-
|
|
172
|
-
--comp-
|
|
187
|
+
--comp-radio-mark-fill-hover: var(--tct-radio-hover-background-fill, #f3eefa);
|
|
188
|
+
--comp-radio-mark-stroke-hover: var(--tct-radio-hover-stroke-color, var(--t-primary, #6a4a9e));
|
|
189
|
+
--comp-radio-mark-stroke-checked-hover: var(--tct-radio-checked-hover-stroke-color, var(--t-primary-d2, #553b7e));
|
|
173
190
|
--comp-label-content-color-hover: var(--tct-radio-hover-label-color, var(--comp-label-content-color));
|
|
174
|
-
--comp-
|
|
175
|
-
--comp-
|
|
191
|
+
--comp-radio-mark-fill-focus: var(--tct-radio-focus-background-fill, var(--comp-radio-mark-fill));
|
|
192
|
+
--comp-radio-mark-stroke-focus: var(--tct-radio-focus-stroke-color, var(--comp-radio-mark-stroke));
|
|
176
193
|
--comp-label-content-color-focus: var(--tct-radio-focus-label-color, var(--comp-label-content-color));
|
|
177
|
-
--comp-
|
|
178
|
-
margin: var(--comp-radio-margin);
|
|
194
|
+
--comp-radio-mark-box-shadow-focus-visible: var(--tct-radio-box-shadow-focus-visible, var(--tct-radio-focus-box-shadow, var(--const-double-focus-ring)));
|
|
179
195
|
}
|
|
180
196
|
.radio-container label[for] {
|
|
181
|
-
color: var(
|
|
182
|
-
font-weight: var(
|
|
197
|
+
color: var(--comp-label-content-color);
|
|
198
|
+
font-weight: var(--comp-label-content-font-weight);
|
|
183
199
|
font-size: var(--tct-radio-label-font-size, var(--const-px-14, 14px));
|
|
184
|
-
align-items:
|
|
200
|
+
align-items: center;
|
|
185
201
|
cursor: pointer;
|
|
186
|
-
margin-right: var(
|
|
202
|
+
margin-right: var(--comp-label-content-margin-right);
|
|
187
203
|
display: grid;
|
|
188
|
-
grid-template-columns:
|
|
204
|
+
grid-template-columns: var(--comp-radio-mark-track-size) 1fr;
|
|
189
205
|
gap: var(--comp-label-content-gap);
|
|
190
|
-
|
|
206
|
+
min-height: var(--tct-radio-min-height, var(--comp-radio-mark-track-size));
|
|
207
|
+
user-select: none;
|
|
191
208
|
}
|
|
192
209
|
.radio-container label[for].label-hidden {
|
|
193
210
|
grid-template-columns: var(--comp-label-hidden-columns);
|
|
@@ -195,116 +212,153 @@ button {
|
|
|
195
212
|
.radio-container label[for] .description-content {
|
|
196
213
|
grid-column: 2;
|
|
197
214
|
}
|
|
198
|
-
.radio-container
|
|
215
|
+
.radio-container .radio-mark {
|
|
216
|
+
--comp-radio-mark-current-fill: var(--comp-radio-mark-fill);
|
|
217
|
+
--comp-radio-mark-current-stroke: var(--comp-radio-mark-stroke);
|
|
218
|
+
border-radius: 50%;
|
|
219
|
+
box-shadow: var(--comp-radio-mark-box-shadow);
|
|
220
|
+
height: var(--comp-radio-mark-size);
|
|
221
|
+
justify-self: center;
|
|
222
|
+
overflow: hidden;
|
|
223
|
+
position: relative;
|
|
224
|
+
transition: var(--comp-radio-mark-transition);
|
|
225
|
+
width: var(--comp-radio-mark-size);
|
|
226
|
+
}
|
|
227
|
+
.radio-container .radio-mark::before {
|
|
228
|
+
background: var(--comp-radio-mark-current-fill);
|
|
229
|
+
border-color: var(--comp-radio-mark-current-stroke);
|
|
199
230
|
border-radius: 50%;
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
231
|
+
border-style: solid;
|
|
232
|
+
border-width: calc(var(--comp-radio-mark-stroke-width) * 1px);
|
|
233
|
+
box-sizing: border-box;
|
|
234
|
+
content: "";
|
|
235
|
+
height: calc(var(--comp-radio-mark-size) - 2px + var(--comp-radio-mark-stroke-width) * 1px);
|
|
236
|
+
left: 50%;
|
|
237
|
+
position: absolute;
|
|
238
|
+
top: 50%;
|
|
239
|
+
transform: translate(-50%, -50%);
|
|
240
|
+
transition: var(--comp-radio-mark-color-transition);
|
|
241
|
+
width: calc(var(--comp-radio-mark-size) - 2px + var(--comp-radio-mark-stroke-width) * 1px);
|
|
204
242
|
}
|
|
205
|
-
.radio-container .
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
243
|
+
.radio-container .radio-mark::after {
|
|
244
|
+
background: var(--comp-radio-mark-dot-fill);
|
|
245
|
+
border-radius: 50%;
|
|
246
|
+
content: "";
|
|
247
|
+
height: calc(var(--comp-radio-mark-size) / 2);
|
|
248
|
+
left: 50%;
|
|
249
|
+
position: absolute;
|
|
250
|
+
top: 50%;
|
|
251
|
+
transform: translate(-50%, -50%) scale(0);
|
|
252
|
+
transition: transform var(--tct-radio-transition, var(--tct-tween-1, var(--app-tween-1, 0.15s ease)));
|
|
253
|
+
width: calc(var(--comp-radio-mark-size) / 2);
|
|
210
254
|
}
|
|
211
|
-
.radio-container
|
|
212
|
-
|
|
255
|
+
.radio-container input:focus-visible {
|
|
256
|
+
box-shadow: none;
|
|
213
257
|
}
|
|
214
|
-
.radio-container input:checked + label .
|
|
215
|
-
fill: var(--comp-
|
|
216
|
-
stroke: var(--comp-
|
|
258
|
+
.radio-container input:checked + label .radio-mark {
|
|
259
|
+
--comp-radio-mark-current-fill: var(--comp-radio-mark-fill-checked);
|
|
260
|
+
--comp-radio-mark-current-stroke: var(--comp-radio-mark-stroke-checked);
|
|
217
261
|
}
|
|
218
|
-
.radio-container input:checked + label .
|
|
219
|
-
|
|
262
|
+
.radio-container input:checked + label .radio-mark::after {
|
|
263
|
+
background: var(--comp-radio-mark-dot-fill-checked);
|
|
264
|
+
transform: translate(-50%, -50%) scale(1);
|
|
220
265
|
}
|
|
221
266
|
.radio-container input:checked + label .label-content {
|
|
222
267
|
font-weight: var(--comp-label-content-font-weight-checked);
|
|
223
|
-
letter-spacing: var(--comp-label-content-letter-spacing-checked);
|
|
224
268
|
color: var(--comp-label-content-color-checked);
|
|
225
269
|
}
|
|
226
|
-
.radio-container input:hover + label .
|
|
227
|
-
fill: var(--comp-
|
|
228
|
-
stroke: var(--comp-
|
|
270
|
+
.radio-container input:hover:not(:disabled) + label .radio-mark {
|
|
271
|
+
--comp-radio-mark-current-fill: var(--comp-radio-mark-fill-hover);
|
|
272
|
+
--comp-radio-mark-current-stroke: var(--comp-radio-mark-stroke-hover);
|
|
229
273
|
}
|
|
230
|
-
.radio-container input:hover + label .label-content {
|
|
274
|
+
.radio-container input:hover:not(:disabled) + label .label-content {
|
|
231
275
|
color: var(--comp-label-content-color-hover);
|
|
232
276
|
}
|
|
233
|
-
.radio-container input:active + label .
|
|
234
|
-
fill: var(--comp-
|
|
235
|
-
stroke: var(--comp-
|
|
277
|
+
.radio-container input:active:not(:disabled) + label .radio-mark {
|
|
278
|
+
--comp-radio-mark-current-fill: var(--comp-radio-mark-fill-active);
|
|
279
|
+
--comp-radio-mark-current-stroke: var(--comp-radio-mark-stroke-active);
|
|
280
|
+
transform: scale(0.9);
|
|
236
281
|
}
|
|
237
|
-
.radio-container input:active + label .
|
|
238
|
-
|
|
282
|
+
.radio-container input:active:not(:disabled) + label .radio-mark::after {
|
|
283
|
+
background: var(--comp-radio-mark-dot-fill-active);
|
|
239
284
|
}
|
|
240
|
-
.radio-container input:active + label .label-content {
|
|
285
|
+
.radio-container input:active:not(:disabled) + label .label-content {
|
|
241
286
|
font-weight: var(--comp-label-content-font-weight-active);
|
|
242
|
-
letter-spacing: var(--comp-label-content-letter-spacing-active);
|
|
243
287
|
color: var(--comp-label-content-color-active);
|
|
244
288
|
}
|
|
245
|
-
.radio-container input:focus + label .
|
|
246
|
-
fill: var(--comp-
|
|
247
|
-
stroke: var(--comp-
|
|
289
|
+
.radio-container input:focus + label .radio-mark {
|
|
290
|
+
--comp-radio-mark-current-fill: var(--comp-radio-mark-fill-focus);
|
|
291
|
+
--comp-radio-mark-current-stroke: var(--comp-radio-mark-stroke-focus);
|
|
248
292
|
}
|
|
249
293
|
.radio-container input:focus + label .label-content {
|
|
250
294
|
color: var(--comp-label-content-color-focus);
|
|
251
295
|
}
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
flex-basis: 100px;
|
|
255
|
-
flex-grow: 0;
|
|
256
|
-
flex-wrap: wrap;
|
|
296
|
+
.radio-container input:focus-visible + label .radio-mark {
|
|
297
|
+
box-shadow: var(--comp-radio-mark-box-shadow-focus-visible);
|
|
257
298
|
}
|
|
299
|
+
.radio-container input:checked:hover:not(:disabled) + label .radio-mark {
|
|
300
|
+
--comp-radio-mark-current-stroke: var(--comp-radio-mark-stroke-checked-hover);
|
|
301
|
+
}
|
|
302
|
+
|
|
258
303
|
.radio-tile label[for] {
|
|
259
304
|
color: var(--tct-radio-label-font-color, var(--tct-radio-label-color, inherit));
|
|
260
305
|
align-items: center;
|
|
261
|
-
border
|
|
262
|
-
|
|
263
|
-
background: var(--tct-radio-background-fill, transparent);
|
|
306
|
+
border: 0;
|
|
307
|
+
background: var(--tct-radio-background-fill, var(--t-base, #ffffff));
|
|
264
308
|
cursor: pointer;
|
|
265
309
|
display: block;
|
|
266
310
|
font-size: var(--tct-radio-tile-label-font-size, var(--tct-radio-label-font-size, var(--const-px-14, 14px)));
|
|
267
|
-
|
|
311
|
+
overflow: hidden;
|
|
312
|
+
padding: var(--tct-radio-tile-padding, 10px 20px);
|
|
268
313
|
position: relative;
|
|
269
314
|
text-align: center;
|
|
270
|
-
transition:
|
|
315
|
+
transition: background var(--tct-tween-1, var(--app-tween-1, 0.15s ease)), color var(--tct-tween-1, var(--app-tween-1, 0.15s ease)), box-shadow var(--tct-tween-1, var(--app-tween-1, 0.15s ease));
|
|
271
316
|
white-space: nowrap;
|
|
317
|
+
user-select: none;
|
|
318
|
+
}
|
|
319
|
+
.radio-tile input:focus-visible {
|
|
320
|
+
box-shadow: none;
|
|
272
321
|
}
|
|
273
322
|
.radio-tile input:checked + label {
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
background: var(--tct-radio-checked-background-fill, transparent);
|
|
277
|
-
color: var(--tct-radio-checked-label-color, inherit);
|
|
323
|
+
background: var(--tct-radio-tile-checked-background-fill, var(--tct-radio-checked-background-fill, #f3eefa));
|
|
324
|
+
color: var(--tct-radio-tile-checked-label-color, var(--tct-radio-checked-label-color, var(--t-primary, #6a4a9e)));
|
|
278
325
|
}
|
|
279
326
|
.radio-tile input:checked + label:after {
|
|
280
|
-
|
|
281
|
-
border-
|
|
282
|
-
border-left-width: 5px;
|
|
283
|
-
border-left: 8px solid transparent;
|
|
284
|
-
border-right-width: 5px;
|
|
285
|
-
border-right: 8px solid transparent;
|
|
327
|
+
background: var(--tct-radio-tile-checked-stroke-color, var(--t-primary, #6a4a9e));
|
|
328
|
+
border-radius: var(--tct-radio-tile-indicator-border-radius, 9999px 9999px 0 0);
|
|
286
329
|
bottom: 0;
|
|
287
330
|
content: "";
|
|
288
|
-
height:
|
|
289
|
-
left:
|
|
290
|
-
margin-left: -5px;
|
|
331
|
+
height: var(--tct-radio-tile-indicator-height, 2px);
|
|
332
|
+
left: 0;
|
|
291
333
|
position: absolute;
|
|
292
|
-
|
|
334
|
+
right: 0;
|
|
293
335
|
}
|
|
294
|
-
.radio-tile input:hover + label {
|
|
295
|
-
|
|
296
|
-
background: var(--tct-radio-hover-background-fill, transparent);
|
|
336
|
+
.radio-tile input:not(:checked):hover:not(:disabled) + label {
|
|
337
|
+
background: var(--tct-radio-tile-hover-background-fill, #fafafa);
|
|
297
338
|
color: var(--tct-radio-hover-label-color, var(--tct-radio-label-color, inherit));
|
|
298
339
|
}
|
|
299
|
-
.radio-tile input:
|
|
300
|
-
--
|
|
301
|
-
border-color: var(--tct-radio-tile-focus-stroke-color, var(--tct-radio-focus-stroke-color, var(--tct-checkbox-check-stroke-color, var(--t-checkbox-check-stroke-color, var(--t-checkbox-fill, #2e2e2e)))));
|
|
302
|
-
background: var(--tct-radio-focus-background-fill, transparent);
|
|
303
|
-
box-shadow: var(--tct-radio-tile-focus-box-shadow, var(--comp-radio-tile-focus-box-shadow-fallback));
|
|
304
|
-
color: var(--tct-radio-focus-label-color, var(--tct-radio-checked-label-color, inherit));
|
|
340
|
+
.radio-tile input:not(:checked):active:not(:disabled) + label {
|
|
341
|
+
background: var(--tct-radio-tile-active-background-fill, var(--t-gray-14, #f2f2f2));
|
|
305
342
|
}
|
|
306
|
-
.radio-tile input:focus
|
|
307
|
-
|
|
343
|
+
.radio-tile input:focus-visible + label {
|
|
344
|
+
z-index: 1;
|
|
345
|
+
box-shadow: var(--tct-radio-tile-focus-box-shadow, var(--const-double-focus-ring));
|
|
346
|
+
}
|
|
347
|
+
|
|
348
|
+
:host(:not(:first-child)) .radio-tile label[for] {
|
|
349
|
+
border-left: var(--tct-radio-tile-divider-width, 1px) solid var(--tct-radio-tile-divider-color, var(--t-gray-13, #e6e6e6));
|
|
350
|
+
}
|
|
351
|
+
|
|
352
|
+
:host(:first-child) .radio-tile label[for] {
|
|
353
|
+
border-radius: var(--tct-radio-group-tile-border-radius, var(--app-border-radius-2, 8px)) 0 0 var(--tct-radio-group-tile-border-radius, var(--app-border-radius-2, 8px));
|
|
354
|
+
}
|
|
355
|
+
|
|
356
|
+
:host(:last-child) .radio-tile label[for] {
|
|
357
|
+
border-radius: 0 var(--tct-radio-group-tile-border-radius, var(--app-border-radius-2, 8px)) var(--tct-radio-group-tile-border-radius, var(--app-border-radius-2, 8px)) 0;
|
|
358
|
+
}
|
|
359
|
+
|
|
360
|
+
:host(:only-child) .radio-tile label[for] {
|
|
361
|
+
border-radius: var(--tct-radio-group-tile-border-radius, var(--app-border-radius-2, 8px));
|
|
308
362
|
}
|
|
309
363
|
|
|
310
364
|
input:disabled + label[for] {
|
|
@@ -90,7 +90,7 @@ export class Q2Radio {
|
|
|
90
90
|
// #endregion
|
|
91
91
|
// #region Render Methods
|
|
92
92
|
render() {
|
|
93
|
-
return (h("div", { key: '
|
|
93
|
+
return (h("div", { key: '1aafcfbdb7d6e2863618d6741bc12491a109ec80', class: this.groupTileLayout ? 'radio-tile' : 'radio-container' }, h("input", { key: '1989707753be2d6b8bc8c69098a5c9bf27af99b7', ref: el => (this.inputField = el), class: "sr", id: this._id, type: "radio", name: this.name, value: this.value, disabled: this.disabled || this.groupDisabled, checked: this.checked, "aria-label": this.label && this.hideLabel ? loc(this.label) : undefined, onChange: this.inputChange, "test-id": "q2RadioInnerRadioBox" }), h("label", { key: '93a6f7f8d718c8070c4d4d88c3b48905f518e166', htmlFor: this._id, class: this.hideLabel ? 'label-hidden' : undefined, "test-id": "radioButton" }, !this.groupTileLayout && (h("span", { key: 'f351a1aef39845bbb1bbd360037d36486de27cd9', class: "radio-mark", "aria-hidden": "true" })), !this.hideLabel && (h("div", { key: 'c9cb25115cffc72dfbb52024b6343f16a0744fbc', class: "label-content" }, (this.label && loc(this.label)) || '', h("slot", { key: '8d63e148c83fb247b60b719d3de8627c327efaa4' }))))));
|
|
94
94
|
}
|
|
95
95
|
static get is() { return "q2-radio"; }
|
|
96
96
|
static get encapsulation() { return "shadow"; }
|
|
@@ -250,7 +250,7 @@ export class Q2Radio {
|
|
|
250
250
|
"docs": {
|
|
251
251
|
"tags": [{
|
|
252
252
|
"name": "warning",
|
|
253
|
-
"text": "
|
|
253
|
+
"text": "Hides the label visually. `label` text is still required for screenreader compliance."
|
|
254
254
|
}],
|
|
255
255
|
"text": "Hides the field's `<label>` element from view."
|
|
256
256
|
},
|
|
@@ -271,6 +271,9 @@ export class Q2Radio {
|
|
|
271
271
|
"optional": false,
|
|
272
272
|
"docs": {
|
|
273
273
|
"tags": [{
|
|
274
|
+
"name": "warning",
|
|
275
|
+
"text": "Required for screen reader compliance even when `hideLabel` is `true`."
|
|
276
|
+
}, {
|
|
274
277
|
"name": "localizable",
|
|
275
278
|
"text": undefined
|
|
276
279
|
}],
|
|
@@ -5,12 +5,24 @@ const VARIANTS = [
|
|
|
5
5
|
{
|
|
6
6
|
name: 'unchecked',
|
|
7
7
|
html: `<q2-radio value="1" label="Default"></q2-radio>`,
|
|
8
|
-
states: ['resting', 'hover', 'focus'],
|
|
8
|
+
states: ['resting', 'hover', 'focus', 'active'],
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
name: 'letter-spacing-override',
|
|
12
|
+
html: `<style>
|
|
13
|
+
q2-radio {
|
|
14
|
+
letter-spacing: 0.12em !important;
|
|
15
|
+
}
|
|
16
|
+
</style>
|
|
17
|
+
<div style="width: 220px">
|
|
18
|
+
<q2-radio value="1" label="Send the payment on the next business day" checked></q2-radio>
|
|
19
|
+
</div>`,
|
|
20
|
+
states: ['resting'],
|
|
9
21
|
},
|
|
10
22
|
{
|
|
11
23
|
name: 'checked',
|
|
12
24
|
html: `<q2-radio value="1" label="Default" checked></q2-radio>`,
|
|
13
|
-
states: ['resting', 'hover', 'focus'],
|
|
25
|
+
states: ['resting', 'hover', 'focus', 'active'],
|
|
14
26
|
},
|
|
15
27
|
{
|
|
16
28
|
name: 'disabled-unchecked',
|
|
@@ -58,6 +70,15 @@ const focusCase = (variant, theme) => {
|
|
|
58
70
|
await expect(page).toHaveScreenshot(`q2-radio--${variant.name}--focus--${theme}.png`);
|
|
59
71
|
});
|
|
60
72
|
};
|
|
73
|
+
const activeCase = (variant, theme) => {
|
|
74
|
+
test(`q2-radio--${variant.name}--active — ${theme}`, async ({ page }) => {
|
|
75
|
+
await setupPage(page, variant.html, { theme });
|
|
76
|
+
await page.locator('q2-radio').hover();
|
|
77
|
+
await page.mouse.down();
|
|
78
|
+
await expect(page).toHaveScreenshot(`q2-radio--${variant.name}--active--${theme}.png`);
|
|
79
|
+
await page.mouse.up();
|
|
80
|
+
});
|
|
81
|
+
};
|
|
61
82
|
test.describe('q2-radio — variants × themes', () => {
|
|
62
83
|
for (const variant of VARIANTS) {
|
|
63
84
|
for (const theme of THEMES) {
|
|
@@ -67,6 +88,8 @@ test.describe('q2-radio — variants × themes', () => {
|
|
|
67
88
|
hoverCase(variant, theme);
|
|
68
89
|
if (variant.states.includes('focus'))
|
|
69
90
|
focusCase(variant, theme);
|
|
91
|
+
if (variant.states.includes('active'))
|
|
92
|
+
activeCase(variant, theme);
|
|
70
93
|
}
|
|
71
94
|
}
|
|
72
95
|
});
|