q2-tecton-elements 1.12.1 → 1.13.1

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 (219) hide show
  1. package/dist/cjs/click-elsewhere.cjs.entry.js +5 -7
  2. package/dist/cjs/{icons-9bd0febe.js → icons-08ffe5c9.js} +386 -386
  3. package/dist/cjs/{index-c2e53804.js → index-7febb200.js} +112 -65
  4. package/dist/cjs/{index-773c3eec.js → index-dd823ee6.js} +2 -2
  5. package/dist/cjs/loader.cjs.js +3 -3
  6. package/dist/cjs/q2-avatar.cjs.entry.js +2 -2
  7. package/dist/cjs/q2-badge.cjs.entry.js +43 -0
  8. package/dist/cjs/q2-btn_2.cjs.entry.js +13 -13
  9. package/dist/cjs/q2-calendar.cjs.entry.js +42 -59
  10. package/dist/cjs/q2-card.cjs.entry.js +43 -5
  11. package/dist/cjs/q2-carousel-pane.cjs.entry.js +5 -5
  12. package/dist/cjs/q2-carousel.cjs.entry.js +318 -106
  13. package/dist/cjs/q2-checkbox-group.cjs.entry.js +3 -3
  14. package/dist/cjs/q2-checkbox.cjs.entry.js +8 -11
  15. package/dist/cjs/q2-dropdown-item.cjs.entry.js +7 -7
  16. package/dist/cjs/q2-dropdown.cjs.entry.js +9 -18
  17. package/dist/cjs/q2-editable-field.cjs.entry.js +5 -8
  18. package/dist/cjs/q2-icon.cjs.entry.js +3 -3
  19. package/dist/cjs/q2-input.cjs.entry.js +431 -434
  20. package/dist/cjs/q2-loading-element.cjs.entry.js +3 -3
  21. package/dist/cjs/q2-loc.cjs.entry.js +2 -2
  22. package/dist/cjs/q2-message.cjs.entry.js +5 -5
  23. package/dist/cjs/q2-optgroup.cjs.entry.js +3 -3
  24. package/dist/cjs/q2-option-list.cjs.entry.js +5 -3
  25. package/dist/cjs/q2-option.cjs.entry.js +1 -1
  26. package/dist/cjs/q2-pagination.cjs.entry.js +6 -8
  27. package/dist/cjs/q2-pill.cjs.entry.js +9 -9
  28. package/dist/cjs/q2-radio-group.cjs.entry.js +4 -7
  29. package/dist/cjs/q2-radio.cjs.entry.js +2 -2
  30. package/dist/cjs/q2-section.cjs.entry.js +5 -7
  31. package/dist/cjs/q2-select.cjs.entry.js +17 -29
  32. package/dist/cjs/q2-stepper-pane.cjs.entry.js +42 -4
  33. package/dist/cjs/q2-stepper-vertical.cjs.entry.js +278 -0
  34. package/dist/cjs/q2-stepper.cjs.entry.js +10 -12
  35. package/dist/cjs/q2-tab-container.cjs.entry.js +8 -8
  36. package/dist/cjs/q2-tab-pane.cjs.entry.js +1 -1
  37. package/dist/cjs/q2-tag.cjs.entry.js +4 -4
  38. package/dist/cjs/q2-tecton-elements.cjs.js +3 -3
  39. package/dist/cjs/q2-textarea.cjs.entry.js +8 -8
  40. package/dist/cjs/{shapes-086c0365.js → shapes-305746b5.js} +9 -16
  41. package/dist/cjs/tecton-tab-pane.cjs.entry.js +2 -5
  42. package/dist/collection/collection-manifest.json +5 -3
  43. package/dist/collection/components/click-elsewhere/index.js +4 -6
  44. package/dist/collection/components/q2-badge/index.js +148 -0
  45. package/dist/collection/components/q2-badge/styles.css +134 -0
  46. package/dist/collection/components/q2-btn/index.js +14 -14
  47. package/dist/collection/components/q2-calendar/helpers.js +16 -20
  48. package/dist/collection/components/q2-calendar/index.js +21 -36
  49. package/dist/collection/components/q2-calendar/styles.css +1 -1
  50. package/dist/collection/components/q2-calendar/validation.js +4 -2
  51. package/dist/collection/components/q2-card/index.js +59 -2
  52. package/dist/collection/components/q2-card/styles.css +17 -1
  53. package/dist/collection/components/q2-carousel/index.js +11 -16
  54. package/dist/collection/components/q2-carousel/styles.css +3 -3
  55. package/dist/collection/components/q2-carousel-pane/index.js +2 -2
  56. package/dist/collection/components/q2-carousel-pane/styles.css +8 -3
  57. package/dist/collection/components/q2-checkbox/index.js +8 -11
  58. package/dist/collection/components/q2-checkbox/styles.css +1 -1
  59. package/dist/collection/components/q2-checkbox-group/index.js +1 -1
  60. package/dist/collection/components/q2-dropdown/index.js +6 -15
  61. package/dist/collection/components/q2-dropdown/styles.css +3 -3
  62. package/dist/collection/components/q2-dropdown-item/index.js +5 -5
  63. package/dist/collection/components/q2-editable-field/index.js +3 -6
  64. package/dist/collection/components/q2-icon/icons.js +385 -385
  65. package/dist/collection/components/q2-input/formatting/credit-card.js +15 -13
  66. package/dist/collection/components/q2-input/formatting/currency.js +162 -162
  67. package/dist/collection/components/q2-input/formatting/date.js +1 -1
  68. package/dist/collection/components/q2-input/formatting/generic.js +7 -8
  69. package/dist/collection/components/q2-input/formatting/number.js +6 -9
  70. package/dist/collection/components/q2-input/formatting/numeric.js +5 -5
  71. package/dist/collection/components/q2-input/formatting/phone.js +215 -215
  72. package/dist/collection/components/q2-input/formatting/postal.js +1 -1
  73. package/dist/collection/components/q2-input/index.js +20 -21
  74. package/dist/collection/components/q2-input/styles.css +19 -6
  75. package/dist/collection/components/q2-loading/index.js +4 -4
  76. package/dist/collection/components/q2-loading/skeleton/q2-loading-element/index.js +1 -1
  77. package/dist/collection/components/q2-loading/skeleton/shapes.js +8 -15
  78. package/dist/collection/components/q2-loading/styles.css +1 -1
  79. package/dist/collection/components/q2-message/index.js +3 -3
  80. package/dist/collection/components/q2-optgroup/index.js +1 -1
  81. package/dist/collection/components/q2-option-list/index.js +4 -2
  82. package/dist/collection/components/q2-pagination/index.js +4 -6
  83. package/dist/collection/components/q2-pill/index.js +8 -8
  84. package/dist/collection/components/q2-pill/styles.css +3 -1
  85. package/dist/collection/components/q2-radio-group/index.js +3 -6
  86. package/dist/collection/components/q2-section/index.js +5 -7
  87. package/dist/collection/components/q2-select/index.js +15 -27
  88. package/dist/collection/components/q2-select/styles.css +4 -4
  89. package/dist/collection/components/q2-stepper/index.js +8 -10
  90. package/dist/collection/components/q2-stepper/styles.css +3 -3
  91. package/dist/collection/components/q2-stepper-pane/index.js +133 -5
  92. package/dist/collection/components/q2-stepper-vertical/index.js +346 -0
  93. package/dist/collection/components/q2-stepper-vertical/styles.css +273 -0
  94. package/dist/collection/components/q2-tab-container/index.js +7 -7
  95. package/dist/collection/components/q2-tag/index.js +3 -3
  96. package/dist/collection/components/q2-textarea/index.js +6 -6
  97. package/dist/collection/components/tecton-tab-pane/index.js +3 -10
  98. package/dist/collection/utils/index.js +1 -1
  99. package/dist/esm/click-elsewhere.entry.js +5 -7
  100. package/dist/esm/{icons-6a143c2f.js → icons-b1e11526.js} +386 -386
  101. package/dist/esm/{index-fa32f694.js → index-0ff8de52.js} +2 -2
  102. package/dist/esm/{index-be8376c0.js → index-dbfb3ecc.js} +112 -65
  103. package/dist/esm/loader.js +3 -3
  104. package/dist/esm/polyfills/css-shim.js +1 -1
  105. package/dist/esm/q2-avatar.entry.js +2 -2
  106. package/dist/esm/q2-badge.entry.js +39 -0
  107. package/dist/esm/q2-btn_2.entry.js +13 -13
  108. package/dist/esm/q2-calendar.entry.js +42 -59
  109. package/dist/esm/q2-card.entry.js +43 -5
  110. package/dist/esm/q2-carousel-pane.entry.js +5 -5
  111. package/dist/esm/q2-carousel.entry.js +318 -106
  112. package/dist/esm/q2-checkbox-group.entry.js +3 -3
  113. package/dist/esm/q2-checkbox.entry.js +8 -11
  114. package/dist/esm/q2-dropdown-item.entry.js +7 -7
  115. package/dist/esm/q2-dropdown.entry.js +9 -18
  116. package/dist/esm/q2-editable-field.entry.js +5 -8
  117. package/dist/esm/q2-icon.entry.js +3 -3
  118. package/dist/esm/q2-input.entry.js +431 -434
  119. package/dist/esm/q2-loading-element.entry.js +3 -3
  120. package/dist/esm/q2-loc.entry.js +2 -2
  121. package/dist/esm/q2-message.entry.js +5 -5
  122. package/dist/esm/q2-optgroup.entry.js +3 -3
  123. package/dist/esm/q2-option-list.entry.js +5 -3
  124. package/dist/esm/q2-option.entry.js +1 -1
  125. package/dist/esm/q2-pagination.entry.js +6 -8
  126. package/dist/esm/q2-pill.entry.js +9 -9
  127. package/dist/esm/q2-radio-group.entry.js +4 -7
  128. package/dist/esm/q2-radio.entry.js +2 -2
  129. package/dist/esm/q2-section.entry.js +5 -7
  130. package/dist/esm/q2-select.entry.js +17 -29
  131. package/dist/esm/q2-stepper-pane.entry.js +42 -4
  132. package/dist/esm/q2-stepper-vertical.entry.js +274 -0
  133. package/dist/esm/q2-stepper.entry.js +10 -12
  134. package/dist/esm/q2-tab-container.entry.js +8 -8
  135. package/dist/esm/q2-tab-pane.entry.js +1 -1
  136. package/dist/esm/q2-tag.entry.js +4 -4
  137. package/dist/esm/q2-tecton-elements.js +3 -3
  138. package/dist/esm/q2-textarea.entry.js +8 -8
  139. package/dist/esm/{shapes-81c11dfe.js → shapes-cff4e1f0.js} +9 -16
  140. package/dist/esm/tecton-tab-pane.entry.js +2 -5
  141. package/dist/loader/index.d.ts +0 -1
  142. package/dist/q2-tecton-elements/{p-a0248299.entry.js → p-00e8f782.entry.js} +1 -1
  143. package/dist/q2-tecton-elements/p-0900bec1.entry.js +1 -0
  144. package/dist/q2-tecton-elements/{p-f98dc161.entry.js → p-10264ecb.entry.js} +1 -1
  145. package/dist/q2-tecton-elements/{p-0a7cff38.entry.js → p-1305ec5f.entry.js} +1 -1
  146. package/dist/q2-tecton-elements/p-148391d6.entry.js +1 -0
  147. package/dist/q2-tecton-elements/p-1dfaee64.entry.js +1 -0
  148. package/dist/q2-tecton-elements/{p-32ad664c.entry.js → p-221abbf6.entry.js} +1 -1
  149. package/dist/q2-tecton-elements/{p-c90a6016.js → p-255b2b4c.js} +1 -1
  150. package/dist/q2-tecton-elements/p-27736b6b.entry.js +1 -0
  151. package/dist/q2-tecton-elements/p-2846ab94.entry.js +1 -0
  152. package/dist/q2-tecton-elements/{p-167a19fd.entry.js → p-2bc1de01.entry.js} +1 -1
  153. package/dist/q2-tecton-elements/{p-8ea2c4f7.entry.js → p-2c15414c.entry.js} +1 -1
  154. package/dist/q2-tecton-elements/p-2caa89fd.js +1 -0
  155. package/dist/q2-tecton-elements/p-327cca41.entry.js +1 -0
  156. package/dist/q2-tecton-elements/{p-54f0d64e.entry.js → p-3a420dbf.entry.js} +1 -1
  157. package/dist/q2-tecton-elements/{p-c460e5ed.entry.js → p-3a64e5ce.entry.js} +1 -1
  158. package/dist/q2-tecton-elements/{p-aca8302b.entry.js → p-3abcb09d.entry.js} +1 -1
  159. package/dist/q2-tecton-elements/{p-08668234.entry.js → p-3fe98e3e.entry.js} +1 -1
  160. package/dist/q2-tecton-elements/{p-c5199147.entry.js → p-430a979b.entry.js} +1 -1
  161. package/dist/q2-tecton-elements/{p-fa9e3825.entry.js → p-45eb7739.entry.js} +1 -1
  162. package/dist/q2-tecton-elements/{p-750bcd33.entry.js → p-49b2abc4.entry.js} +1 -1
  163. package/dist/q2-tecton-elements/{p-d9bc6494.entry.js → p-4ab30466.entry.js} +1 -1
  164. package/dist/q2-tecton-elements/p-5bbf2bfe.entry.js +1 -0
  165. package/dist/q2-tecton-elements/p-6fec9235.entry.js +1 -0
  166. package/dist/q2-tecton-elements/{p-3c6f73cb.js → p-824aebd9.js} +1 -1
  167. package/dist/q2-tecton-elements/{p-91dba21f.entry.js → p-a4ae89cc.entry.js} +1 -1
  168. package/dist/q2-tecton-elements/{p-d3058002.entry.js → p-a5562aaa.entry.js} +1 -1
  169. package/dist/q2-tecton-elements/{p-5effd81a.entry.js → p-ae130f70.entry.js} +1 -1
  170. package/dist/q2-tecton-elements/p-b2302cd3.entry.js +1 -0
  171. package/dist/q2-tecton-elements/p-c20cbb2d.entry.js +1 -0
  172. package/dist/q2-tecton-elements/p-ca7a3380.entry.js +1 -0
  173. package/dist/q2-tecton-elements/{p-9a3c37ab.entry.js → p-d33e152c.entry.js} +1 -1
  174. package/dist/q2-tecton-elements/{p-9024859f.entry.js → p-d5218cd6.entry.js} +1 -1
  175. package/dist/q2-tecton-elements/{p-54300d2f.entry.js → p-d52b435e.entry.js} +1 -1
  176. package/dist/q2-tecton-elements/{p-c3d68d5c.js → p-dd02cf8d.js} +1 -1
  177. package/dist/q2-tecton-elements/{p-30bf5f44.entry.js → p-e0e7ae8b.entry.js} +1 -1
  178. package/dist/q2-tecton-elements/p-ede12fc1.entry.js +1 -0
  179. package/dist/q2-tecton-elements/{p-af202624.entry.js → p-fdfbe75b.entry.js} +1 -1
  180. package/dist/q2-tecton-elements/p-ffbded54.entry.js +1 -0
  181. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
  182. package/dist/test/elements/q2-tag-test.js +6 -6
  183. package/dist/test/helpers.js +7 -7
  184. package/dist/types/components/q2-badge/index.d.ts +13 -0
  185. package/dist/types/components/q2-btn/index.d.ts +3 -3
  186. package/dist/types/components/q2-calendar/index.d.ts +1 -1
  187. package/dist/types/components/q2-calendar/validation.d.ts +1 -1
  188. package/dist/types/components/q2-card/index.d.ts +4 -0
  189. package/dist/types/components/q2-dropdown/index.d.ts +1 -1
  190. package/dist/types/components/q2-editable-field/index.d.ts +1 -1
  191. package/dist/types/components/q2-input/formatting/credit-card.d.ts +1 -3
  192. package/dist/types/components/q2-input/index.d.ts +2 -2
  193. package/dist/types/components/q2-option-list/index.d.ts +1 -1
  194. package/dist/types/components/q2-pill/index.d.ts +1 -1
  195. package/dist/types/components/q2-select/index.d.ts +1 -1
  196. package/dist/types/components/q2-stepper/index.d.ts +1 -1
  197. package/dist/types/components/q2-stepper-pane/index.d.ts +16 -1
  198. package/dist/types/components/q2-stepper-vertical/index.d.ts +52 -0
  199. package/dist/types/components/q2-tab-container/index.d.ts +1 -1
  200. package/dist/types/components/tecton-tab-pane/index.d.ts +2 -2
  201. package/dist/types/components.d.ts +63 -13
  202. package/dist/types/global.d.ts +1 -0
  203. package/dist/types/stencil-public-runtime.d.ts +6 -4
  204. package/dist/types/util.d.ts +2 -10
  205. package/dist/types/workspace/workspace/{tecton-production_release_1.12.x → tecton-production_release_1.13.x}/packages/q2-tecton-elements/.stencil/test/elements/q2-tag-test.d.ts +0 -0
  206. package/dist/types/workspace/workspace/{tecton-production_release_1.12.x → tecton-production_release_1.13.x}/packages/q2-tecton-elements/.stencil/test/helpers.d.ts +2 -2
  207. package/package.json +13 -13
  208. package/dist/q2-tecton-elements/p-080839ed.js +0 -1
  209. package/dist/q2-tecton-elements/p-2afdc922.entry.js +0 -1
  210. package/dist/q2-tecton-elements/p-34415315.entry.js +0 -1
  211. package/dist/q2-tecton-elements/p-5b906cf1.entry.js +0 -1
  212. package/dist/q2-tecton-elements/p-7ce98c1a.entry.js +0 -1
  213. package/dist/q2-tecton-elements/p-b9c2c1d3.entry.js +0 -1
  214. package/dist/q2-tecton-elements/p-c5e6f7fa.entry.js +0 -1
  215. package/dist/q2-tecton-elements/p-d65aaed2.entry.js +0 -1
  216. package/dist/q2-tecton-elements/p-df86f160.entry.js +0 -1
  217. package/dist/q2-tecton-elements/p-e38080d2.entry.js +0 -1
  218. package/dist/q2-tecton-elements/p-e9d69ba8.entry.js +0 -1
  219. package/dist/q2-tecton-elements/p-fe6407a4.entry.js +0 -1
