q2-tecton-elements 1.69.1 → 1.70.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 +2246 -355
- package/dist/cjs/click-elsewhere_3.cjs.entry.js +2 -2
- package/dist/cjs/{index-D2LFCsNP.js → index-SpDCZABA.js} +2 -2
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/q2-action-group_2.cjs.entry.js +1 -1
- package/dist/cjs/q2-action-sheet.cjs.entry.js +2 -2
- package/dist/cjs/q2-badge_2.cjs.entry.js +11 -4
- package/dist/cjs/q2-btn_2.cjs.entry.js +6 -2
- package/dist/cjs/q2-calendar.cjs.entry.js +5 -3
- package/dist/cjs/q2-card-image.cjs.entry.js +8 -6
- package/dist/cjs/q2-card.cjs.entry.js +2 -2
- package/dist/cjs/q2-carousel-pane.cjs.entry.js +1 -1
- package/dist/cjs/q2-carousel.cjs.entry.js +1 -1
- package/dist/cjs/q2-chart-area.cjs.entry.js +1 -1
- package/dist/cjs/q2-chart-bar.cjs.entry.js +1 -1
- package/dist/cjs/q2-chart-donut.cjs.entry.js +2 -2
- package/dist/cjs/q2-checkbox-group.cjs.entry.js +1 -1
- package/dist/cjs/q2-checkbox_2.cjs.entry.js +4 -3
- package/dist/cjs/q2-context.cjs.entry.js +1 -1
- package/dist/cjs/q2-currency.cjs.entry.js +1 -1
- package/dist/cjs/q2-data-table.cjs.entry.js +6 -3
- 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 +3 -3
- package/dist/cjs/q2-editable-field.cjs.entry.js +12 -4
- package/dist/cjs/q2-file-picker.cjs.entry.js +1 -1
- package/dist/cjs/q2-icon.cjs.entry.js +1 -1
- package/dist/cjs/q2-item.cjs.entry.js +2 -2
- 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 +20 -2
- package/dist/cjs/q2-message.cjs.entry.js +1 -1
- package/dist/cjs/q2-meter.cjs.entry.js +2 -2
- package/dist/cjs/q2-modal.cjs.entry.js +3 -3
- package/dist/cjs/q2-month-picker.cjs.entry.js +1 -1
- package/dist/cjs/q2-optgroup.cjs.entry.js +1 -1
- package/dist/cjs/q2-option.cjs.entry.js +1 -1
- package/dist/cjs/q2-otp.cjs.entry.js +1 -1
- package/dist/cjs/q2-pagination.cjs.entry.js +1 -1
- 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.cjs.entry.js +1 -1
- package/dist/cjs/q2-relative-time.cjs.entry.js +1 -1
- package/dist/cjs/q2-search.cjs.entry.js +101 -12
- package/dist/cjs/q2-section.cjs.entry.js +2 -2
- package/dist/cjs/q2-select.cjs.entry.js +36 -6
- package/dist/cjs/q2-stepper-pane.cjs.entry.js +1 -1
- package/dist/cjs/q2-stepper-vertical.cjs.entry.js +24 -18
- package/dist/cjs/q2-stepper.cjs.entry.js +5 -4
- package/dist/cjs/q2-surface.cjs.entry.js +95 -0
- 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 +1 -1
- package/dist/cjs/q2-toast.cjs.entry.js +1 -1
- package/dist/cjs/q2-tooltip.cjs.entry.js +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-action-sheet/q2-action-sheet.css +1 -1
- package/dist/collection/components/q2-btn/q2-btn.css +32 -17
- package/dist/collection/components/q2-btn/q2-btn.js +6 -1
- package/dist/collection/components/q2-calendar/q2-calendar.js +24 -2
- package/dist/collection/components/q2-calendar/test/q2-calendar-test.vr.js +4 -0
- package/dist/collection/components/q2-card/q2-card.css +2 -2
- package/dist/collection/components/q2-card-image/q2-card-image.css +3 -0
- package/dist/collection/components/q2-card-image/q2-card-image.js +25 -23
- package/dist/collection/components/q2-chart-area/q2-chart-area.css +4 -0
- package/dist/collection/components/q2-chart-bar/q2-chart-bar.css +4 -0
- package/dist/collection/components/q2-chart-donut/q2-chart-donut.css +1 -1
- package/dist/collection/components/q2-checkbox/q2-checkbox.js +2 -1
- package/dist/collection/components/q2-currency/q2-currency.css +1 -1
- package/dist/collection/components/q2-data-table/q2-data-table.js +5 -2
- package/dist/collection/components/q2-detail/q2-detail.css +12 -12
- package/dist/collection/components/q2-dropdown/q2-dropdown.js +2 -2
- package/dist/collection/components/q2-editable-field/q2-editable-field.js +11 -3
- package/dist/collection/components/q2-input/q2-input.css +11 -1
- package/dist/collection/components/q2-input/q2-input.js +29 -2
- package/dist/collection/components/q2-input/test/q2-input-test.vr.js +8 -0
- package/dist/collection/components/q2-item/q2-item.css +10 -5
- package/dist/collection/components/q2-item/test/q2-item-test.vr.js +132 -0
- package/dist/collection/components/q2-legend/q2-legend.css +2 -2
- package/dist/collection/components/q2-list/q2-list.css +1 -1
- package/dist/collection/components/q2-loc/q2-loc.js +42 -1
- package/dist/collection/components/q2-message/q2-message.css +4 -0
- package/dist/collection/components/q2-meter/q2-meter.css +3 -3
- package/dist/collection/components/q2-modal/q2-modal.css +1 -1
- package/dist/collection/components/q2-modal/q2-modal.js +2 -2
- package/dist/collection/components/q2-otp/q2-otp.css +33 -0
- package/dist/collection/components/q2-otp/test/q2-otp-test.vr.js +83 -0
- package/dist/collection/components/q2-popover/q2-popover.css +2 -1
- package/dist/collection/components/q2-radio/q2-radio.css +2 -0
- package/dist/collection/components/q2-search/q2-search.css +30 -0
- package/dist/collection/components/q2-search/q2-search.js +99 -10
- package/dist/collection/components/q2-search/test/q2-search-test.vr.js +145 -0
- package/dist/collection/components/q2-section/q2-section.css +1 -1
- package/dist/collection/components/q2-select/q2-select.css +4 -2
- package/dist/collection/components/q2-select/q2-select.js +54 -4
- package/dist/collection/components/q2-select/test/q2-select-test.vr.js +5 -0
- package/dist/collection/components/q2-stepper/q2-stepper.css +2 -2
- package/dist/collection/components/q2-stepper/q2-stepper.js +3 -2
- package/dist/collection/components/q2-stepper-vertical/q2-stepper-vertical.css +2 -2
- package/dist/collection/components/q2-stepper-vertical/q2-stepper-vertical.js +22 -16
- package/dist/collection/components/q2-surface/q2-surface.css +348 -0
- package/dist/collection/components/q2-surface/q2-surface.js +381 -0
- package/dist/collection/components/q2-surface/test/q2-surface-test.vr.js +108 -0
- 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-toast/q2-toast.js +3 -1
- package/dist/collection/components/tecton-tab-pane/tecton-tab-pane.js +2 -2
- package/dist/collection/utils/index.js +2 -2
- package/dist/components/index.js +12 -10
- package/dist/components/index2.js +3 -3
- package/dist/components/q2-action-sheet.js +1 -1
- package/dist/components/q2-btn2.js +5 -1
- package/dist/components/q2-calendar.js +294 -290
- package/dist/components/q2-card-image.js +9 -6
- package/dist/components/q2-card.js +14 -14
- package/dist/components/q2-chart-donut.js +1 -1
- package/dist/components/q2-checkbox2.js +12 -12
- package/dist/components/q2-currency.js +1 -1
- package/dist/components/q2-data-table.js +4 -4
- package/dist/components/q2-detail.js +1 -1
- package/dist/components/q2-dropdown.js +8 -8
- package/dist/components/q2-editable-field.js +15 -5
- package/dist/components/q2-input2.js +46 -26
- package/dist/components/q2-item2.js +1 -1
- package/dist/components/q2-legend2.js +51 -51
- package/dist/components/q2-list2.js +1 -1
- package/dist/components/q2-loc.js +23 -8
- package/dist/components/q2-meter.js +10 -10
- package/dist/components/q2-modal.js +54 -54
- package/dist/components/q2-popover2.js +1 -1
- package/dist/components/q2-search.js +106 -51
- package/dist/components/q2-section.js +1 -1
- package/dist/components/q2-select2.js +25 -9
- package/dist/components/q2-stepper-vertical.js +72 -63
- package/dist/components/q2-stepper.js +73 -71
- package/dist/components/q2-surface.d.ts +11 -0
- package/dist/components/q2-surface.js +109 -0
- package/dist/components/q2-tab-container.js +12 -12
- package/dist/components/q2-tab-pane.js +6 -6
- package/dist/components/q2-tag2.js +5 -5
- package/dist/components/tecton-tab-pane.js +10 -10
- package/dist/esm/click-elsewhere_3.entry.js +2 -2
- package/dist/esm/{index-Bx4m6N0g.js → index-Cps4jSQM.js} +2 -2
- package/dist/esm/loader.js +1 -1
- package/dist/esm/q2-action-group_2.entry.js +1 -1
- package/dist/esm/q2-action-sheet.entry.js +2 -2
- package/dist/esm/q2-badge_2.entry.js +11 -4
- package/dist/esm/q2-btn_2.entry.js +6 -2
- package/dist/esm/q2-calendar.entry.js +5 -3
- package/dist/esm/q2-card-image.entry.js +8 -6
- package/dist/esm/q2-card.entry.js +2 -2
- package/dist/esm/q2-carousel-pane.entry.js +1 -1
- package/dist/esm/q2-carousel.entry.js +1 -1
- package/dist/esm/q2-chart-area.entry.js +1 -1
- package/dist/esm/q2-chart-bar.entry.js +1 -1
- package/dist/esm/q2-chart-donut.entry.js +2 -2
- package/dist/esm/q2-checkbox-group.entry.js +1 -1
- package/dist/esm/q2-checkbox_2.entry.js +4 -3
- package/dist/esm/q2-context.entry.js +1 -1
- package/dist/esm/q2-currency.entry.js +1 -1
- package/dist/esm/q2-data-table.entry.js +6 -3
- 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 +3 -3
- package/dist/esm/q2-editable-field.entry.js +12 -4
- package/dist/esm/q2-file-picker.entry.js +1 -1
- package/dist/esm/q2-icon.entry.js +1 -1
- package/dist/esm/q2-item.entry.js +2 -2
- 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 +20 -2
- package/dist/esm/q2-message.entry.js +1 -1
- package/dist/esm/q2-meter.entry.js +2 -2
- package/dist/esm/q2-modal.entry.js +3 -3
- package/dist/esm/q2-month-picker.entry.js +1 -1
- package/dist/esm/q2-optgroup.entry.js +1 -1
- package/dist/esm/q2-option.entry.js +1 -1
- package/dist/esm/q2-otp.entry.js +1 -1
- package/dist/esm/q2-pagination.entry.js +1 -1
- package/dist/esm/q2-pill.entry.js +1 -1
- package/dist/esm/q2-radio-group.entry.js +1 -1
- package/dist/esm/q2-radio.entry.js +1 -1
- package/dist/esm/q2-relative-time.entry.js +1 -1
- package/dist/esm/q2-search.entry.js +101 -12
- package/dist/esm/q2-section.entry.js +2 -2
- package/dist/esm/q2-select.entry.js +36 -6
- package/dist/esm/q2-stepper-pane.entry.js +1 -1
- package/dist/esm/q2-stepper-vertical.entry.js +24 -18
- package/dist/esm/q2-stepper.entry.js +5 -4
- package/dist/esm/q2-surface.entry.js +93 -0
- 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 +1 -1
- package/dist/esm/q2-toast.entry.js +1 -1
- package/dist/esm/q2-tooltip.entry.js +1 -1
- package/dist/esm/tecton-tab-pane.entry.js +2 -2
- package/dist/q2-tecton-elements/click-elsewhere_3.entry.js +2 -2
- package/dist/q2-tecton-elements/{index-Bx4m6N0g.js → index-Cps4jSQM.js} +3 -3
- package/dist/q2-tecton-elements/q2-action-group_2.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-action-sheet.entry.js +2 -2
- package/dist/q2-tecton-elements/q2-badge_2.entry.js +51 -32
- package/dist/q2-tecton-elements/q2-btn_2.entry.js +6 -2
- package/dist/q2-tecton-elements/q2-calendar.entry.js +7 -4
- package/dist/q2-tecton-elements/q2-card-image.entry.js +65 -62
- package/dist/q2-tecton-elements/q2-card.entry.js +2 -2
- package/dist/q2-tecton-elements/q2-carousel-pane.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-carousel.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-chart-area.entry.js +54 -54
- package/dist/q2-tecton-elements/q2-chart-bar.entry.js +3 -3
- package/dist/q2-tecton-elements/q2-chart-donut.entry.js +7 -7
- package/dist/q2-tecton-elements/q2-checkbox-group.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-checkbox_2.entry.js +18 -18
- package/dist/q2-tecton-elements/q2-context.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-currency.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-data-table.entry.js +50 -50
- package/dist/q2-tecton-elements/q2-detail.entry.js +2 -2
- package/dist/q2-tecton-elements/q2-dropdown-item.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-dropdown.entry.js +16 -16
- package/dist/q2-tecton-elements/q2-editable-field.entry.js +15 -8
- package/dist/q2-tecton-elements/q2-file-picker.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-icon.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-item.entry.js +2 -2
- package/dist/q2-tecton-elements/q2-legend.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-link_2.entry.js +2 -2
- package/dist/q2-tecton-elements/q2-loc.entry.js +20 -6
- package/dist/q2-tecton-elements/q2-message.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-meter.entry.js +2 -2
- package/dist/q2-tecton-elements/q2-modal.entry.js +55 -55
- package/dist/q2-tecton-elements/q2-month-picker.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-optgroup.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-option.entry.js +7 -7
- package/dist/q2-tecton-elements/q2-otp.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-pagination.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-pill.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-radio-group.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-radio.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-relative-time.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-search.entry.js +108 -53
- package/dist/q2-tecton-elements/q2-section.entry.js +2 -2
- package/dist/q2-tecton-elements/q2-select.entry.js +25 -10
- package/dist/q2-tecton-elements/q2-stepper-pane.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-stepper-vertical.entry.js +75 -66
- package/dist/q2-tecton-elements/q2-stepper.entry.js +47 -45
- package/dist/q2-tecton-elements/q2-surface.entry.js +89 -0
- package/dist/q2-tecton-elements/q2-tab-container.entry.js +13 -13
- package/dist/q2-tecton-elements/q2-tab-pane.entry.js +2 -2
- package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
- package/dist/q2-tecton-elements/q2-textarea.entry.js +1 -1
- package/dist/q2-tecton-elements/q2-toast.entry.js +5 -5
- package/dist/q2-tecton-elements/q2-tooltip.entry.js +8 -8
- package/dist/q2-tecton-elements/tecton-tab-pane.entry.js +6 -6
- package/dist/types/components/q2-calendar/q2-calendar.d.ts +2 -0
- package/dist/types/components/q2-card-image/q2-card-image.d.ts +5 -5
- package/dist/types/components/q2-editable-field/q2-editable-field.d.ts +1 -0
- package/dist/types/components/q2-input/q2-input.d.ts +3 -0
- package/dist/types/components/q2-item/test/q2-item-test.vr.d.ts +1 -0
- package/dist/types/components/q2-loc/q2-loc.d.ts +6 -0
- package/dist/types/components/q2-modal/q2-modal.d.ts +1 -1
- package/dist/types/components/q2-otp/test/q2-otp-test.vr.d.ts +1 -0
- package/dist/types/components/q2-search/q2-search.d.ts +7 -0
- package/dist/types/components/q2-search/test/q2-search-test.vr.d.ts +1 -0
- package/dist/types/components/q2-select/q2-select.d.ts +4 -0
- package/dist/types/components/q2-stepper-vertical/q2-stepper-vertical.d.ts +2 -1
- package/dist/types/components/q2-surface/q2-surface.d.ts +54 -0
- package/dist/types/components/q2-surface/test/q2-surface-test.vr.d.ts +1 -0
- package/dist/types/components/q2-toast/q2-toast.d.ts +3 -1
- package/dist/types/components.d.ts +259 -13
- package/dist/types/utils/index.d.ts +3 -1
- package/package.json +4 -3
|
@@ -0,0 +1,381 @@
|
|
|
1
|
+
import { Host, h, } from "@stencil/core";
|
|
2
|
+
/**
|
|
3
|
+
* @name Surface
|
|
4
|
+
* @category Display
|
|
5
|
+
* @summary An unopinionated visual primitive. A plain block by default that gains visual treatment via attributes.
|
|
6
|
+
*/
|
|
7
|
+
export class Q2Surface {
|
|
8
|
+
constructor() {
|
|
9
|
+
// #region Own Properties
|
|
10
|
+
this._cancelAnimation = null;
|
|
11
|
+
/** Applies a gradient fade across the background.
|
|
12
|
+
*
|
|
13
|
+
* @info Direction and colors are customizable via CSS custom properties. */
|
|
14
|
+
this.backgroundGradient = false;
|
|
15
|
+
/**
|
|
16
|
+
* Renders the border as a gradient using the color set by the `border` prop. Takes precedence over a solid `border` when both are set.
|
|
17
|
+
*
|
|
18
|
+
* @info Requires `border` to be set to produce a colored gradient. Without `border`, falls back to the default border color.
|
|
19
|
+
*/
|
|
20
|
+
this.borderGradient = false;
|
|
21
|
+
/** Makes the surface interactive, responding to clicks.
|
|
22
|
+
*
|
|
23
|
+
* @info Emits `tctClick` when clicked. */
|
|
24
|
+
this.clickable = false;
|
|
25
|
+
/** Gives the component a drop shadow.
|
|
26
|
+
*
|
|
27
|
+
* @info 0 means no shadow; higher values appear more elevated. */
|
|
28
|
+
this.elevation = 0;
|
|
29
|
+
/** Adds internal padding applied uniformly on all sides.
|
|
30
|
+
*
|
|
31
|
+
* @info Individual axes can be overridden with `inset-x` and `inset-y`. */
|
|
32
|
+
this.inset = 'none';
|
|
33
|
+
/** Adds corner rounding on a scale from 0 (sharp) to 5 (most rounded). */
|
|
34
|
+
this.radius = 0;
|
|
35
|
+
}
|
|
36
|
+
// #endregion
|
|
37
|
+
// #region Component Lifecycle Events
|
|
38
|
+
disconnectedCallback() {
|
|
39
|
+
var _a;
|
|
40
|
+
(_a = this._cancelAnimation) === null || _a === void 0 ? void 0 : _a.call(this);
|
|
41
|
+
}
|
|
42
|
+
// #endregion
|
|
43
|
+
// #region Listeners
|
|
44
|
+
onClick() {
|
|
45
|
+
if (!this.clickable)
|
|
46
|
+
return;
|
|
47
|
+
this.tctClick.emit();
|
|
48
|
+
}
|
|
49
|
+
onKeydown(event) {
|
|
50
|
+
if (!this.clickable)
|
|
51
|
+
return;
|
|
52
|
+
if (event.key === 'Enter' || event.key === ' ') {
|
|
53
|
+
event.preventDefault();
|
|
54
|
+
this.tctClick.emit();
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
// #endregion
|
|
58
|
+
// #region Public Methods API
|
|
59
|
+
/**
|
|
60
|
+
* Triggers a named animation on the surface. If an animation is already running, cancels it before starting the new one.
|
|
61
|
+
* @param animation The animation to play. Defaults to `'pulse'`.
|
|
62
|
+
* @returns A Promise that resolves when the animation finishes or is cancelled.
|
|
63
|
+
*/
|
|
64
|
+
async animate(animation = 'pulse') {
|
|
65
|
+
var _a;
|
|
66
|
+
(_a = this._cancelAnimation) === null || _a === void 0 ? void 0 : _a.call(this);
|
|
67
|
+
return new Promise(resolve => {
|
|
68
|
+
const className = `q2-surface-animate-${animation}`;
|
|
69
|
+
const onEnd = () => {
|
|
70
|
+
this.hostElement.classList.remove(className);
|
|
71
|
+
this._cancelAnimation = null;
|
|
72
|
+
resolve();
|
|
73
|
+
};
|
|
74
|
+
this._cancelAnimation = () => {
|
|
75
|
+
this.hostElement.classList.remove(className);
|
|
76
|
+
this.hostElement.removeEventListener('animationend', onEnd);
|
|
77
|
+
this._cancelAnimation = null;
|
|
78
|
+
resolve();
|
|
79
|
+
};
|
|
80
|
+
this.hostElement.classList.add(className);
|
|
81
|
+
this.hostElement.addEventListener('animationend', onEnd, { once: true });
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
// #endregion
|
|
85
|
+
// #region Render Methods
|
|
86
|
+
render() {
|
|
87
|
+
return (h(Host, { key: '235f94ccfb0eb7167079e8e25ee78d652999f8e8' }, h("div", { key: 'b01d6e71bb4b8f1f583c63910d4b1eca757572dd', class: "container", role: this.clickable ? 'button' : undefined, tabIndex: this.clickable ? 0 : undefined }, h("slot", { key: '591dc9fcb51d6f238a6186f047661020be9ea800' }))));
|
|
88
|
+
}
|
|
89
|
+
static get is() { return "q2-surface"; }
|
|
90
|
+
static get encapsulation() { return "shadow"; }
|
|
91
|
+
static get originalStyleUrls() {
|
|
92
|
+
return {
|
|
93
|
+
"$": ["q2-surface.scss"]
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
static get styleUrls() {
|
|
97
|
+
return {
|
|
98
|
+
"$": ["q2-surface.css"]
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
static get properties() {
|
|
102
|
+
return {
|
|
103
|
+
"background": {
|
|
104
|
+
"type": "string",
|
|
105
|
+
"mutable": false,
|
|
106
|
+
"complexType": {
|
|
107
|
+
"original": "'default' | 'primary' | 'secondary' | 'tertiary'",
|
|
108
|
+
"resolved": "\"default\" | \"primary\" | \"secondary\" | \"tertiary\"",
|
|
109
|
+
"references": {}
|
|
110
|
+
},
|
|
111
|
+
"required": false,
|
|
112
|
+
"optional": true,
|
|
113
|
+
"docs": {
|
|
114
|
+
"tags": [],
|
|
115
|
+
"text": "Applies a background color from the design-system token palette. When unset, the surface is transparent."
|
|
116
|
+
},
|
|
117
|
+
"getter": false,
|
|
118
|
+
"setter": false,
|
|
119
|
+
"reflect": true,
|
|
120
|
+
"attribute": "background"
|
|
121
|
+
},
|
|
122
|
+
"backgroundGradient": {
|
|
123
|
+
"type": "boolean",
|
|
124
|
+
"mutable": false,
|
|
125
|
+
"complexType": {
|
|
126
|
+
"original": "boolean",
|
|
127
|
+
"resolved": "boolean",
|
|
128
|
+
"references": {}
|
|
129
|
+
},
|
|
130
|
+
"required": false,
|
|
131
|
+
"optional": false,
|
|
132
|
+
"docs": {
|
|
133
|
+
"tags": [{
|
|
134
|
+
"name": "info",
|
|
135
|
+
"text": "Direction and colors are customizable via CSS custom properties."
|
|
136
|
+
}],
|
|
137
|
+
"text": "Applies a gradient fade across the background."
|
|
138
|
+
},
|
|
139
|
+
"getter": false,
|
|
140
|
+
"setter": false,
|
|
141
|
+
"reflect": true,
|
|
142
|
+
"attribute": "background-gradient",
|
|
143
|
+
"defaultValue": "false"
|
|
144
|
+
},
|
|
145
|
+
"border": {
|
|
146
|
+
"type": "string",
|
|
147
|
+
"mutable": false,
|
|
148
|
+
"complexType": {
|
|
149
|
+
"original": "'default' | 'primary' | 'secondary' | 'tertiary'",
|
|
150
|
+
"resolved": "\"default\" | \"primary\" | \"secondary\" | \"tertiary\"",
|
|
151
|
+
"references": {}
|
|
152
|
+
},
|
|
153
|
+
"required": false,
|
|
154
|
+
"optional": true,
|
|
155
|
+
"docs": {
|
|
156
|
+
"tags": [],
|
|
157
|
+
"text": "Renders a visible border around the surface, optionally in a themed color."
|
|
158
|
+
},
|
|
159
|
+
"getter": false,
|
|
160
|
+
"setter": false,
|
|
161
|
+
"reflect": true,
|
|
162
|
+
"attribute": "border"
|
|
163
|
+
},
|
|
164
|
+
"borderGradient": {
|
|
165
|
+
"type": "boolean",
|
|
166
|
+
"mutable": false,
|
|
167
|
+
"complexType": {
|
|
168
|
+
"original": "boolean",
|
|
169
|
+
"resolved": "boolean",
|
|
170
|
+
"references": {}
|
|
171
|
+
},
|
|
172
|
+
"required": false,
|
|
173
|
+
"optional": false,
|
|
174
|
+
"docs": {
|
|
175
|
+
"tags": [{
|
|
176
|
+
"name": "info",
|
|
177
|
+
"text": "Requires `border` to be set to produce a colored gradient. Without `border`, falls back to the default border color."
|
|
178
|
+
}],
|
|
179
|
+
"text": "Renders the border as a gradient using the color set by the `border` prop. Takes precedence over a solid `border` when both are set."
|
|
180
|
+
},
|
|
181
|
+
"getter": false,
|
|
182
|
+
"setter": false,
|
|
183
|
+
"reflect": true,
|
|
184
|
+
"attribute": "border-gradient",
|
|
185
|
+
"defaultValue": "false"
|
|
186
|
+
},
|
|
187
|
+
"clickable": {
|
|
188
|
+
"type": "boolean",
|
|
189
|
+
"mutable": false,
|
|
190
|
+
"complexType": {
|
|
191
|
+
"original": "boolean",
|
|
192
|
+
"resolved": "boolean",
|
|
193
|
+
"references": {}
|
|
194
|
+
},
|
|
195
|
+
"required": false,
|
|
196
|
+
"optional": false,
|
|
197
|
+
"docs": {
|
|
198
|
+
"tags": [{
|
|
199
|
+
"name": "info",
|
|
200
|
+
"text": "Emits `tctClick` when clicked."
|
|
201
|
+
}],
|
|
202
|
+
"text": "Makes the surface interactive, responding to clicks."
|
|
203
|
+
},
|
|
204
|
+
"getter": false,
|
|
205
|
+
"setter": false,
|
|
206
|
+
"reflect": true,
|
|
207
|
+
"attribute": "clickable",
|
|
208
|
+
"defaultValue": "false"
|
|
209
|
+
},
|
|
210
|
+
"elevation": {
|
|
211
|
+
"type": "number",
|
|
212
|
+
"mutable": false,
|
|
213
|
+
"complexType": {
|
|
214
|
+
"original": "0 | 1 | 2 | 3 | 4 | 5",
|
|
215
|
+
"resolved": "0 | 1 | 2 | 3 | 4 | 5",
|
|
216
|
+
"references": {}
|
|
217
|
+
},
|
|
218
|
+
"required": false,
|
|
219
|
+
"optional": false,
|
|
220
|
+
"docs": {
|
|
221
|
+
"tags": [{
|
|
222
|
+
"name": "info",
|
|
223
|
+
"text": "0 means no shadow; higher values appear more elevated."
|
|
224
|
+
}],
|
|
225
|
+
"text": "Gives the component a drop shadow."
|
|
226
|
+
},
|
|
227
|
+
"getter": false,
|
|
228
|
+
"setter": false,
|
|
229
|
+
"reflect": true,
|
|
230
|
+
"attribute": "elevation",
|
|
231
|
+
"defaultValue": "0"
|
|
232
|
+
},
|
|
233
|
+
"inset": {
|
|
234
|
+
"type": "string",
|
|
235
|
+
"mutable": false,
|
|
236
|
+
"complexType": {
|
|
237
|
+
"original": "'none' | 'compact' | 'normal' | 'comfortable'",
|
|
238
|
+
"resolved": "\"comfortable\" | \"compact\" | \"none\" | \"normal\"",
|
|
239
|
+
"references": {}
|
|
240
|
+
},
|
|
241
|
+
"required": false,
|
|
242
|
+
"optional": false,
|
|
243
|
+
"docs": {
|
|
244
|
+
"tags": [{
|
|
245
|
+
"name": "info",
|
|
246
|
+
"text": "Individual axes can be overridden with `inset-x` and `inset-y`."
|
|
247
|
+
}],
|
|
248
|
+
"text": "Adds internal padding applied uniformly on all sides."
|
|
249
|
+
},
|
|
250
|
+
"getter": false,
|
|
251
|
+
"setter": false,
|
|
252
|
+
"reflect": true,
|
|
253
|
+
"attribute": "inset",
|
|
254
|
+
"defaultValue": "'none'"
|
|
255
|
+
},
|
|
256
|
+
"insetX": {
|
|
257
|
+
"type": "string",
|
|
258
|
+
"mutable": false,
|
|
259
|
+
"complexType": {
|
|
260
|
+
"original": "'none' | 'compact' | 'normal' | 'comfortable'",
|
|
261
|
+
"resolved": "\"comfortable\" | \"compact\" | \"none\" | \"normal\"",
|
|
262
|
+
"references": {}
|
|
263
|
+
},
|
|
264
|
+
"required": false,
|
|
265
|
+
"optional": true,
|
|
266
|
+
"docs": {
|
|
267
|
+
"tags": [],
|
|
268
|
+
"text": "Adds horizontal padding, overriding the horizontal component of `inset`."
|
|
269
|
+
},
|
|
270
|
+
"getter": false,
|
|
271
|
+
"setter": false,
|
|
272
|
+
"reflect": true,
|
|
273
|
+
"attribute": "inset-x"
|
|
274
|
+
},
|
|
275
|
+
"insetY": {
|
|
276
|
+
"type": "string",
|
|
277
|
+
"mutable": false,
|
|
278
|
+
"complexType": {
|
|
279
|
+
"original": "'none' | 'compact' | 'normal' | 'comfortable'",
|
|
280
|
+
"resolved": "\"comfortable\" | \"compact\" | \"none\" | \"normal\"",
|
|
281
|
+
"references": {}
|
|
282
|
+
},
|
|
283
|
+
"required": false,
|
|
284
|
+
"optional": true,
|
|
285
|
+
"docs": {
|
|
286
|
+
"tags": [],
|
|
287
|
+
"text": "Adds vertical padding, overriding the vertical component of `inset`."
|
|
288
|
+
},
|
|
289
|
+
"getter": false,
|
|
290
|
+
"setter": false,
|
|
291
|
+
"reflect": true,
|
|
292
|
+
"attribute": "inset-y"
|
|
293
|
+
},
|
|
294
|
+
"radius": {
|
|
295
|
+
"type": "number",
|
|
296
|
+
"mutable": false,
|
|
297
|
+
"complexType": {
|
|
298
|
+
"original": "0 | 1 | 2 | 3 | 4 | 5",
|
|
299
|
+
"resolved": "0 | 1 | 2 | 3 | 4 | 5",
|
|
300
|
+
"references": {}
|
|
301
|
+
},
|
|
302
|
+
"required": false,
|
|
303
|
+
"optional": false,
|
|
304
|
+
"docs": {
|
|
305
|
+
"tags": [],
|
|
306
|
+
"text": "Adds corner rounding on a scale from 0 (sharp) to 5 (most rounded)."
|
|
307
|
+
},
|
|
308
|
+
"getter": false,
|
|
309
|
+
"setter": false,
|
|
310
|
+
"reflect": true,
|
|
311
|
+
"attribute": "radius",
|
|
312
|
+
"defaultValue": "0"
|
|
313
|
+
}
|
|
314
|
+
};
|
|
315
|
+
}
|
|
316
|
+
static get events() {
|
|
317
|
+
return [{
|
|
318
|
+
"method": "tctClick",
|
|
319
|
+
"name": "tctClick",
|
|
320
|
+
"bubbles": true,
|
|
321
|
+
"cancelable": true,
|
|
322
|
+
"composed": true,
|
|
323
|
+
"docs": {
|
|
324
|
+
"tags": [],
|
|
325
|
+
"text": "Emitted when the surface is clicked and `clickable` is true."
|
|
326
|
+
},
|
|
327
|
+
"complexType": {
|
|
328
|
+
"original": "void",
|
|
329
|
+
"resolved": "void",
|
|
330
|
+
"references": {}
|
|
331
|
+
}
|
|
332
|
+
}];
|
|
333
|
+
}
|
|
334
|
+
static get methods() {
|
|
335
|
+
return {
|
|
336
|
+
"animate": {
|
|
337
|
+
"complexType": {
|
|
338
|
+
"signature": "(animation?: \"bounce\" | \"flash\" | \"pulse\" | \"tada\") => Promise<void>",
|
|
339
|
+
"parameters": [{
|
|
340
|
+
"name": "animation",
|
|
341
|
+
"type": "\"bounce\" | \"flash\" | \"pulse\" | \"tada\"",
|
|
342
|
+
"docs": "The animation to play. Defaults to `'pulse'`."
|
|
343
|
+
}],
|
|
344
|
+
"references": {
|
|
345
|
+
"Promise": {
|
|
346
|
+
"location": "global",
|
|
347
|
+
"id": "global::Promise"
|
|
348
|
+
}
|
|
349
|
+
},
|
|
350
|
+
"return": "Promise<void>"
|
|
351
|
+
},
|
|
352
|
+
"docs": {
|
|
353
|
+
"text": "Triggers a named animation on the surface. If an animation is already running, cancels it before starting the new one.",
|
|
354
|
+
"tags": [{
|
|
355
|
+
"name": "param",
|
|
356
|
+
"text": "animation The animation to play. Defaults to `'pulse'`."
|
|
357
|
+
}, {
|
|
358
|
+
"name": "returns",
|
|
359
|
+
"text": "A Promise that resolves when the animation finishes or is cancelled."
|
|
360
|
+
}]
|
|
361
|
+
}
|
|
362
|
+
}
|
|
363
|
+
};
|
|
364
|
+
}
|
|
365
|
+
static get elementRef() { return "hostElement"; }
|
|
366
|
+
static get listeners() {
|
|
367
|
+
return [{
|
|
368
|
+
"name": "click",
|
|
369
|
+
"method": "onClick",
|
|
370
|
+
"target": undefined,
|
|
371
|
+
"capture": false,
|
|
372
|
+
"passive": false
|
|
373
|
+
}, {
|
|
374
|
+
"name": "keydown",
|
|
375
|
+
"method": "onKeydown",
|
|
376
|
+
"target": undefined,
|
|
377
|
+
"capture": false,
|
|
378
|
+
"passive": false
|
|
379
|
+
}];
|
|
380
|
+
}
|
|
381
|
+
}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { expect } from "@playwright/test";
|
|
2
|
+
import { test } from "@stencil/playwright";
|
|
3
|
+
import { setupPage, THEMES } from "../../../utils/test/vr-helpers";
|
|
4
|
+
const VARIANTS = [
|
|
5
|
+
{
|
|
6
|
+
name: 'background-default',
|
|
7
|
+
html: `<q2-surface background="default" inset="normal"></q2-surface>`,
|
|
8
|
+
states: ['resting'],
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
name: 'background-primary',
|
|
12
|
+
html: `<q2-surface background="primary" inset="normal"></q2-surface>`,
|
|
13
|
+
states: ['resting'],
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
name: 'background-secondary',
|
|
17
|
+
html: `<q2-surface background="secondary" inset="normal"></q2-surface>`,
|
|
18
|
+
states: ['resting'],
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
name: 'background-tertiary',
|
|
22
|
+
html: `<q2-surface background="tertiary" inset="normal"></q2-surface>`,
|
|
23
|
+
states: ['resting'],
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
name: 'background-gradient-primary',
|
|
27
|
+
html: `<q2-surface background="primary" background-gradient inset="normal" radius="2"></q2-surface>`,
|
|
28
|
+
states: ['resting'],
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
name: 'border-default',
|
|
32
|
+
html: `<q2-surface border="default" inset="normal"></q2-surface>`,
|
|
33
|
+
states: ['resting'],
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
name: 'border-primary',
|
|
37
|
+
html: `<q2-surface border="primary" inset="normal"></q2-surface>`,
|
|
38
|
+
states: ['resting'],
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
name: 'border-secondary',
|
|
42
|
+
html: `<q2-surface border="secondary" inset="normal"></q2-surface>`,
|
|
43
|
+
states: ['resting'],
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
name: 'border-tertiary',
|
|
47
|
+
html: `<q2-surface border="tertiary" inset="normal"></q2-surface>`,
|
|
48
|
+
states: ['resting'],
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
name: 'border-gradient-primary',
|
|
52
|
+
html: `<q2-surface border="primary" border-gradient inset="normal" radius="2"></q2-surface>`,
|
|
53
|
+
states: ['resting'],
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
name: 'clickable',
|
|
57
|
+
html: `<q2-surface clickable border="default" radius="2" inset="normal"></q2-surface>`,
|
|
58
|
+
states: ['resting', 'hover', 'focus', 'active'],
|
|
59
|
+
},
|
|
60
|
+
];
|
|
61
|
+
const restingCase = (variant, theme) => {
|
|
62
|
+
test(`q2-surface--${variant.name}--resting — ${theme}`, async ({ page }) => {
|
|
63
|
+
await setupPage(page, variant.html, { theme });
|
|
64
|
+
await expect(page).toHaveScreenshot(`q2-surface--${variant.name}--resting--${theme}.png`);
|
|
65
|
+
});
|
|
66
|
+
};
|
|
67
|
+
const hoverCase = (variant, theme) => {
|
|
68
|
+
test(`q2-surface--${variant.name}--hover — ${theme}`, async ({ page }) => {
|
|
69
|
+
await setupPage(page, variant.html, { theme });
|
|
70
|
+
await page.locator('q2-surface').hover();
|
|
71
|
+
await expect(page).toHaveScreenshot(`q2-surface--${variant.name}--hover--${theme}.png`);
|
|
72
|
+
});
|
|
73
|
+
};
|
|
74
|
+
const focusCase = (variant, theme) => {
|
|
75
|
+
test(`q2-surface--${variant.name}--focus — ${theme}`, async ({ page }) => {
|
|
76
|
+
await setupPage(page, variant.html, { theme });
|
|
77
|
+
await page.keyboard.press('Tab');
|
|
78
|
+
await expect(page).toHaveScreenshot(`q2-surface--${variant.name}--focus--${theme}.png`);
|
|
79
|
+
});
|
|
80
|
+
};
|
|
81
|
+
const activeCase = (variant, theme) => {
|
|
82
|
+
test(`q2-surface--${variant.name}--active — ${theme}`, async ({ page }) => {
|
|
83
|
+
await setupPage(page, variant.html, { theme });
|
|
84
|
+
const surface = page.locator('q2-surface');
|
|
85
|
+
const box = await surface.boundingBox();
|
|
86
|
+
if (!box)
|
|
87
|
+
throw new Error('q2-surface bounding box unavailable');
|
|
88
|
+
await page.mouse.move(box.x + box.width / 2, box.y + box.height / 2);
|
|
89
|
+
await page.mouse.down();
|
|
90
|
+
await page.waitForTimeout(50);
|
|
91
|
+
await expect(page).toHaveScreenshot(`q2-surface--${variant.name}--active--${theme}.png`);
|
|
92
|
+
await page.mouse.up();
|
|
93
|
+
});
|
|
94
|
+
};
|
|
95
|
+
test.describe('q2-surface — variants × themes', () => {
|
|
96
|
+
for (const variant of VARIANTS) {
|
|
97
|
+
for (const theme of THEMES) {
|
|
98
|
+
if (variant.states.includes('resting'))
|
|
99
|
+
restingCase(variant, theme);
|
|
100
|
+
if (variant.states.includes('hover'))
|
|
101
|
+
hoverCase(variant, theme);
|
|
102
|
+
if (variant.states.includes('focus'))
|
|
103
|
+
focusCase(variant, theme);
|
|
104
|
+
if (variant.states.includes('active'))
|
|
105
|
+
activeCase(variant, theme);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
});
|
|
@@ -266,7 +266,7 @@ export class Q2TabContainer {
|
|
|
266
266
|
return (h("div", { class: "tab-pane-badge", "aria-label": `${tab.label}, ${tab.badgeCount} ${description}` }, tab.label, h("q2-badge", { value: tab.badgeCount, theme: theme, status: tab.badgeStatus })));
|
|
267
267
|
}
|
|
268
268
|
render() {
|
|
269
|
-
return (h(Fragment, { key: '
|
|
269
|
+
return (h(Fragment, { key: 'cfaf872008ad8687316955a725e7475d326b5ec2' }, h("div", { key: '8a61a84ecd4d1869fe53829ca908e99ec80b11be', class: "tab-container" }, this.scrollEnabled && (h(Fragment, { key: 'a77950455f6f6f9138d1174fa4db38bcde498cb5' }, h("div", { key: 'b195f6a34a9ed2ecbdf1bacd2d51a76f0861574e', class: "gradient-left", hidden: !this.showScrollLeft }), h("div", { key: 'f625095c68ad1bedd07d34149d28c27f12b2954d', class: "gradient-right", hidden: !this.showScrollRight }), h("q2-btn", { key: '96c26c6447708d2fcf102e53e984f9a71bc2d9b1', class: "btn-left", hidden: !this.showScrollLeft, onTctClick: () => this.onScrollBtnClick('left') }, h("q2-icon", { key: 'feec85bd6bbbfeb99c520b6118c90190130d8dca', type: "chevron-left", label: "scroll left" })), h("q2-btn", { key: '8dc406d9e144e0d025e14d8a2e30f6010febafd6', class: "btn-right", hidden: !this.showScrollRight, onTctClick: () => this.onScrollBtnClick('right') }, h("q2-icon", { key: '3a35b2d74d9f62f3934b667b2ceacf0e31ffb6f4', type: "chevron-right", label: "scroll right" })))), h("ul", { key: '8ba591207287d3aa2d20e70ec72c03a755879ab0', onScroll: this.checkScrollState, ref: el => (this.listElement = el), class: this.noPrint ? 'no-print' : null, role: "tablist" }, this.tabs.map((tab, index) => this.renderTab(tab, index)))), h("div", { key: '83ab595967887ca3d2a584f85519f23e101d02ff', class: "tab-content" }, h("slot", { key: '6458a9e54b310f85129497478757111501fcb06f', onSlotchange: () => this.onSlotChange() }))));
|
|
270
270
|
}
|
|
271
271
|
static get is() { return "q2-tab-container"; }
|
|
272
272
|
static get encapsulation() { return "shadow"; }
|
|
@@ -19,7 +19,7 @@ export class Q2TabPane {
|
|
|
19
19
|
// #endregion
|
|
20
20
|
// #region Render Methods
|
|
21
21
|
render() {
|
|
22
|
-
return (h("div", { key: '
|
|
22
|
+
return (h("div", { key: '19abb08e46c23ce0be03d7d07a1bbe4c22e99786', id: `tab-pane-${this.guid}-${this.index}`, class: `tab-pane${this.selected ? '' : ' hidden'}`, role: "tabpanel", tabindex: "-1", "aria-hidden": `${!this.selected}`, "aria-labelledby": `tab-${this.guid}-${this.index}` }, h("slot", { key: '42a7a3ac8fe64661ba2027c0c967fcfe3b4d20e7' })));
|
|
23
23
|
}
|
|
24
24
|
static get is() { return "q2-tab-pane"; }
|
|
25
25
|
static get encapsulation() { return "shadow"; }
|
|
@@ -194,7 +194,7 @@ export class Q2Tag {
|
|
|
194
194
|
if (this.optionCount)
|
|
195
195
|
wrapperClassNames.push('has-options');
|
|
196
196
|
const shouldShowOptions = this.optionCount > 0;
|
|
197
|
-
return (h(Host, { key: '
|
|
197
|
+
return (h(Host, { key: '8bf6d92e2f691ae8efeb0b1f24b460d193c069f1' }, h("click-elsewhere", { key: '9c6d2c96a64528a7831f5f1f019e81f5092b1347', onChange: this.onClickElsewhere }, shouldShowOptions ? (h(Fragment, null, h("button", { class: "tag-wrapper", ref: el => (this.dropdownBtn = el), "test-id": "btn-control", type: "button", role: "combobox", onClick: this.handleClick, onKeyDown: this.handleKeydown, onFocusout: this.handleButtonFocusout, "aria-controls": "option-list", "aria-expanded": open ? 'true' : 'false', "aria-describedby": "option-description", "aria-label": loc(this.label) }, h("div", { class: wrapperClassNames.join(' ') }, loc(this.label)), h("q2-icon", { type: "options" })), this.renderHiddenElement())) : (h("div", { class: "tag-wrapper", onClick: e => e.stopPropagation() }, h("div", { class: wrapperClassNames.join(' ') }, h("slot", { name: "decorator" }), loc(this.label)))), shouldShowOptions && (h("q2-popover", { key: '2df0c2c782ec0908fe95f4c824fa4230beeb2e6d', ref: el => (this.popoverElement = el), controlElement: this.dropdownBtn, open: this.open, maxHeight: this.popoverMaxHeight, minHeight: this.popoverMinHeight, direction: this.popoverDirection, align: this.popoverAlignment }, h("q2-option-list", { key: '8423b3877e1750ee12f5162b7fd2eb43a9552002', id: "option-list", ref: el => (this.optionList = el), onChange: this.handleChange, type: "menu", align: "right", label: loc('tecton.element.optionList.label', [this.optionListLabel]), "no-select": true }, h("slot", { key: '66ba933485bb28a9d140018c7ce6ce02e31ea668' })))))));
|
|
198
198
|
}
|
|
199
199
|
static get is() { return "q2-tag"; }
|
|
200
200
|
static get encapsulation() { return "shadow"; }
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { h } from "@stencil/core";
|
|
2
2
|
import { hasSlotContent, loc } from "../../utils/index";
|
|
3
3
|
/**
|
|
4
|
+
* @name Toast
|
|
5
|
+
* @category Platform
|
|
6
|
+
* @summary Use for brief, non-intrusive notifications that appear temporarily and do not require user interaction.
|
|
4
7
|
* @slot icon - Optional slot for a custom icon.
|
|
5
8
|
* @slot title - Optional slot for the title content.
|
|
6
|
-
* @slot - Optional slot for the message content.
|
|
7
9
|
* @slot time - Optional slot for the time marker.
|
|
8
10
|
* @slot actions - Optional slot for action links in the footer.
|
|
9
11
|
*/
|
|
@@ -49,9 +49,9 @@ export class TectonTabPane {
|
|
|
49
49
|
// #endregion
|
|
50
50
|
// #region Render Methods
|
|
51
51
|
render() {
|
|
52
|
-
return (h("div", { key: '
|
|
52
|
+
return (h("div", { key: '6fd41d78c9d8a6e1abf28713f52d92ac214ad8ab', id: `tab-pane-${this.guid}-${this.index}`, class: `tab-pane${this.selected ? '' : ' hidden'}`, role: "tabpanel", tabindex: "-1", "aria-hidden": `${!this.selected}`, "aria-labelledby": `tab-${this.guid}-${this.index}` }, this.selected && this.provided !== undefined && !this.provided && (h("div", { key: 'b5302bdd5ae8e749e84e4e12505d843c0ba0950a' }, h("slot", { key: '4b935505187b21260398c28ea876ecd64d9ed172', name: "loading-wrapper" }), h("iframe", { key: 'c18b96c8849a6a69abec9ced6d27a6860113b8c7', hidden: true, name: this.moduleId, scrolling: "no", src: this.showForm && this.authPayload.length ? '' : this.url || '', "data-module-id": this.moduleId, style: this.minHeight ? { minHeight: this.minHeight } : null, onLoad: this.onIFrameLoad, title: this.iframeTitle, allow: "geolocation; camera" }), this._showForm && this.authPayload ? (h("form", { hidden: true, method: "post", action: this.url, target: this.moduleId, encType: "multipart/form-data" }, this.authPayload.map(element => {
|
|
53
53
|
return (h("input", { type: "hidden", value: element.value, name: element.key }));
|
|
54
|
-
}))) : (''))), h("div", { key: '
|
|
54
|
+
}))) : (''))), h("div", { key: '1016d617dc6cf49aa8e4bf52010e3cf246191875', class: "slot-wrapper", hidden: this.selected && this.provided !== undefined && !this.provided }, h("slot", { key: '466d820db179e1b6e350722eff9ec9190be6c869' }))));
|
|
55
55
|
}
|
|
56
56
|
static get is() { return "tecton-tab-pane"; }
|
|
57
57
|
static get encapsulation() { return "shadow"; }
|
|
@@ -143,14 +143,14 @@ export function pick(props) {
|
|
|
143
143
|
}, {});
|
|
144
144
|
};
|
|
145
145
|
}
|
|
146
|
-
export function loc(key, subs) {
|
|
146
|
+
export function loc(key, subs, options) {
|
|
147
147
|
var _a, _b, _c;
|
|
148
148
|
if (!key)
|
|
149
149
|
return '';
|
|
150
150
|
if (((_a = window.Tecton) === null || _a === void 0 ? void 0 : _a.noStrings) === true) {
|
|
151
151
|
return key;
|
|
152
152
|
}
|
|
153
|
-
return (_c = (_b = window === null || window === void 0 ? void 0 : window.TectonElements) === null || _b === void 0 ? void 0 : _b.loc(key, subs)) !== null && _c !== void 0 ? _c : key;
|
|
153
|
+
return (_c = (_b = window === null || window === void 0 ? void 0 : window.TectonElements) === null || _b === void 0 ? void 0 : _b.loc(key, subs, options)) !== null && _c !== void 0 ? _c : key;
|
|
154
154
|
}
|
|
155
155
|
/**
|
|
156
156
|
* Returns browser name, version, platform, and context (browser vs app WebView).
|
package/dist/components/index.js
CHANGED
|
@@ -124,23 +124,25 @@ import { Q2StepperPane as po } from "./q2-stepper-pane.js";
|
|
|
124
124
|
|
|
125
125
|
import { Q2StepperVertical as eo } from "./q2-stepper-vertical.js";
|
|
126
126
|
|
|
127
|
-
import {
|
|
127
|
+
import { Q2Surface as fo } from "./q2-surface.js";
|
|
128
128
|
|
|
129
|
-
import {
|
|
129
|
+
import { Q2TabContainer as jo } from "./q2-tab-container.js";
|
|
130
130
|
|
|
131
|
-
import {
|
|
131
|
+
import { Q2TabPane as qo } from "./q2-tab-pane.js";
|
|
132
132
|
|
|
133
|
-
import {
|
|
133
|
+
import { Q2Tag as ao } from "./q2-tag.js";
|
|
134
134
|
|
|
135
|
-
import {
|
|
135
|
+
import { Q2Textarea as no } from "./q2-textarea.js";
|
|
136
136
|
|
|
137
|
-
import {
|
|
137
|
+
import { Q2Toast as co } from "./q2-toast.js";
|
|
138
138
|
|
|
139
|
-
import {
|
|
139
|
+
import { Q2Tooltip as lo } from "./q2-tooltip.js";
|
|
140
140
|
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
141
|
+
import { TectonTabPane as go } from "./tecton-tab-pane.js";
|
|
142
|
+
|
|
143
|
+
const defineCustomElements = uo => {
|
|
144
|
+
"undefined" != typeof customElements && [ r, m, t, i, s, p, e, f, j, q, a, n, c, l, d, g, u, b, h, x, k, v, w, E, P, y, A, z, N, O, B, C, D, F, G, H, I, J, K, L, M, Q, R, S, T, U, V, W, X, Y, Z, $, _, oo, ro, mo, to, io, so, po, eo, fo, jo, qo, ao, no, co, lo, go ].forEach((r => {
|
|
145
|
+
customElements.get(o(r.is)) || customElements.define(o(r.is), r, uo);
|
|
144
146
|
}));
|
|
145
147
|
};
|
|
146
148
|
|
|
@@ -94,9 +94,9 @@ function waitForNextPaint() {
|
|
|
94
94
|
return new Promise((e => nextPaint(e)));
|
|
95
95
|
}
|
|
96
96
|
|
|
97
|
-
function loc(e, n) {
|
|
98
|
-
var
|
|
99
|
-
return e ? !0 === (null === (
|
|
97
|
+
function loc(e, n, o) {
|
|
98
|
+
var i, t, a;
|
|
99
|
+
return e ? !0 === (null === (i = window.Tecton) || void 0 === i ? void 0 : i.noStrings) ? e : null !== (a = null === (t = null === window || void 0 === window ? void 0 : window.TectonElements) || void 0 === t ? void 0 : t.loc(e, n, o)) && void 0 !== a ? a : e : "";
|
|
100
100
|
}
|
|
101
101
|
|
|
102
102
|
/**
|