q2-tecton-elements 1.14.2 → 1.15.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.
Files changed (216) hide show
  1. package/dist/cjs/{index-0fec9f3b.js → index-afc50fbb.js} +18 -0
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/q2-avatar.cjs.entry.js +7 -2
  4. package/dist/cjs/{q2-input.cjs.entry.js → q2-badge_2.cjs.entry.js} +77 -18
  5. package/dist/cjs/q2-btn_2.cjs.entry.js +7 -6
  6. package/dist/cjs/q2-calendar.cjs.entry.js +5 -6
  7. package/dist/cjs/q2-card.cjs.entry.js +15 -8
  8. package/dist/cjs/q2-carousel-pane.cjs.entry.js +2 -2
  9. package/dist/cjs/q2-carousel.cjs.entry.js +2 -2
  10. package/dist/cjs/q2-chart-donut.cjs.entry.js +9 -4
  11. package/dist/cjs/q2-checkbox-group.cjs.entry.js +2 -2
  12. package/dist/cjs/q2-checkbox.cjs.entry.js +12 -13
  13. package/dist/cjs/q2-dropdown-item.cjs.entry.js +2 -2
  14. package/dist/cjs/q2-dropdown.cjs.entry.js +2 -2
  15. package/dist/cjs/q2-editable-field.cjs.entry.js +4 -4
  16. package/dist/cjs/q2-icon.cjs.entry.js +2 -2
  17. package/dist/cjs/q2-loc.cjs.entry.js +2 -2
  18. package/dist/cjs/q2-message.cjs.entry.js +2 -2
  19. package/dist/cjs/q2-optgroup.cjs.entry.js +2 -2
  20. package/dist/cjs/q2-option-list.cjs.entry.js +6 -6
  21. package/dist/cjs/q2-option.cjs.entry.js +12 -1
  22. package/dist/cjs/q2-pagination.cjs.entry.js +2 -2
  23. package/dist/cjs/q2-pill.cjs.entry.js +10 -3
  24. package/dist/cjs/q2-radio-group.cjs.entry.js +2 -2
  25. package/dist/cjs/q2-radio.cjs.entry.js +3 -2
  26. package/dist/cjs/q2-section.cjs.entry.js +2 -2
  27. package/dist/cjs/q2-select.cjs.entry.js +300 -195
  28. package/dist/cjs/q2-stepper-pane.cjs.entry.js +2 -2
  29. package/dist/cjs/q2-stepper-vertical.cjs.entry.js +3 -2
  30. package/dist/cjs/q2-stepper.cjs.entry.js +21 -4
  31. package/dist/cjs/q2-tab-container.cjs.entry.js +16 -6
  32. package/dist/cjs/q2-tab-pane.cjs.entry.js +8 -1
  33. package/dist/cjs/q2-tag.cjs.entry.js +2 -2
  34. package/dist/cjs/q2-tecton-elements.cjs.js +1 -1
  35. package/dist/cjs/q2-textarea.cjs.entry.js +2 -2
  36. package/dist/cjs/q2-tooltip.cjs.entry.js +33 -0
  37. package/dist/cjs/tecton-tab-pane.cjs.entry.js +6 -1
  38. package/dist/collection/collection-manifest.json +1 -0
  39. package/dist/collection/components/q2-avatar/index.js +8 -2
  40. package/dist/collection/components/q2-avatar/styles.css +9 -1
  41. package/dist/collection/components/q2-badge/index.js +4 -9
  42. package/dist/collection/components/q2-badge/styles.css +21 -14
  43. package/dist/collection/components/q2-btn/index.js +7 -6
  44. package/dist/collection/components/q2-btn/styles.css +10 -12
  45. package/dist/collection/components/q2-calendar/helpers.js +1 -1
  46. package/dist/collection/components/q2-calendar/index.js +2 -3
  47. package/dist/collection/components/q2-calendar/styles.css +7 -7
  48. package/dist/collection/components/q2-card/index.js +33 -8
  49. package/dist/collection/components/q2-card/styles.css +33 -36
  50. package/dist/collection/components/q2-carousel/styles.css +1 -1
  51. package/dist/collection/components/q2-carousel-pane/styles.css +1 -1
  52. package/dist/collection/components/q2-chart-donut/index.js +13 -6
  53. package/dist/collection/components/q2-chart-donut/styles.css +20 -10
  54. package/dist/collection/components/q2-checkbox/index.js +10 -11
  55. package/dist/collection/components/q2-checkbox/styles.css +2 -2
  56. package/dist/collection/components/q2-checkbox-group/styles.css +3 -3
  57. package/dist/collection/components/q2-dropdown/styles.css +6 -6
  58. package/dist/collection/components/q2-dropdown-item/styles.css +3 -3
  59. package/dist/collection/components/q2-editable-field/index.js +19 -2
  60. package/dist/collection/components/q2-editable-field/styles.css +4 -4
  61. package/dist/collection/components/q2-icon/styles.css +1 -1
  62. package/dist/collection/components/q2-input/index.js +90 -23
  63. package/dist/collection/components/q2-input/styles.css +33 -26
  64. package/dist/collection/components/q2-loading/styles.css +4 -4
  65. package/dist/collection/components/q2-loc/styles.css +1 -1
  66. package/dist/collection/components/q2-message/styles.css +19 -17
  67. package/dist/collection/components/q2-optgroup/styles.css +7 -11
  68. package/dist/collection/components/q2-option/index.js +15 -3
  69. package/dist/collection/components/q2-option/styles.css +12 -5
  70. package/dist/collection/components/q2-option-list/index.js +22 -7
  71. package/dist/collection/components/q2-option-list/styles.css +5 -5
  72. package/dist/collection/components/q2-pagination/styles.css +1 -1
  73. package/dist/collection/components/q2-pill/index.js +26 -2
  74. package/dist/collection/components/q2-pill/styles.css +18 -17
  75. package/dist/collection/components/q2-radio/index.js +1 -0
  76. package/dist/collection/components/q2-radio/styles.css +2 -2
  77. package/dist/collection/components/q2-radio-group/styles.css +3 -3
  78. package/dist/collection/components/q2-section/styles.css +6 -6
  79. package/dist/collection/components/q2-select/index.js +316 -202
  80. package/dist/collection/components/q2-select/styles.css +24 -13
  81. package/dist/collection/components/q2-stepper/index.js +30 -6
  82. package/dist/collection/components/q2-stepper/styles.css +50 -12
  83. package/dist/collection/components/q2-stepper-pane/styles.css +1 -1
  84. package/dist/collection/components/q2-stepper-vertical/index.js +1 -0
  85. package/dist/collection/components/q2-stepper-vertical/styles.css +14 -14
  86. package/dist/collection/components/q2-tab-container/index.js +22 -4
  87. package/dist/collection/components/q2-tab-container/styles.css +23 -9
  88. package/dist/collection/components/q2-tab-pane/index.js +58 -1
  89. package/dist/collection/components/q2-tab-pane/styles.css +1 -1
  90. package/dist/collection/components/q2-tag/styles.css +4 -6
  91. package/dist/collection/components/q2-textarea/styles.css +2 -2
  92. package/dist/collection/components/q2-tooltip/index.js +120 -0
  93. package/dist/collection/components/q2-tooltip/styles.css +276 -0
  94. package/dist/collection/components/tecton-tab-pane/index.js +57 -1
  95. package/dist/collection/components/tecton-tab-pane/styles.css +1 -1
  96. package/dist/collection/utils/index.js +18 -2
  97. package/dist/esm/{index-14e81efa.js → index-2ca8c93c.js} +18 -2
  98. package/dist/esm/loader.js +1 -1
  99. package/dist/esm/q2-avatar.entry.js +7 -2
  100. package/dist/esm/{q2-input.entry.js → q2-badge_2.entry.js} +78 -20
  101. package/dist/esm/q2-btn_2.entry.js +7 -6
  102. package/dist/esm/q2-calendar.entry.js +5 -6
  103. package/dist/esm/q2-card.entry.js +15 -8
  104. package/dist/esm/q2-carousel-pane.entry.js +2 -2
  105. package/dist/esm/q2-carousel.entry.js +2 -2
  106. package/dist/esm/q2-chart-donut.entry.js +9 -4
  107. package/dist/esm/q2-checkbox-group.entry.js +2 -2
  108. package/dist/esm/q2-checkbox.entry.js +12 -13
  109. package/dist/esm/q2-dropdown-item.entry.js +2 -2
  110. package/dist/esm/q2-dropdown.entry.js +2 -2
  111. package/dist/esm/q2-editable-field.entry.js +4 -4
  112. package/dist/esm/q2-icon.entry.js +2 -2
  113. package/dist/esm/q2-loc.entry.js +2 -2
  114. package/dist/esm/q2-message.entry.js +2 -2
  115. package/dist/esm/q2-optgroup.entry.js +2 -2
  116. package/dist/esm/q2-option-list.entry.js +6 -6
  117. package/dist/esm/q2-option.entry.js +12 -1
  118. package/dist/esm/q2-pagination.entry.js +2 -2
  119. package/dist/esm/q2-pill.entry.js +10 -3
  120. package/dist/esm/q2-radio-group.entry.js +2 -2
  121. package/dist/esm/q2-radio.entry.js +3 -2
  122. package/dist/esm/q2-section.entry.js +2 -2
  123. package/dist/esm/q2-select.entry.js +300 -195
  124. package/dist/esm/q2-stepper-pane.entry.js +2 -2
  125. package/dist/esm/q2-stepper-vertical.entry.js +3 -2
  126. package/dist/esm/q2-stepper.entry.js +21 -4
  127. package/dist/esm/q2-tab-container.entry.js +16 -6
  128. package/dist/esm/q2-tab-pane.entry.js +9 -2
  129. package/dist/esm/q2-tag.entry.js +2 -2
  130. package/dist/esm/q2-tecton-elements.js +1 -1
  131. package/dist/esm/q2-textarea.entry.js +2 -2
  132. package/dist/esm/q2-tooltip.entry.js +29 -0
  133. package/dist/esm/tecton-tab-pane.entry.js +7 -2
  134. package/dist/q2-tecton-elements/p-0a8b8d14.entry.js +1 -0
  135. package/dist/q2-tecton-elements/p-0b5fbbe8.entry.js +1 -0
  136. package/dist/q2-tecton-elements/p-0d00030f.entry.js +1 -0
  137. package/dist/q2-tecton-elements/{p-85cff6ec.entry.js → p-0e9c7220.entry.js} +1 -1
  138. package/dist/q2-tecton-elements/p-1b0f826e.entry.js +1 -0
  139. package/dist/q2-tecton-elements/p-1c430c2a.entry.js +1 -0
  140. package/dist/q2-tecton-elements/p-2d2008fd.entry.js +1 -0
  141. package/dist/q2-tecton-elements/p-34f99830.entry.js +1 -0
  142. package/dist/q2-tecton-elements/{p-ead64414.entry.js → p-35bde69c.entry.js} +1 -1
  143. package/dist/q2-tecton-elements/{p-d46efe36.entry.js → p-376988ef.entry.js} +1 -1
  144. package/dist/q2-tecton-elements/p-41fcf343.js +1 -0
  145. package/dist/q2-tecton-elements/p-49612230.entry.js +1 -0
  146. package/dist/q2-tecton-elements/p-4b48fde6.entry.js +1 -0
  147. package/dist/q2-tecton-elements/p-4ec2cb69.entry.js +1 -0
  148. package/dist/q2-tecton-elements/{p-ea2a290e.entry.js → p-5270b0ff.entry.js} +1 -1
  149. package/dist/q2-tecton-elements/p-5e990654.entry.js +1 -0
  150. package/dist/q2-tecton-elements/p-60a7a11e.entry.js +1 -0
  151. package/dist/q2-tecton-elements/p-677faf2c.entry.js +1 -0
  152. package/dist/q2-tecton-elements/p-6e10db80.entry.js +1 -0
  153. package/dist/q2-tecton-elements/p-6f884c60.entry.js +1 -0
  154. package/dist/q2-tecton-elements/p-822d3d6c.entry.js +1 -0
  155. package/dist/q2-tecton-elements/p-8584c6bc.entry.js +1 -0
  156. package/dist/q2-tecton-elements/p-87766054.entry.js +1 -0
  157. package/dist/q2-tecton-elements/{p-eeb4a008.entry.js → p-879aa7ac.entry.js} +2 -2
  158. package/dist/q2-tecton-elements/p-92e9f290.entry.js +1 -0
  159. package/dist/q2-tecton-elements/{p-627df469.entry.js → p-b6c45ef6.entry.js} +1 -1
  160. package/dist/q2-tecton-elements/{p-cf9e8120.entry.js → p-b7dc4e93.entry.js} +1 -1
  161. package/dist/q2-tecton-elements/p-c59d601e.entry.js +1 -0
  162. package/dist/q2-tecton-elements/p-d040bf99.entry.js +1 -0
  163. package/dist/q2-tecton-elements/p-d79386c6.entry.js +1 -0
  164. package/dist/q2-tecton-elements/{p-fbfb3615.entry.js → p-dd3f64a7.entry.js} +1 -1
  165. package/dist/q2-tecton-elements/{p-58e42fc5.entry.js → p-dd792081.entry.js} +1 -1
  166. package/dist/q2-tecton-elements/p-ef2f68b2.entry.js +1 -0
  167. package/dist/q2-tecton-elements/{p-882eaf0f.entry.js → p-f617c54a.entry.js} +1 -1
  168. package/dist/q2-tecton-elements/p-f66adef0.entry.js +1 -0
  169. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
  170. package/dist/types/components/q2-avatar/index.d.ts +2 -0
  171. package/dist/types/components/q2-badge/index.d.ts +0 -1
  172. package/dist/types/components/q2-card/index.d.ts +1 -0
  173. package/dist/types/components/q2-checkbox/index.d.ts +0 -1
  174. package/dist/types/components/q2-editable-field/index.d.ts +1 -0
  175. package/dist/types/components/q2-input/index.d.ts +6 -2
  176. package/dist/types/components/q2-option/index.d.ts +2 -0
  177. package/dist/types/components/q2-option-list/index.d.ts +4 -4
  178. package/dist/types/components/q2-pill/index.d.ts +2 -0
  179. package/dist/types/components/q2-select/index.d.ts +37 -24
  180. package/dist/types/components/q2-stepper/index.d.ts +1 -0
  181. package/dist/types/components/q2-tab-container/index.d.ts +4 -0
  182. package/dist/types/components/q2-tab-pane/index.d.ts +5 -1
  183. package/dist/types/components/q2-tooltip/index.d.ts +10 -0
  184. package/dist/types/components/tecton-tab-pane/index.d.ts +5 -1
  185. package/dist/types/components.d.ts +43 -0
  186. package/dist/types/utils/index.d.ts +3 -1
  187. package/dist/types/workspace/workspace/{tecton-production_release_1.14.x → tecton-production_release_1.16.x}/packages/q2-tecton-elements/.stencil/test/elements/q2-tag-test.d.ts +0 -0
  188. package/dist/types/workspace/workspace/{tecton-production_release_1.14.x → tecton-production_release_1.16.x}/packages/q2-tecton-elements/.stencil/test/helpers.d.ts +0 -0
  189. package/package.json +2 -2
  190. package/dist/cjs/q2-badge.cjs.entry.js +0 -43
  191. package/dist/esm/q2-badge.entry.js +0 -39
  192. package/dist/q2-tecton-elements/p-0675f9c8.entry.js +0 -1
  193. package/dist/q2-tecton-elements/p-09464226.entry.js +0 -1
  194. package/dist/q2-tecton-elements/p-0e13d5ba.entry.js +0 -1
  195. package/dist/q2-tecton-elements/p-1eed57aa.entry.js +0 -1
  196. package/dist/q2-tecton-elements/p-3796397e.entry.js +0 -1
  197. package/dist/q2-tecton-elements/p-37f1984c.entry.js +0 -1
  198. package/dist/q2-tecton-elements/p-3cfc0cb4.entry.js +0 -1
  199. package/dist/q2-tecton-elements/p-431bf43e.js +0 -1
  200. package/dist/q2-tecton-elements/p-65e2df25.entry.js +0 -1
  201. package/dist/q2-tecton-elements/p-663cb6e8.entry.js +0 -1
  202. package/dist/q2-tecton-elements/p-6727f6d0.entry.js +0 -1
  203. package/dist/q2-tecton-elements/p-6ced7858.entry.js +0 -1
  204. package/dist/q2-tecton-elements/p-706249e1.entry.js +0 -1
  205. package/dist/q2-tecton-elements/p-7249de38.entry.js +0 -1
  206. package/dist/q2-tecton-elements/p-7ddb159c.entry.js +0 -1
  207. package/dist/q2-tecton-elements/p-87f448ab.entry.js +0 -1
  208. package/dist/q2-tecton-elements/p-8f815678.entry.js +0 -1
  209. package/dist/q2-tecton-elements/p-92886dbe.entry.js +0 -1
  210. package/dist/q2-tecton-elements/p-94303312.entry.js +0 -1
  211. package/dist/q2-tecton-elements/p-9af46ffc.entry.js +0 -1
  212. package/dist/q2-tecton-elements/p-9d8a963b.entry.js +0 -1
  213. package/dist/q2-tecton-elements/p-b066cdd1.entry.js +0 -1
  214. package/dist/q2-tecton-elements/p-bd6c6239.entry.js +0 -1
  215. package/dist/q2-tecton-elements/p-c4eff511.entry.js +0 -1
  216. package/dist/q2-tecton-elements/p-e435159b.entry.js +0 -1