@@ -1,5 +1,5 @@
1
- import { r as registerInstance, c as createEvent, h, g as getElement } from './index-be8376c0.js';
2
- import { l as loc, s as setPopProperties, h as handleAriaLabel, o as overrideFocus, i as isEventFromElement } from './index-fa32f694.js';
1
+ import { r as registerInstance, c as createEvent, h, g as getElement } from './index-dbfb3ecc.js';
2
+ import { l as loc, s as setPopProperties, h as handleAriaLabel, o as overrideFocus, i as isEventFromElement } from './index-0ff8de52.js';
3
3
 
4
4
  function toInteger(dirtyNumber) {
5
5
  if (dirtyNumber === null || dirtyNumber === true || dirtyNumber === false) {
@@ -2764,7 +2764,7 @@ function formatDateShort(value) {
2764
2764
  month: '2-digit',
2765
2765
  day: '2-digit',
2766
2766
  year: 'numeric',
2767
- timeZone: 'UTC'
2767
+ timeZone: 'UTC',
2768
2768
  }).format(new Date(isoDate));
2769
2769
  }
2770
2770
  function formatDateLong(value) {
@@ -2774,7 +2774,7 @@ function formatDateLong(value) {
2774
2774
  return new Intl.DateTimeFormat('default', {
2775
2775
  month: 'short',
2776
2776
  day: 'numeric',
2777
- year: 'numeric'
2777
+ year: 'numeric',
2778
2778
  }).format(date);
2779
2779
  }
2780
2780
  function convertMomentFormat(stringFormat) {
@@ -2794,7 +2794,7 @@ function stringToDate(date) {
2794
2794
  return undefined;
2795
2795
  }
2796
2796
  let result;
2797
- let dateParts = date.split(/[\/\-]/).map(part => part.padStart(2, '0'));
2797
+ const dateParts = date.split(/[\/\-]/).map(part => part.padStart(2, '0'));
2798
2798
  const isIsoString = isString && date.length >= 24 && date[10] === 'T';
2799
2799
  const isCompleteDate = dateParts.length === 3;
2800
2800
  const isPartialDate = dateParts.length < 3;
@@ -2849,7 +2849,7 @@ function setupMonthYear(value = new Date()) {
2849
2849
  const monthIndex = Number(value.toISOString().split('-')[1]) - 1;
2850
2850
  return {
2851
2851
  monthIndex,
2852
- selectedYear: value.getFullYear()
2852
+ selectedYear: value.getFullYear(),
2853
2853
  };
2854
2854
  }
2855
2855
  function validateInput(input = '', validDays = [], validDates = [], // white list
@@ -2893,14 +2893,10 @@ startDate, endDate, formatString = 'mm/dd/yyyy', assume) {
2893
2893
  if (input.length >= 5 && !isAvailable) {
2894
2894
  isValid$1 = false;
2895
2895
  messageType = 'error';
2896
- if (!monthName || !date || !year) {
2897
- message = `${loc('tecton.element.calendar.hint.invalidDate')}: ${formatString}`;
2898
- }
2899
- else {
2900
- message = loc('tecton.element.calendar.hint.notAvailableDate', [
2901
- formatDateLong(inputDate)
2902
- ]);
2903
- }
2896
+ const isInvalid = !monthName || !date || !year;
2897
+ message = isInvalid
2898
+ ? `${loc('tecton.element.calendar.hint.invalidDate')}: ${formatString}`
2899
+ : loc('tecton.element.calendar.hint.notAvailableDate', [formatDateLong(inputDate)]);
2904
2900
  }
2905
2901
  }
2906
2902
  else {
@@ -2914,19 +2910,19 @@ startDate, endDate, formatString = 'mm/dd/yyyy', assume) {
2914
2910
  message,
2915
2911
  inputDate,
2916
2912
  isAvailable,
2917
- calendarPosition
2913
+ calendarPosition,
2918
2914
  };
2919
2915
  }
2920
2916
  function buildInputDate(input, assume) {
2921
2917
  const now = new Date();
2922
- let [month, day, year] = input.split('/');
2918
+ const [month, day, year] = input.split('/');
2923
2919
  if (input.length === 10) {
2924
2920
  return new Date(input);
2925
2921
  }
2926
2922
  else if (month && day && Number(day) > 0) {
2927
- day = Number(day) < 10 ? `0${Number(day)}` : day;
2928
- year = !year || year.length < 4 ? assumeYear(month, day, assume) : year;
2929
- return new Date(`${month}/${day}/${year}`);
2923
+ const twoDigitDay = Number(day) < 10 ? `0${Number(day)}` : day;
2924
+ const fourDigitYear = !year || year.length < 4 ? assumeYear(month, day, assume) : year;
2925
+ return new Date(`${month}/${twoDigitDay}/${fourDigitYear}`);
2930
2926
  }
2931
2927
  else if (month && day && Number(day) === 0) {
2932
2928
  return new Date(''); // invalid date: 09/0/2021
@@ -2980,7 +2976,7 @@ function getDays() {
2980
2976
  loc('tecton.element.calendar.days.short.Wednesday'),
2981
2977
  loc('tecton.element.calendar.days.short.Thursday'),
2982
2978
  loc('tecton.element.calendar.days.short.Friday'),
2983
- loc('tecton.element.calendar.days.short.Saturday')
2979
+ loc('tecton.element.calendar.days.short.Saturday'),
2984
2980
  ];
2985
2981
  }
2986
2982
  function getDaysOfWeek() {
@@ -2991,7 +2987,7 @@ function getDaysOfWeek() {
2991
2987
  loc('tecton.element.calendar.days.Wednesday'),
2992
2988
  loc('tecton.element.calendar.days.Thursday'),
2993
2989
  loc('tecton.element.calendar.days.Friday'),
2994
- loc('tecton.element.calendar.days.Saturday')
2990
+ loc('tecton.element.calendar.days.Saturday'),
2995
2991
  ];
2996
2992
  }
2997
2993
  function getMonths() {
@@ -3007,7 +3003,7 @@ function getMonths() {
3007
3003
  loc('tecton.element.calendar.months.September'),
3008
3004
  loc('tecton.element.calendar.months.October'),
3009
3005
  loc('tecton.element.calendar.months.November'),
3010
- loc('tecton.element.calendar.months.December')
3006
+ loc('tecton.element.calendar.months.December'),
3011
3007
  ];
3012
3008
  }
3013
3009
 
@@ -3019,6 +3015,7 @@ function generateDatesFromMonthYear(month, year) {
3019
3015
  }, []);
3020
3016
  }
