q2-tecton-elements 1.47.0 → 1.48.1-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/click-elsewhere_2.cjs.entry.js +43 -7
- package/dist/cjs/click-elsewhere_2.cjs.entry.js.map +1 -1
- package/dist/cjs/{index-c385e32f.js → index-c9a86a33.js} +1 -1
- package/dist/cjs/{index-c385e32f.js.map → index-c9a86a33.js.map} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/q2-calendar.cjs.entry.js +2 -2
- package/dist/cjs/q2-calendar.cjs.entry.js.map +1 -1
- package/dist/cjs/q2-chart-donut.cjs.entry.js +7 -4
- package/dist/cjs/q2-chart-donut.cjs.entry.js.map +1 -1
- package/dist/cjs/q2-checkbox-group.cjs.entry.js +1 -1
- package/dist/cjs/q2-checkbox-group.cjs.entry.js.map +1 -1
- package/dist/cjs/q2-checkbox.cjs.entry.js +1 -1
- package/dist/cjs/q2-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/q2-data-table.cjs.entry.js +8 -5
- package/dist/cjs/q2-data-table.cjs.entry.js.map +1 -1
- package/dist/cjs/q2-dropdown-item.cjs.entry.js +13 -4
- package/dist/cjs/q2-dropdown-item.cjs.entry.js.map +1 -1
- package/dist/cjs/q2-editable-field.cjs.entry.js +36 -27
- package/dist/cjs/q2-editable-field.cjs.entry.js.map +1 -1
- package/dist/cjs/q2-form.cjs.entry.js +23 -0
- package/dist/cjs/q2-form.cjs.entry.js.map +1 -0
- package/dist/cjs/q2-input.cjs.entry.js +3 -3
- package/dist/cjs/q2-input.cjs.entry.js.map +1 -1
- package/dist/cjs/q2-item.cjs.entry.js +1 -1
- package/dist/cjs/q2-legend.cjs.entry.js +1 -1
- package/dist/cjs/q2-list.cjs.entry.js +1 -1
- package/dist/cjs/q2-loc.cjs.entry.js +1 -1
- package/dist/cjs/q2-message.cjs.entry.js +1 -1
- package/dist/cjs/q2-optgroup.cjs.entry.js +1 -1
- package/dist/cjs/q2-option-list.cjs.entry.js +2 -3
- package/dist/cjs/q2-option-list.cjs.entry.js.map +1 -1
- package/dist/cjs/q2-option.cjs.entry.js +1 -1
- package/dist/cjs/q2-pagination.cjs.entry.js +2 -2
- package/dist/cjs/q2-pill.cjs.entry.js +1 -1
- package/dist/cjs/q2-radio-group.cjs.entry.js +1 -1
- package/dist/cjs/q2-radio-group.cjs.entry.js.map +1 -1
- package/dist/cjs/q2-relative-time.cjs.entry.js +35 -18
- package/dist/cjs/q2-relative-time.cjs.entry.js.map +1 -1
- package/dist/cjs/q2-section.cjs.entry.js +2 -2
- package/dist/cjs/q2-section.cjs.entry.js.map +1 -1
- package/dist/cjs/q2-select.cjs.entry.js +8 -3
- package/dist/cjs/q2-select.cjs.entry.js.map +1 -1
- package/dist/cjs/q2-stepper-pane.cjs.entry.js +1 -1
- package/dist/cjs/q2-stepper-vertical.cjs.entry.js +1 -1
- package/dist/cjs/q2-stepper.cjs.entry.js +2 -2
- package/dist/cjs/q2-stepper.cjs.entry.js.map +1 -1
- package/dist/cjs/q2-tab-container.cjs.entry.js +2 -2
- package/dist/cjs/q2-tab-container.cjs.entry.js.map +1 -1
- package/dist/cjs/q2-tab-pane.cjs.entry.js +1 -1
- package/dist/cjs/q2-tag.cjs.entry.js +1 -1
- package/dist/cjs/q2-tecton-elements.cjs.js +1 -1
- package/dist/cjs/q2-textarea.cjs.entry.js +1 -1
- package/dist/cjs/q2-textarea.cjs.entry.js.map +1 -1
- package/dist/cjs/tecton-tab-pane.cjs.entry.js +2 -2
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/q2-calendar/q2-calendar.css +2 -0
- package/dist/collection/components/q2-chart-donut/q2-chart-donut.js +7 -4
- package/dist/collection/components/q2-chart-donut/q2-chart-donut.js.map +1 -1
- package/dist/collection/components/q2-checkbox/q2-checkbox.css +2 -0
- package/dist/collection/components/q2-checkbox-group/q2-checkbox-group.css +7 -1
- package/dist/collection/components/q2-data-table/q2-data-table.css +15 -1
- package/dist/collection/components/q2-data-table/q2-data-table.js +34 -14
- package/dist/collection/components/q2-data-table/q2-data-table.js.map +1 -1
- package/dist/collection/components/q2-dropdown-item/q2-dropdown-item.js +22 -5
- package/dist/collection/components/q2-dropdown-item/q2-dropdown-item.js.map +1 -1
- package/dist/collection/components/q2-editable-field/q2-editable-field.js +41 -29
- package/dist/collection/components/q2-editable-field/q2-editable-field.js.map +1 -1
- package/dist/collection/components/q2-form/q2-form.css +92 -0
- package/dist/collection/components/q2-form/q2-form.js +44 -0
- package/dist/collection/components/q2-form/q2-form.js.map +1 -0
- package/dist/collection/components/q2-input/q2-input.css +1 -1
- package/dist/collection/components/q2-input/q2-input.js +23 -20
- package/dist/collection/components/q2-input/q2-input.js.map +1 -1
- package/dist/collection/components/q2-item/q2-item.js +1 -1
- 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-loc/q2-loc.js +1 -1
- package/dist/collection/components/q2-message/q2-message.js +1 -1
- package/dist/collection/components/q2-optgroup/q2-optgroup.js +1 -1
- package/dist/collection/components/q2-option/q2-option.js +1 -1
- package/dist/collection/components/q2-option-list/q2-option-list.js +4 -5
- package/dist/collection/components/q2-option-list/q2-option-list.js.map +1 -1
- package/dist/collection/components/q2-pagination/q2-pagination.js +2 -2
- package/dist/collection/components/q2-pill/q2-pill.js +1 -1
- package/dist/collection/components/q2-popover/q2-popover.js +43 -7
- package/dist/collection/components/q2-popover/q2-popover.js.map +1 -1
- package/dist/collection/components/q2-radio-group/q2-radio-group.css +4 -2
- package/dist/collection/components/q2-relative-time/q2-relative-time.js +79 -25
- package/dist/collection/components/q2-relative-time/q2-relative-time.js.map +1 -1
- package/dist/collection/components/q2-section/q2-section.js +7 -4
- package/dist/collection/components/q2-section/q2-section.js.map +1 -1
- package/dist/collection/components/q2-select/q2-select.css +2 -2
- package/dist/collection/components/q2-select/q2-select.js +7 -2
- package/dist/collection/components/q2-select/q2-select.js.map +1 -1
- package/dist/collection/components/q2-stepper/q2-stepper.js +2 -2
- package/dist/collection/components/q2-stepper/q2-stepper.js.map +1 -1
- package/dist/collection/components/q2-stepper-pane/q2-stepper-pane.js +3 -3
- package/dist/collection/components/q2-stepper-vertical/q2-stepper-vertical.js +1 -1
- package/dist/collection/components/q2-tab-container/q2-tab-container.css +2 -1
- 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 +1 -1
- package/dist/collection/components/q2-textarea/q2-textarea.css +2 -2
- package/dist/collection/components/tecton-tab-pane/tecton-tab-pane.js +2 -2
- package/dist/components/index.js +2 -0
- package/dist/components/index.js.map +1 -1
- package/dist/components/q2-calendar.js +1 -1
- package/dist/components/q2-calendar.js.map +1 -1
- package/dist/components/q2-chart-donut.js +7 -4
- package/dist/components/q2-chart-donut.js.map +1 -1
- package/dist/components/q2-checkbox-group.js +1 -1
- package/dist/components/q2-checkbox-group.js.map +1 -1
- package/dist/components/q2-checkbox2.js +1 -1
- package/dist/components/q2-checkbox2.js.map +1 -1
- package/dist/components/q2-data-table.js +10 -6
- package/dist/components/q2-data-table.js.map +1 -1
- package/dist/components/q2-dropdown-item2.js +16 -6
- package/dist/components/q2-dropdown-item2.js.map +1 -1
- package/dist/components/q2-editable-field.js +37 -28
- package/dist/components/q2-editable-field.js.map +1 -1
- package/dist/components/q2-form.d.ts +11 -0
- package/dist/components/q2-form.js +39 -0
- package/dist/components/q2-form.js.map +1 -0
- package/dist/components/q2-input2.js +4 -4
- package/dist/components/q2-input2.js.map +1 -1
- package/dist/components/q2-item.js +1 -1
- package/dist/components/q2-legend2.js +1 -1
- package/dist/components/q2-list.js +1 -1
- package/dist/components/q2-loc.js +1 -1
- package/dist/components/q2-message2.js +1 -1
- package/dist/components/q2-optgroup2.js +1 -1
- package/dist/components/q2-option-list2.js +2 -3
- package/dist/components/q2-option-list2.js.map +1 -1
- package/dist/components/q2-option2.js +1 -1
- package/dist/components/q2-pagination.js +2 -2
- package/dist/components/q2-pill.js +1 -1
- package/dist/components/q2-popover2.js +43 -7
- package/dist/components/q2-popover2.js.map +1 -1
- package/dist/components/q2-radio-group.js +1 -1
- package/dist/components/q2-radio-group.js.map +1 -1
- package/dist/components/q2-relative-time.js +37 -18
- package/dist/components/q2-relative-time.js.map +1 -1
- package/dist/components/q2-section.js +2 -2
- package/dist/components/q2-section.js.map +1 -1
- package/dist/components/q2-select2.js +8 -3
- package/dist/components/q2-select2.js.map +1 -1
- package/dist/components/q2-stepper-pane.js +1 -1
- package/dist/components/q2-stepper-vertical.js +1 -1
- package/dist/components/q2-stepper.js +2 -2
- package/dist/components/q2-stepper.js.map +1 -1
- package/dist/components/q2-tab-container.js +2 -2
- package/dist/components/q2-tab-container.js.map +1 -1
- package/dist/components/q2-tab-pane.js +1 -1
- package/dist/components/q2-tag.js +1 -1
- package/dist/components/q2-textarea.js +1 -1
- package/dist/components/q2-textarea.js.map +1 -1
- package/dist/components/tecton-tab-pane.js +2 -2
- package/dist/esm/click-elsewhere_2.entry.js +43 -7
- package/dist/esm/click-elsewhere_2.entry.js.map +1 -1
- package/dist/esm/{index-f0dfb099.js → index-8582f46d.js} +1 -1
- package/dist/esm/{index-f0dfb099.js.map → index-8582f46d.js.map} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/q2-calendar.entry.js +2 -2
- package/dist/esm/q2-calendar.entry.js.map +1 -1
- package/dist/esm/q2-chart-donut.entry.js +7 -4
- package/dist/esm/q2-chart-donut.entry.js.map +1 -1
- package/dist/esm/q2-checkbox-group.entry.js +1 -1
- package/dist/esm/q2-checkbox-group.entry.js.map +1 -1
- package/dist/esm/q2-checkbox.entry.js +1 -1
- package/dist/esm/q2-checkbox.entry.js.map +1 -1
- package/dist/esm/q2-data-table.entry.js +8 -5
- package/dist/esm/q2-data-table.entry.js.map +1 -1
- package/dist/esm/q2-dropdown-item.entry.js +14 -5
- package/dist/esm/q2-dropdown-item.entry.js.map +1 -1
- package/dist/esm/q2-editable-field.entry.js +37 -28
- package/dist/esm/q2-editable-field.entry.js.map +1 -1
- package/dist/esm/q2-form.entry.js +19 -0
- package/dist/esm/q2-form.entry.js.map +1 -0
- package/dist/esm/q2-input.entry.js +3 -3
- package/dist/esm/q2-input.entry.js.map +1 -1
- package/dist/esm/q2-item.entry.js +1 -1
- package/dist/esm/q2-legend.entry.js +1 -1
- package/dist/esm/q2-list.entry.js +1 -1
- package/dist/esm/q2-loc.entry.js +1 -1
- package/dist/esm/q2-message.entry.js +1 -1
- package/dist/esm/q2-optgroup.entry.js +1 -1
- package/dist/esm/q2-option-list.entry.js +2 -3
- package/dist/esm/q2-option-list.entry.js.map +1 -1
- package/dist/esm/q2-option.entry.js +1 -1
- package/dist/esm/q2-pagination.entry.js +2 -2
- package/dist/esm/q2-pill.entry.js +1 -1
- package/dist/esm/q2-radio-group.entry.js +1 -1
- package/dist/esm/q2-radio-group.entry.js.map +1 -1
- package/dist/esm/q2-relative-time.entry.js +35 -18
- package/dist/esm/q2-relative-time.entry.js.map +1 -1
- package/dist/esm/q2-section.entry.js +2 -2
- package/dist/esm/q2-section.entry.js.map +1 -1
- package/dist/esm/q2-select.entry.js +8 -3
- package/dist/esm/q2-select.entry.js.map +1 -1
- package/dist/esm/q2-stepper-pane.entry.js +1 -1
- package/dist/esm/q2-stepper-vertical.entry.js +1 -1
- package/dist/esm/q2-stepper.entry.js +2 -2
- package/dist/esm/q2-stepper.entry.js.map +1 -1
- package/dist/esm/q2-tab-container.entry.js +2 -2
- package/dist/esm/q2-tab-container.entry.js.map +1 -1
- package/dist/esm/q2-tab-pane.entry.js +1 -1
- package/dist/esm/q2-tag.entry.js +1 -1
- package/dist/esm/q2-tecton-elements.js +1 -1
- package/dist/esm/q2-textarea.entry.js +1 -1
- package/dist/esm/q2-textarea.entry.js.map +1 -1
- package/dist/esm/tecton-tab-pane.entry.js +2 -2
- package/dist/q2-tecton-elements/{p-d5776227.entry.js → p-0d6edd2a.entry.js} +2 -2
- package/dist/q2-tecton-elements/p-19da46dc.entry.js +2 -0
- package/dist/q2-tecton-elements/p-19da46dc.entry.js.map +1 -0
- package/dist/q2-tecton-elements/{p-dd18416f.entry.js → p-258f8c9c.entry.js} +2 -2
- package/dist/q2-tecton-elements/p-2878a662.entry.js +2 -0
- package/dist/q2-tecton-elements/p-2878a662.entry.js.map +1 -0
- package/dist/q2-tecton-elements/p-2a8de00d.entry.js +2 -0
- package/dist/q2-tecton-elements/p-2a8de00d.entry.js.map +1 -0
- package/dist/q2-tecton-elements/p-30296b0e.entry.js +2 -0
- package/dist/q2-tecton-elements/p-30296b0e.entry.js.map +1 -0
- package/dist/q2-tecton-elements/{p-ca43e917.entry.js → p-32130845.entry.js} +2 -2
- package/dist/q2-tecton-elements/{p-ff39ba49.entry.js → p-366a92d9.entry.js} +2 -2
- package/dist/q2-tecton-elements/p-4008aceb.entry.js +2 -0
- package/dist/q2-tecton-elements/p-4008aceb.entry.js.map +1 -0
- package/dist/q2-tecton-elements/{p-c9ee763d.entry.js → p-400f6071.entry.js} +2 -2
- package/dist/q2-tecton-elements/{p-c9ee763d.entry.js.map → p-400f6071.entry.js.map} +1 -1
- package/dist/q2-tecton-elements/p-43236cac.entry.js +2 -0
- package/dist/q2-tecton-elements/p-43236cac.entry.js.map +1 -0
- package/dist/q2-tecton-elements/{p-ca17f7ca.entry.js → p-49ecdf18.entry.js} +2 -2
- package/dist/q2-tecton-elements/{p-6f2de185.entry.js → p-4f7e6e79.entry.js} +2 -2
- package/dist/q2-tecton-elements/p-4f7e6e79.entry.js.map +1 -0
- package/dist/q2-tecton-elements/{p-a3d58a50.entry.js → p-56dd051a.entry.js} +2 -2
- package/dist/q2-tecton-elements/p-56dd051a.entry.js.map +1 -0
- package/dist/q2-tecton-elements/{p-abe30d0c.entry.js → p-6e313705.entry.js} +2 -2
- package/dist/q2-tecton-elements/p-75bb43b2.entry.js +2 -0
- package/dist/q2-tecton-elements/p-75bb43b2.entry.js.map +1 -0
- package/dist/q2-tecton-elements/p-79696bef.entry.js +2 -0
- package/dist/q2-tecton-elements/p-79696bef.entry.js.map +1 -0
- package/dist/q2-tecton-elements/{p-1d824cdf.entry.js → p-828850c1.entry.js} +2 -2
- package/dist/q2-tecton-elements/{p-774975fa.entry.js → p-861e83de.entry.js} +2 -2
- package/dist/q2-tecton-elements/p-861e83de.entry.js.map +1 -0
- package/dist/q2-tecton-elements/p-8a8d51f1.entry.js +2 -0
- package/dist/q2-tecton-elements/p-8a8d51f1.entry.js.map +1 -0
- package/dist/q2-tecton-elements/p-8e60bcaa.entry.js +2 -0
- package/dist/q2-tecton-elements/{p-6eac40be.entry.js.map → p-8e60bcaa.entry.js.map} +1 -1
- package/dist/q2-tecton-elements/p-9a5695db.entry.js +2 -0
- package/dist/q2-tecton-elements/p-9a5695db.entry.js.map +1 -0
- package/dist/q2-tecton-elements/{p-8fc099f5.entry.js → p-9b65cc28.entry.js} +2 -2
- package/dist/q2-tecton-elements/{p-3c42c90f.js → p-b6bcef6a.js} +1 -1
- package/dist/q2-tecton-elements/{p-f18caa3f.entry.js → p-bc73f69c.entry.js} +2 -2
- package/dist/q2-tecton-elements/{p-fb7dd7ab.entry.js → p-d32f8e53.entry.js} +2 -2
- package/dist/q2-tecton-elements/{p-a891571c.entry.js → p-d35de465.entry.js} +2 -2
- package/dist/q2-tecton-elements/{p-66ae329f.entry.js → p-dfa489ba.entry.js} +2 -2
- package/dist/q2-tecton-elements/{p-b849365e.entry.js → p-e793a82c.entry.js} +2 -2
- package/dist/q2-tecton-elements/{p-b849365e.entry.js.map → p-e793a82c.entry.js.map} +1 -1
- package/dist/q2-tecton-elements/{p-23183c61.entry.js → p-f57c4448.entry.js} +2 -2
- package/dist/q2-tecton-elements/{p-0e482a7c.entry.js → p-fcffc029.entry.js} +2 -2
- package/dist/q2-tecton-elements/p-fde11d9c.entry.js +2 -0
- package/dist/q2-tecton-elements/p-fde11d9c.entry.js.map +1 -0
- package/dist/q2-tecton-elements/{p-e25194ce.entry.js → p-fec9edc8.entry.js} +2 -2
- package/dist/q2-tecton-elements/p-fec9edc8.entry.js.map +1 -0
- package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
- package/dist/q2-tecton-elements/q2-tecton-elements.esm.js.map +1 -1
- package/dist/test/elements/q2-chart-donut-test.e2e.js +9 -1
- package/dist/test/elements/q2-chart-donut-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-data-table-test.e2e.js +107 -11
- package/dist/test/elements/q2-data-table-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-dropdown-item-test.e2e.js +183 -104
- package/dist/test/elements/q2-dropdown-item-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-editable-field-test.e2e.js +436 -418
- package/dist/test/elements/q2-editable-field-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-form-test.e2e.js +93 -0
- package/dist/test/elements/q2-form-test.e2e.js.map +1 -0
- package/dist/test/elements/q2-popover-test.spec.js +162 -31
- package/dist/test/elements/q2-popover-test.spec.js.map +1 -1
- package/dist/test/elements/q2-relative-time-test.e2e.js +65 -40
- package/dist/test/elements/q2-relative-time-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-select-test.e2e.js +53 -22
- package/dist/test/elements/q2-select-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-stepper-test.e2e.js +23 -0
- package/dist/test/elements/q2-stepper-test.e2e.js.map +1 -1
- package/dist/types/components/q2-form/q2-form.d.ts +6 -0
- package/dist/types/components/q2-input/q2-input.d.ts +15 -1
- package/dist/types/components/q2-popover/q2-popover.d.ts +2 -0
- package/dist/types/components/q2-relative-time/q2-relative-time.d.ts +25 -11
- package/dist/types/components/q2-section/q2-section.d.ts +10 -2
- package/dist/types/components.d.ts +74 -22
- package/dist/types/workspace/workspace/{_Gitlab_tecton-production_master → on-production_release_1.48.0-pre}/packages/q2-tecton-elements/.stencil/test/helpers.d.ts +1 -1
- package/package.json +3 -3
- package/dist/q2-tecton-elements/p-0e27ea75.entry.js +0 -2
- package/dist/q2-tecton-elements/p-0e27ea75.entry.js.map +0 -1
- package/dist/q2-tecton-elements/p-24d96969.entry.js +0 -2
- package/dist/q2-tecton-elements/p-24d96969.entry.js.map +0 -1
- package/dist/q2-tecton-elements/p-33af97b0.entry.js +0 -2
- package/dist/q2-tecton-elements/p-33af97b0.entry.js.map +0 -1
- package/dist/q2-tecton-elements/p-45d70da2.entry.js +0 -2
- package/dist/q2-tecton-elements/p-45d70da2.entry.js.map +0 -1
- package/dist/q2-tecton-elements/p-52e277b8.entry.js +0 -2
- package/dist/q2-tecton-elements/p-52e277b8.entry.js.map +0 -1
- package/dist/q2-tecton-elements/p-6eac40be.entry.js +0 -2
- package/dist/q2-tecton-elements/p-6f2de185.entry.js.map +0 -1
- package/dist/q2-tecton-elements/p-774975fa.entry.js.map +0 -1
- package/dist/q2-tecton-elements/p-8a00552f.entry.js +0 -2
- package/dist/q2-tecton-elements/p-8a00552f.entry.js.map +0 -1
- package/dist/q2-tecton-elements/p-9eafabd5.entry.js +0 -2
- package/dist/q2-tecton-elements/p-9eafabd5.entry.js.map +0 -1
- package/dist/q2-tecton-elements/p-a03c29f3.entry.js +0 -2
- package/dist/q2-tecton-elements/p-a03c29f3.entry.js.map +0 -1
- package/dist/q2-tecton-elements/p-a3d58a50.entry.js.map +0 -1
- package/dist/q2-tecton-elements/p-e25194ce.entry.js.map +0 -1
- package/dist/q2-tecton-elements/p-f450db0b.entry.js +0 -2
- package/dist/q2-tecton-elements/p-f450db0b.entry.js.map +0 -1
- package/dist/q2-tecton-elements/p-fce6bc58.entry.js +0 -2
- package/dist/q2-tecton-elements/p-fce6bc58.entry.js.map +0 -1
- /package/dist/q2-tecton-elements/{p-d5776227.entry.js.map → p-0d6edd2a.entry.js.map} +0 -0
- /package/dist/q2-tecton-elements/{p-dd18416f.entry.js.map → p-258f8c9c.entry.js.map} +0 -0
- /package/dist/q2-tecton-elements/{p-ca43e917.entry.js.map → p-32130845.entry.js.map} +0 -0
- /package/dist/q2-tecton-elements/{p-ff39ba49.entry.js.map → p-366a92d9.entry.js.map} +0 -0
- /package/dist/q2-tecton-elements/{p-ca17f7ca.entry.js.map → p-49ecdf18.entry.js.map} +0 -0
- /package/dist/q2-tecton-elements/{p-abe30d0c.entry.js.map → p-6e313705.entry.js.map} +0 -0
- /package/dist/q2-tecton-elements/{p-1d824cdf.entry.js.map → p-828850c1.entry.js.map} +0 -0
- /package/dist/q2-tecton-elements/{p-8fc099f5.entry.js.map → p-9b65cc28.entry.js.map} +0 -0
- /package/dist/q2-tecton-elements/{p-3c42c90f.js.map → p-b6bcef6a.js.map} +0 -0
- /package/dist/q2-tecton-elements/{p-f18caa3f.entry.js.map → p-bc73f69c.entry.js.map} +0 -0
- /package/dist/q2-tecton-elements/{p-fb7dd7ab.entry.js.map → p-d32f8e53.entry.js.map} +0 -0
- /package/dist/q2-tecton-elements/{p-a891571c.entry.js.map → p-d35de465.entry.js.map} +0 -0
- /package/dist/q2-tecton-elements/{p-66ae329f.entry.js.map → p-dfa489ba.entry.js.map} +0 -0
- /package/dist/q2-tecton-elements/{p-23183c61.entry.js.map → p-f57c4448.entry.js.map} +0 -0
- /package/dist/q2-tecton-elements/{p-0e482a7c.entry.js.map → p-fcffc029.entry.js.map} +0 -0
- /package/dist/types/workspace/workspace/{_Gitlab_tecton-production_master → on-production_release_1.48.0-pre}/packages/q2-tecton-elements/.stencil/test/elements/q2-detail/slot-component.d.ts +0 -0
|
@@ -102,60 +102,74 @@ describe('q2-relative-time', () => {
|
|
|
102
102
|
});
|
|
103
103
|
describe('Props', () => {
|
|
104
104
|
describe('baseDate', () => {
|
|
105
|
-
describe('when date is NOT provided', () => {
|
|
106
|
-
it('it
|
|
105
|
+
describe('when date prop is NOT provided', () => {
|
|
106
|
+
it('it displays the default error message', async () => {
|
|
107
107
|
props = { baseDate: '2020-02-01' };
|
|
108
108
|
specPage = await createNewSpecPage(props);
|
|
109
|
-
expect(await specPage.root.
|
|
109
|
+
expect(await specPage.root.validDateProp()).toBe(false);
|
|
110
|
+
expect(await specPage.root.validBaseDateProp()).toBe(true);
|
|
111
|
+
expect(await specPage.root.displayedMessageValue()).toBe('tecton.element.relativeTime.invalidDate');
|
|
110
112
|
});
|
|
111
113
|
});
|
|
112
|
-
describe('when
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
114
|
+
describe('when date prop is provided and valid', () => {
|
|
115
|
+
describe('when baseDate is provided and valid', () => {
|
|
116
|
+
it('renders with provided baseDate', async () => {
|
|
117
|
+
props = {
|
|
118
|
+
date: '2020-02-01',
|
|
119
|
+
baseDate: '2024-05-14',
|
|
120
|
+
};
|
|
121
|
+
specPage = await createNewSpecPage(props);
|
|
122
|
+
expect(specPage.root.baseDate).toBe('2024-05-14');
|
|
123
|
+
expect(await specPage.root.validDateProp()).toBe(true);
|
|
124
|
+
expect(await specPage.root.validBaseDateProp()).toBe(true);
|
|
125
|
+
expect(await specPage.root.displayedMessageValue()).toBe('4 yr.');
|
|
126
|
+
});
|
|
127
|
+
it('trims the suffixes from displayedMessage', async () => {
|
|
128
|
+
props = {
|
|
129
|
+
date: '2020-02-01',
|
|
130
|
+
baseDate: '2024-05-14',
|
|
131
|
+
};
|
|
132
|
+
specPage = await createNewSpecPage(props);
|
|
133
|
+
expect(await specPage.root.displayedMessageValue()).toBe('4 yr.');
|
|
134
|
+
});
|
|
135
|
+
it('displays only numeric messages', async () => {
|
|
136
|
+
props = {
|
|
137
|
+
date: '2020-02-01',
|
|
138
|
+
baseDate: '2020-02-02',
|
|
139
|
+
};
|
|
140
|
+
specPage = await createNewSpecPage(props);
|
|
141
|
+
expect(await specPage.root.displayedMessageValue()).not.toBe('yesterday');
|
|
142
|
+
expect(await specPage.root.displayedMessageValue()).toBe('1 day');
|
|
143
|
+
});
|
|
129
144
|
});
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
baseDate: '2020-02-02',
|
|
142
|
-
};
|
|
143
|
-
specPage = await createNewSpecPage(props);
|
|
144
|
-
expect(await specPage.root.displayedMessageValue()).toBe('1 day');
|
|
145
|
+
describe('when baseDate is provided but invalid', () => {
|
|
146
|
+
it('displays error message if the provided baseDate is invalid', async () => {
|
|
147
|
+
props = {
|
|
148
|
+
date: '2020-02-01T00:00:00Z',
|
|
149
|
+
baseDate: '02-03-2020T00:00:00Z',
|
|
150
|
+
};
|
|
151
|
+
specPage = await createNewSpecPage(props);
|
|
152
|
+
expect(await specPage.root.validBaseDateProp()).toBe(false);
|
|
153
|
+
expect(await specPage.root.displayedMessageValue()).not.toBe('2 days ago');
|
|
154
|
+
expect(await specPage.root.displayedMessageValue()).toBe('tecton.element.relativeTime.invalidDate');
|
|
155
|
+
});
|
|
145
156
|
});
|
|
146
157
|
});
|
|
147
158
|
});
|
|
148
159
|
describe('date', () => {
|
|
149
|
-
it(
|
|
160
|
+
it('displays error message if the provided date is invalid', async () => {
|
|
150
161
|
props = { date: '02-01-2020T00:00:00Z' };
|
|
151
162
|
specPage = await createNewSpecPage(props);
|
|
152
163
|
expect(specPage.root.date).not.toBe('2020-02-01T00:00:00');
|
|
153
|
-
expect(await specPage.root.displayedMessageValue()).toBe('
|
|
164
|
+
expect(await specPage.root.displayedMessageValue()).toBe('tecton.element.relativeTime.invalidDate');
|
|
154
165
|
});
|
|
155
|
-
it('
|
|
166
|
+
it('Displays a message when valid', async () => {
|
|
156
167
|
props = { date: '2020-02-01T00:00:00Z' };
|
|
157
168
|
specPage = await createNewSpecPage(props);
|
|
158
169
|
expect(specPage.root.date).toBe('2020-02-01T00:00:00Z');
|
|
170
|
+
expect(await specPage.root.validDateProp()).toBe(true);
|
|
171
|
+
expect(await specPage.root.displayedMessageValue()).not.toBe('tecton.element.relativeTime.invalidDate');
|
|
172
|
+
expect(await specPage.root.displayedMessageValue()).toBeTruthy();
|
|
159
173
|
});
|
|
160
174
|
});
|
|
161
175
|
describe('locale', () => {
|
|
@@ -239,10 +253,21 @@ describe('q2-relative-time', () => {
|
|
|
239
253
|
specPage = await createNewSpecPage(props);
|
|
240
254
|
expect(specPage.root.sync).toBe(false);
|
|
241
255
|
});
|
|
242
|
-
it('is automatically
|
|
256
|
+
it('is automatically set to false if date prop is invalid', async () => {
|
|
243
257
|
props = { date: '02-01-2020T00:00:00Z' };
|
|
244
258
|
specPage = await createNewSpecPage(props);
|
|
245
|
-
expect(await specPage.root.
|
|
259
|
+
expect(await specPage.root.validDateProp()).toBe(false);
|
|
260
|
+
expect(await specPage.root.displayedMessageValue()).toBe('tecton.element.relativeTime.invalidDate');
|
|
261
|
+
expect(specPage.root.sync).toBe(false);
|
|
262
|
+
});
|
|
263
|
+
it('is automatically set to false if the provided baseDate prop is invalid', async () => {
|
|
264
|
+
props = {
|
|
265
|
+
date: '2020-02-01T00:00:00Z',
|
|
266
|
+
baseDate: '02-03-2020T00:00:00Z',
|
|
267
|
+
};
|
|
268
|
+
specPage = await createNewSpecPage(props);
|
|
269
|
+
expect(await specPage.root.validBaseDateProp()).toBe(false);
|
|
270
|
+
expect(await specPage.root.displayedMessageValue()).toBe('tecton.element.relativeTime.invalidDate');
|
|
246
271
|
expect(specPage.root.sync).toBe(false);
|
|
247
272
|
});
|
|
248
273
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"q2-relative-time-test.e2e.js","sourceRoot":"","sources":["../../../test/elements/q2-relative-time-test.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { SpecPage, newSpecPage } from '@stencil/core/testing';\nimport { evaluateA11y, getListOfStyleCompilationIssues, setup } from 'test/helpers';\nimport { Q2RelativeTime } from '../../src/components/q2-relative-time/q2-relative-time';\n\nfunction createNewSpecPage(props: {\n date?: string;\n baseDate?: string;\n sync?: boolean;\n locale?: string;\n messageFormat?: string;\n numeric?: string;\n unit?: string;\n}) {\n let htmlProps: string = '';\n Object.entries(props).forEach(([key, value]) => {\n switch (key) {\n case 'date':\n htmlProps += ` date=${value}`;\n break;\n case 'baseDate':\n htmlProps += ` base-date=${value}`;\n break;\n case 'sync':\n htmlProps += ` sync=\"${value}\"`;\n break;\n case 'locale':\n htmlProps += ` locale=${value}`;\n break;\n case 'messageFormat':\n htmlProps += ` message-format=${value}`;\n break;\n case 'numeric':\n htmlProps += ` numeric=\"${value}\"`;\n break;\n case 'unit':\n htmlProps += ` unit=${value}`;\n break;\n default:\n break;\n }\n });\n\n return newSpecPage({\n components: [Q2RelativeTime],\n html: `<q2-relative-time ${htmlProps}></q2-relative-time>`,\n });\n}\n\ndescribe('q2-relative-time', () => {\n let specPage: SpecPage;\n let props: {\n date?: string;\n baseDate?: string;\n sync?: boolean;\n locale?: string;\n messageFormat?: string;\n numeric?: string;\n unit?: string;\n };\n\n it('properly compiles CSS vars and functions', async () => {\n const page = await setup({ html: '<q2-relative-time></q2-relative-time>' });\n expect(await getListOfStyleCompilationIssues(page, 'q2-relative-time')).toHaveLength(0);\n });\n describe('[A11y] guideline compliance', () => {\n it('Does not have accessibility violations', async () => {\n const page = await setup({ html: `<q2-relative-time date='2020-02-01' />` });\n const hasViolations = await evaluateA11y(page);\n expect(hasViolations).toBe(false);\n });\n });\n\n describe('Configuration', () => {\n it('renders with minimal configuration', async () => {\n props = {\n date: '2020-02-01',\n baseDate: '2024-05-14',\n };\n specPage = await createNewSpecPage(props);\n expect(specPage.root).toEqualHtml(`\n <q2-relative-time\n date=\"2020-02-01\"\n base-date=\"2024-05-14\"\n locale=\"en-US\"\n message-format=\"short\"\n numeric=\"auto\">\n <mock:shadow-root>\n <time datetime=\"4 yr.\">\n 4 yr.\n </time>\n </mock:shadow-root>\n </q2-relative-time>\n `);\n });\n\n it('renders with full configuration', async () => {\n props = {\n date: '2020-02-01',\n baseDate: '2024-05-14',\n sync: false,\n locale: 'en-US',\n messageFormat: 'long',\n numeric: 'always',\n unit: 'year',\n };\n specPage = await createNewSpecPage(props);\n expect(specPage.root).toEqualHtml(`\n <q2-relative-time\n date=\"2020-02-01\"\n base-date=\"2024-05-14\"\n sync=\"false\"\n locale=\"en-US\"\n message-format=\"long\"\n numeric=\"always\"\n unit=\"year\">\n <mock:shadow-root>\n <time datetime=\"4 years\">\n 4 years\n </time>\n </mock:shadow-root>\n </q2-relative-time>\n `);\n });\n });\n\n describe('Props', () => {\n describe('baseDate', () => {\n describe('when date is NOT provided', () => {\n it('it renders with the default baseDate', async () => {\n props = { baseDate: '2020-02-01' };\n specPage = await createNewSpecPage(props);\n expect(await specPage.root.displayedMessageValue()).toBe('Invalid Date Provided');\n });\n });\n describe('when valid baseDate AND date are provided', () => {\n it('renders with provided baseDate', async () => {\n props = {\n date: '2020-02-01',\n baseDate: '2024-05-14',\n };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.baseDate).toBe('2024-05-14');\n expect(await specPage.root.displayedMessageValue()).toBe('4 yr.');\n });\n it('trims the suffixes from displayedMessage', async () => {\n props = {\n date: '2020-02-01',\n baseDate: '2024-05-14',\n };\n specPage = await createNewSpecPage(props);\n expect(await specPage.root.displayedMessageValue()).toBe('4 yr.');\n });\n it(\"does not use the provided baseDate if it's invalid\", async () => {\n props = {\n date: '2020-02-01T00:00:00Z',\n baseDate: '02-03-2020T00:00:00Z',\n };\n specPage = await createNewSpecPage(props);\n expect(await specPage.root.displayedMessageValue()).not.toBe('2 days ago');\n });\n it('displays only numeric messages', async () => {\n props = {\n date: '2020-02-01',\n baseDate: '2020-02-02',\n };\n specPage = await createNewSpecPage(props);\n expect(await specPage.root.displayedMessageValue()).toBe('1 day');\n });\n });\n });\n\n describe('date', () => {\n it(\"does not use the provided date if it's invalid\", async () => {\n props = { date: '02-01-2020T00:00:00Z' };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.date).not.toBe('2020-02-01T00:00:00');\n expect(await specPage.root.displayedMessageValue()).toBe('Invalid Date Provided');\n });\n it('should render with valid date', async () => {\n props = { date: '2020-02-01T00:00:00Z' };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.date).toBe('2020-02-01T00:00:00Z');\n });\n });\n\n describe('locale', () => {\n it('should render with given locale', async () => {\n props = {\n date: '2020-02-01',\n baseDate: '2024-05-14',\n locale: 'fr',\n };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.locale).toBe('fr');\n expect(await specPage.root.displayedMessageValue()).toBe('il y a 4 a');\n });\n });\n\n describe('messageFormat', () => {\n describe('long', () => {\n it('should display the message in long form', async () => {\n props = {\n date: '2020-02-01',\n baseDate: '2024-05-14',\n messageFormat: 'long',\n };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.messageFormat).toBe('long');\n expect(await specPage.root.displayedMessageValue()).toBe('4 years');\n });\n });\n describe('short', () => {\n it('should display the message in short form', async () => {\n props = {\n date: '2020-02-01',\n baseDate: '2024-05-14',\n messageFormat: 'short',\n };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.messageFormat).toBe('short');\n expect(await specPage.root.displayedMessageValue()).toBe('4 yr.');\n });\n });\n describe('narrow', () => {\n it('should display the message in narrow form', async () => {\n props = {\n date: '2020-02-01',\n baseDate: '2024-05-14',\n messageFormat: 'narrow',\n };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.messageFormat).toBe('narrow');\n expect(await specPage.root.displayedMessageValue()).toBe('4y');\n });\n });\n });\n\n describe('numeric', () => {\n it('is auto by default', async () => {\n props = {\n date: '2020-02-01',\n numeric: 'auto',\n };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.numeric).toBe('auto');\n });\n\n it('only displays numerical values when set to always', async () => {\n props = {\n date: '2020-02-01',\n baseDate: '2020-02-02',\n numeric: 'always',\n };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.numeric).toBe('always');\n expect(await specPage.root.displayedMessageValue()).toBe('1 day');\n });\n });\n\n describe('sync', () => {\n it('is true by default', async () => {\n props = { date: '2020-02-01' };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.sync).toBe(true);\n });\n it('can be set to false', async () => {\n props = { sync: false };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.sync).toBe(false);\n });\n it('is automatically disabled if date prop is invalid', async () => {\n props = { date: '02-01-2020T00:00:00Z' };\n specPage = await createNewSpecPage(props);\n expect(await specPage.root.displayedMessageValue()).toBe('Invalid Date Provided');\n expect(specPage.root.sync).toBe(false);\n });\n });\n\n describe('unit', () => {\n it('forces the message to only use the provided unit', async () => {\n props = {\n date: '2020-02-01',\n baseDate: '2024-05-14',\n unit: 'year',\n };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.unit).toBe('year');\n expect(await specPage.root.displayedMessageValue()).toContain('yr');\n\n props = {\n date: '2020-02-01',\n baseDate: '2024-05-14',\n unit: 'month',\n };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.unit).toBe('month');\n expect(await specPage.root.displayedMessageValue()).toContain('mo');\n });\n });\n });\n\n describe('trimSuffix', () => {\n it('does NOT trim the suffix if baseDate is invalid or not provided', async () => {\n props = {\n date: '2020-02-02',\n };\n specPage = await createNewSpecPage(props);\n expect(await specPage.root.displayedMessageValue()).toContain('ago');\n });\n\n it('trims the in/ago suffix when valid baseDate is provided', async () => {\n props = {\n date: '2020-02-02',\n baseDate: '2020-02-05',\n };\n specPage = await createNewSpecPage(props);\n expect(await specPage.root.displayedMessageValue()).not.toContain('ago');\n });\n });\n});\n"]}
|
|
1
|
+
{"version":3,"file":"q2-relative-time-test.e2e.js","sourceRoot":"","sources":["../../../test/elements/q2-relative-time-test.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { SpecPage, newSpecPage } from '@stencil/core/testing';\nimport { evaluateA11y, getListOfStyleCompilationIssues, setTestStrings, setup } from 'test/helpers';\nimport { Q2RelativeTime } from '../../src/components/q2-relative-time/q2-relative-time';\n\nfunction createNewSpecPage(props: {\n date?: string;\n baseDate?: string;\n sync?: boolean;\n locale?: string;\n messageFormat?: string;\n numeric?: string;\n unit?: string;\n}) {\n let htmlProps: string = '';\n Object.entries(props).forEach(([key, value]) => {\n switch (key) {\n case 'date':\n htmlProps += ` date=${value}`;\n break;\n case 'baseDate':\n htmlProps += ` base-date=${value}`;\n break;\n case 'sync':\n htmlProps += ` sync=\"${value}\"`;\n break;\n case 'locale':\n htmlProps += ` locale=${value}`;\n break;\n case 'messageFormat':\n htmlProps += ` message-format=${value}`;\n break;\n case 'numeric':\n htmlProps += ` numeric=\"${value}\"`;\n break;\n case 'unit':\n htmlProps += ` unit=${value}`;\n break;\n default:\n break;\n }\n });\n\n return newSpecPage({\n components: [Q2RelativeTime],\n html: `<q2-relative-time ${htmlProps}></q2-relative-time>`,\n });\n}\n\ndescribe('q2-relative-time', () => {\n let specPage: SpecPage;\n let props: {\n date?: string;\n baseDate?: string;\n sync?: boolean;\n locale?: string;\n messageFormat?: string;\n numeric?: string;\n unit?: string;\n };\n\n it('properly compiles CSS vars and functions', async () => {\n const page = await setup({ html: '<q2-relative-time></q2-relative-time>' });\n expect(await getListOfStyleCompilationIssues(page, 'q2-relative-time')).toHaveLength(0);\n });\n describe('[A11y] guideline compliance', () => {\n it('Does not have accessibility violations', async () => {\n const page = await setup({ html: `<q2-relative-time date='2020-02-01' />` });\n const hasViolations = await evaluateA11y(page);\n expect(hasViolations).toBe(false);\n });\n });\n\n describe('Configuration', () => {\n it('renders with minimal configuration', async () => {\n props = {\n date: '2020-02-01',\n baseDate: '2024-05-14',\n };\n specPage = await createNewSpecPage(props);\n expect(specPage.root).toEqualHtml(`\n <q2-relative-time\n date=\"2020-02-01\"\n base-date=\"2024-05-14\"\n locale=\"en-US\"\n message-format=\"short\"\n numeric=\"auto\">\n <mock:shadow-root>\n <time datetime=\"4 yr.\">\n 4 yr.\n </time>\n </mock:shadow-root>\n </q2-relative-time>\n `);\n });\n\n it('renders with full configuration', async () => {\n props = {\n date: '2020-02-01',\n baseDate: '2024-05-14',\n sync: false,\n locale: 'en-US',\n messageFormat: 'long',\n numeric: 'always',\n unit: 'year',\n };\n specPage = await createNewSpecPage(props);\n expect(specPage.root).toEqualHtml(`\n <q2-relative-time\n date=\"2020-02-01\"\n base-date=\"2024-05-14\"\n sync=\"false\"\n locale=\"en-US\"\n message-format=\"long\"\n numeric=\"always\"\n unit=\"year\">\n <mock:shadow-root>\n <time datetime=\"4 years\">\n 4 years\n </time>\n </mock:shadow-root>\n </q2-relative-time>\n `);\n });\n });\n\n describe('Props', () => {\n describe('baseDate', () => {\n describe('when date prop is NOT provided', () => {\n it('it displays the default error message', async () => {\n props = { baseDate: '2020-02-01' };\n specPage = await createNewSpecPage(props);\n expect(await specPage.root.validDateProp()).toBe(false);\n expect(await specPage.root.validBaseDateProp()).toBe(true);\n expect(await specPage.root.displayedMessageValue()).toBe('tecton.element.relativeTime.invalidDate');\n });\n });\n describe('when date prop is provided and valid', () => {\n describe('when baseDate is provided and valid', () => {\n it('renders with provided baseDate', async () => {\n props = {\n date: '2020-02-01',\n baseDate: '2024-05-14',\n };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.baseDate).toBe('2024-05-14');\n expect(await specPage.root.validDateProp()).toBe(true);\n expect(await specPage.root.validBaseDateProp()).toBe(true);\n expect(await specPage.root.displayedMessageValue()).toBe('4 yr.');\n });\n it('trims the suffixes from displayedMessage', async () => {\n props = {\n date: '2020-02-01',\n baseDate: '2024-05-14',\n };\n specPage = await createNewSpecPage(props);\n expect(await specPage.root.displayedMessageValue()).toBe('4 yr.');\n });\n it('displays only numeric messages', async () => {\n props = {\n date: '2020-02-01',\n baseDate: '2020-02-02',\n };\n specPage = await createNewSpecPage(props);\n expect(await specPage.root.displayedMessageValue()).not.toBe('yesterday');\n expect(await specPage.root.displayedMessageValue()).toBe('1 day');\n });\n });\n describe('when baseDate is provided but invalid', () => {\n it('displays error message if the provided baseDate is invalid', async () => {\n props = {\n date: '2020-02-01T00:00:00Z',\n baseDate: '02-03-2020T00:00:00Z',\n };\n specPage = await createNewSpecPage(props);\n expect(await specPage.root.validBaseDateProp()).toBe(false);\n expect(await specPage.root.displayedMessageValue()).not.toBe('2 days ago');\n expect(await specPage.root.displayedMessageValue()).toBe(\n 'tecton.element.relativeTime.invalidDate'\n );\n });\n });\n });\n });\n\n describe('date', () => {\n it('displays error message if the provided date is invalid', async () => {\n props = { date: '02-01-2020T00:00:00Z' };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.date).not.toBe('2020-02-01T00:00:00');\n expect(await specPage.root.displayedMessageValue()).toBe('tecton.element.relativeTime.invalidDate');\n });\n it('Displays a message when valid', async () => {\n props = { date: '2020-02-01T00:00:00Z' };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.date).toBe('2020-02-01T00:00:00Z');\n expect(await specPage.root.validDateProp()).toBe(true);\n expect(await specPage.root.displayedMessageValue()).not.toBe('tecton.element.relativeTime.invalidDate');\n expect(await specPage.root.displayedMessageValue()).toBeTruthy();\n });\n });\n\n describe('locale', () => {\n it('should render with given locale', async () => {\n props = {\n date: '2020-02-01',\n baseDate: '2024-05-14',\n locale: 'fr',\n };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.locale).toBe('fr');\n expect(await specPage.root.displayedMessageValue()).toBe('il y a 4 a');\n });\n });\n\n describe('messageFormat', () => {\n describe('long', () => {\n it('should display the message in long form', async () => {\n props = {\n date: '2020-02-01',\n baseDate: '2024-05-14',\n messageFormat: 'long',\n };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.messageFormat).toBe('long');\n expect(await specPage.root.displayedMessageValue()).toBe('4 years');\n });\n });\n describe('short', () => {\n it('should display the message in short form', async () => {\n props = {\n date: '2020-02-01',\n baseDate: '2024-05-14',\n messageFormat: 'short',\n };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.messageFormat).toBe('short');\n expect(await specPage.root.displayedMessageValue()).toBe('4 yr.');\n });\n });\n describe('narrow', () => {\n it('should display the message in narrow form', async () => {\n props = {\n date: '2020-02-01',\n baseDate: '2024-05-14',\n messageFormat: 'narrow',\n };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.messageFormat).toBe('narrow');\n expect(await specPage.root.displayedMessageValue()).toBe('4y');\n });\n });\n });\n\n describe('numeric', () => {\n it('is auto by default', async () => {\n props = {\n date: '2020-02-01',\n numeric: 'auto',\n };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.numeric).toBe('auto');\n });\n\n it('only displays numerical values when set to always', async () => {\n props = {\n date: '2020-02-01',\n baseDate: '2020-02-02',\n numeric: 'always',\n };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.numeric).toBe('always');\n expect(await specPage.root.displayedMessageValue()).toBe('1 day');\n });\n });\n\n describe('sync', () => {\n it('is true by default', async () => {\n props = { date: '2020-02-01' };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.sync).toBe(true);\n });\n it('can be set to false', async () => {\n props = { sync: false };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.sync).toBe(false);\n });\n it('is automatically set to false if date prop is invalid', async () => {\n props = { date: '02-01-2020T00:00:00Z' };\n specPage = await createNewSpecPage(props);\n expect(await specPage.root.validDateProp()).toBe(false);\n expect(await specPage.root.displayedMessageValue()).toBe('tecton.element.relativeTime.invalidDate');\n expect(specPage.root.sync).toBe(false);\n });\n it('is automatically set to false if the provided baseDate prop is invalid', async () => {\n props = {\n date: '2020-02-01T00:00:00Z',\n baseDate: '02-03-2020T00:00:00Z',\n };\n specPage = await createNewSpecPage(props);\n expect(await specPage.root.validBaseDateProp()).toBe(false);\n expect(await specPage.root.displayedMessageValue()).toBe('tecton.element.relativeTime.invalidDate');\n expect(specPage.root.sync).toBe(false);\n });\n });\n\n describe('unit', () => {\n it('forces the message to only use the provided unit', async () => {\n props = {\n date: '2020-02-01',\n baseDate: '2024-05-14',\n unit: 'year',\n };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.unit).toBe('year');\n expect(await specPage.root.displayedMessageValue()).toContain('yr');\n\n props = {\n date: '2020-02-01',\n baseDate: '2024-05-14',\n unit: 'month',\n };\n specPage = await createNewSpecPage(props);\n expect(specPage.root.unit).toBe('month');\n expect(await specPage.root.displayedMessageValue()).toContain('mo');\n });\n });\n });\n\n describe('trimSuffix', () => {\n it('does NOT trim the suffix if baseDate is invalid or not provided', async () => {\n props = {\n date: '2020-02-02',\n };\n specPage = await createNewSpecPage(props);\n expect(await specPage.root.displayedMessageValue()).toContain('ago');\n });\n\n it('trims the in/ago suffix when valid baseDate is provided', async () => {\n props = {\n date: '2020-02-02',\n baseDate: '2020-02-05',\n };\n specPage = await createNewSpecPage(props);\n expect(await specPage.root.displayedMessageValue()).not.toContain('ago');\n });\n });\n});\n"]}
|
|
@@ -2141,7 +2141,7 @@ describe('q2-select', () => {
|
|
|
2141
2141
|
});
|
|
2142
2142
|
describe('when input has value', () => {
|
|
2143
2143
|
beforeEach(async () => {
|
|
2144
|
-
|
|
2144
|
+
select.setAttribute('value', '2');
|
|
2145
2145
|
await page.waitForChanges();
|
|
2146
2146
|
expect(options[1]).toHaveAttribute('selected');
|
|
2147
2147
|
expect(await popover.getProperty('open')).toBe(false);
|
|
@@ -2200,13 +2200,17 @@ describe('q2-select', () => {
|
|
|
2200
2200
|
});
|
|
2201
2201
|
});
|
|
2202
2202
|
describe('when input is empty', () => {
|
|
2203
|
-
it(
|
|
2204
|
-
await input
|
|
2205
|
-
|
|
2206
|
-
|
|
2207
|
-
expect(await
|
|
2208
|
-
|
|
2209
|
-
|
|
2203
|
+
it('opens the dropdown on Space', async () => {
|
|
2204
|
+
await dispatchEvent(page, ['q2-select', 'q2-input'], 'keydown', {
|
|
2205
|
+
key: ' ',
|
|
2206
|
+
});
|
|
2207
|
+
expect(await popover.getProperty('open')).toBe(true);
|
|
2208
|
+
});
|
|
2209
|
+
it('opens the dropdown on Enter', async () => {
|
|
2210
|
+
await dispatchEvent(page, ['q2-select', 'q2-input'], 'keydown', {
|
|
2211
|
+
key: 'Enter',
|
|
2212
|
+
});
|
|
2213
|
+
expect(await popover.getProperty('open')).toBe(true);
|
|
2210
2214
|
});
|
|
2211
2215
|
it('opens the dropdown, and focuses first option on ArrowDown', async () => {
|
|
2212
2216
|
await dispatchEvent(page, ['q2-select', 'q2-input'], 'keydown', {
|
|
@@ -2226,20 +2230,47 @@ describe('q2-select', () => {
|
|
|
2226
2230
|
expect(lastOption).toHaveAttribute('active');
|
|
2227
2231
|
expect(await getFocusedOptionValue(page)).toEqual(lastOption.getAttribute('value'));
|
|
2228
2232
|
});
|
|
2229
|
-
it(
|
|
2230
|
-
|
|
2231
|
-
|
|
2232
|
-
|
|
2233
|
-
|
|
2234
|
-
|
|
2235
|
-
|
|
2236
|
-
|
|
2237
|
-
|
|
2238
|
-
|
|
2239
|
-
|
|
2240
|
-
|
|
2241
|
-
|
|
2242
|
-
|
|
2233
|
+
it("clears typed value if dropdown isn't open on Escape", async () => {
|
|
2234
|
+
await input.focus();
|
|
2235
|
+
await input.type('Option');
|
|
2236
|
+
await page.waitForChanges();
|
|
2237
|
+
expect(await input.getProperty('value')).toEqual('Option');
|
|
2238
|
+
await input.press('Escape');
|
|
2239
|
+
expect(await input.getProperty('value')).toEqual('');
|
|
2240
|
+
});
|
|
2241
|
+
describe('when printable character is pressed', () => {
|
|
2242
|
+
it('searches for option', async () => {
|
|
2243
|
+
const eventData = {
|
|
2244
|
+
key: 'n',
|
|
2245
|
+
detail: {
|
|
2246
|
+
value: 'option 2',
|
|
2247
|
+
},
|
|
2248
|
+
};
|
|
2249
|
+
await dispatchEvent(page, ['q2-select', 'q2-input'], 'keydown', eventData);
|
|
2250
|
+
await dispatchEvent(page, ['q2-select', 'q2-input'], 'input', eventData);
|
|
2251
|
+
await dispatchEvent(page, ['q2-select', 'q2-input'], 'keyup', eventData);
|
|
2252
|
+
expect(await popover.getProperty('open')).toBe(true);
|
|
2253
|
+
expect(options[0]).toHaveAttribute('hidden');
|
|
2254
|
+
expect(options[1]).not.toHaveAttribute('hidden');
|
|
2255
|
+
expect(options[2]).toHaveAttribute('hidden');
|
|
2256
|
+
});
|
|
2257
|
+
it('enters dropdown on Arrow Down', async () => {
|
|
2258
|
+
const eventData = {
|
|
2259
|
+
key: 'n',
|
|
2260
|
+
detail: {
|
|
2261
|
+
value: 'option 2',
|
|
2262
|
+
},
|
|
2263
|
+
};
|
|
2264
|
+
await dispatchEvent(page, ['q2-select', 'q2-input'], 'keydown', eventData);
|
|
2265
|
+
await dispatchEvent(page, ['q2-select', 'q2-input'], 'input', eventData);
|
|
2266
|
+
await dispatchEvent(page, ['q2-select', 'q2-input'], 'keyup', eventData);
|
|
2267
|
+
expect(await popover.getProperty('open')).toBe(true);
|
|
2268
|
+
await dispatchEvent(page, ['q2-select', 'q2-input'], 'keydown', {
|
|
2269
|
+
key: 'ArrowDown',
|
|
2270
|
+
});
|
|
2271
|
+
const visibleOption = options[1];
|
|
2272
|
+
expect(await getFocusedOptionValue(page)).toEqual(visibleOption.getAttribute('value'));
|
|
2273
|
+
});
|
|
2243
2274
|
});
|
|
2244
2275
|
describe('when multiple', () => {
|
|
2245
2276
|
beforeEach(async () => {
|