q2-tecton-elements 1.13.2 → 1.14.2

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.
Files changed (158) hide show
  1. package/dist/cjs/click-elsewhere.cjs.entry.js +1 -1
  2. package/dist/cjs/{icons-08ffe5c9.js → icons-e2bc9ee9.js} +1 -1
  3. package/dist/cjs/{index-7febb200.js → index-0128397d.js} +41 -1
  4. package/dist/cjs/{index-dd823ee6.js → index-0fec9f3b.js} +1 -1
  5. package/dist/cjs/loader.cjs.js +2 -2
  6. package/dist/cjs/q2-avatar.cjs.entry.js +2 -2
  7. package/dist/cjs/q2-badge.cjs.entry.js +1 -1
  8. package/dist/cjs/q2-btn_2.cjs.entry.js +5 -5
  9. package/dist/cjs/q2-calendar.cjs.entry.js +3 -3
  10. package/dist/cjs/q2-card.cjs.entry.js +2 -2
  11. package/dist/cjs/q2-carousel-pane.cjs.entry.js +2 -2
  12. package/dist/cjs/q2-carousel.cjs.entry.js +2 -2
  13. package/dist/cjs/q2-chart-donut.cjs.entry.js +39976 -0
  14. package/dist/cjs/q2-checkbox-group.cjs.entry.js +2 -2
  15. package/dist/cjs/q2-checkbox.cjs.entry.js +10 -13
  16. package/dist/cjs/q2-dropdown-item.cjs.entry.js +2 -2
  17. package/dist/cjs/q2-dropdown.cjs.entry.js +4 -4
  18. package/dist/cjs/q2-editable-field.cjs.entry.js +2 -2
  19. package/dist/cjs/q2-icon.cjs.entry.js +3 -3
  20. package/dist/cjs/q2-input.cjs.entry.js +3 -3
  21. package/dist/cjs/q2-loading-element.cjs.entry.js +2 -2
  22. package/dist/cjs/q2-loc.cjs.entry.js +2 -2
  23. package/dist/cjs/q2-message.cjs.entry.js +2 -2
  24. package/dist/cjs/q2-optgroup.cjs.entry.js +2 -2
  25. package/dist/cjs/q2-option-list.cjs.entry.js +2 -2
  26. package/dist/cjs/q2-option.cjs.entry.js +1 -1
  27. package/dist/cjs/q2-pagination.cjs.entry.js +3 -3
  28. package/dist/cjs/q2-pill.cjs.entry.js +2 -2
  29. package/dist/cjs/q2-radio-group.cjs.entry.js +19 -11
  30. package/dist/cjs/q2-radio.cjs.entry.js +3 -3
  31. package/dist/cjs/q2-section.cjs.entry.js +2 -2
  32. package/dist/cjs/q2-select.cjs.entry.js +3 -3
  33. package/dist/cjs/q2-stepper-pane.cjs.entry.js +2 -2
  34. package/dist/cjs/q2-stepper-vertical.cjs.entry.js +2 -2
  35. package/dist/cjs/q2-stepper.cjs.entry.js +2 -2
  36. package/dist/cjs/q2-tab-container.cjs.entry.js +2 -2
  37. package/dist/cjs/q2-tab-pane.cjs.entry.js +1 -1
  38. package/dist/cjs/q2-tag.cjs.entry.js +2 -2
  39. package/dist/cjs/q2-tecton-elements.cjs.js +2 -2
  40. package/dist/cjs/q2-textarea.cjs.entry.js +2 -2
  41. package/dist/cjs/{shapes-305746b5.js → shapes-c1a60d46.js} +1 -1
  42. package/dist/cjs/tecton-tab-pane.cjs.entry.js +1 -1
  43. package/dist/collection/collection-manifest.json +1 -0
  44. package/dist/collection/components/q2-btn/index.js +18 -1
  45. package/dist/collection/components/q2-btn/styles.css +6 -0
  46. package/dist/collection/components/q2-calendar/styles.css +5 -0
  47. package/dist/collection/components/q2-chart-donut/index.js +628 -0
  48. package/dist/collection/components/q2-chart-donut/styles.css +140 -0
  49. package/dist/collection/components/q2-checkbox/index.js +31 -16
  50. package/dist/collection/components/q2-checkbox/styles.css +112 -139
  51. package/dist/collection/components/q2-dropdown/index.js +18 -1
  52. package/dist/collection/components/q2-dropdown/styles.css +5 -0
  53. package/dist/collection/components/q2-input/index.js +18 -1
  54. package/dist/collection/components/q2-pagination/index.js +1 -1
  55. package/dist/collection/components/q2-radio/styles.css +21 -18
  56. package/dist/collection/components/q2-radio-group/index.js +44 -15
  57. package/dist/collection/components/q2-radio-group/styles.css +37 -32
  58. package/dist/collection/components/q2-select/styles.css +5 -0
  59. package/dist/esm/click-elsewhere.entry.js +1 -1
  60. package/dist/esm/{icons-b1e11526.js → icons-ed54e307.js} +1 -1
  61. package/dist/esm/{index-0ff8de52.js → index-14e81efa.js} +1 -1
  62. package/dist/esm/{index-dbfb3ecc.js → index-6d5ed7cc.js} +41 -1
  63. package/dist/esm/loader.js +2 -2
  64. package/dist/esm/q2-avatar.entry.js +2 -2
  65. package/dist/esm/q2-badge.entry.js +1 -1
  66. package/dist/esm/q2-btn_2.entry.js +5 -5
  67. package/dist/esm/q2-calendar.entry.js +3 -3
  68. package/dist/esm/q2-card.entry.js +2 -2
  69. package/dist/esm/q2-carousel-pane.entry.js +2 -2
  70. package/dist/esm/q2-carousel.entry.js +2 -2
  71. package/dist/esm/q2-chart-donut.entry.js +39972 -0
  72. package/dist/esm/q2-checkbox-group.entry.js +2 -2
  73. package/dist/esm/q2-checkbox.entry.js +10 -13
  74. package/dist/esm/q2-dropdown-item.entry.js +2 -2
  75. package/dist/esm/q2-dropdown.entry.js +4 -4
  76. package/dist/esm/q2-editable-field.entry.js +2 -2
  77. package/dist/esm/q2-icon.entry.js +3 -3
  78. package/dist/esm/q2-input.entry.js +3 -3
  79. package/dist/esm/q2-loading-element.entry.js +2 -2
  80. package/dist/esm/q2-loc.entry.js +2 -2
  81. package/dist/esm/q2-message.entry.js +2 -2
  82. package/dist/esm/q2-optgroup.entry.js +2 -2
  83. package/dist/esm/q2-option-list.entry.js +2 -2
  84. package/dist/esm/q2-option.entry.js +1 -1
  85. package/dist/esm/q2-pagination.entry.js +3 -3
  86. package/dist/esm/q2-pill.entry.js +2 -2
  87. package/dist/esm/q2-radio-group.entry.js +19 -11
  88. package/dist/esm/q2-radio.entry.js +3 -3
  89. package/dist/esm/q2-section.entry.js +2 -2
  90. package/dist/esm/q2-select.entry.js +3 -3
  91. package/dist/esm/q2-stepper-pane.entry.js +2 -2
  92. package/dist/esm/q2-stepper-vertical.entry.js +2 -2
  93. package/dist/esm/q2-stepper.entry.js +2 -2
  94. package/dist/esm/q2-tab-container.entry.js +2 -2
  95. package/dist/esm/q2-tab-pane.entry.js +1 -1
  96. package/dist/esm/q2-tag.entry.js +2 -2
  97. package/dist/esm/q2-tecton-elements.js +2 -2
  98. package/dist/esm/q2-textarea.entry.js +2 -2
  99. package/dist/esm/{shapes-cff4e1f0.js → shapes-c32e3ba2.js} +1 -1
  100. package/dist/esm/tecton-tab-pane.entry.js +1 -1
  101. package/dist/q2-tecton-elements/p-0675f9c8.entry.js +1 -0
  102. package/dist/q2-tecton-elements/{p-fdfbe75b.entry.js → p-09464226.entry.js} +1 -1
  103. package/dist/q2-tecton-elements/{p-10264ecb.entry.js → p-0e13d5ba.entry.js} +1 -1
  104. package/dist/q2-tecton-elements/{p-d5218cd6.entry.js → p-17cffd7d.entry.js} +1 -1
  105. package/dist/q2-tecton-elements/{p-2846ab94.entry.js → p-1eed57aa.entry.js} +1 -1
  106. package/dist/q2-tecton-elements/{p-2c15414c.entry.js → p-3796397e.entry.js} +1 -1
  107. package/dist/q2-tecton-elements/{p-a5562aaa.entry.js → p-37f1984c.entry.js} +1 -1
  108. package/dist/q2-tecton-elements/p-3cfc0cb4.entry.js +1 -0
  109. package/dist/q2-tecton-elements/{p-dd02cf8d.js → p-431bf43e.js} +1 -1
  110. package/dist/q2-tecton-elements/{p-ede12fc1.entry.js → p-58e42fc5.entry.js} +1 -1
  111. package/dist/q2-tecton-elements/{p-3fe98e3e.entry.js → p-627df469.entry.js} +1 -1
  112. package/dist/q2-tecton-elements/{p-327cca41.entry.js → p-65e2df25.entry.js} +1 -1
  113. package/dist/q2-tecton-elements/{p-ca7a3380.entry.js → p-663cb6e8.entry.js} +1 -1
  114. package/dist/q2-tecton-elements/{p-ffbded54.entry.js → p-6727f6d0.entry.js} +1 -1
  115. package/dist/q2-tecton-elements/{p-e0e7ae8b.entry.js → p-6ced7858.entry.js} +1 -1
  116. package/dist/q2-tecton-elements/{p-6fec9235.entry.js → p-706249e1.entry.js} +1 -1
  117. package/dist/q2-tecton-elements/{p-5bbf2bfe.entry.js → p-7249de38.entry.js} +1 -1
  118. package/dist/q2-tecton-elements/{p-824aebd9.js → p-73154834.js} +1 -1
  119. package/dist/q2-tecton-elements/{p-ae130f70.entry.js → p-7ddb159c.entry.js} +1 -1
  120. package/dist/q2-tecton-elements/p-85cff6ec.entry.js +1 -0
  121. package/dist/q2-tecton-elements/{p-49b2abc4.entry.js → p-87f448ab.entry.js} +1 -1
  122. package/dist/q2-tecton-elements/{p-3a420dbf.entry.js → p-882eaf0f.entry.js} +1 -1
  123. package/dist/q2-tecton-elements/{p-45eb7739.entry.js → p-8f815678.entry.js} +1 -1
  124. package/dist/q2-tecton-elements/{p-00e8f782.entry.js → p-92886dbe.entry.js} +1 -1
  125. package/dist/q2-tecton-elements/{p-255b2b4c.js → p-93c00587.js} +1 -1
  126. package/dist/q2-tecton-elements/p-94303312.entry.js +1 -0
  127. package/dist/q2-tecton-elements/{p-221abbf6.entry.js → p-9725d55f.entry.js} +1 -1
  128. package/dist/q2-tecton-elements/{p-430a979b.entry.js → p-9af46ffc.entry.js} +1 -1
  129. package/dist/q2-tecton-elements/{p-1305ec5f.entry.js → p-9d8a963b.entry.js} +1 -1
  130. package/dist/q2-tecton-elements/{p-148391d6.entry.js → p-b066cdd1.entry.js} +1 -1
  131. package/dist/q2-tecton-elements/{p-27736b6b.entry.js → p-bd6c6239.entry.js} +1 -1
  132. package/dist/q2-tecton-elements/{p-0900bec1.entry.js → p-c4eff511.entry.js} +1 -1
  133. package/dist/q2-tecton-elements/p-c5691700.js +1 -0
  134. package/dist/q2-tecton-elements/{p-1dfaee64.entry.js → p-cf9e8120.entry.js} +1 -1
  135. package/dist/q2-tecton-elements/{p-4ab30466.entry.js → p-d46efe36.entry.js} +1 -1
  136. package/dist/q2-tecton-elements/{p-2bc1de01.entry.js → p-e435159b.entry.js} +1 -1
  137. package/dist/q2-tecton-elements/{p-c20cbb2d.entry.js → p-ea2a290e.entry.js} +1 -1
  138. package/dist/q2-tecton-elements/p-ead64414.entry.js +1 -0
  139. package/dist/q2-tecton-elements/p-eeb4a008.entry.js +39 -0
  140. package/dist/q2-tecton-elements/{p-d33e152c.entry.js → p-fbfb3615.entry.js} +1 -1
  141. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
  142. package/dist/types/components/q2-btn/index.d.ts +1 -0
  143. package/dist/types/components/q2-chart-donut/index.d.ts +89 -0
  144. package/dist/types/components/q2-checkbox/index.d.ts +1 -1
  145. package/dist/types/components/q2-dropdown/index.d.ts +1 -0
  146. package/dist/types/components/q2-input/index.d.ts +1 -0
  147. package/dist/types/components/q2-radio-group/index.d.ts +4 -2
  148. package/dist/types/components.d.ts +48 -0
  149. package/dist/types/util.d.ts +1 -0
  150. package/dist/types/workspace/workspace/{tecton-production_release_1.13.x → tecton-production_release_1.14.x}/packages/q2-tecton-elements/.stencil/test/elements/q2-tag-test.d.ts +0 -0
  151. package/dist/types/workspace/workspace/{tecton-production_release_1.13.x → tecton-production_release_1.14.x}/packages/q2-tecton-elements/.stencil/test/helpers.d.ts +0 -0
  152. package/package.json +3 -2
  153. package/dist/q2-tecton-elements/p-01ae8461.entry.js +0 -1
  154. package/dist/q2-tecton-elements/p-2caa89fd.js +0 -1
  155. package/dist/q2-tecton-elements/p-3abcb09d.entry.js +0 -1
  156. package/dist/q2-tecton-elements/p-a4ae89cc.entry.js +0 -1
  157. package/dist/q2-tecton-elements/p-b2302cd3.entry.js +0 -1
  158. package/dist/q2-tecton-elements/p-d52b435e.entry.js +0 -1