3021
3017
  function getValidDaysOfWeek(checksum = 127) {
3018
+ /* tslint:disable:no-bitwise */
3022
3019
  const sunValid = checksum & 1;
3023
3020
  const monValid = checksum & 2;
3024
3021
  const tuesValid = checksum & 4;
@@ -3026,6 +3023,7 @@ function getValidDaysOfWeek(checksum = 127) {
3026
3023
  const thursValid = checksum & 16;
3027
3024
  const friValid = checksum & 32;
3028
3025
  const satValid = checksum & 64;
3026
+ /* tslint:enable:no-bitwise */
3029
3027
  const ret = [];
3030
3028
  if (checksum <= 0)
3031
3029
  return ret;
@@ -3093,7 +3091,7 @@ function getDayState(dayInMonth, dateValidators, currentDate) {
3093
3091
  const isEndDate = isSameDay(dayInMonth, dateValidators === null || dateValidators === void 0 ? void 0 : dateValidators.endDate);
3094
3092
  return { isSelected, isToday, isStartDate, isEndDate };
3095
3093
  }
3096
- function generateClassesForCalDay({ isInvalid, isSelected, isEndDate, isStartDate, isToday, isIncompleteDate }) {
3094
+ function generateClassesForCalDay({ isInvalid, isSelected, isEndDate, isStartDate, isToday, isIncompleteDate, }) {
3097
3095
  const classes = [];
3098
3096
  if (!isInvalid)
3099
3097
  classes.push('is-valid');
@@ -3127,7 +3125,7 @@ const emptyDate = {
3127
3125
  isSelected: false,
3128
3126
  isStartDate: false,
3129
3127
  isEndDate: false,
3130
- classList: ''
3128
+ classList: '',
3131
3129
  };
3132
3130
  function addEmptyDates(from, to) {
3133
3131
  if (from === 7)
@@ -3135,7 +3133,7 @@ function addEmptyDates(from, to) {
3135
3133
  return [...Array(to - from).keys()].map(() => (Object.assign({}, emptyDate)));
3136
3134
  }
3137
3135
 
3138
- const stylesCss = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-global-focus)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}.q2-element-dropdown{display:none;position:absolute;background-color:var(--app-white);color:var(--t-font-color);left:0;width:100%;z-index:100;margin-top:1px;box-shadow:var(--app-shadow-1);height:0;overflow:hidden;opacity:0;visibility:hidden;transition:opacity var(--app-tween-1);border-radius:var(--tct-dropdown-border-radius, --t-dropdown-border-radius, 0);--comp-scrollbar-size:var(--tct-scrollbar-size, var(--t-scrollbar-size, var(--app-scale-1x, 5px)));--comp-scrollbar-border-radius:var(--tct-scrollbar-border-radius, var(--t-scrollbar-border-radius, var(--app-border-radius-1, 3px)));--comp-scrollbar-color:var(--tct-scrollbar-color, var(--t-scrollbar-color, var(--t-a11y-gray-color, #747474)));scrollbar-width:thin;scrollbar-color:var(--comp-scrollbar-color) transparent}.q2-element-dropdown::-webkit-scrollbar{width:var(--comp-scrollbar-size);height:var(--comp-scrollbar-size);margin:5px}.q2-element-dropdown::-webkit-scrollbar-thumb{background:var(--comp-scrollbar-color);border-radius:var(--comp-scrollbar-border-radius)}.q2-element-dropdown::-webkit-scrollbar-track{background:transparent;border-radius:var(--comp-scrollbar-border-radius)}.q2-element-dropdown.sizable{display:block;height:auto}.dropdown-open .q2-element-dropdown{display:block;height:auto;overflow:auto;opacity:1;visibility:visible}:host([alignment=right]) .q2-element-dropdown{left:auto;right:0}:host{display:block}:host[hidden]{display:none}.calendar-container{position:relative;display:block}q2-input{margin:0;cursor:pointer}.q2-element-dropdown{text-align:center;min-width:308px}.q2-element-dropdown.dropup{bottom:var(--comp-input-min-height, 44px);margin-bottom:0px}.calendar-label{font-size:var(--tct-calendar-label-font-size, var(--t-calendar-label-font-size, 16px));flex:1 1;flex-basis:calc(100% - var-list(--tct-btn-icon-width, 44px));margin:0;padding:var(--tct-calendar-label-vertical-padding, var(--t-calendar-label-vertical-padding, var(--tct-scale-2, var(--app-scale-2, 10px)))) 0}.calendar-hint{text-align:left;margin:0}.cal-month-heading{padding:0 0 0.75rem;display:flex;justify-content:center;align-items:center;font-size:var(--tct-calendar-month-font-size, var(--t-calendar-month-font-size, 16px));font-weight:var(--tct-calendar-month-font-weight, var(--t-calendar-month-font-weight, 600))}.cal-month-text{min-width:82px;display:inline-block}.cal-year-text{min-width:50px;display:inline-block}table{width:100%;margin-bottom:2px}th{font-size:var(--tct-calendar-day-heading-font-size, var(--t-calendar-day-heading-font-size, inherit));font-weight:var(--tct-calendar-day-heading-font-weight, var(--t-calendar-day-heading-font-weight, 600));width:14.285714%}td{height:44px;cursor:pointer}td.is-unavailable{border:1px solid var(--tct-input-error-border-color, var(--const-stoplight-alert, #c30000))}td.is-valid:hover{background-color:var(--tct-calendar-day-hover-bg, var(--t-calendar-day-hover-bg, var(--tct-gray-14, var(--app-gray14, var(--tct-gray-l4, var(--app-gray-l4, #f2f2f2))))));color:var(--tct-calendar-day-hover-font-color, var(--t-calendar-day-hover-font-color, inherit))}td[aria-hidden],td[aria-disabled]{pointer-events:none;cursor:not-allowed}td[aria-disabled]{opacity:var(--tct-calendar-day-disabled-opacity, var(--t-calendar-day-disabled-opacity, var(--app-disabled-opacity, 0.4)))}td[aria-selected]{background-color:var(--tct-calendar-day-selected-bg, var(--t-calendar-day-selected-bg, var(--tct-calendar-day-hover-bg, var(--t-calendar-day-hover-bg, var(--tct-gray-14, var(--t-gray-14, var(--tct-gray-l4, var(--app-gray-l4, #f2f2f2))))))));color:var(--tct-calendar-day-selected-font-color, var(--t-calendar-day-selected-font-color, var(--tct-calendar-day-hover-font-color, var(--t-calendar-day-hover-font-color, inherit))));box-shadow:inset 2px 2px var(--tct-calendar-day-selected-outline-color, var(--t-calendar-day-selected-outline-color, var(--tct-stoplight-info, var(--const-stoplight-info, #0079c1)))), inset -2px -2px var(--tct-calendar-day-selected-outline-color, var(--t-calendar-day-selected-outline-color, var(--tct-stoplight-info, var(--const-stoplight-info, #0079c1))))}.today-decorator{text-transform:uppercase;font-weight:700;font-size:10px;height:12px}.calendar-disclaimer{font-size:var(--tct-calendar-disclaimer-font-size, var(--t-calendar-disclaimer-font-size, var(--tct-font-size-small, var(--app-font-size-small, 12px))));border-top:1px solid var(--tct-calendar-disclaimer-border-color, var(--t-calendar-disclaimer-border-color, var(--tct-gray-13, var(--t-gray-13, var(--tct-gray-l3, var(--app-gray-l3, #e6e6e6))))));padding:var(--tct-calendar-disclaimer-padding, var(--tct-scale-2, var(--app-scale-2, 10px)));text-align:left}";
3136
+ const stylesCss = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-global-focus)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}.q2-element-dropdown{display:none;position:absolute;background-color:var(--app-white);color:var(--t-font-color);left:0;width:100%;z-index:100;margin-top:1px;box-shadow:var(--app-shadow-1);height:0;overflow:hidden;opacity:0;visibility:hidden;transition:opacity var(--app-tween-1);border-radius:var(--tct-dropdown-border-radius, --t-dropdown-border-radius, 0);--comp-scrollbar-size:var(--tct-scrollbar-size, var(--t-scrollbar-size, var(--app-scale-1x, 5px)));--comp-scrollbar-border-radius:var(--tct-scrollbar-border-radius, var(--t-scrollbar-border-radius, var(--app-border-radius-1, 3px)));--comp-scrollbar-color:var(--tct-scrollbar-color, var(--t-scrollbar-color, var(--t-a11y-gray-color, #747474)));scrollbar-width:thin;scrollbar-color:var(--comp-scrollbar-color) transparent}.q2-element-dropdown::-webkit-scrollbar{width:var(--comp-scrollbar-size);height:var(--comp-scrollbar-size);margin:5px}.q2-element-dropdown::-webkit-scrollbar-thumb{background:var(--comp-scrollbar-color);border-radius:var(--comp-scrollbar-border-radius)}.q2-element-dropdown::-webkit-scrollbar-track{background:transparent;border-radius:var(--comp-scrollbar-border-radius)}.q2-element-dropdown.sizable{display:block;height:auto}.dropdown-open .q2-element-dropdown{display:block;height:auto;overflow:auto;opacity:1;visibility:visible}:host([alignment=right]) .q2-element-dropdown{left:auto;right:0}:host{display:block}:host[hidden]{display:none}.calendar-container{position:relative;display:block}q2-input{margin:0;cursor:pointer}.q2-element-dropdown{text-align:center;min-width:308px}.q2-element-dropdown.dropup{bottom:var(--comp-input-min-height, 44px);margin-bottom:0px}.calendar-label{font-size:var(--tct-calendar-label-font-size, var(--t-calendar-label-font-size, 16px));flex:1 1;flex-basis:calc(100% - var(--tct-btn-icon-width, 44px));margin:0;padding:var(--tct-calendar-label-vertical-padding, var(--t-calendar-label-vertical-padding, var(--tct-scale-2, var(--app-scale-2, 10px)))) 0}.calendar-hint{text-align:left;margin:0}.cal-month-heading{padding:0 0 0.75rem;display:flex;justify-content:center;align-items:center;font-size:var(--tct-calendar-month-font-size, var(--t-calendar-month-font-size, 16px));font-weight:var(--tct-calendar-month-font-weight, var(--t-calendar-month-font-weight, 600))}.cal-month-text{min-width:82px;display:inline-block}.cal-year-text{min-width:50px;display:inline-block}table{width:100%;margin-bottom:2px}th{font-size:var(--tct-calendar-day-heading-font-size, var(--t-calendar-day-heading-font-size, inherit));font-weight:var(--tct-calendar-day-heading-font-weight, var(--t-calendar-day-heading-font-weight, 600));width:14.285714%}td{height:44px;cursor:pointer}td.is-unavailable{border:1px solid var(--tct-input-error-border-color, var(--const-stoplight-alert, #c30000))}td.is-valid:hover{background-color:var(--tct-calendar-day-hover-bg, var(--t-calendar-day-hover-bg, var(--tct-gray-14, var(--app-gray14, var(--tct-gray-l4, var(--app-gray-l4, #f2f2f2))))));color:var(--tct-calendar-day-hover-font-color, var(--t-calendar-day-hover-font-color, inherit))}td[aria-hidden],td[aria-disabled]{pointer-events:none;cursor:not-allowed}td[aria-disabled]{opacity:var(--tct-calendar-day-disabled-opacity, var(--t-calendar-day-disabled-opacity, var(--app-disabled-opacity, 0.4)))}td[aria-selected]{background-color:var(--tct-calendar-day-selected-bg, var(--t-calendar-day-selected-bg, var(--tct-calendar-day-hover-bg, var(--t-calendar-day-hover-bg, var(--tct-gray-14, var(--t-gray-14, var(--tct-gray-l4, var(--app-gray-l4, #f2f2f2))))))));color:var(--tct-calendar-day-selected-font-color, var(--t-calendar-day-selected-font-color, var(--tct-calendar-day-hover-font-color, var(--t-calendar-day-hover-font-color, inherit))));box-shadow:inset 2px 2px var(--tct-calendar-day-selected-outline-color, var(--t-calendar-day-selected-outline-color, var(--tct-stoplight-info, var(--const-stoplight-info, #0079c1)))), inset -2px -2px var(--tct-calendar-day-selected-outline-color, var(--t-calendar-day-selected-outline-color, var(--tct-stoplight-info, var(--const-stoplight-info, #0079c1))))}.today-decorator{text-transform:uppercase;font-weight:700;font-size:10px;height:12px}.calendar-disclaimer{font-size:var(--tct-calendar-disclaimer-font-size, var(--t-calendar-disclaimer-font-size, var(--tct-font-size-small, var(--app-font-size-small, 12px))));border-top:1px solid var(--tct-calendar-disclaimer-border-color, var(--t-calendar-disclaimer-border-color, var(--tct-gray-13, var(--t-gray-13, var(--tct-gray-l3, var(--app-gray-l3, #e6e6e6))))));padding:var(--tct-calendar-disclaimer-padding, var(--tct-scale-2, var(--app-scale-2, 10px)));text-align:left}";
3139
3137
 
3140
3138
  const Q2Calendar = class {
3141
3139
  constructor(hostRef) {
@@ -3302,7 +3300,7 @@ const Q2Calendar = class {
3302
3300
  const newYear = removeTimezoneOffset(new Date(year, monthIndex));
3303
3301
  this.selectedMonthYear = {
3304
3302
  monthIndex: newYear.getMonth(),
3305
- selectedYear: newYear.getFullYear()
3303
+ selectedYear: newYear.getFullYear(),
3306
3304
  };
3307
3305
  this.dateList = this.buildDateList(this.selectedMonthYear);
3308
3306
  this.scheduledAfterRender.push(() => this.checkActiveCellForBlankness());
@@ -3390,9 +3388,7 @@ const Q2Calendar = class {
3390
3388
  };
3391
3389
  }
3392
3390
  resizeIframe() {
3393
- return (window.TectonElements &&
3394
- window.TectonElements.resizeIframe &&
3395
- window.TectonElements.resizeIframe());
3391
+ return window.TectonElements && window.TectonElements.resizeIframe && window.TectonElements.resizeIframe();
3396
3392
  }
3397
3393
  connectedCallback() {
3398
3394
  this.selectedMonthYear = setupMonthYear(this.dateValue);
@@ -3427,9 +3423,7 @@ const Q2Calendar = class {
3427
3423
  }
3428
3424
  get localizedErrors() {
3429
3425
  return ((Array.isArray(this.errors) &&
3430
- this.errors
3431
- .filter((error) => error)
3432
- .map((error) => error && loc(error))) ||
3426
+ this.errors.filter((error) => error).map((error) => error && loc(error))) ||
3433
3427
  []);
3434
3428
  }
3435
3429
  get formattedValue() {
@@ -3444,7 +3438,7 @@ const Q2Calendar = class {
3444
3438
  year: 'numeric',
3445
3439
  month: '2-digit',
3446
3440
  day: '2-digit',
3447
- timeZone: 'UTC'
3441
+ timeZone: 'UTC',
3448
3442
  }).format(dateValue);
3449
3443
  }
3450
3444
  get computedPlaceholder() {
@@ -3466,9 +3460,7 @@ const Q2Calendar = class {
3466
3460
  if (isMoment)
3467
3461
  return value.toDate();
3468
3462
  // stringified moment value assigned in html template e.g.) handlebar
3469
- const isMomentString = typeof value === 'string' &&
3470
- value.split(' ').length === 6 &&
3471
- /GMT-\d{4}/g.test(value);
3463
+ const isMomentString = typeof value === 'string' && value.split(' ').length === 6 && /GMT-\d{4}/g.test(value);
3472
3464
  if (isMomentString) {
3473
3465
  value = formatDateISO(value);
3474
3466
  }
@@ -3480,7 +3472,7 @@ const Q2Calendar = class {
3480
3472
  return {
3481
3473
  startDate: stringToDate(this.startDate),
3482
3474
  endDate: stringToDate(this.endDate),
3483
- cutOffTime: isValid(ct) ? ct : undefined
3475
+ cutOffTime: isValid(ct) ? ct : undefined,
3484
3476
  };
3485
3477
  }
3486
3478
  get isTypeable() {
@@ -3497,8 +3489,7 @@ const Q2Calendar = class {
3497
3489
  }
3498
3490
  defaultErrorHandler(event) {
3499
3491
  if (event.target === this.hostElement && !this.hostElement.onerror) {
3500
- if (Array.isArray(this.errors) &&
3501
- this.errors.includes('tecton.element.calendar.invalidDate')) {
3492
+ if (Array.isArray(this.errors) && this.errors.includes('tecton.element.calendar.invalidDate')) {
3502
3493
  return;
3503
3494
  }
3504
3495
  this.errors = (this.errors || []).concat(['tecton.element.calendar.invalidDate']);
@@ -3512,8 +3503,7 @@ const Q2Calendar = class {
3512
3503
  this.onsuccess(event);
3513
3504
  }
3514
3505
  else {
3515
- if (Array.isArray(this.errors) &&
3516
- this.errors.includes('tecton.element.calendar.invalidDate')) {
3506
+ if (Array.isArray(this.errors) && this.errors.includes('tecton.element.calendar.invalidDate')) {
3517
3507
  this.errors = this.errors.filter(x => x !== 'tecton.element.calendar.invalidDate');
3518
3508
  }
3519
3509
  }
@@ -3536,9 +3526,7 @@ const Q2Calendar = class {
3536
3526
  this.typedValue = newValueAsString;
3537
3527
  }
3538
3528
  else {
3539
- const dateValue = isMoment
3540
- ? newValue.toDate()
3541
- : stringToDate(newValue);
3529
+ const dateValue = isMoment ? newValue.toDate() : stringToDate(newValue);
3542
3530
  this.inputField.value = formatDateShort(dateValue);
3543
3531
  this.selectedMonthYear = setupMonthYear(dateValue);
3544
3532
  this.dateList = this.buildDateList(this.selectedMonthYear);
@@ -3595,22 +3583,21 @@ const Q2Calendar = class {
3595
3583
  else {
3596
3584
  calculationDateList = this.buildDateList({
3597
3585
  monthIndex: month,
3598
- selectedYear: year
3586
+ selectedYear: year,
3599
3587
  });
3600
3588
  }
3601
3589
  const dateValueDayOfMonth = (_c = dateValue === null || dateValue === void 0 ? void 0 : dateValue.getDate()) !== null && _c !== void 0 ? _c : undefined;
3602
3590
  const isDateValueInvalid = dateValueDayOfMonth
3603
- ? !calculationDateList.find(({ integer }) => integer === dateValueDayOfMonth)
3604
- .isValid
3591
+ ? !calculationDateList.find(({ integer }) => integer === dateValueDayOfMonth).isValid
3605
3592
  : true;
3606
3593
  if (isDateValueInvalid) {
3607
3594
  this.error.emit({
3608
3595
  errors: [
3609
3596
  {
3610
3597
  message: `Value passed is invalid: The date ${this.value} is not valid`,
3611
- errorCode: 'generalInvalid'
3612
- }
3613
- ]
3598
+ errorCode: 'generalInvalid',
3599
+ },
3600
+ ],
3614
3601
  });
3615
3602
  }
3616
3603
  else {
@@ -3619,7 +3606,7 @@ const Q2Calendar = class {
3619
3606
  }
3620
3607
  }
3621
3608
  catch (error) {
3622
- console.log('Invalid moment value ', this.dateValue);
3609
+ console.warn('Invalid moment value ', this.dateValue);
3623
3610
  }
3624
3611
  }
3625
3612
  focusInput() {
@@ -3628,16 +3615,12 @@ const Q2Calendar = class {
3628
3615
  }
3629
3616
  checkActiveCellForBlankness() {
3630
3617
  const activeElement = this.hostElement.shadowRoot.activeElement;
3631
- if (!activeElement ||
3632
- activeElement.tagName !== 'TD' ||
3633
- !activeElement.hasAttribute('aria-hidden'))
3618
+ if (!activeElement || activeElement.tagName !== 'TD' || !activeElement.hasAttribute('aria-hidden'))
3634
3619
  return;
3635
3620
  const { calendarBody } = this;
3636
3621
  const calendarCells = Array.from(calendarBody.querySelectorAll('td'));
3637
3622
  const indexOfCell = Array.from(calendarCells).indexOf(activeElement);
3638
- const dayToFocus = indexOfCell < 15
3639
- ? 1
3640
- : calendarCells.filter(cell => !cell.hasAttribute('aria-hidden')).length;
3623
+ const dayToFocus = indexOfCell < 15 ? 1 : calendarCells.filter(cell => !cell.hasAttribute('aria-hidden')).length;
3641
3624
  this.focusDay(this.generateDateFromDay(dayToFocus));
3642
3625
  }
3643
3626
  generateDateFromDay(day) {
@@ -3673,11 +3656,11 @@ const Q2Calendar = class {
3673
3656
  this.setHints({
3674
3657
  isValid: true,
3675
3658
  message: `${loc('tecton.element.calendar.hint.selection')}: ${formatDateLong(inputDate)}`,
3676
- messageType: 'success'
3659
+ messageType: 'success',
3677
3660
  });
3678
3661
  }
3679
3662
  calendarField() {
3680
- return (h("q2-input", { ref: el => (this.inputField = el), class: "calendar-input-field", value: this.formattedValue, label: loc(this.label), hideLabel: this.hideLabel, disabled: !!this.disabled, readonly: !!this.readonly, placeholder: this.computedPlaceholder, optional: !!this.optional, ariaExpanded: this.dropdownOpen, errors: (this.localizedErrors.length > 0 && this.localizedErrors) ||
3663
+ return (h("q2-input", { ref: el => (this.inputField = el), class: "calendar-input-field", value: this.formattedValue, label: loc(this.label), hideLabel: this.hideLabel, disabled: !!this.disabled, readonly: !!this.readonly, placeholder: this.computedPlaceholder, optional: !!this.optional, ariaExpanded: `${!!this.dropdownOpen}`, errors: (this.localizedErrors.length > 0 && this.localizedErrors) ||
3681
3664
  (this.invalid && ['tecton.element.calendar.invalid']) ||
3682
3665
  [], onClick: this.onInputClick, onChange: this.onInputChange, onInput: this.onInputInput, onKeyDown: this.onInputKeydown, onKeyUp: this.onInputKeyup, onBlur: this.onInputBlur, "icon-right": "calendar", "format-modifier": this.isTypeable ? this.formatModifier : '', pseudo: !this.isTypeable, type: "date", "hide-messages": true, "test-id": "inputAndCalendarToggle" }));
3683
3666
  }
@@ -1,8 +1,26 @@
1
- import { r as registerInstance, c as createEvent, h, F as Fragment, g as getElement } from './index-be8376c0.js';
2
- import { a as isTouchDevice, o as overrideFocus, i as isEventFromElement } from './index-fa32f694.js';
1
+ import { r as registerInstance, c as createEvent, h, F as Fragment, g as getElement } from './index-dbfb3ecc.js';
2
+ import { a as isTouchDevice, o as overrideFocus, i as isEventFromElement } from './index-0ff8de52.js';
3
3
 
4
- const stylesCss = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-global-focus)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}:host{display:block}button,a{width:100%;text-align:start;cursor:pointer;height:100%;display:grid;gap:var(--tct-card-gap, var(--t-card-gap, var(--app-scale-3x, 15px)));margin:0;border:none;background:var(--tct-card-background, var(--t-card-background, var(--t-base, #ffffff)));padding:var(--tct-card-padding, var(--t-card-padding, var(--app-scale-4x, 20px)));color:var(--tct-card-color, var(--t-card-color, var(--t-text, #4d4d4d)));text-decoration:none;border-radius:var(--tct-card-border-radius, var(--t-card-border-radius, var(--app-border-radius-1, 3px)));transition:box-shadow var(--tct-tween-1, var(--app-tween-1, 0.2s ease));box-shadow:var(--tct-card-box-shadow, var(--t-card-box-shadow, var(--app-shadow-2, 0 3px 6px rgba(0, 0, 0, 0.3))));--comp-avatar-size:var(--tct-card-avatar-size, var(--t-card-avatar-size, 44px));--comp-chevron-size:0}@media (hover: hover){button:hover,button:active,button:focus,a:hover,a:active,a:focus{color:var(--tct-card-color, var(--t-card-color, var(--t-text, #4d4d4d)))}button:hover,a:hover{box-shadow:var(--tct-card-hover-box-shadow, var(--t-card-hover-box-shadow, var(--app-shadow-3, 0 4px 12px rgba(0, 0, 0, 0.3))))}button:active,a:active{box-shadow:var(--tct-card-active-box-shadow, var(--t-card-active-box-shadow, var(--app-shadow-1, 0 2px 4px rgba(0, 0, 0, 0.3))))}}button.is-small,a.is-small{--comp-avatar-size:var(--tct-card-avatar-size, var(--t-card-avatar-size, 26px))}button.is-touch,a.is-touch{--comp-chevron-size:var(--tct-card-chevron-size, var(--t-card-chevron-size, 26px));grid-template-columns:1fr var(--comp-chevron-size)}button.has-avatar,a.has-avatar{grid-template-columns:var(--comp-avatar-size) 1fr;--tct-avatar-width:var(--comp-avatar-size);--tct-avatar-height:var(--comp-avatar-size);--tct-icon-size:var(--comp-avatar-size)}button.has-avatar.is-touch,a.has-avatar.is-touch{grid-template-columns:var(--comp-avatar-size) 1fr var(--comp-chevron-size)}.container{overflow:hidden;display:grid;gap:var(--tct-card-container-gap, var(--t-card-container-gap, var(--app-scale-1x, 5px)));align-content:start}h3,p{margin:0;padding:0;line-height:var(--tct-card-font-height, var(--t-card-font-height, 20px))}h3{font-weight:var(--tct-card-font-weight, var(--t-card-font-weight, 600));font-size:var(--tct-card-font-size, var(--t-card-font-size, 17px));text-overflow:ellipsis;overflow:hidden;white-space:nowrap}p{text-overflow:ellipsis;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.touch-indicator{align-self:center;--tct-icon-size:var(--comp-chevron-size)}";
4
+ const stylesCss = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-global-focus)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}:host{display:block}button,a{--comp-border-radius:var(--tct-card-border-radius, var(--t-card-border-radius, var(--app-border-radius-1, 3px)));--comp-border-width:var(--tct-card-border-width, var(--t-card-border-width, 0px));position:relative;width:100%;text-align:start;cursor:pointer;height:100%;display:grid;gap:var(--tct-card-gap, var(--t-card-gap, var(--app-scale-3x, 15px)));margin:0;border:none;background:var(--tct-card-background, var(--t-card-background, var(--t-base, #ffffff)));padding:var(--tct-card-padding, var(--t-card-padding, var(--app-scale-4x, 20px)));color:var(--tct-card-color, var(--t-card-color, var(--t-text, #4d4d4d)));text-decoration:none;border-width:var(--comp-border-width);border-color:var(--tct-card-border-color, var(--t-card-border-color, transparent));border-style:solid;border-radius:var(--comp-border-radius);transition:box-shadow var(--tct-tween-1, var(--app-tween-1, 0.2s ease));box-shadow:var(--tct-card-box-shadow, var(--t-card-box-shadow, var(--app-shadow-2, 0 3px 6px rgba(0, 0, 0, 0.3))));--comp-avatar-size:var(--tct-card-avatar-size, var(--t-card-avatar-size, 44px));--comp-chevron-size:0}@media (hover: hover){button:hover,button:active,button:focus,a:hover,a:active,a:focus{color:var(--tct-card-color, var(--t-card-color, var(--t-text, #4d4d4d)))}button:hover,a:hover{box-shadow:var(--tct-card-hover-box-shadow, var(--t-card-hover-box-shadow, var(--app-shadow-3, 0 4px 12px rgba(0, 0, 0, 0.3))))}button:active,a:active{box-shadow:var(--tct-card-active-box-shadow, var(--t-card-active-box-shadow, var(--app-shadow-1, 0 2px 4px rgba(0, 0, 0, 0.3))))}}button.is-small,a.is-small{--comp-avatar-size:var(--tct-card-avatar-size, var(--t-card-avatar-size, 26px))}button.is-touch,a.is-touch{--comp-chevron-size:var(--tct-card-chevron-size, var(--t-card-chevron-size, 26px));grid-template-columns:1fr var(--comp-chevron-size)}button.has-avatar,a.has-avatar{grid-template-columns:var(--comp-avatar-size) 1fr;--tct-avatar-width:var(--comp-avatar-size);--tct-avatar-height:var(--comp-avatar-size);--tct-icon-size:var(--comp-avatar-size)}button.has-avatar.is-touch,a.has-avatar.is-touch{grid-template-columns:var(--comp-avatar-size) 1fr var(--comp-chevron-size)}.container{overflow:hidden;display:grid;gap:var(--tct-card-container-gap, var(--t-card-container-gap, var(--app-scale-1x, 5px)));align-content:start}h3,p{margin:0;padding:0;line-height:var(--tct-card-font-height, var(--t-card-font-height, 20px))}h3{font-weight:var(--tct-card-font-weight, var(--t-card-font-weight, 600));font-size:var(--tct-card-font-size, var(--t-card-font-size, 17px));text-overflow:ellipsis;overflow:hidden;white-space:nowrap}p{text-overflow:ellipsis;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.bar{--comp-bar-border-radius:calc(var(--comp-border-radius) - var(--comp-border-width));border-radius:var(--comp-bar-border-radius) 0 0 var(--comp-bar-border-radius);position:absolute;inset:0 auto auto 0;width:var(--tct-card-bar-width, var(--t-card-bar-width, var(--app-scale-2x, 10px)));background:var(--comp-bar-color);height:100%}.touch-indicator{align-self:center;--tct-icon-size:var(--comp-chevron-size)}";
5
5
 
6
+ const SUPPORTED_THEME_COLORS = [
7
+ 'primary',
8
+ 'secondary',
9
+ 'tertiary',
10
+ 'accent-1',
11
+ 'accent-2',
12
+ 'accent-3',
13
+ 'accent-4',
14
+ 'accent-5',
15
+ 'accent-6',
16
+ 'accent-7',
17
+ 'accent-8',
18
+ 'accent-9',
19
+ 'accent-10',
20
+ 'accent-11',
21
+ 'accent-12',
22
+ ];
23
+ const STOPLIGHT_COLORS = ['info', 'success', 'warning', 'alert'];
6
24
  const Q2Card = class {
7
25
  constructor(hostRef) {
8
26
  registerInstance(this, hostRef);
@@ -18,6 +36,9 @@ const Q2Card = class {
18
36
  this.click.emit();
19
37
  };
20
38
  }
39
+ componentWillLoad() {
40
+ this.checkBar();
41
+ }
21
42
  componentDidLoad() {
22
43
  const { hostElement, clickableElement } = this;
23
44
  hostElement.click = () => clickableElement.click();
@@ -33,6 +54,20 @@ const Q2Card = class {
33
54
  return;
34
55
  this.clickableElement.focus();
35
56
  }
57
+ checkBar() {
58
+ const { bar } = this;
59
+ if (!bar)
60
+ return;
61
+ if (SUPPORTED_THEME_COLORS.includes(bar)) {
62
+ this.barColor = `var(--t-${bar})`;
63
+ }
64
+ else if (STOPLIGHT_COLORS.includes(bar)) {
65
+ this.barColor = `var(--const-stoplight-${bar})`;
66
+ }
67
+ else {
68
+ this.barColor = bar;
69
+ }
70
+ }
36
71
  determineAutoTouch() {
37
72
  if (this.hostElement.hasAttribute('is-touch'))
38
73
  return;
@@ -58,11 +93,11 @@ const Q2Card = class {
58
93
  }
59
94
  }
60
95
  generateContent() {
61
- return (h(Fragment, null, this.generateAvatar(), h("div", { class: "container", "test-id": "contentContainer", ref: e => (this.containerElement = e) }, this.title && h("h3", { "test-id": "title" }, this.title), this.description && h("p", { "test-id": "description" }, this.description)), this.isTouch && (h("q2-icon", { "test-id": "touchIndicator", type: "chevron-right", class: "touch-indicator" }))));
96
+ return (h(Fragment, null, this.bar && (h("div", { class: "bar", "test-id": "bar", style: { '--comp-bar-color': this.barColor } })), this.generateAvatar(), h("div", { class: "container", "test-id": "contentContainer", ref: e => (this.containerElement = e) }, this.title && h("h3", { "test-id": "title" }, this.title), this.description && h("p", { "test-id": "description" }, this.description)), this.isTouch && (h("q2-icon", { "test-id": "touchIndicator", type: "chevron-right", class: "touch-indicator" }))));
62
97
  }
63
98
  generateContainerClasses() {
64
99
  const { isSmall, isAutoSmall, avatarName, avatarInitials, avatarSrc, avatarIcon, isTouch, isAutoTouch } = this;
65
- let result = [];
100
+ const result = [];
66
101
  const showSmall = isSmall || isAutoSmall;
67
102
  const showTouch = isTouch || isAutoTouch;
68
103
  const hasAvatar = avatarName || avatarInitials || avatarSrc || avatarIcon;
@@ -79,6 +114,9 @@ const Q2Card = class {
79
114
  return !!url ? (h("a", { ref: e => (this.clickableElement = e), href: this.url, class: this.generateContainerClasses(), target: this.target, rel: "noopener noreferrer", "test-id": "clickableElement", onClick: this.handleClick }, this.generateContent())) : (h("button", { ref: e => (this.clickableElement = e), class: this.generateContainerClasses(), "test-id": "clickableElement", type: "button", onClick: this.handleClick }, this.generateContent()));
80
115
  }
81
116
  get hostElement() { return getElement(this); }
117
+ static get watchers() { return {
118
+ "bar": ["checkBar"]
119
+ }; }
82
120
  };
83
121
  Q2Card.style = stylesCss;
84
122
 
@@ -1,7 +1,7 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-be8376c0.js';
2
- import { l as loc } from './index-fa32f694.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-dbfb3ecc.js';
2
+ import { l as loc } from './index-0ff8de52.js';
3
3
 
4
- const stylesCss = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-global-focus)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}q2-carousel .swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;transition:all 0.2s}q2-carousel-pane.q2-carousel-pane{cursor:grab}q2-carousel-pane.q2-carousel-pane:not([is-active-pane]) *{cursor:pointer}q2-carousel-pane.q2-carousel-pane:focus{box-shadow:none}q2-carousel-pane.q2-carousel-pane:focus .q2-carousel-pane-main-content{outline:none;box-shadow:var(--tct-global-focus, var(--const-global-focus, 0 0 0 2px #33b4ff))}q2-carousel-pane.q2-carousel-pane .q2-carousel-pane-main-content{box-shadow:0px 2px 8px 0px var(--t-top-a1, rgba(0, 0, 0, 0.25));background-color:var(--tct-carousel-background-color, var(--t-carousel-background-color, var(--tct-white, var(--app-white, #ffffff))));border:var(--tct-carousel-pane-border-width, var(--t-carousel-pane-border-width, 1px)) solid var(--tct-carousel-pane-border-color, var(--t-carousel-pane-border-color, var(--tct-gray-11, var(--t-gray-11, var(--tct-gray-l1, var(--app-gray-l1, #cccccc))))));border-radius:var(--tct-carousel-pane-border-radius, var(--t-carousel-pane-border-radius, 8px));padding:var(--tct-carousel-pane-padding, var(--t-carousel-pane-padding, 0.5rem 0.5rem 0.5rem 0.5rem));min-height:10em}";
4
+ const stylesCss = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-global-focus)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}q2-carousel .swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;transition:all 0.2s}q2-carousel-pane.q2-carousel-pane{--comp-carousel-pane-tween:var(--tct-tween-1, var(--app-tween-1, 0.2s ease));cursor:grab}q2-carousel-pane.q2-carousel-pane:not([is-active-pane]) *{cursor:pointer}q2-carousel-pane.q2-carousel-pane:focus{box-shadow:none}q2-carousel-pane.q2-carousel-pane:focus .q2-carousel-pane-main-content{outline:none;box-shadow:var(--tct-global-focus, var(--const-global-focus, 0 0 0 2px #33b4ff))}q2-carousel-pane.q2-carousel-pane .q2-carousel-pane-main-content{box-shadow:var(--app-shadow-2, 0px 2px 8px 0px var(--t-top-a1, rgba(0, 0, 0, 0.25)));transition:var(--comp-carousel-pane-tween);background-color:var(--tct-carousel-background-color, var(--t-carousel-background-color, var(--tct-white, var(--app-white, #ffffff))));border:var(--tct-carousel-pane-border-width, var(--t-carousel-pane-border-width, 0px)) solid var(--tct-carousel-pane-border-color, var(--t-carousel-pane-border-color, var(--tct-gray-11, var(--t-gray-11, var(--tct-gray-l1, var(--app-gray-l1, #cccccc))))));border-radius:var(--tct-carousel-pane-border-radius, var(--t-carousel-pane-border-radius, 8px));padding:var(--tct-carousel-pane-padding, var(--t-carousel-pane-padding, 0.5rem 0.5rem 0.5rem 0.5rem));height:var(--tct-carousel-pane-height, var(--t-carousel-pane-height, 10em))}q2-carousel-pane.q2-carousel-pane .q2-carousel-pane-main-content:hover{box-shadow:var(--app-shadow-3, 0px 2px 8px 0px var(--t-top-a1, rgba(0, 0, 0, 0.25)))}";
5
5
 
6
6
  const Q2Carousel = class {
7
7
  constructor(hostRef) {
@@ -16,7 +16,7 @@ const Q2Carousel = class {
16
16
  event.preventDefault();
17
17
  this.clickCarouselPane.emit({
18
18
  paneIndex: this.index,
19
- pane: this.hostElement
19
+ pane: this.hostElement,
20
20
  });
21
21
  };
22
22
  }
@@ -57,7 +57,7 @@ const Q2Carousel = class {
57
57
  ? loc(label)
58
58
  : loc('tecton.element.carousel.itemDescription', [
59
59
  (this.currentPaneIndex + 1).toString(),
60
- (this.siblingCount || 0).toString()
60
+ (this.siblingCount || 0).toString(),
61
61
  ]), onClick: this.paneClicked }, h("article", { class: "q2-carousel-pane-main-content" }, h("slot", null))));
62
62
  }
63
63
  get hostElement() { return getElement(this); }