@@ -8,7 +8,7 @@
8
8
 
9
9
  *:focus {
10
10
  outline: none;
11
- box-shadow: var(--const-global-focus);
11
+ box-shadow: var(--const-global-focus, 0 0 0 2px #33b4ff);
12
12
  }
13
13
 
14
14
  :host {
@@ -73,10 +73,11 @@ button {
73
73
  }
74
74
 
75
75
  .message {
76
- border-left-width: var(--tct-message-bar-width, var(--t-message-bar-width, var(--app-scale-1, 5px)));
76
+ border-left-width: var(--tct-message-bar-width, var(--t-message-bar-width, var(--app-scale-1x, 5px)));
77
77
  border-left-style: solid;
78
+ --comp-line-height: var(--tct-message-line-height, var(--t-message-line-height, var(--app-line-height, 1.428571429em)));
78
79
  display: grid;
79
- gap: var(--tct-scale-1, var(--app-scale-1, 5px));
80
+ gap: var(--tct-scale-1, var(--app-scale-1x, 5px));
80
81
  align-items: flex-start;
81
82
  background: var(--tct-message-bg, var(--t-message-bg, var(--tct-gray-14, var(--t-gray-14, var(--tct-gray-l3, var(--app-gray-l3, #f2f2f2))))));
82
83
  color: var(--tct-message-font-color, var(--t-message-font-color, inherit));
@@ -88,47 +89,48 @@ button {
88
89
  }
89
90
 
90
91
  .message-icon {
91
- width: 24px;
92
+ --comp-top-offset: calc(calc(var(--comp-line-height) - var(--comp-icon-size)) / 2);
93
+ --tct-icon-size: var(--comp-icon-size);
94
+ top: var(--comp-top-offset);
95
+ margin-bottom: calc(var(--comp-top-offset) * -1);
92
96
  }
93
97
 
94
98
  .message-content {
95
99
  flex: 1;
100
+ line-height: var(--comp-line-height);
96
101
  }
97
102
 
98
103
  ::slotted(ul) {
99
- padding-left: var(--tct-scale-l3, var(--app-scale-3, 15px));
104
+ padding-left: var(--tct-scale-l3, var(--app-scale-3x, 15px));
100
105
  }
101
106
 
102
107
  :host(:not([appearance])),
103
108
  :host([appearance=standard]) {
104
- margin: var(--tct-scale-l3, var(--app-scale-3, 15px)) 0;
109
+ margin: var(--tct-scale-l3, var(--app-scale-3x, 15px)) 0;
105
110
  }
106
111
  :host(:not([appearance])) .message,
107
112
  :host([appearance=standard]) .message {
108
- grid-template-columns: 24px 1fr;
109
- --comp-padding: var(--tct-message-padding, var(--t-message-padding, var(--app-scale-3, 15px)));
113
+ --comp-icon-size: var(--tct-message-icon-size, var(--t-message-icon-size, 24px));
114
+ --comp-padding: var(--tct-message-padding, var(--t-message-padding, var(--app-scale-3x, 15px)));
115
+ grid-template-columns: var(--comp-icon-size) 1fr;
110
116
  padding: var(--comp-padding);
111
- padding-top: calc(var(--comp-padding) - var(--tct-scale-1, var(--app-scale-1, 5px)));
112
- padding-left: calc(var(--comp-padding) - var(--tct-scale-2, var(--app-scale-2, 10px)));
113
- }
114
- :host(:not([appearance])) .message-content,
115
- :host([appearance=standard]) .message-content {
116
- padding-top: var(--tct-scale-1, var(--app-scale-1, 5px));
117
+ padding-left: calc(var(--comp-padding) - var(--tct-scale-2, var(--app-scale-2x, 10px)));
118
+ padding-bottom: calc(var(--comp-padding) - var(--tct-scale-1, var(--app-scale-1x, 5px)));
117
119
  }
118
120
  :host(:not([appearance])) ::slotted(ul),
119
121
  :host([appearance=standard]) ::slotted(ul) {
120
- margin: var(--tct-scale-l3, var(--app-scale-3, 15px)) 0;
122
+ margin: var(--tct-scale-l3, var(--app-scale-3x, 15px)) 0;
121
123
  }
122
124
 
123
125
  :host([appearance=minimal]) {
124
126
  margin: 0;
125
127
  }
126
128
  :host([appearance=minimal]) .message {
127
- padding: var(--tct-message-minimal-padding, var(--t-message-minimal-padding, var(--app-scale-2, 10px)));
129
+ padding: var(--tct-message-minimal-padding, var(--t-message-minimal-padding, var(--app-scale-2x, 10px)));
128
130
  grid-template-columns: 1fr;
129
131
  }
130
132
  :host([appearance=minimal]) ::slotted(ul) {
131
- margin: var(--tct-scale-1, var(--app-scale-1, 5px)) 0;
133
+ margin: var(--tct-scale-1, var(--app-scale-1x, 5px)) 0;
132
134
  }
133
135
 
134
136
  :host(:not([type])) .message,
@@ -8,7 +8,7 @@
8
8
 
9
9
  *:focus {
10
10
  outline: none;
11
- box-shadow: var(--const-global-focus);
11
+ box-shadow: var(--const-global-focus, 0 0 0 2px #33b4ff);
12
12
  }
13
13
 
14
14
  :host {
@@ -69,16 +69,12 @@ button {
69
69
  }
70
70
 
71
71
  .q2-optgroup-header {
72
- background-color: var(--tct-optgroup-header-bg, var(--tct-gray-13, var(--t-gray-13, var(--tct-gray-l2, var(--app-gray-l2, #e6e6e6)))));
73
- padding: var(--tct-scale-1, var(--app-scale-1, 5px)) var(--tct-scale-2, var(--app-scale-2, 10px));
74
- font-weight: var(--tct-optgroup-header-font-weight, 600);
75
- text-transform: var(--tct-optgroup-header-text-transform, uppercase);
76
- /*
77
- position: -webkit-sticky;
72
+ --comp-header-padding: var(--tct-scale-1, var(--app-scale-1x, 5px)) var(--tct-scale-2, var(--app-scale-2x, 10px));
73
+ background: var(--tct-optgroup-header-bg, var(--t-optgroup-header-bg, var(--tct-gray-13, var(--t-gray-13, var(--tct-gray-l2, var(--app-gray-l2, #e6e6e6))))));
74
+ padding: var(--tct-optgroup-header-padding, var(--t-optgroup-header-padding, var(--comp-header-padding)));
75
+ font-weight: var(--tct-optgroup-header-font-weight, var(--t-optgroup-header-font-weight, 600));
76
+ text-transform: var(--tct-optgroup-header-text-transform, var(--t-optgroup-header-text-transform, uppercase));
78
77
  position: sticky;
79
- top: 0;
78
+ top: var(--comp-multi-select-header-height, 0);
80
79
  z-index: 1;
81
-
82
- temp removal, will fix with TCT-804
83
- */
84
80
  }
@@ -1,10 +1,18 @@
1
- import { Component, Prop, h, Element, Host } from '@stencil/core';
1
+ import { Component, Prop, h, Element, Host, Watch } from '@stencil/core';
2
2
  export class Q2Option {
3
3
  constructor() {
4
4
  this.role = 'option';
5
5
  this.tabindex = '-1';
6
6
  this._multiSelectHidden = false;
7
7
  }
8
+ componentWillLoad() {
9
+ this.handleDisplay();
10
+ }
11
+ handleDisplay() {
12
+ if (this.display || this.multiline)
13
+ return;
14
+ this.display = this.hostElement.textContent.trim();
15
+ }
8
16
  render() {
9
17
  const { disabled, disabledGroup, selected, _multiSelectHidden } = this;
10
18
  const isDisabled = disabled || disabledGroup;
@@ -60,7 +68,7 @@ export class Q2Option {
60
68
  },
61
69
  "display": {
62
70
  "type": "string",
63
- "mutable": false,
71
+ "mutable": true,
64
72
  "complexType": {
65
73
  "original": "string",
66
74
  "resolved": "string",
@@ -73,7 +81,7 @@ export class Q2Option {
73
81
  "text": ""
74
82
  },
75
83
  "attribute": "display",
76
- "reflect": true
84
+ "reflect": false
77
85
  },
78
86
  "value": {
79
87
  "type": "string",
@@ -248,4 +256,8 @@ export class Q2Option {
248
256
  }
249
257
  }; }
250
258
  static get elementRef() { return "hostElement"; }
259
+ static get watchers() { return [{
260
+ "propName": "display",
261
+ "methodName": "handleDisplay"
262
+ }]; }
251
263
  }
@@ -8,7 +8,7 @@
8
8
 
9
9
  *:focus {
10
10
  outline: none;
11
- box-shadow: var(--const-global-focus);
11
+ box-shadow: var(--const-global-focus, 0 0 0 2px #33b4ff);
12
12
  }
13
13
 
14
14
  :host {
@@ -65,14 +65,21 @@ button {
65
65
  }
66
66
 
67
67
  :host {
68
- padding: 0 var(--tct-scale-2, var(--app-scale-2, 10px));
68
+ --comp-padding: 0 var(--app-scale-2x, 10px);
69
+ --comp-selected-icon-size: var(--tct-option-selected-icon-size, var(--t-option-selected-icon-size, var(--tct-scale-3, var(--app-scale-3x, 15px))));
70
+ padding: var(--tct-option-padding, var(--t-option-padding, var(--comp-padding)));
69
71
  min-height: 44px;
70
72
  align-items: center;
71
73
  cursor: pointer;
72
- grid-template-columns: var(--tct-option-selected-icon-size, var(--tct-scale-3, var(--app-scale-3, 15px))) 1fr;
74
+ grid-template-columns: var(--comp-selected-icon-size) 1fr;
73
75
  align-items: center;
74
76
  grid-template-areas: "icon content";
75
- gap: var(--tct-scale-1, var(--app-scale-1, 5px));
77
+ gap: var(--tct-scale-1, var(--app-scale-1x, 5px));
78
+ }
79
+
80
+ :host([multiline]) {
81
+ --comp-padding: var(--app-scale-2, 10px) var(--app-scale-2, 10px);
82
+ --comp-selected-icon-size: var(--tct-option-selected-icon-size, var(--t-option-selected-icon-size, 26px));
76
83
  }
77
84
 
78
85
  :host([_no-select]) {
@@ -102,7 +109,7 @@ button {
102
109
 
103
110
  q2-icon {
104
111
  grid-area: icon;
105
- --tct-icon-size: var(--tct-option-selected-icon-size, var(--tct-scale-3, var(--app-scale-3, 15px)));
112
+ --tct-icon-size: var(--comp-selected-icon-size);
106
113
  }
107
114
 
108
115
  .content {
@@ -306,21 +306,21 @@ export class Q2OptionList {
306
306
  event.stopPropagation();
307
307
  }
308
308
  /// Public Methods ///
309
- toggle() {
309
+ async toggle() {
310
310
  const isOpen = !this.open;
311
311
  this.open = isOpen;
312
312
  }
313
- setDefaultActiveElement() {
313
+ async setDefaultActiveElement() {
314
314
  this.activeIndex = this.getDefaultActiveIndex();
315
315
  this.setActiveOption();
316
316
  this.setFocusedOption();
317
317
  }
318
- setActiveElement(index) {
318
+ async setActiveElement(index) {
319
319
  this.activeIndex = index;
320
320
  this.setActiveOption();
321
321
  this.setFocusedOption();
322
322
  }
323
- handleExternalKeydown(event) {
323
+ async handleExternalKeydown(event) {
324
324
  const keysThatTriggerOpen = ['ArrowDown', 'ArrowUp', 'PageDown', 'PageUp', 'Home', 'End'];
325
325
  if (keysThatTriggerOpen.includes(event.key)) {
326
326
  this.open = true;
@@ -569,7 +569,11 @@ export class Q2OptionList {
569
569
  "complexType": {
570
570
  "signature": "() => Promise<void>",
571
571
  "parameters": [],
572
- "references": {},
572
+ "references": {
573
+ "Promise": {
574
+ "location": "global"
575
+ }
576
+ },
573
577
  "return": "Promise<void>"
574
578
  },
575
579
  "docs": {
@@ -581,7 +585,11 @@ export class Q2OptionList {
581
585
  "complexType": {
582
586
  "signature": "() => Promise<void>",
583
587
  "parameters": [],
584
- "references": {},
588
+ "references": {
589
+ "Promise": {
590
+ "location": "global"
591
+ }
592
+ },
585
593
  "return": "Promise<void>"
586
594
  },
587
595
  "docs": {
@@ -596,7 +604,11 @@ export class Q2OptionList {
596
604
  "tags": [],
597
605
  "text": ""
598
606
  }],
599
- "references": {},
607
+ "references": {
608
+ "Promise": {
609
+ "location": "global"
610
+ }
611
+ },
600
612
  "return": "Promise<void>"
601
613
  },
602
614
  "docs": {
@@ -612,6 +624,9 @@ export class Q2OptionList {
612
624
  "text": ""
613
625
  }],
614
626
  "references": {
627
+ "Promise": {
628
+ "location": "global"
629
+ },
615
630
  "KeyboardEvent": {
616
631
  "location": "global"
617
632
  }
@@ -8,7 +8,7 @@
8
8
 
9
9
  *:focus {
10
10
  outline: none;
11
- box-shadow: var(--const-global-focus);
11
+ box-shadow: var(--const-global-focus, 0 0 0 2px #33b4ff);
12
12
  }
13
13
 
14
14
  :host {
@@ -76,15 +76,15 @@ button {
76
76
  height: 0;
77
77
  opacity: 0;
78
78
  visibility: hidden;
79
- background-color: var(--app-white);
80
- color: var(--t-font-color);
79
+ background-color: var(--app-white, #ffffff);
80
+ color: var(--t-text, #4d4d4d);
81
81
  z-index: 100;
82
82
  width: max-content;
83
83
  min-width: var(--tct-option-list-min-width, var(--t-option-list-min-width, 135px));
84
- box-shadow: var(--app-shadow-1);
84
+ box-shadow: var(--app-shadow-1, 0 2px 4px rgba(0, 0, 0, 0.3));
85
85
  overflow: hidden;
86
86
  text-align: start;
87
- transition: opacity var(--app-tween-1);
87
+ transition: opacity var(--app-tween-1, 0.2s ease);
88
88
  border-radius: var(--tct-option-list-border-radius, var(--t-option-list-border-radius, 0));
89
89
  --comp-scrollbar-size: var(--tct-scrollbar-size, var(--t-scrollbar-size, var(--app-scale-1x, 5px)));
90
90
  --comp-scrollbar-border-radius: var(--tct-scrollbar-border-radius, var(--t-scrollbar-border-radius, var(--app-border-radius-1, 3px)));
@@ -8,7 +8,7 @@
8
8
 
9
9
  *:focus {
10
10
  outline: none;
11
- box-shadow: var(--const-global-focus);
11
+ box-shadow: var(--const-global-focus, 0 0 0 2px #33b4ff);
12
12
  }
13
13
 
14
14
  :host {
@@ -93,6 +93,13 @@ export class Q2Pill {
93
93
  return selectedOptions[0].display;
94
94
  return loc('tecton.element.pill.activeCount', { count: selectedOptions.length });
95
95
  }
96
+ get truncatedButtonContent() {
97
+ const { maxLength, buttonContent } = this;
98
+ if (maxLength)
99
+ return buttonContent.length > maxLength ? `${buttonContent.substring(0, maxLength)}…` : buttonContent;
100
+ else
101
+ return buttonContent;
102
+ }
96
103
  /// Listeners ///
97
104
  delegateFocus(event) {
98
105
  if (!isEventFromElement(event, this.hostElement))
@@ -123,8 +130,8 @@ export class Q2Pill {
123
130
  return (h(Fragment, null,
124
131
  h("div", { class: wrapperClassNames.join(' ') },
125
132
  h("div", { class: "btn-height-wrapper", onClick: this.handleWrapperClick, tabIndex: -1 },
126
- h("button", { class: "btn-primary", type: "button", "test-id": "btn-control", ref: el => (this.primaryBtn = el), onClick: this.handleClick, onKeyDown: this.handleKeydown, disabled: this.disabled, onFocusout: this.handleFocusout, "aria-selected": !hasOptions && active ? 'true' : 'false', "aria-roledescription": !hasOptions && 'filter', "aria-controls": hasOptions && 'option-list', "aria-haspopup": hasOptions && 'true', "aria-expanded": hasOptions && open ? 'true' : 'false' },
127
- this.buttonContent,
133
+ h("button", { class: "btn-primary", type: "button", "test-id": "btn-control", ref: el => (this.primaryBtn = el), onClick: this.handleClick, onKeyDown: this.handleKeydown, disabled: this.disabled, onFocusout: this.handleFocusout, "aria-selected": !hasOptions && active ? 'true' : 'false', "aria-roledescription": !hasOptions && 'filter', "aria-controls": hasOptions && 'option-list', "aria-haspopup": hasOptions && 'true', "aria-expanded": (hasOptions && `${!!open}`) || undefined, "aria-label": this.maxLength && this.buttonContent },
134
+ this.truncatedButtonContent,
128
135
  !hasOptions && active && h("span", { class: "sr" },
129
136
  "(",
130
137
  loc('tecton.element.pill.active'),
@@ -210,6 +217,23 @@ export class Q2Pill {
210
217
  "attribute": "multiple",
211
218
  "reflect": true
212
219
  },
220
+ "maxLength": {
221
+ "type": "number",
222
+ "mutable": false,
223
+ "complexType": {
224
+ "original": "number",
225
+ "resolved": "number",
226
+ "references": {}
227
+ },
228
+ "required": false,
229
+ "optional": false,
230
+ "docs": {
231
+ "tags": [],
232
+ "text": ""
233
+ },
234
+ "attribute": "max-length",
235
+ "reflect": true
236
+ },
213
237
  "label": {
214
238
  "type": "string",
215
239
  "mutable": false,
@@ -8,7 +8,7 @@
8
8
 
9
9
  *:focus {
10
10
  outline: none;
11
- box-shadow: var(--const-global-focus);
11
+ box-shadow: var(--const-global-focus, 0 0 0 2px #33b4ff);
12
12
  }
13
13
 
14
14
  :host {
@@ -82,6 +82,7 @@ button {
82
82
  --compt-hover-btn-background: var(--tct-pill-hover-btn-background, var(--t-pill-hover-btn-background, var(--t-gray-13, #e6e6e6)));
83
83
  --comp-btn-padding: var(--tct-pill-btn-padding-inline, var(--t-pill-btn-padding-inline, var(--app-scale-3x, 15px)));
84
84
  --comp-btn-color: var(--tct-pill-btn-color, var(--t-pill-btn-color, var(--t-gray-3, #262626)));
85
+ --comp-active-btn-color: var(--comp-btn-background);
85
86
  --comp-active-btn-background: var(--tct-pill-active-btn-background, var(--t-pill-active-btn-background, var(--t-gray-7, #666666)));
86
87
  --comp-active-btn-border-color: var(--tct-pill-active-btn-border-color, var(--t-pill-active-btn-border-color, var(--t-gray-7, #666666)));
87
88
  --comp-hover-active-btn-background: var(--tct-pill-active-btn-background, var(--t-pill-active-btn-background, var(--t-gray-6, #4d4d4d)));
@@ -96,24 +97,24 @@ button {
96
97
  }
97
98
  :host([theme=primary]) .btn-wrapper {
98
99
  --comp-active-btn-background: var(--t-primary-l5, #61c4ff);
99
- --comp-btn-color: var(--t-primary-text, #ffffff);
100
+ --comp-active-btn-color: var(--t-primary-text, #ffffff);
100
101
  --comp-active-btn-border-color: var(--t-primary-l5, #61c4ff);
101
102
  --comp-hover-active-btn-background: var(--t-primary-l3, #21acff);
102
103
  --comp-hover-active-btn-border-color: var(--t-primary-l3, #21acff);
103
104
  }
104
105
  :host([theme=secondary]) .btn-wrapper {
105
- --comp-active-btn-background: var(--t-secondary-l5, #61c4ff);
106
- --comp-btn-color: var(--t-secondary-text, #000000);
107
- --comp-active-btn-border-color: var(--t-secondary-l5, #61c4ff);
108
- --comp-hover-active-btn-background: var(--t-secondary-l3, #21acff);
109
- --comp-hover-active-btn-border-color: var(--t-secondary-l3, #21acff);
106
+ --comp-active-btn-background: var(--t-secondary-l5, #d9e1e6);
107
+ --comp-active-btn-color: var(--t-secondary-text, #141414);
108
+ --comp-active-btn-border-color: var(--t-secondary-l5, #d9e1e6);
109
+ --comp-hover-active-btn-background: var(--t-secondary-l3, #c9d5db);
110
+ --comp-hover-active-btn-border-color: var(--t-secondary-l3, #c9d5db);
110
111
  }
111
112
  :host([theme=tertiary]) .btn-wrapper {
112
- --comp-active-btn-background: var(--t-tertiary-l5, #61c4ff);
113
- --comp-btn-color: var(--t-tertiary-text, #000000);
114
- --comp-active-btn-border-color: var(--t-tertiary-l5, #61c4ff);
115
- --comp-hover-active-btn-background: var(--t-tertiary-l3, #21acff);
116
- --comp-hover-active-btn-border-color: var(--t-tertiary-l3, #21acff);
113
+ --comp-active-btn-background: var(--t-tertiary-l5, #f4fafe);
114
+ --comp-active-btn-color: var(--t-tertiary-text, #141414);
115
+ --comp-active-btn-border-color: var(--t-tertiary-l5, #f4fafe);
116
+ --comp-hover-active-btn-background: var(--t-tertiary-l3, #eff8fd);
117
+ --comp-hover-active-btn-border-color: var(--t-tertiary-l3, #eff8fd);
117
118
  }
118
119
 
119
120
  q2-option-list {
@@ -167,9 +168,7 @@ q2-option-list {
167
168
  background: var(--comp-hover-btn-background);
168
169
  }
169
170
  :host(:not(:empty)) .btn-primary, .has-icon .btn-primary {
170
- padding-right: calc(
171
- var(--tct-pill-icon-gap, var(--t-pill-icon-gap, var(--app-size-1x, 5px))) + var(--comp-close-size)
172
- );
171
+ padding-right: calc(var(--tct-pill-icon-gap, var(--t-pill-icon-gap, var(--app-scale-1x, 5px))) + var(--comp-close-size));
173
172
  }
174
173
  .has-options .btn-primary {
175
174
  text-overflow: ellipsis;
@@ -180,6 +179,7 @@ q2-option-list {
180
179
  :host([active]) .btn-primary {
181
180
  background: var(--comp-active-btn-background);
182
181
  border-color: var(--comp-active-btn-border-color);
182
+ color: var(--comp-active-btn-color);
183
183
  }
184
184
  :host([active]) .btn-primary:focus, :host([active]) .btn-primary:hover {
185
185
  background: var(--comp-hover-active-btn-background);
@@ -202,8 +202,9 @@ q2-option-list {
202
202
  top: 50%;
203
203
  transform: translateY(-50%);
204
204
  opacity: 0;
205
- stroke: var(--comp-btn-color);
206
- --tct-icon-stroke-primary: var(--comp-btn-color);
205
+ }
206
+ :host([active]) .btn-close {
207
+ color: var(--comp-active-btn-color);
207
208
  }
208
209
  :host(:not(:empty)) .btn-close, .has-icon .btn-close {
209
210
  opacity: 1;
@@ -27,6 +27,7 @@ export class Q2Radio {
27
27
  componentDidLoad() {
28
28
  this.isLoaded = true;
29
29
  overrideFocus(this.hostElement);
30
+ this.hostElement.click = () => this.inputField.click();
30
31
  }
31
32
  ////////// OBSERVERS //////////
32
33
  ariaLabelObserver() {
@@ -8,7 +8,7 @@
8
8
 
9
9
  *:focus {
10
10
  outline: none;
11
- box-shadow: var(--const-global-focus);
11
+ box-shadow: var(--const-global-focus, 0 0 0 2px #33b4ff);
12
12
  }
13
13
 
14
14
  :host {
@@ -80,7 +80,7 @@ button {
80
80
  margin-right: 1rem;
81
81
  display: grid;
82
82
  grid-template-columns: 18px 1fr;
83
- gap: var(--tct-scale-1, var(--app-scale-1, 5px));
83
+ gap: var(--tct-scale-1, var(--app-scale-1x, 5px));
84
84
  }
85
85
  .radio-container svg {
86
86
  border-radius: 50%;
@@ -8,7 +8,7 @@
8
8
 
9
9
  *:focus {
10
10
  outline: none;
11
- box-shadow: var(--const-global-focus);
11
+ box-shadow: var(--const-global-focus, 0 0 0 2px #33b4ff);
12
12
  }
13
13
 
14
14
  :host {
@@ -65,7 +65,7 @@ button {
65
65
  }
66
66
 
67
67
  :host {
68
- margin-top: var(--tct-scale-2, var(--app-scale-2, 10px));
68
+ margin-top: var(--tct-scale-2, var(--app-scale-2x, 10px));
69
69
  }
70
70
 
71
71
  fieldset {
@@ -92,7 +92,7 @@ fieldset {
92
92
  }
93
93
 
94
94
  .optional-tag {
95
- margin-left: var(--tct-input-label-optional-margin-left, var(--t-input-label-optional-margin-left, var(--tct-scale-1, var(--app-scale-1, 5px))));
95
+ margin-left: var(--tct-input-label-optional-margin-left, var(--t-input-label-optional-margin-left, var(--tct-scale-1, var(--app-scale-1x, 5px))));
96
96
  color: var(--tct-input-label-optional-font-color, var(--t-input-label-optional-font-color, var(--t-textA, var(--t-a11y-gray-color, rgba(77, 77, 77, 0.77)))));
97
97
  font-size: var(--tct-input-label-optional-font-size, var(--t-input-label-optional-font-size, 12px));
98
98
  font-weight: var(--tct-input-label-optional-font-weight, var(--t-input-label-optional-font-weight, 400));
@@ -8,7 +8,7 @@
8
8
 
9
9
  *:focus {
10
10
  outline: none;
11
- box-shadow: var(--const-global-focus);
11
+ box-shadow: var(--const-global-focus, 0 0 0 2px #33b4ff);
12
12
  }
13
13
 
14
14
  :host {
@@ -79,17 +79,17 @@ button {
79
79
  background-color: var(--tct-section-bg, var(--t-section-bg, var(--tct-white, var(--app-white, #ffffff))));
80
80
  color: var(--tct-section-font-color, var(--t-section-font-color, #2e2e2e));
81
81
  border-radius: var(--tct-section-border-radius, var(--t-section-border-radius, 3px));
82
- margin: var(--tct-scale-3, var(--app-scale-3, 15px));
82
+ margin: var(--tct-scale-3, var(--app-scale-3x, 15px));
83
83
  }
84
84
 
85
85
  @media screen and (max-width: 767px) {
86
86
  :host {
87
- margin: var(--tct-scale-3, var(--app-scale-3, 15px)) 0;
87
+ margin: var(--tct-scale-3, var(--app-scale-3x, 15px)) 0;
88
88
  }
89
89
  }
90
90
  .q2-section-wrapper {
91
91
  display: block;
92
- padding: var(--tct-scale-1, var(--app-scale-1, 5px)) 0;
92
+ padding: var(--tct-scale-1, var(--app-scale-1x, 5px)) 0;
93
93
  }
94
94
 
95
95
  .q2-section-wrapper:hover {
@@ -97,7 +97,7 @@ button {
97
97
  }
98
98
 
99
99
  .q2-section-header {
100
- padding: 0 var(--tct-scale-3, var(--app-scale-3, 15px));
100
+ padding: 0 var(--tct-scale-3, var(--app-scale-3x, 15px));
101
101
  display: flex;
102
102
  }
103
103
 
@@ -137,7 +137,7 @@ button {
137
137
  }
138
138
 
139
139
  .q2-section-content {
140
- padding: var(--tct-scale-2, var(--app-scale-2, 10px)) var(--tct-scale-3, var(--app-scale-3, 15px));
140
+ padding: var(--tct-scale-2, var(--app-scale-2x, 10px)) var(--tct-scale-3, var(--app-scale-3x, 15px));
141
141
  }
142
142
 
143
143
  .q2-section-content:focus {