@@ -0,0 +1,140 @@
1
+ * {
2
+ box-sizing: border-box;
3
+ }
4
+
5
+ *:active {
6
+ outline: none;
7
+ }
8
+
9
+ *:focus {
10
+ outline: none;
11
+ box-shadow: var(--const-global-focus);
12
+ }
13
+
14
+ :host {
15
+ box-shadow: none !important;
16
+ }
17
+
18
+ ::-moz-focus-inner {
19
+ border: none;
20
+ }
21
+
22
+ input,
23
+ textarea,
24
+ button {
25
+ font-family: inherit;
26
+ font-size: inherit;
27
+ }
28
+
29
+ :host(.sr),
30
+ :host(.sr) button {
31
+ border: 0;
32
+ clip: rect(0 0 0 0);
33
+ height: 1px;
34
+ margin: -1px;
35
+ overflow: hidden;
36
+ padding: 0;
37
+ position: absolute;
38
+ width: 1px;
39
+ white-space: nowrap;
40
+ }
41
+
42
+ .sr,
43
+ .sr button {
44
+ border: 0;
45
+ clip: rect(0 0 0 0);
46
+ height: 1px;
47
+ margin: -1px;
48
+ overflow: hidden;
49
+ padding: 0;
50
+ position: absolute;
51
+ width: 1px;
52
+ white-space: nowrap;
53
+ }
54
+
55
+ .hidden {
56
+ display: none;
57
+ }
58
+
59
+ :host([hidden]) {
60
+ display: none;
61
+ }
62
+
63
+ .invisible {
64
+ visibility: hidden;
65
+ }
66
+
67
+ :host {
68
+ position: relative;
69
+ aspect-ratio: 1/1;
70
+ width: 100%;
71
+ }
72
+
73
+ .chart-container {
74
+ aspect-ratio: 1/1;
75
+ width: 100%;
76
+ position: absolute;
77
+ top: 0;
78
+ --comp-color-1: var(--tct-chart-donut-color-1, var(--t-chart-donut-color-1, var(--t-accent-1, #e05252)));
79
+ --comp-color-2: var(--tct-chart-donut-color-2, var(--t-chart-donut-color-2, var(--t-accent-2, #e09952)));
80
+ --comp-color-3: var(--tct-chart-donut-color-3, var(--t-chart-donut-color-3, var(--t-accent-3, #e0e052)));
81
+ --comp-color-4: var(--tct-chart-donut-color-4, var(--t-chart-donut-color-4, var(--t-accent-4, #99e052)));
82
+ --comp-color-5: var(--tct-chart-donut-color-5, var(--t-chart-donut-color-5, var(--t-accent-5, #52e052)));
83
+ --comp-color-6: var(--tct-chart-donut-color-6, var(--t-chart-donut-color-6, var(--t-accent-6, #52e099)));
84
+ --comp-color-7: var(--tct-chart-donut-color-7, var(--t-chart-donut-color-7, var(--t-accent-7, #52e0e0)));
85
+ --comp-color-8: var(--tct-chart-donut-color-8, var(--t-chart-donut-color-8, var(--t-accent-8, #5299e0)));
86
+ --comp-color-9: var(--tct-chart-donut-color-9, var(--t-chart-donut-color-9, var(--t-accent-9, #5252e0)));
87
+ --comp-color-10: var(--tct-chart-donut-color-10, var(--t-chart-donut-color-10, var(--t-accent-10, #9952e0)));
88
+ --comp-color-11: var(--tct-chart-donut-color-11, var(--t-chart-donut-color-11, var(--t-accent-11, #e052e0)));
89
+ --comp-color-12: var(--tct-chart-donut-color-12, var(--t-chart-donut-color-12, var(--t-accent-12, #e05299)));
90
+ }
91
+
92
+ .chart-container,
93
+ .center-card {
94
+ --comp-background-color: var(--tct-chart-donut-border-color, var(--t-chart-donut-border-color, var(--t-base, #ffffff)));
95
+ }
96
+
97
+ button {
98
+ --comp-button-vertical-padding: var(--tct-chart-donut-button-vertical-padding, var(--t-chart-donut-button-vertical-padding, var(--app-scale-1, 5px)));
99
+ transition: box-shadow var(--tct-chart-donut-button-tween, var(--t-chart-donut-button-tween, var(--app-tween-1, 0.2s ease)));
100
+ padding: var(--comp-button-vertical-padding) 0;
101
+ }
102
+ button:active {
103
+ box-shadow: var(--const-global-focus), var(--tct-chart-donut-button-hover-box-shadow, var(--t-chart-donut-button-hover-box-shadow, var(--app-shadow-1, 0 2px 4px rgba(0, 0, 0, 0.3))));
104
+ }
105
+ button:hover {
106
+ box-shadow: var(--tct-chart-donut-button-hover-box-shadow, var(--t-chart-donut-button-hover-box-shadow, var(--app-shadow-1, 0 2px 4px rgba(0, 0, 0, 0.3))));
107
+ }
108
+ button:focus {
109
+ box-shadow: var(--const-global-focus), var(--tct-chart-donut-button-hover-box-shadow, var(--t-chart-donut-button-hover-box-shadow, var(--app-shadow-1, 0 2px 4px rgba(0, 0, 0, 0.3))));
110
+ }
111
+
112
+ .center-card {
113
+ width: 60%;
114
+ text-align: center;
115
+ color: var(--tct-chart-donut-text-color, var(--t-chart-donut-text-color, var(--t-text, #4d4d4d)));
116
+ margin-inline: auto;
117
+ display: block;
118
+ margin-top: 50%;
119
+ position: relative;
120
+ transform: translateY(-50%);
121
+ }
122
+ .center-card:is(button) {
123
+ cursor: pointer;
124
+ background: var(--comp-background-color);
125
+ border: 0;
126
+ border-radius: var(--tct-chart-donut-button-border-radius, var(--t-chart-donut-button-border-radius, var(--app-border-radius-1, 3px)));
127
+ }
128
+
129
+ q2-icon {
130
+ --t-icon-size: var(--tct-chart-donut-icon-size, var(--t-chart-donut-icon-size, 26px));
131
+ margin-bottom: var(--tct-chart-donut-icon-margin-bottom, var(--t-chart-donut-icon-margin-bottom, var(--app-scale-1x, 5px)));
132
+ }
133
+
134
+ .name {
135
+ font-size: var(--tct-chart-donut-name-font-size, var(--t-chart-donut-name-font-size, 14px));
136
+ }
137
+
138
+ .value {
139
+ font-size: var(--tct-chart-donut-value-font-size, var(--t-chart-donut-value-font-size, 21px));
140
+ }
@@ -18,12 +18,6 @@ export class Q2Checkbox {
18
18
  });
19
19
  this.inputElement.focus();
20
20
  };
21
- this.onControlClick = (event) => {
22
- event.stopPropagation();
23
- if (this.readonly)
24
- return;
25
- this.inputElement.click();
26
- };
27
21
  this.onKeyDown = (event) => {
28
22
  if (this.readonly && event.code === 'Space') {
29
23
  event.preventDefault();
@@ -54,22 +48,26 @@ export class Q2Checkbox {
54
48
  }
55
49
  /////// View Methods ///////
56
50
  render() {
57
- return (h("div", { class: "checkbox-container" },
58
- h("input", { ref: el => (this.inputElement = el), id: this.id, type: "checkbox", checked: this.indeterminate || this.checked || false, disabled: !!this.disabled || !!this.groupDisabled, class: "sr", value: this.value, name: this.name || this.id, "aria-label": this.label ? loc(this.label) : undefined, "test-id": "q2CheckboxInnerCheckBox", onKeyDown: this.onKeyDown, onClick: this.onInputClick }),
59
- h("label", { "test-id": "checkboxButton" },
60
- this.generateCheckboxSVG(),
61
- !this.hideLabel && (h("div", { class: "q2-checkbox-label-content" },
62
- h("span", { class: "label-text", onClick: this.onControlClick }, loc(this.label)),
63
- h("slot", null))))));
51
+ const textLabelClasses = ['label-text'];
52
+ if (this.hideLabel)
53
+ textLabelClasses.push('sr');
54
+ return (h("div", { class: "container" },
55
+ h("input", { ref: el => (this.inputElement = el), id: this.id, type: "checkbox", checked: this.indeterminate || this.checked || false, disabled: !!this.disabled || !!this.groupDisabled, class: "sr", value: this.value, name: this.name || this.id, "aria-label": this.label ? loc(this.label) : undefined, "aria-describedby": this.description ? 'description' : undefined, "test-id": "q2CheckboxInnerCheckBox", onKeyDown: this.onKeyDown, onClick: this.onInputClick }),
56
+ h("label", { htmlFor: this.id, class: "label-control", "test-id": "checkboxButton" }, this.generateCheckboxSVG()),
57
+ h("div", { class: textLabelClasses.join(' ') },
58
+ h("label", { "test-id": "checkboxLabel", htmlFor: this.id },
59
+ loc(this.label),
60
+ h("slot", null))),
61
+ this.description && (h("div", { class: "description-text", "test-id": "checkboxDescription", id: "description" }, loc(this.description)))));
64
62
  }
65
63
  generateCheckboxSVG() {
66
64
  if (this.type === 'favorite') {
67
- return (h("q2-icon", { type: "star", class: "checkbox-icon", onClick: this.onControlClick }));
65
+ return (h("q2-icon", { type: "star", class: "checkbox-icon" }));
68
66
  }
69
67
  if (this.type === 'toggle') {
70
68
  return this.generateToggleSVG();
71
69
  }
72
- return (h("svg", { "aria-hidden": "true", width: "20", height: "20", viewBox: "0 0 20 20", class: "checkbox-icon", focusable: "false", onClick: this.onControlClick },
70
+ return (h("svg", { "aria-hidden": "true", width: "20", height: "20", viewBox: "0 0 20 20", class: "checkbox-icon", focusable: "false" },
73
71
  h("rect", { x: "1", y: "1", width: "18", height: "18", rx: "3" }),
74
72
  (this.checked || this.indeterminate) && this.generateCheckBoxSVGFill()));
75
73
  }
@@ -80,7 +78,7 @@ export class Q2Checkbox {
80
78
  return (h("polyline", { class: "checkbox-fill checked-fill", points: "5 11 8.5 14.5 15 6" }));
81
79
  }
82
80
  generateToggleSVG() {
83
- return (h("div", { class: "toggle-svg", onClick: this.onControlClick },
81
+ return (h("div", { class: "toggle-svg" },
84
82
  h("svg", { "aria-hidden": "true", focusable: "false", viewBox: "0 0 46 14", class: "toggle-track" },
85
83
  h("rect", { width: "36", height: "14", rx: "7", x: "5" })),
86
84
  h("svg", { "aria-hidden": "true", focusable: "false", viewBox: "0 0 30 30", class: "toggle-indicator" },
@@ -319,6 +317,23 @@ export class Q2Checkbox {
319
317
  },
320
318
  "attribute": "alignment",
321
319
  "reflect": true
320
+ },
321
+ "description": {
322
+ "type": "string",
323
+ "mutable": false,
324
+ "complexType": {
325
+ "original": "string",
326
+ "resolved": "string",
327
+ "references": {}
328
+ },
329
+ "required": false,
330
+ "optional": false,
331
+ "docs": {
332
+ "tags": [],
333
+ "text": ""
334
+ },
335
+ "attribute": "description",
336
+ "reflect": true
322
337
  }
323
338
  }; }
324
339
  static get events() { return [{
@@ -67,205 +67,178 @@ button {
67
67
  :host {
68
68
  display: block;
69
69
  position: relative;
70
- padding: var(--tct-checkbox-vertical-padding, var(--tct-scale-2, var(--app-scale-2, 10px))) 0;
71
- }
72
-
73
- label {
74
- display: flex;
70
+ padding: var(--tct-checkbox-vertical-padding, var(--t-checkbox-vertical-padding, var(--tct-scale-2, var(--app-scale-2, 10px)))) 0;
71
+ }
72
+
73
+ .container {
74
+ --comp-checkbox-size: var(--tct-checkbox-size, var(--t-checkbox-size, 20px));
75
+ --comp-checkbox-default-column-gap: var(--app-scale-2x, 10px);
76
+ --comp-checkbox-default-row-gap: 0;
77
+ --comp-checkbox-default-gap: var(--comp-checkbox-default-row-gap) var(--comp-checkbox-default-column-gap);
78
+ --comp-checkbox-tween: var(--tct-tween-1, var(--app-tween-1, 0.2s ease));
79
+ --comp-checkbox-toggle-width: var(--tct-checkbox-toggle-width, var(--t-checkbox-toggle-width, 46px));
80
+ --comp-checkbox-gap: var(--tct-checkbox-gap, var(--t-checkbox-gap, var(--comp-checkbox-default-gap)));
81
+ --comp-checkbox-outer-stroke-color: var(--tct-checkbox-outer-stroke-color, var(--t-checkbox-outer-stroke-color, var(--tct-gray-11, var(--t-gray-11, var(--tct-gray-l1, var(--app-gray-l1, #cccccc))))));
82
+ --comp-checkbox-outer-fill-color: var(--tct-checkbox-outer-fill-color, var(--t-checkbox-outer-fill-color, var(--tct-white, var(--app-white, #ffffff))));
83
+ --comp-checkbox-checked-color: var(--tct-checkbox-check-stroke-color, var(--t-checkbox-check-stroke-color, var(--t-checkbox-fill, var(--tct-gray-5, var(--t-gray-5, var(--tct-gray-d2, var(--app-gray-d2, #404040)))))));
84
+ --comp-control-width: var(--comp-checkbox-size);
85
+ display: grid;
86
+ grid-template-areas: "svg label" "svg description";
75
87
  align-items: center;
76
- --comp-checkbox-outer-stroke-color: var(
77
- --tct-checkbox-outer-stroke-color,
78
- var(--tct-gray-11, var(--t-gray-11, var(--tct-gray-l1, var(--app-gray-l1, #cccccc))))
79
- );
80
- --comp-checkbox-outer-fill-color: var(
81
- --tct-checkbox-outer-fill-color,
82
- var(--tct-white, var(--app-white, #ffffff))
83
- );
84
- --comp-checkbox-checked-color: var(
85
- --tct-checkbox-check-stroke-color,
86
- var(
87
- --t-checkbox-fill,
88
- var(--tct-gray-5, var(--t-gray-5, var(--tct-gray-d2, var(--app-gray-d2, #404040))))
89
- )
90
- );
88
+ gap: var(--comp-checkbox-gap);
89
+ grid-template-columns: var(--comp-control-width) calc(100% - var(--comp-control-width) - var(--comp-checkbox-default-column-gap));
91
90
  }
92
-
93
- input:disabled + label {
94
- opacity: var(--tct-checkbox-disabled-opacity, var(--tct-disabled-opacity, var(--app-disabled-opacity, 0.4)));
91
+ :host([type=favorite]) .container {
92
+ --comp-checkbox-favorite-stroke-color: var(--tct-checkbox-favorite-stroke-color, var(--t-checkbox-favorite-stroke-color, var(--t-textA, rgba(77, 77, 77, 0.77))));
93
+ --comp-checkbox-favorite-fill-color: var(--tct-checkbox-favorite-fill-color, var(--t-checkbox-favorite-fill-color, var(--tct-stoplight-warning, var(--const-stoplight-warning, #f0b400))));
95
94
  }
96
-
97
- .checkbox-icon {
98
- height: var(--tct-checkbox-size, 20px);
99
- width: var(--tct-checkbox-size, 20px);
100
- border-radius: var(--tct-checkbox-outer-border-radius, var(--tct-border-radius-1, var(--app-border-radius-1, 3px)));
101
- stroke: var(--comp-checkbox-outer-stroke-color);
102
- color: var(--comp-checkbox-outer-stroke-color);
103
- --t-icon-stroke-primary: var(--comp-checkbox-outer-stroke-color);
104
- stroke-width: var(--tct-checkbox-outer-stroke-width, 2);
105
- fill: var(--comp-checkbox-outer-fill-color);
106
- flex-shrink: 0;
95
+ :host([type=toggle]) .container {
96
+ --comp-control-width: var(--comp-checkbox-toggle-width);
107
97
  }
108
-
109
- .checkbox-icon, .label-text {
110
- cursor: pointer;
98
+ :host([alignment=right]) .container, :host([type=toggle]:not([alignment])) .container {
99
+ grid-template-areas: "label svg" "description svg";
100
+ grid-template-columns: calc(100% - var(--comp-control-width) - var(--comp-checkbox-default-column-gap)) var(--comp-control-width);
111
101
  }
112
102
 
113
- input:focus + label .checkbox-icon {
114
- box-shadow: var(--tct-global-focus, var(--const-global-focus, 0 0 0 2px #33b4ff));
103
+ .label-control {
104
+ align-items: center;
105
+ display: flex;
115
106
  }
116
107
 
117
- .checkbox-fill {
118
- stroke: var(--comp-checkbox-checked-color);
108
+ .label-text {
109
+ grid-area: label;
119
110
  }
120
-
121
- input:checked + label .checkbox-icon {
122
- fill: var(--tct-checkbox-checked-outer-fill-color, var(--comp-checkbox-outer-fill-color));
123
- stroke: var(--tct-checkbox-checked-outer-stroke-color, var(--comp-checkbox-outer-stroke-color));
111
+ :host([description]) .label-text {
112
+ font-weight: var(--tct-checkbox-label-font-weight, var(--t-checkbox-label-font-weight, 600));
124
113
  }
125
-
126
- input:focus + label .checkbox-icon {
127
- stroke: var(--tct-checkbox-focused-outer-stroke-color, var(--comp-checkbox-checked-color));
114
+ :host([checked]) .label-text {
115
+ font-weight: var(--tct-checkbox-checked-label-font-weight, var(--t-checkbox-checked-label-font-weight, 600));
128
116
  }
129
117
 
130
- .checked-fill {
131
- stroke-width: var(--tct-checkbox-check-stroke-width, 2.5);
132
- stroke-linecap: round;
133
- stroke-linejoin: round;
118
+ .description-text {
119
+ grid-area: description;
120
+ font-weight: var(--tct-checkbox-description-font-weight, var(--t-checkbox-description-font-weight, 400));
134
121
  }
135
122
 
136
- .indeterminate-fill {
137
- stroke-width: var(--tct-checkbox-indeterminate-stroke-width, 3.5);
123
+ label {
124
+ cursor: pointer;
138
125
  }
139
126
 
140
- .q2-checkbox-label-content {
141
- font-weight: var(--tct-checkbox-font-weight, 400);
142
- width: calc(100% - var(--tct-checkbox-size, 20px) - var(--tct-scale-2, var(--app-scale-2, 10px)));
143
- cursor: inherit;
127
+ :host([disabled]),
128
+ :host([group-disabled]) {
129
+ opacity: var(--tct-checkbox-disabled-opacity, var(--t-checkbox-disabled-opacity, var(--tct-disabled-opacity, var(--app-disabled-opacity, 0.4))));
144
130
  }
145
131
 
146
- input:checked + label .q2-checkbox-label-content {
147
- font-weight: var(--tct-checkbox-selected-font-weight, 600);
148
- letter-spacing: var(--tct-checkbox-selected-letter-spacing, 0.25);
132
+ .checkbox-icon {
133
+ --t-icon-stroke-primary: var(--comp-checkbox-outer-stroke-color);
134
+ width: var(--comp-checkbox-size);
135
+ height: var(--comp-checkbox-size);
136
+ border-radius: var(--tct-checkbox-outer-border-radius, var(--t-checkbox-outer-border-radius, var(--tct-border-radius-1, var(--app-border-radius-1, 3px))));
137
+ stroke: var(--comp-checkbox-outer-stroke-color);
138
+ color: var(--comp-checkbox-outer-stroke-color);
139
+ stroke-width: var(--tct-checkbox-outer-stroke-width, var(--t-checkbox-outer-stroke-width, 2));
140
+ fill: var(--comp-checkbox-outer-fill-color);
141
+ flex-shrink: 0;
149
142
  }
150
-
151
- :host([type=favorite]) {
152
- --scoped-checkbox-favorite-stroke-color: var(
153
- --tct-checkbox-favorite-stroke-color,
154
- var(--t-textA, rgba(77, 77, 77, 0.77))
155
- );
156
- --scoped-checkbox-favorite-fill-color: var(
157
- --tct-checkbox-favorite-fill-color,
158
- var(--tct-stoplight-warning, var(--const-stoplight-warning, #f0b400))
159
- );
143
+ :host([checked]) .checkbox-icon {
144
+ fill: var(--tct-checkbox-checked-outer-fill-color, var(--t-checkbox-checked-outer-fill-color, var(--comp-checkbox-outer-fill-color)));
145
+ stroke: var(--tct-checkbox-checked-outer-stroke-color, var(--t-checkbox-checked-outer-stroke-color, var(--comp-checkbox-outer-stroke-color)));
146
+ }
147
+ :host(:focus-within) .checkbox-icon {
148
+ box-shadow: var(--tct-global-focus, var(--const-global-focus, 0 0 0 2px #33b4ff));
149
+ stroke: var(--tct-checkbox-focused-outer-stroke-color, var(--t-checkbox-focused-outer-stroke-color, var(--comp-checkbox-checked-color)));
160
150
  }
161
-
162
151
  :host([type=favorite]) .checkbox-icon {
163
- --tct-icon-stroke-width: var(--tct-checkbox-favorite-stroke-width, 1);
164
- --tct-icon-stroke-primary: var(--scoped-checkbox-favorite-stroke-color);
165
- width: var(--tct-checkbox-size, 20px);
166
- height: var(--tct-checkbox-size, 20px);
167
- transition: fill var(--tct-tween-2, var(--app-tween-2, 0.4s ease)), color var(--tct-tween-2, var(--app-tween-2, 0.4s ease)), stroke var(--tct-tween-2, var(--app-tween-2, 0.4s ease));
152
+ --tct-icon-stroke-width: var(--tct-checkbox-favorite-stroke-width, var(--t-checkbox-favorite-stroke-width, 1));
153
+ --tct-icon-stroke-primary: var(--comp-checkbox-favorite-stroke-color);
154
+ transition: fill var(--comp-checkbox-tween), color var(--comp-checkbox-tween), stroke var(--comp-checkbox-tween);
168
155
  }
169
-
170
- :host([type=favorite]:focus-within) input + label .checkbox-icon,
171
- :host([type=favorite]:hover) input + label .checkbox-icon {
172
- --tct-icon-stroke-primary: var(--scoped-checkbox-favorite-fill-color);
173
- --tct-icon-stroke-width: var(--tct-checkbox-favorite-hover-stroke-width, 2);
156
+ :host([type=favorite]:focus-within) .checkbox-icon, :host([type=favorite]:hover) .checkbox-icon {
157
+ --tct-icon-stroke-primary: var(--comp-checkbox-favorite-fill-color);
158
+ --tct-icon-stroke-width: var(--tct-checkbox-favorite-hover-stroke-width, var(--t-checkbox-favorite-hover-stroke-width, 2));
174
159
  }
175
-
176
- :host([type=favorite]) input:checked + label .checkbox-icon {
177
- --tct-icon-stroke-primary: var(--scoped-checkbox-favorite-fill-color);
178
- fill: var(--scoped-checkbox-favorite-fill-color);
179
- transition: fill var(--tct-tween-1, var(--app-tween-1, 0.2s ease)), color var(--tct-tween-1, var(--app-tween-1, 0.2s ease)), stroke var(--tct-tween-1, var(--app-tween-1, 0.2s ease));
160
+ :host([checked][type=favorite]) .checkbox-icon {
161
+ --tct-icon-stroke-primary: var(--comp-checkbox-favorite-fill-color);
162
+ fill: var(--comp-checkbox-favorite-fill-color);
163
+ transition: fill var(--comp-checkbox-tween), color var(--comp-checkbox-tween), stroke var(--comp-checkbox-tween);
180
164
  }
181
-
182
- :host([type=favorite]:focus-within) input:checked + label .checkbox-icon,
183
- :host([type=favorite]:hover) input:checked + label .checkbox-icon {
184
- --tct-icon-stroke-primary: var(--scoped-checkbox-favorite-stroke-color);
165
+ :host([checked][type=favorite]:focus-within) .checkbox-icon, :host([checked][type=favorite]:hover) .checkbox-icon {
166
+ --tct-icon-stroke-primary: var(--comp-checkbox-favorite-stroke-color);
167
+ --tct-icon-fill-primary: var(--comp-checkbox-favorite-fill-color);
168
+ --tct-icon-stroke-width: var(--tct-checkbox-favorite-hover-stroke-width, var(--t-checkbox-favorite-hover-stroke-width, 2));
185
169
  }
186
170
 
187
- :host([alignment=right]) label,
188
- :host([type=toggle]:not([alignment=left])) label {
189
- flex-flow: row-reverse;
171
+ .checkbox-fill {
172
+ stroke: var(--comp-checkbox-checked-color);
190
173
  }
191
174
 
192
- .checkbox-icon,
193
- :host([type=toggle][alignment=left]) .toggle-svg {
194
- margin-right: var(--tct-scale-2, var(--app-scale-2, 10px));
195
- margin-left: 0;
175
+ .checked-fill {
176
+ stroke-width: var(--tct-checkbox-check-stroke-width, var(--t-checkbox-check-stroke-width, 2.5));
177
+ stroke-linecap: round;
178
+ stroke-linejoin: round;
179
+ }
180
+ :host([type=toggle]) .checked-fill {
181
+ stroke: var(--tct-checkbox-toggle-icon-stroke, var(--t-checkbox-toggle-icon-stroke, var(--tct-white, var(--app-white, #ffffff))));
182
+ transition: opacity var(--comp-checkbox-tween);
183
+ }
184
+ :host([type=toggle][checked]) .checked-fill {
185
+ stroke: var(--tct-checkbox-toggle-checked-icon-stroke, var(--t-checkbox-toggle-checked-icon-stroke, var(--t-checkbox-text, var(--tct-white, var(--app-white, #ffffff)))));
196
186
  }
197
187
 
198
- :host([alignment=right]) .checkbox-icon,
199
- .toggle-svg {
200
- cursor: pointer;
201
- margin-right: 0;
202
- margin-left: var(--tct-scale-2, var(--app-scale-2, 10px));
188
+ .indeterminate-fill {
189
+ stroke-width: var(--tct-checkbox-indeterminate-stroke-width, var(--t-checkbox-indeterminate-stroke-width, 3.5));
203
190
  }
204
191
 
205
- :host([type=toggle]) .toggle-svg {
192
+ .toggle-svg {
206
193
  height: 30px;
207
- width: 46px;
194
+ width: var(--comp-checkbox-toggle-width);
208
195
  position: relative;
209
196
  }
210
197
 
211
- :host([type=toggle]) .toggle-track,
212
- :host([type=toggle]) .toggle-indicator {
198
+ .toggle-track,
199
+ .toggle-indicator {
213
200
  position: absolute;
214
201
  top: 50%;
215
202
  transform: translateY(-50%);
216
203
  }
217
204
 
218
- :host([type=toggle]) .toggle-track {
219
- fill: var(--tct-checkbox-toggle-track-color, var(--tct-gray-11, var(--t-gray-11, var(--tct-gray-l1, var(--app-gray-l1, #cccccc)))));
205
+ .toggle-track {
206
+ fill: var(--tct-checkbox-toggle-track-color, var(--t-checkbox-toggle-track-color, var(--tct-gray-11, var(--t-gray-11, var(--tct-gray-l1, var(--app-gray-l1, #cccccc))))));
220
207
  height: 14px;
221
208
  width: 46px;
222
209
  }
223
-
224
- :host([type=toggle]) input:checked + label .toggle-track {
225
- fill: var(--tct-checkbox-toggle-checked-color, var(--comp-checkbox-checked-color));
210
+ :host([checked]) .toggle-track {
211
+ fill: var(--tct-checkbox-toggle-checked-color, var(--t-checkbox-toggle-checked-color, var(--comp-checkbox-checked-color)));
226
212
  opacity: 0.5;
227
213
  }
228
214
 
229
- :host([type=toggle]) .toggle-indicator {
230
- transition: left var(--tct-tween-1, var(--app-tween-1, 0.2s ease));
215
+ .toggle-indicator {
216
+ transition: left var(--comp-checkbox-tween);
231
217
  height: 30px;
232
218
  width: 30px;
233
219
  left: 0;
234
220
  border-radius: 50%;
235
221
  }
236
-
237
- :host([type=toggle]) input:checked + label .toggle-indicator {
222
+ :host([checked]) .toggle-indicator {
238
223
  left: 21px;
239
224
  }
240
225
 
241
- :host([type=toggle]) .toggle-circle {
242
- fill: var(--tct-checkbox-toggle-circle-color, var(--tct-gray-9, var(--t-gray-9, var(--tct-gray, var(--app-gray, #999999)))));
243
- }
244
-
245
- :host([type=toggle]) input:checked + label .toggle-circle {
246
- fill: var(--tct-checkbox-toggle-checked-color, var(--comp-checkbox-checked-color));
226
+ .toggle-circle {
227
+ fill: var(--tct-checkbox-toggle-circle-color, var(--t-checkbox-toggle-circle-color, var(--tct-gray-9, var(--t-gray-9, var(--tct-gray, var(--app-gray, #999999))))));
247
228
  }
248
-
249
- :host([type=toggle]) input:checked + label .off,
250
- :host([type=toggle]) input:not(:checked) + label .on {
251
- opacity: 0;
229
+ :host([checked]) .toggle-circle {
230
+ fill: var(--tct-checkbox-toggle-checked-color, var(--t-checkbox-toggle-checked-color, var(--comp-checkbox-checked-color)));
252
231
  }
253
-
254
- :host([type=toggle]) input:focus + label .toggle-circle {
255
- stroke: var(--tct-checkbox-toggle-checked-color, var(--comp-checkbox-checked-color));
232
+ :host(:focus-within) .toggle-circle {
233
+ stroke: var(--tct-checkbox-toggle-checked-color, var(--t-checkbox-toggle-checked-color, var(--comp-checkbox-checked-color)));
256
234
  stroke-width: 10px;
257
235
  stroke-opacity: 0.5;
258
236
  }
259
-
260
- :host([type=toggle]) input:not(:checked):focus + label .toggle-circle {
261
- stroke: var(--tct-checkbox-toggle-circle-color, var(--tct-gray-9, var(--t-gray-9, var(--tct-gray, var(--app-gray, #999999)))));
262
- }
263
-
264
- :host([type=toggle]) .checked-fill {
265
- stroke: var(--tct-checkbox-toggle-icon-stroke, var(--tct-white, var(--app-white, #ffffff)));
266
- transition: opacity var(--tct-tween-1, var(--app-tween-1, 0.2s ease));
237
+ :host(:not([checked]):focus-within) .toggle-circle {
238
+ stroke: var(--tct-checkbox-toggle-circle-color, var(--t-checkbox-toggle-circle-color, var(--tct-gray-9, var(--t-gray-9, var(--tct-gray, var(--app-gray, #999999))))));
267
239
  }
268
240
 
269
- :host([type=toggle]) input:checked + label .checked-fill {
270
- stroke: var(--tct-checkbox-toggle-checked-icon-stroke, var(--t-checkbox-text, var(--tct-white, var(--app-white, #ffffff))));
241
+ :host([checked]) .off,
242
+ :host(:not([checked])) .on {
243
+ opacity: 0;
271
244
  }
@@ -252,7 +252,7 @@ export class Q2Dropdown {
252
252
  render() {
253
253
  const btnProps = this.toggleButtonProps;
254
254
  return (h("click-elsewhere", { class: `dropdown-container${this.dropdownOpen ? ' dropdown-open' : ''}`, onChange: this.onClickElsewhere },
255
- h("q2-btn", { ref: el => (this.controlElement = el), class: btnProps.className, onClick: this.onToggleClick, onKeyDown: this.onToggleKeydown, fab: btnProps.fab, intent: btnProps.intent, active: btnProps.active, disabled: btnProps.disabled, ariaExpanded: `${!!btnProps.ariaExpanded}`, label: this.hideLabel && this.label ? loc(this.label) : undefined, hideLabel: this.hideLabel, ariaHasPopup: "menu", "test-id": "dropdownButton" }, this.hasCustomButton ? (h("div", { "test-id": "dropdownCustom", class: btnProps.custom ? '' : 'hidden' },
255
+ h("q2-btn", { ref: el => (this.controlElement = el), class: btnProps.className, onClick: this.onToggleClick, onKeyDown: this.onToggleKeydown, fab: btnProps.fab, intent: btnProps.intent, active: btnProps.active, disabled: btnProps.disabled, ariaExpanded: `${!!btnProps.ariaExpanded}`, label: this.hideLabel && this.label ? loc(this.label) : undefined, hideLabel: this.hideLabel, ariaHasPopup: "menu", "test-id": "dropdownButton", block: this.block }, this.hasCustomButton ? (h("div", { "test-id": "dropdownCustom", class: btnProps.custom ? '' : 'hidden' },
256
256
  h("slot", { name: "custom-dropdown-button" }))) : (h(Fragment, null,
257
257
  this.icon ? h("q2-icon", { type: this.icon }) : ' ',
258
258
  this.label && !this.hideLabel && (h("span", { class: "dropdown-button-text" }, loc(this.label)))))),
@@ -457,6 +457,23 @@ export class Q2Dropdown {
457
457
  },
458
458
  "attribute": "resolved-type",
459
459
  "reflect": true
460
+ },
461
+ "block": {
462
+ "type": "boolean",
463
+ "mutable": false,
464
+ "complexType": {
465
+ "original": "boolean",
466
+ "resolved": "boolean",
467
+ "references": {}
468
+ },
469
+ "required": false,
470
+ "optional": false,
471
+ "docs": {
472
+ "tags": [],
473
+ "text": ""
474
+ },
475
+ "attribute": "block",
476
+ "reflect": true
460
477
  }
461
478
  }; }
462
479
  static get states() { return {
@@ -118,6 +118,11 @@ button {
118
118
  right: 0;
119
119
  }
120
120
 
121
+ :host([block]) q2-btn,
122
+ :host([block]) {
123
+ display: block;
124
+ }
125
+
121
126
  :host {
122
127
  display: inline-flex;
123
128
  }
@@ -288,7 +288,7 @@ export class Q2Input {
288
288
  this.computedIconLeft && (h("q2-icon", { type: this.computedIconLeft, class: this.computedClassForIconLeft })),
289
289
  this.showIconSeperator && h("div", { class: "vertical-separator" }),
290
290
  this.hasError && this.type === 'currency' && (h("q2-icon", { type: "error", class: "icon-error" }))),
291
- this.pseudo ? (this.pseudoInputDOM()) : (h("input", { class: "input-field", id: this.inputId, type: this.computedType, size: this.formattedValueObject.prefix ? 10 : undefined, max: this.max, min: this.min, "aria-current": this.current || undefined, "aria-describedby": this.inputDescribedBy, "aria-required": `${!this.optional}`, "aria-invalid": `${this.hasError}`, "aria-controls": (this.ariaControls && `${this.ariaControls}`) || undefined, "aria-owns": (this.ariaOwns && `${this.ariaOwns}`) || undefined, "aria-haspopup": (this.ariaHaspopup && `${this.ariaHaspopup}`) || undefined, "aria-expanded": (!!this.ariaExpanded && `${!!this.ariaExpanded}`) || undefined, "aria-activedescendant": this.ariaActivedescendant && `${this.ariaActivedescendant}`, "aria-label": this.hideLabel && this.label ? loc(this.label) : undefined, autocomplete: this.autocomplete ? this.autocomplete : 'off', autocapitalize: this.autocapitalize === 'on' ? 'on' : 'off', autocorrect: this.autocorrect === 'on' ? 'on' : 'off', placeholder: (this.placeholder && loc(this.placeholder)) || undefined, role: (this.role && `${this.role}`) || undefined, "test-id": "inputField", readonly: !!this.readonly, disabled: !!this.disabled, onFocus: this.onInputFocus, onBlur: this.onInputBlur, onKeyDown: this.onInputKeydown, onInput: this.onInputInput, onPaste: this.onInputPaste })),
291
+ this.pseudo ? (this.pseudoInputDOM()) : (h("input", { class: "input-field", id: this.inputId, type: this.computedType, size: this.formattedValueObject.prefix ? 10 : undefined, max: this.max, min: this.min, step: this.step, "aria-current": this.current || undefined, "aria-describedby": this.inputDescribedBy, "aria-required": `${!this.optional}`, "aria-invalid": `${this.hasError}`, "aria-controls": (this.ariaControls && `${this.ariaControls}`) || undefined, "aria-owns": (this.ariaOwns && `${this.ariaOwns}`) || undefined, "aria-haspopup": (this.ariaHaspopup && `${this.ariaHaspopup}`) || undefined, "aria-expanded": (!!this.ariaExpanded && `${!!this.ariaExpanded}`) || undefined, "aria-activedescendant": this.ariaActivedescendant && `${this.ariaActivedescendant}`, "aria-label": this.hideLabel && this.label ? loc(this.label) : undefined, autocomplete: this.autocomplete ? this.autocomplete : 'off', autocapitalize: this.autocapitalize === 'on' ? 'on' : 'off', autocorrect: this.autocorrect === 'on' ? 'on' : 'off', placeholder: (this.placeholder && loc(this.placeholder)) || undefined, role: (this.role && `${this.role}`) || undefined, "test-id": "inputField", readonly: !!this.readonly, disabled: !!this.disabled, onFocus: this.onInputFocus, onBlur: this.onInputBlur, onKeyDown: this.onInputKeydown, onInput: this.onInputInput, onPaste: this.onInputPaste })),
292
292
  h("div", { class: "input-icons-container-right" },
293
293
  this.canClear && (h("q2-btn", { class: "btn-clear", ariaLabel: loc('tecton.element.input.clear', [this.label]), "test-id": "clearButton", onClick: this.onClearInput },
294
294
  h("q2-icon", { type: "close", class: "icon-clear" }))),
@@ -649,6 +649,23 @@ export class Q2Input {
649
649
  "attribute": "max",
650
650
  "reflect": true
651
651
  },
652
+ "step": {
653
+ "type": "number",
654
+ "mutable": false,
655
+ "complexType": {
656
+ "original": "number",
657
+ "resolved": "number",
658
+ "references": {}
659
+ },
660
+ "required": false,
661
+ "optional": false,
662
+ "docs": {
663
+ "tags": [],
664
+ "text": ""
665
+ },
666
+ "attribute": "step",
667
+ "reflect": true
668
+ },
652
669
  "formatModifier": {
653
670
  "type": "string",
654
671
  "mutable": false,
@@ -15,7 +15,7 @@ export class Q2Pagination {
15
15
  if (!this.hostElement.onchange) {
16
16
  this.page = page;
17
17
  }
18
- this.change.emit({ value: page });
18
+ this.change.emit({ page });
19
19
  };
20
20
  }
21
21
  ////////// LIFECYCLE HOOKS ////////